Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_DEVICE_MENU_Step_0

(view raw script w/o annotations or w/e)
1
if (!input_enabled)
2
    exit;
3
if (MENU_NO == 1 || MENU_NO == 4 || MENU_NO == 6 || MENU_NO == 7 || MENU_NO == 11)
4
{
5
    if (left_p())
6
    {
7
        if (MENUCOORD[MENU_NO] == 1)
8
        {
9
            MENUCOORD[MENU_NO] = 0;
10
            MOVENOISE = 1;
11
        }
12
    }
13
    if (right_p())
14
    {
15
        if (MENUCOORD[MENU_NO] == 0)
16
        {
17
            MENUCOORD[MENU_NO] = 1;
18
            MOVENOISE = 1;
19
        }
20
    }
21
    if (button1_p() && ONEBUFFER < 0)
22
    {
23
        ONEBUFFER = 2;
24
        TWOBUFFER = 2;
25
        SELNOISE = 1;
26
        if (MENUCOORD[MENU_NO] == 0)
27
        {
28
            if (MENU_NO == 1 || MENU_NO == 11)
29
            {
30
                var FILECHECK = 0;
31
                var FILESLOT = 0;
32
                var DONAMING = 0;
33
                if (MENU_NO == 1)
34
                    FILESLOT = MENUCOORD[0];
35
                if (MENU_NO == 11)
36
                    FILESLOT = MENUCOORD[10];
37
                if (MENU_NO == 1 && FILE[MENUCOORD[0]] == 1)
38
                    FILECHECK = 1;
39
                if (MENU_NO == 11)
40
                {
41
                    if (INCOMPLETE_LOAD)
42
                    {
43
                        if (INCOMPLETEFILE_PREV[FILESLOT] == 1)
44
                            FILECHECK = 1;
45
                        else
46
                            FILECHECK = -1;
47
                    }
48
                    else if (COMPLETEFILE_PREV[FILESLOT] == 1)
49
                    {
50
                        FILECHECK = 1;
51
                    }
52
                    else
53
                    {
54
                        FILECHECK = -1;
55
                    }
56
                }
57
                if (FILECHECK)
58
                {
59
                    global.filechoice = FILESLOT;
60
                    snd_free_all();
61
                    f = instance_create(0, 0, obj_persistentfadein);
62
                    f.image_xscale = 1000;
63
                    f.image_yscale = 1000;
64
                    if (ossafe_file_exists("keyconfig_" + string(global.filechoice) + ".ini"))
65
                    {
66
                        ossafe_ini_open("keyconfig_" + string(global.filechoice) + ".ini");
67
                        for (var i = 0; i < 10; i += 1)
68
                        {
69
                            readval = ini_read_real("KEYBOARD_CONTROLS", string(i), -1);
70
                            if (readval != -1)
71
                                global.input_k[i] = readval;
72
                        }
73
                        for (var i = 0; i < 10; i += 1)
74
                        {
75
                            readval = ini_read_real("GAMEPAD_CONTROLS", string(i), -1);
76
                            if (readval != -1)
77
                                global.input_g[i] = readval;
78
                        }
79
                        if (!global.is_console)
80
                        {
81
                            ini_close();
82
                        }
83
                        else
84
                        {
85
                            readval = ini_read_real("SHOULDERLB_REASSIGN", "SHOULDERLB_REASSIGN", obj_gamecontroller.gamepad_shoulderlb_reassign);
86
                            if (readval != -1)
87
                                obj_gamecontroller.gamepad_shoulderlb_reassign = readval;
88
                            global.button0 = global.input_g[4];
89
                            global.button1 = global.input_g[5];
90
                            global.button2 = global.input_g[6];
91
                            global.screen_border_id = ini_read_string("BORDER", "TYPE", "Dynamic");
92
                            var _disable_border = global.screen_border_id == "None" || global.screen_border_id == "なし";
93
                            
scr_enable_screen_border
scr_enable_screen_border

function
scr_enable_screen_border(arg0)
{ var flag = arg0; flag = flag != 0; if (flag != global.screen_border_active) { global.screen_border_active = flag != 0; global.screen_border_state = 0; global.screen_border_dynamic_fade_id = 0; global.screen_border_dynamic_fade_level = 0; } }
(!_disable_border);
94
                            ossafe_ini_close();
95
                            ossafe_savedata_save();
96
                        }
97
                    }
98
                    else if (ossafe_file_exists("config_" + string(global.filechoice) + ".ini"))
99
                    {
100
                        ossafe_ini_open("config_" + string(global.filechoice) + ".ini");
101
                        for (var i = 0; i < 10; i += 1)
102
                        {
103
                            readval = ini_read_real("KEYBOARD_CONTROLS", string(i), -1);
104
                            if (readval != -1)
105
                                global.input_k[i] = readval;
106
                        }
107
                        for (var i = 0; i < 10; i += 1)
108
                        {
109
                            readval = ini_read_real("GAMEPAD_CONTROLS", string(i), -1);
110
                            if (readval != -1)
111
                                global.input_g[i] = readval;
112
                        }
113
                        readval = ini_read_real("SHOULDERLB_REASSIGN", "SHOULDERLB_REASSIGN", obj_gamecontroller.gamepad_shoulderlb_reassign);
114
                        if (readval != -1)
115
                            obj_gamecontroller.gamepad_shoulderlb_reassign = readval;
116
                        global.input_g[0] = gp_padd;
117
                        global.input_g[1] = gp_padr;
118
                        global.input_g[2] = gp_padu;
119
                        global.input_g[3] = gp_padl;
120
                        global.input_g[4] = global.button0;
121
                        global.input_g[5] = global.button1;
122
                        global.input_g[6] = global.button2;
123
                        global.input_g[7] = 999;
124
                        global.input_g[8] = 999;
125
                        global.input_g[9] = 999;
126
                        global.button0 = global.input_g[4];
127
                        global.button1 = global.input_g[5];
128
                        global.button2 = global.input_g[6];
129
                        if (global.is_console)
130
                        {
131
                            global.screen_border_id = ini_read_string("BORDER", "TYPE", "Dynamic");
132
                            var _disable_border = global.screen_border_id == "None" || global.screen_border_id == "なし";
133
                            
scr_enable_screen_border
scr_enable_screen_border

function
scr_enable_screen_border(arg0)
{ var flag = arg0; flag = flag != 0; if (flag != global.screen_border_active) { global.screen_border_active = flag != 0; global.screen_border_state = 0; global.screen_border_dynamic_fade_id = 0; global.screen_border_dynamic_fade_level = 0; } }
(!_disable_border);
134
                        }
135
                        ossafe_ini_close();
136
                        ossafe_savedata_save();
137
                    }
138
                    else if (ossafe_file_exists("config_" + string(global.filechoice) + ".ini"))
139
                    {
140
                        ossafe_ini_open("config_" + string(global.filechoice) + ".ini");
141
                        for (var i = 0; i < 10; i += 1)
142
                        {
143
                            readval = ini_read_real("KEYBOARD_CONTROLS", string(i), -1);
144
                            if (readval != -1)
145
                                global.input_k[i] = readval;
146
                        }
147
                        for (var i = 0; i < 10; i += 1)
148
                        {
149
                            readval = ini_read_real("GAMEPAD_CONTROLS", string(i), -1);
150
                            if (readval != -1)
151
                                global.input_g[i] = readval;
152
                        }
153
                        readval = ini_read_real("SHOULDERLB_REASSIGN", "SHOULDERLB_REASSIGN", obj_gamecontroller.gamepad_shoulderlb_reassign);
154
                        if (readval != -1)
155
                            obj_gamecontroller.gamepad_shoulderlb_reassign = readval;
156
                        global.input_g[0] = gp_padd;
157
                        global.input_g[1] = gp_padr;
158
                        global.input_g[2] = gp_padu;
159
                        global.input_g[3] = gp_padl;
160
                        global.input_g[4] = global.button0;
161
                        global.input_g[5] = global.button1;
162
                        global.input_g[6] = global.button2;
163
                        global.input_g[7] = 999;
164
                        global.input_g[8] = 999;
165
                        global.input_g[9] = 999;
166
                        global.button0 = global.input_g[4];
167
                        global.button1 = global.input_g[5];
168
                        global.button2 = global.input_g[6];
169
                        if (global.is_console)
170
                        {
171
                            global.screen_border_id = ini_read_string("BORDER", "TYPE", "Dynamic");
172
                            var _disable_border = global.screen_border_id == "None" || global.screen_border_id == "なし";
173
                            
scr_enable_screen_border
scr_enable_screen_border

function
scr_enable_screen_border(arg0)
{ var flag = arg0; flag = flag != 0; if (flag != global.screen_border_active) { global.screen_border_active = flag != 0; global.screen_border_state = 0; global.screen_border_dynamic_fade_id = 0; global.screen_border_dynamic_fade_level = 0; } }
(!_disable_border);
174
                        }
175
                        ossafe_ini_close();
176
                        ossafe_savedata_save();
177
                        if (!global.is_console)
178
                        {
179
                            ossafe_ini_open("keyconfig_" + string(global.filechoice) + ".ini");
180
                            for (var i = 0; i < 10; i++)
181
                                ini_write_real("KEYBOARD_CONTROLS", string(i), global.input_k[i]);
182
                            for (var i = 0; i < 10; i++)
183
                                ini_write_real("GAMEPAD_CONTROLS", string(i), global.input_g[i]);
184
                            ini_write_real("SHOULDERLB_REASSIGN", "SHOULDERLB_REASSIGN", obj_gamecontroller.gamepad_shoulderlb_reassign);
185
                            ossafe_ini_close();
186
                        }
187
                    }
188
                    if (MENU_NO == 1)
189
                    {
190
                        if (os_type == os_ps5)
191
                        {
192
                            with (obj_event_manager)
193
                                trigger_event(UnknownEnum.Value_2, UnknownEnum.Value_0);
194
                        }
195
                        
scr_load
scr_load

function
scr_load()
{ snd_free_all(); filechoicebk = global.filechoice;
scr_gamestart();
global.filechoice = filechoicebk; file = "filech" + string(global.chapter) + "_" + string(global.filechoice); myfileid = ossafe_file_text_open_read(file); global.truename = ossafe_file_text_read_string(myfileid); ossafe_file_text_readln(myfileid); if (global.is_console) { var othername_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(othername_list); i += 1) global.othername[i] = ds_list_find_value(othername_list, i); ds_list_destroy(othername_list); ossafe_file_text_readln(myfileid); } else { for (i = 0; i < 6; i += 1) { global.othername[i] = ossafe_file_text_read_string(myfileid); ossafe_file_text_readln(myfileid); } } global.char[0] = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.char[1] = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.char[2] = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.gold = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.xp = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.lv = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.inv = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.invc = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); global.darkzone = ossafe_file_text_read_real(myfileid); ossafe_file_text_readln(myfileid); if (global.is_console) { var hp_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(hp_list); i += 1) global.hp[i] = ds_list_find_value(hp_list, i); ds_list_destroy(hp_list); ossafe_file_text_readln(myfileid); var maxhp_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(maxhp_list); i += 1) global.maxhp[i] = ds_list_find_value(maxhp_list, i); ds_list_destroy(maxhp_list); ossafe_file_text_readln(myfileid); var at_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(at_list); i += 1) global.at[i] = ds_list_find_value(at_list, i); ds_list_destroy(at_list); ossafe_file_text_readln(myfileid); var df_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(df_list); i += 1) global.df[i] = ds_list_find_value(df_list, i); ds_list_destroy(df_list); ossafe_file_text_readln(myfileid); var mag_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(mag_list); i += 1) global.mag[i] = ds_list_find_value(mag_list, i); ds_list_destroy(mag_list); ossafe_file_text_readln(myfileid); var guts_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(guts_list); i += 1) global.guts[i] = ds_list_find_value(guts_list, i); ds_list_destroy(guts_list); ossafe_file_text_readln(myfileid); var charweapon_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(charweapon_list); i += 1) global.charweapon[i] = ds_list_find_value(charweapon_list, i); ds_list_destroy(charweapon_list); ossafe_file_text_readln(myfileid); var chararmor1_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(chararmor1_list); i += 1) global.chararmor1[i] = ds_list_find_value(chararmor1_list, i); ds_list_destroy(chararmor1_list); ossafe_file_text_readln(myfileid); var chararmor2_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(chararmor2_list); i += 1) global.chararmor2[i] = ds_list_find_value(chararmor2_list, i); ds_list_destroy(chararmor2_list); ossafe_file_text_readln(myfileid); var weaponstyle_list =
scr_ds_list_read(myfileid);
for (i = 0; i < ds_list_size(weaponstyle_list); i += 1) global.weaponstyle[i] = ds_list_find_value(weaponstyle_list, i); ds_list_destroy(weaponstyle_list); ossafe_file_text_readln(myfileid); } for (i = 0; i < 5; i += 1) { if (!global.is_console) { ...
();
196
                        exit;
197
                    }
198
                    if (MENU_NO == 11)
199
                    {
200
                        if (INCOMPLETE_LOAD == 0)
201
                        {
202
                            global.filechoice += 3;
203
                            
scr_load_prev_chapter_file
scr_load_prev_chapter_file

function
scr_load_prev_chapter_file(arg0 = 0)
{ var _chapter = arg0; switch (_chapter) { case 1:
scr_load_chapter1();
break; case 2:
scr_load_chapter2();
break; case 3:
scr_load_chapter3();
break; default: break; } }
(global.chapter - 1);
204
                            global.filechoice -= 3;
205
                        }
206
                        else
207
                        {
208
                            
scr_load_prev_chapter_file
scr_load_prev_chapter_file

function
scr_load_prev_chapter_file(arg0 = 0)
{ var _chapter = arg0; switch (_chapter) { case 1:
scr_load_chapter1();
break; case 2:
scr_load_chapter2();
break; case 3:
scr_load_chapter3();
break; default: break; } }
(global.chapter - 1);
209
                        }
210
                        if (os_type == os_ps5)
211
                        {
212
                            with (obj_event_manager)
213
                                trigger_event(UnknownEnum.Value_2, UnknownEnum.Value_0);
214
                        }
215
                        if (global.flag[914 chapter_started] == 0)
216
                            global.flag[914 chapter_started] = global.chapter - 1;
217
                        FILECHECK = -2;
218
                        STARTGAME = 1;
219
                    }
220
                }
221
                if (FILECHECK == 0)
222
                {
223
                    if (os_type == os_ps5)
224
                    {
225
                        with (obj_event_manager)
226
                            trigger_event(UnknownEnum.Value_2, UnknownEnum.Value_0);
227
                    }
228
                    global.filechoice = FILESLOT;
229
                    var namer = instance_create(0, 0, DEVICE_NAMER);
230
                    namer.REMMENU = MENU_NO;
231
                    REMMENU = MENU_NO;
232
                    MENU_NO = -1;
233
                }
234
                if (FILECHECK == -1)
235
                    snd_play(snd_error);
236
            }
237
            if (MENU_NO == 4)
238
            {
239
                var temp_comment_is_interesting = false;
240
                if (TYPE == 0)
241
                {
242
                    TEMPCOMMENT = stringsetloc(
IT CONFORMED TO THE REFLECTION.
"IT CONFORMED TO THE REFLECTION.", "DEVICE_MENU_slash_Step_0_gml_74_0"
);
243
                    if (NAME[0] == NAME[1] && NAME[1] == NAME[2])
244
                    {
245
                        if (TIME[0] == TIME[1] && TIME[1] == TIME[2])
246
                        {
247
                            if (PLACE[0] == PLACE[1] && PLACE[1] == PLACE[2])
248
                            {
249
                                temp_comment_is_interesting = true;
250
                                TEMPCOMMENT = stringsetloc(
WHAT AN INTERESTING BEHAVIOR.
"WHAT AN INTERESTING BEHAVIOR.", "DEVICE_MENU_slash_Step_0_gml_77_0"
);
251
                            }
252
                        }
253
                    }
254
                }
255
                event_user(5);
256
                if (TYPE == 0)
257
                {
258
                    if (NAME[0] == NAME[1] && NAME[1] == NAME[2])
259
                    {
260
                        if (TIME[0] == TIME[1] && TIME[1] == TIME[2])
261
                        {
262
                            if (PLACE[0] == PLACE[1] && PLACE[1] == PLACE[2] && !temp_comment_is_interesting)
263
                                TEMPCOMMENT = stringsetloc(
PREPARATIONS ARE COMPLETE.
"PREPARATIONS ARE COMPLETE.", "DEVICE_MENU_slash_Step_0_gml_86_0"
);
264
                        }
265
                    }
266
                }
267
                if (TYPE == 1)
268
                    TEMPCOMMENT = stringsetloc(
Copy complete.
"Copy complete.", "DEVICE_MENU_slash_Step_0_gml_91_0"
);
269
                MESSAGETIMER = 90;
270
                SELNOISE = 0;
271
                DEATHNOISE = 1;
272
                MENU_NO = 0;
273
            }
274
            if (MENU_NO == 7)
275
            {
276
                FILE[MENUCOORD[5]] = 0;
277
                NAME[MENUCOORD[5]] = stringsetloc(
[EMPTY]
"[EMPTY]", "DEVICE_MENU_slash_Step_0_gml_105_0"
);
278
                TIME[MENUCOORD[5]] = 0;
279
                PLACE[MENUCOORD[5]] = "------------";
280
                LEVEL[MENUCOORD[5]] = 0;
281
                TIME_STRING[MENUCOORD[5]] = "--:--";
282
                ossafe_file_delete("filech" + string(global.chapter) + "_" + string(MENUCOORD[5]));
283
                iniwrite = ossafe_ini_open("dr.ini");
284
                ini_write_string(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Name", "[EMPTY]");
285
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Level", 0);
286
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Love", 0);
287
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Time", 0);
288
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Room", 0);
289
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Date", 0);
290
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "UraBoss", 0);
291
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Ch4Boss", 0);
292
                ini_write_real(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "SideB", 0);
293
                ini_write_string(
scr_ini_chapter
scr_ini_chapter

function
scr_ini_chapter(arg0, arg1)
{ if (arg0 >= 2) return "G_" + string(arg0) + "_" + string(arg1); else return "G" + string(arg1); }
(global.chapter, MENUCOORD[5]), "Version", "0");
294
                ossafe_ini_close();
295
                ossafe_savedata_save();
296
                if (ossafe_file_exists("keyconfig_" + string(MENUCOORD[5]) + ".ini"))
297
                    ossafe_file_delete("keyconfig_" + string(MENUCOORD[5]) + ".ini");
298
                if (ossafe_file_exists("keyconfig_" + string(MENUCOORD[5]) + ".ini"))
299
                    ossafe_file_delete("keyconfig_" + string(MENUCOORD[5]) + ".ini");
300
                TEMPCOMMENT = stringsetloc(
IT WAS AS IF IT WAS NEVER THERE AT ALL.
"IT WAS AS IF IT WAS NEVER THERE AT ALL.", "DEVICE_MENU_slash_Step_0_gml_126_0"
);
301
                if (TYPE == 1)
302
                    TEMPCOMMENT = stringsetloc(
Erase complete.
"Erase complete.", "DEVICE_MENU_slash_Step_0_gml_127_0"
);
303
                MESSAGETIMER = 90;
304
                SELNOISE = 0;
305
                DEATHNOISE = 1;
306
                MENU_NO = 0;
307
                with (obj_event_manager)
308
                    trigger_event(UnknownEnum.Value_0, UnknownEnum.Value_29);
309
            }
310
            if (MENU_NO == 6)
311
            {
312
                THREAT += 1;
313
                MENU_NO = 7;
314
                MENUCOORD[7] = 0;
315
            }
316
        }
317
        if (MENU_NO >= 0)
318
        {
319
            if (MENUCOORD[MENU_NO] == 1)
320
            {
321
                if (MENU_NO == 4 && TYPE == 0)
322
                {
323
                    TEMPCOMMENT = stringsetloc(
IT RETAINED ITS ORIGINAL SHAPE.
"IT RETAINED ITS ORIGINAL SHAPE.", "DEVICE_MENU_slash_Step_0_gml_149_0"
);
324
                    MESSAGETIMER = 90;
325
                }
326
                if (MENU_NO == 6 || MENU_NO == 7)
327
                {
328
                    if (TYPE == 0)
329
                    {
330
                        TEMPCOMMENT = stringsetloc(
THEN IT WAS SPARED.
"THEN IT WAS SPARED.", "DEVICE_MENU_slash_Step_0_gml_156_0"
);
331
                        if (THREAT >= 10)
332
                        {
333
                            TEMPCOMMENT = stringsetloc(
VERY INTERESTING.
"VERY INTERESTING.", "DEVICE_MENU_slash_Step_0_gml_159_0"
);
334
                            THREAT = 0;
335
                        }
336
                        MESSAGETIMER = 90;
337
                    }
338
                }
339
                if (MENU_NO == 11)
340
                    MENU_NO = 10;
341
                else
342
                    MENU_NO = 0;
343
            }
344
        }
345
    }
346
    if (button2_p() && TWOBUFFER < 0)
347
    {
348
        ONEBUFFER = 1;
349
        TWOBUFFER = 1;
350
        if (MENU_NO != 0)
351
            BACKNOISE = 1;
352
        if (MENU_NO == 1)
353
            MENU_NO = 0;
354
        else if (MENU_NO == 4)
355
            MENU_NO = 2;
356
        else if (MENU_NO == 6)
357
            MENU_NO = 5;
358
        else if (MENU_NO == 7)
359
            MENU_NO = 5;
360
        else if (MENU_NO == 11)
361
            MENU_NO = 10;
362
    }
363
}
364
if (MENU_NO == 2 || MENU_NO == 3 || MENU_NO == 5)
365
{
366
    if (down_p())
367
    {
368
        if (MENUCOORD[MENU_NO] < 3)
369
        {
370
            MENUCOORD[MENU_NO] += 1;
371
            MOVENOISE = 1;
372
        }
373
    }
374
    if (up_p())
375
    {
376
        if (MENUCOORD[MENU_NO] > 0)
377
        {
378
            MENUCOORD[MENU_NO] -= 1;
379
            MOVENOISE = 1;
380
        }
381
    }
382
    if (button1_p() && ONEBUFFER < 0)
383
    {
384
        if (MENUCOORD[MENU_NO] < 3)
385
        {
386
            if (MENU_NO == 3)
387
            {
388
                if (MENUCOORD[2] != MENUCOORD[3])
389
                {
390
                    if (FILE[MENUCOORD[MENU_NO]] == 1)
391
                    {
392
                        TWOBUFFER = 2;
393
                        ONEBUFFER = 2;
394
                        SELNOISE = 1;
395
                        MENUCOORD[4] = 0;
396
                        MENU_NO = 4;
397
                    }
398
                    else
399
                    {
400
                        TEMPCOMMENT = stringsetloc(
THE DIVISION IS COMPLETE.
"THE DIVISION IS COMPLETE.", "DEVICE_MENU_slash_Step_0_gml_225_0"
);
401
                        MESSAGETIMER = 90;
402
                        if (TYPE == 1)
403
                            TEMPCOMMENT = stringsetloc(
Copy complete.
"Copy complete.", "DEVICE_MENU_slash_Step_0_gml_227_0"
);
404
                        DEATHNOISE = 1;
405
                        MENU_NO = 0;
406
                        ONEBUFFER = 2;
407
                        TWOBUFFER = 2;
408
                        event_user(5);
409
                    }
410
                }
411
                else
412
                {
413
                    TEMPCOMMENT = stringsetloc(
IT IS IMMUNE TO ITS OWN IMAGE.
"IT IS IMMUNE TO ITS OWN IMAGE.", "DEVICE_MENU_slash_Step_0_gml_238_0"
);
414
                    if (TYPE == 1)
415
                        TEMPCOMMENT = stringsetloc(
You can't copy there.
"You can't copy there.", "DEVICE_MENU_slash_Step_0_gml_239_0"
);
416
                    MESSAGETIMER = 90;
417
                    TWOBUFFER = 2;
418
                    ONEBUFFER = 2;
419
                    BACKNOISE = 1;
420
                }
421
            }
422
            if (MENU_NO == 2)
423
            {
424
                if (FILE[MENUCOORD[MENU_NO]] == 1)
425
                {
426
                    TWOBUFFER = 2;
427
                    ONEBUFFER = 2;
428
                    SELNOISE = 1;
429
                    MENUCOORD[3] = 0;
430
                    MENU_NO = 3;
431
                }
432
                else
433
                {
434
                    TEMPCOMMENT = stringsetloc(
IT IS BARREN AND CANNOT BE COPIED.
"IT IS BARREN AND CANNOT BE COPIED.", "DEVICE_MENU_slash_Step_0_gml_261_0"
);
435
                    if (FILE[0] == 0 && FILE[1] == 0 && FILE[2] == 0)
436
                        TEMPCOMMENT = stringsetloc(
BUT THERE WAS NOTHING LEFT TO COPY.
"BUT THERE WAS NOTHING LEFT TO COPY.", "DEVICE_MENU_slash_Step_0_gml_264_0"
);
437
                    if (TYPE == 1)
438
                        TEMPCOMMENT = stringsetloc(
It can't be copied.
"It can't be copied.", "DEVICE_MENU_slash_Step_0_gml_266_0"
);
439
                    MESSAGETIMER = 90;
440
                    BACKNOISE = 1;
441
                    TWOBUFFER = 2;
442
                    ONEBUFFER = 2;
443
                }
444
            }
445
            if (MENU_NO == 5)
446
            {
447
                if (FILE[MENUCOORD[MENU_NO]] == 1)
448
                {
449
                    TWOBUFFER = 2;
450
                    ONEBUFFER = 2;
451
                    SELNOISE = 1;
452
                    MENUCOORD[6] = 0;
453
                    MENU_NO = 6;
454
                }
455
                else
456
                {
457
                    TEMPCOMMENT = stringsetloc(
BUT IT WAS ALREADY GONE.
"BUT IT WAS ALREADY GONE.", "DEVICE_MENU_slash_Step_0_gml_289_0"
);
458
                    if (FILE[0] == 0 && FILE[1] == 0 && FILE[2] == 0)
459
                        TEMPCOMMENT = stringsetloc(
BUT THERE WAS NOTHING LEFT TO ERASE.
"BUT THERE WAS NOTHING LEFT TO ERASE.", "DEVICE_MENU_slash_Step_0_gml_292_0"
);
460
                    if (TYPE == 1)
461
                        TEMPCOMMENT = stringsetloc(
There's nothing to erase.
"There's nothing to erase.", "DEVICE_MENU_slash_Step_0_gml_294_0"
);
462
                    MESSAGETIMER = 90;
463
                    TWOBUFFER = 2;
464
                    ONEBUFFER = 2;
465
                    BACKNOISE = 1;
466
                }
467
            }
468
        }
469
        if (MENUCOORD[MENU_NO] == 3)
470
        {
471
            TWOBUFFER = 2;
472
            ONEBUFFER = 2;
473
            SELNOISE = 1;
474
            MENU_NO = 0;
475
        }
476
    }
477
    if (button2_p() && TWOBUFFER < 0)
478
    {
479
        TWOBUFFER = 2;
480
        ONEBUFFER = 2;
481
        BACKNOISE = 1;
482
        if (MENU_NO == 2 || MENU_NO == 5)
483
            MENU_NO = 0;
484
        if (MENU_NO == 3)
485
            MENU_NO = 2;
486
    }
487
}
488
if (MENU_NO == 10)
489
{
490
    var M = MENU_NO;
491
    var MAXY = 3;
492
    if (down_p())
493
    {
494
        if (MENUCOORD[MENU_NO] < 3)
495
        {
496
            MENUCOORD[MENU_NO] += 1;
497
            MOVENOISE = 1;
498
        }
499
    }
500
    if (up_p())
501
    {
502
        if (MENUCOORD[MENU_NO] > 0)
503
        {
504
            MENUCOORD[MENU_NO] -= 1;
505
            MOVENOISE = 1;
506
        }
507
    }
508
    if (button1_p() && ONEBUFFER < 0)
509
    {
510
        MESSAGETIMER = -1;
511
        if (MENUCOORD[M] <= 2)
512
        {
513
            var FILECHECK = 1;
514
            if (INCOMPLETE_LOAD == 0 && COMPLETEFILE_PREV[MENUCOORD[M]] != 1)
515
                FILECHECK = 0;
516
            if (INCOMPLETE_LOAD == 1 && INCOMPLETEFILE_PREV[MENUCOORD[M]] != 1)
517
                FILECHECK = 0;
518
            if (FILECHECK)
519
            {
520
                MENUCOORD[M + 1] = 0;
521
                ONEBUFFER = 1;
522
                TWOBUFFER = 1;
523
                MENU_NO = M + 1;
524
                SELNOISE = 1;
525
            }
526
            else
527
            {
528
                ONEBUFFER = 4;
529
                snd_play(snd_error);
530
            }
531
        }
532
        if (MENUCOORD[MENU_NO] == 3)
533
        {
534
            TWOBUFFER = 2;
535
            ONEBUFFER = 2;
536
            SELNOISE = 1;
537
            MENU_NO = 0;
538
        }
539
    }
540
    if (button2_p() && TWOBUFFER < 0)
541
    {
542
        TWOBUFFER = 2;
543
        ONEBUFFER = 2;
544
        BACKNOISE = 1;
545
        MENU_NO = 0;
546
    }
547
}
548
if (MENU_NO == 0)
549
{
550
    var M = MENU_NO;
551
    var MAXY = 8;
552
    if (M == 10)
553
        MAXY = 3;
554
    if (down_p())
555
    {
556
        if (MENUCOORD[M] < MAXY)
557
        {
558
            if (MENUCOORD[M] < 3)
559
                MENUCOORD[M] += 1;
560
            else if (MENUCOORD[M] == 3)
561
                MENUCOORD[M] = 5;
562
            else if (MENUCOORD[M] == 4)
563
                MENUCOORD[M] = 6;
564
            else if (MENUCOORD[M] == 7 && CANQUIT == 1)
565
                MENUCOORD[M] = 8;
566
            MOVENOISE = 1;
567
        }
568
    }
569
    if (up_p())
570
    {
571
        if (MENUCOORD[M] > 0)
572
        {
573
            if (MENUCOORD[M] < 3)
574
                MENUCOORD[M] -= 1;
575
            else if (MENUCOORD[M] == 3 || MENUCOORD[M] == 4 || MENUCOORD[M] == 7)
576
                MENUCOORD[M] = 2;
577
            else if (MENUCOORD[M] == 5 || MENUCOORD[M] == 6)
578
                MENUCOORD[M] -= 2;
579
            else if (MENUCOORD[M] == 8)
580
                MENUCOORD[M] = 7;
581
            MOVENOISE = 1;
582
        }
583
    }
584
    if (right_p())
585
    {
586
        if (MENUCOORD[M] >= 3 && MENUCOORD[M] < 7)
587
        {
588
            MOVENOISE = 1;
589
            if (MENUCOORD[M] == 4)
590
                MENUCOORD[M] = 7;
591
            else if (MENUCOORD[M] == 6 && CANQUIT == 1)
592
                MENUCOORD[M] = 8;
593
            else
594
                MENUCOORD[M]++;
595
        }
596
    }
597
    if (left_p())
598
    {
599
        if (MENUCOORD[M] >= 4 && MENUCOORD[M] != 5)
600
        {
601
            if (MENUCOORD[M] == 7)
602
                MENUCOORD[M] = 4;
603
            else if (MENUCOORD[M] == 8)
604
                MENUCOORD[M] = 6;
605
            else
606
                MENUCOORD[M]--;
607
            MOVENOISE = 1;
608
        }
609
    }
610
    if (button1_p() && ONEBUFFER < 0)
611
    {
612
        MESSAGETIMER = -1;
613
        if (MENUCOORD[M] <= 2)
614
        {
615
            var FILECHECK = 1;
616
            if (MENU_NO == 10)
617
            {
618
                if (INCOMPLETE_LOAD == 0 && COMPLETEFILE_PREV[MENUCOORD[M]] != 1)
619
                    FILECHECK = 0;
620
                if (INCOMPLETE_LOAD == 1 && INCOMPLETEFILE_PREV[MENUCOORD[M]] != 1)
621
                    FILECHECK = 0;
622
            }
623
            if (FILECHECK)
624
            {
625
                MENUCOORD[M + 1] = 0;
626
                ONEBUFFER = 1;
627
                TWOBUFFER = 1;
628
                MENU_NO = M + 1;
629
                SELNOISE = 1;
630
            }
631
            else
632
            {
633
                ONEBUFFER = 4;
634
                snd_play(snd_error);
635
            }
636
        }
637
        if (MENUCOORD[M] == 3)
638
        {
639
            if (M == 0)
640
            {
641
                MENUCOORD[2] = 0;
642
                ONEBUFFER = 1;
643
                TWOBUFFER = 1;
644
                MENU_NO = 2;
645
                SELNOISE = 1;
646
            }
647
            else
648
            {
649
                MENUCOORD[0] = 5;
650
                ONEBUFFER = 1;
651
                TWOBUFFER = 1;
652
                MENU_NO = 0;
653
                SELNOISE = 1;
654
            }
655
        }
656
        if (MENUCOORD[M] == 4)
657
        {
658
            MENUCOORD[5] = 0;
659
            ONEBUFFER = 1;
660
            TWOBUFFER = 1;
661
            MENU_NO = 5;
662
            SELNOISE = 1;
663
        }
664
        if (MENUCOORD[M] == 5)
665
        {
666
            MENUCOORD[10] = 0;
667
            ONEBUFFER = 1;
668
            TWOBUFFER = 1;
669
            MENU_NO = 10;
670
            SELNOISE = 1;
671
        }
672
        if (MENUCOORD[M] == 6)
673
        {
674
            SELNOISE = 1;
675
            
scr_change_language
scr_change_language

function
scr_change_language()
{ if (global.lang == "en") global.lang = "ja"; else global.lang = "en"; ossafe_ini_open("true_config.ini"); ini_write_string("LANG", "LANG", global.lang); ossafe_ini_close(); ossafe_savedata_save();
scr_84_init_localization();
}
();
676
            
scr_84_load_ini
scr_84_load_ini

function
scr_84_load_ini()
{ var CH = string(global.chapter); for (i = 0; i < 3; i += 1) FILE[i] = 0; for (i = 0; i < 3; i += 1) { FILE[i] = 0; NAME[i] = stringsetloc(
[EMPTY]
"[EMPTY]", "scr_84_load_ini_slash_scr_84_load_ini_gml_13_0"
);
TIME[i] = 0; PLACE[i] = "------------"; LEVEL[i] = 0; TIME_STRING[i] = "--:--"; INITLANG[i] = 0; } if (ossafe_file_exists("filech" + CH + "_0")) { FILE[0] = 1; NAME[0] = "FILE0"; } if (ossafe_file_exists("filech" + CH + "_1")) { FILE[1] = 1; NAME[1] = "FILE1"; } if (ossafe_file_exists("filech" + CH + "_2")) { FILE[2] = 1; NAME[2] = "FILE2"; } if (ossafe_file_exists("dr.ini")) { ossafe_ini_open("dr.ini"); for (i = 0; i < 3; i += 1) { if (FILE[i] == 1) { var room_id = ini_read_real(
scr_ini_chapter(global.chapter, i), "Room", scr_get_id_by_room_index(room));
var room_index =
scr_get_room_by_id(room_id);
PLACE[i] =
scr_roomname(room_index);
TIME[i] = ini_read_real(
scr_ini_chapter(global.chapter, i), "Time", 0);
NAME[i] = ini_read_string(
scr_ini_chapter(global.chapter, i), "Name", "------");
LEVEL[i] = 1; INITLANG[i] = ini_read_real(
scr_ini_chapter(global.chapter, i), "InitLang", 0);
TIME_SECONDS_TOTAL[i] = floor(TIME[i] / 30); TIME_MINUTES[i] = floor(TIME_SECONDS_TOTAL[i] / 60); TIME_SECONDS[i] = TIME_SECONDS_TOTAL[i] - (TIME_MINUTES[i] * 60); TIME_SECONDS_STRING[i] = string(TIME_SECONDS[i]); if (TIME_SECONDS[i] == 0) TIME_SECONDS_STRING[i] = "00"; if (TIME_SECONDS[i] < 10 && TIME_SECONDS[i] >= 1) TIME_SECONDS_STRING[i] = "0" + string(TIME_SECONDS[i]); TIME_STRING[i] =
scr_timedisp(TIME[i]);
} } ossafe_ini_close(); ossafe_savedata_save(); } }
();
677
        }
678
        if (MENUCOORD[M] == 7)
679
        {
680
            input_enabled = false;
681
            SELNOISE = 1;
682
            snd_free_all();
683
            alarm[0]
 = 30;
gml_Object_DEVICE_MENU_Alarm_0.gml

var _target_chapter = 0; if (global.is_console) { var _loading = instance_create(0, 0, obj_screen_loading); _loading.show_loading_screen(_target_chapter, scr_chapterswitch); _loading.depth = -1000; } else {
scr_chapterswitch(_target_chapter);
}
684
        }
685
        if (MENUCOORD[M] == 8 && CANQUIT)
686
        {
687
            SELNOISE = 1;
688
            ossafe_game_end();
689
        }
690
    }
691
    if (button2_p() && TWOBUFFER < 0)
692
    {
693
        ONEBUFFER = 1;
694
        TWOBUFFER = 1;
695
        BACKNOISE = 1;
696
        if (MENU_NO == 10)
697
            MENU_NO = 0;
698
    }
699
}
700
if (OBMADE == 1)
701
{
702
    OB_DEPTH += 1;
703
    obacktimer += OBM;
704
    if (obacktimer >= 20)
705
    {
706
        DV = instance_create(0, 0, DEVICE_OBACK_4);
707
        DV.depth = 5 + OB_DEPTH;
708
        DV.OBSPEED = 0.01 * OBM;
709
        if (OB_DEPTH >= 60000)
710
            OB_DEPTH = 0;
711
        obacktimer = 0;
712
    }
713
}
714
if (MOVENOISE == 1)
715
{
716
    snd_play(snd_menumove);
717
    MOVENOISE = 0;
718
}
719
if (SELNOISE == 1)
720
{
721
    snd_play(snd_select);
722
    SELNOISE = 0;
723
}
724
if (BACKNOISE == 1)
725
{
726
    snd_play(snd_swing);
727
    BACKNOISE = 0;
728
}
729
if (DEATHNOISE == 1)
730
{
731
    snd_play(AUDIO_APPEARANCE);
732
    DEATHNOISE = 0;
733
}
734
ONEBUFFER -= 1;
735
TWOBUFFER -= 1;
736
if (STARTGAME == 1)
737
{
738
    snd_free_all();
739
    if (global.chapter == 1)
740
        room_goto(PLACE_CONTACT );
741
    if (global.chapter == 4)
742
        room_goto(room_cc_fountain );
743
}
744
745
enum UnknownEnum
746
{
747
    Value_0,
748
    Value_2 = 2,
749
    Value_29 = 29
750
}