1 |
if (global.osflavor <= 2) |
2 |
{ |
3 |
return file_text_open_read(argument0); |
4 |
} |
5 |
else |
6 |
{ |
7 |
var name = string_lower(argument0); |
8 |
var file = ds_map_find_value(global.savedata, name); |
9 |
if (is_undefined(file)) |
10 |
return undefined; |
11 |
var data = file; |
12 |
var num_lines = 0; |
13 |
var lines; |
14 |
while (string_byte_length(data) > 0) |
15 |
{ |
16 |
var newline_pos = string_pos(" |
17 |
", data); |
18 |
var line; |
19 |
if (newline_pos > 0) |
20 |
{ |
21 |
var nextline_pos = newline_pos + 1; |
22 |
if (newline_pos > 1 && string_char_at(data, newline_pos - 1) == " |
23 |
") |
24 |
newline_pos--; |
25 |
if (newline_pos > 1) |
26 |
line = substr(data, 1, newline_pos - 1); |
27 |
else |
28 |
line = ""; |
29 |
if (nextline_pos <= strlen(data)) |
30 |
data = substr(data, nextline_pos); |
31 |
else |
32 |
data = ""; |
33 |
} |
34 |
else |
35 |
{ |
36 |
line = data; |
37 |
data = ""; |
38 |
} |
39 |
lines[num_lines++] = line; |
40 |
} |
41 |
handle = ds_map_create(); |
42 |
ds_map_set(handle, "is_write", 0); |
43 |
ds_map_set(handle, "text", lines); |
44 |
ds_map_set(handle, "num_lines", num_lines); |
45 |
ds_map_set(handle, "line", 0); |
46 |
ds_map_set(handle, "line_read", 0); |
47 |
return handle; |
48 |
} |