|
1
|
global.debug = 0;
|
|
2
|
global.is_console = scr_is_switch_os() || os_type == os_ps4 || os_type == os_ps5;
|
|
3
|
if (!variable_global_exists("bgm") || !audio_exists(global.bgm))
|
|
4
|
global.bgm = -4;
|
|
5
|
scr_initscr_init
function scr_init()
{
}
function create_choice(arg0, arg1) constructor
{
choice_text = arg0;
choice_value = arg1;
}
function get_chapter_confirm_sound(arg0)
{
switch (arg0)
{
case UnknownEnum.Value_1:
return 1;
break;
case UnknownEnum.Value_2:
return 0;
break;
case UnknownEnum.Value_3:
return 2;
break;
case UnknownEnum.Value_4:
return 4;
break;
default:
return 3;
break;
}
}
function get_chapter_title(arg0)
{
switch (arg0)
{
case UnknownEnum.Value_1:
return (global.lang == "en") ? "The Beginning" : "はじまり";
break;
case UnknownEnum.Value_2:
return (global.lang == "en") ? "A Cyber's World" : "サイバーワールド";
break;
case UnknownEnum.Value_3:
return (global.lang == "en") ? "Late Night" : "レイトナイト";
break;
case UnknownEnum.Value_4:
return (global.lang == "en") ? "Prophecy" : "予言";
break;
default:
return "- -";
break;
}
}
function get_version()
{
var version = "v17";
return version;
}
function get_chapter_icon_index(arg0)
{
switch (arg0)
{
case UnknownEnum.Value_1:
return UnknownEnum.Value_1;
break;
case UnknownEnum.Value_2:
return UnknownEnum.Value_2;
break;
case UnknownEnum.Value_3:
return scr_completed_chapter_any_slot(arg0) ? UnknownEnum.Value_4 : UnknownEnum.Value_3;
break;
case UnknownEnum.Value_4:
return UnknownEnum.Value_5;
break;
default:
return UnknownEnum.Value_0;
break;
}
}
function get_title()
{
var title = "DELTARUNE";
return title;
}
enum UnknownEnum
{
Value_0,
Value_1,
Value_2,
Value_3,
Value_4,
Value_5
} ();
|
|
6
|
_current_state = UnknownEnum.Value_0;
|
|
7
|
_chapter_in_progress = 0;
|
|
8
|
_chapter_completed = 0;
|
|
9
|
_target_chapter = -1;
|
|
10
|
_restart_room = false;
|
|
11
|
_launch_data = scr_init_launch_parametersscr_init_launch_parameters
function scr_init_launch_parameters()
{
var param_data = new launch_parameters();
var p_num = parameter_count();
if (p_num > 0)
{
for (var i = 0; i < p_num; i += 1)
{
var param = parameter_string(i + 1);
if (param == "launcher")
{
param_data.is_launcher = true;
}
else if (string_pos("switch_", param) != 0)
{
var param_parts = string_split(param, "_");
param_data.switch_id = real(param_parts[1]);
}
else if (string_pos("returning_", param) != 0)
{
var param_parts = string_split(param, "_");
param_data.returning = real(param_parts[1]);
}
}
}
return param_data;
}
function launch_parameters() constructor
{
is_launcher = true;
switch_id = -1;
returning = 0;
}
function get_chapter_switch_parameters()
{
var launch_data = new launch_parameters();
if (scr_is_switch_os() && variable_global_exists("switchlogin"))
launch_data.switch_id = global.switchlogin;
var parameters = [];
parameters[0] = "launcher";
parameters[1] = "switch_" + string(launch_data.switch_id);
parameters[2] = "returning_" + string(launch_data.returning);
var param_formatted = "";
for (var i = 0; i < array_length(parameters); i++)
param_formatted += (" " + string(parameters[i]));
return param_formatted;
}
function is_original_launcher(arg0)
{
return arg0.returning == 0;
} ();
|
|
12
|
_pending_titles = [];
|
|
13
|
_pending_title = -4;
|
|
14
|
_load_type = UnknownEnum.Value_0;
|
|
15
|
|
|
16
|
init = function()
|
|
17
|
{
|
|
18
|
var max_chapter = UnknownEnum.Value_7;
|
|
19
|
var max_available_chapter = UnknownEnum.Value_4;
|
|
20
|
_current_state = UnknownEnum.Value_1;
|
|
21
|
for (var i = 0; i < max_available_chapter; i++)
|
|
22
|
{
|
|
23
|
var chapter = i + 1;
|
|
24
|
if (scr_chapter_save_file_existsscr_chapter_save_file_exists
function scr_chapter_save_file_exists(arg0)
{
var _exists = false;
for (var i = 0; i < 3; i++)
{
_exists = ossafe_file_exists("filech" + string(arg0) + "_" + string(i));
if (_exists == true)
break;
}
return _exists;
}
function scr_chapter_save_file_exists_in_slot(arg0, arg1)
{
var _exists = ossafe_file_exists("filech" + string(arg0) + "_" + string(arg1));
return _exists;
}
function scr_completed_chapter_any_slot(arg0)
{
var _file_exists = false;
for (var i = 0; i < 3; i++)
{
if (ossafe_file_exists("filech" + string(arg0) + "_" + string(i + 3)))
{
_file_exists = true;
break;
}
}
return _file_exists;
}
function scr_completed_chapter_in_slot(arg0, arg1)
{
var _file_exists = ossafe_file_exists("filech" + string(arg0) + "_" + string(arg1 + 3));
return _file_exists;
}
function scr_fought_secret_boss_any_slot(arg0)
{
var _fought = false;
for (var i = 0; i < 3; i++)
{
var _slot = i;
var _result = scr_get_ura_value(arg0, _slot);
if (_result > 0)
{
_fought = true;
break;
}
}
return _fought;
}
function scr_get_ini_value(arg0, arg1, arg2)
{
var _ini_file = ossafe_ini_open("dr.ini");
var _ini_value = ini_read_real(scr_ini_chapter(arg0, arg1), arg2, 0);
ossafe_ini_close();
return _ini_value;
}
function scr_set_ini_value(arg0, arg1, arg2, arg3)
{
var iniwrite = ossafe_ini_open("dr.ini");
ini_write_real(scr_ini_chapter(arg0, arg1), arg2, arg3);
ossafe_ini_close();
}
function scr_get_ini_value_all_slots(arg0, arg1)
{
var _ini_file = ossafe_ini_open("dr.ini");
var _list = [];
for (var i = 0; i < 6; i++)
{
var _slot = i;
var _value = ini_read_real(scr_ini_chapter(arg0, _slot), arg1, 0);
_list[i][0] = _slot;
_list[i][1] = _value;
}
ossafe_ini_close();
return _list;
}
function scr_is_chapter_revealed(arg0)
{
if (arg0 == UnknownEnum.Value_1)
return true;
var completed_previous = scr_completed_chapter_any_slot(arg0 - 1);
var completed_current = scr_completed_chapter_any_slot(arg0);
var in_progress = scr_chapter_save_file_exists(arg0);
return completed_previous || completed_current || in_progress;
}
function get_highest_revealed_chapter()
{
var highest_revealed = UnknownEnum.Value_1;
for (var i = 0; i < UnknownEnum.Value_4; i++)
{
var chapter = i + 1;
if (!scr_is_chapter_revealed(chapter))
... (chapter) && !scr_completed_chapter_any_slot(chapter))
|
|
25
|
_chapter_in_progress = chapter;
|
|
26
|
}
|
|
27
|
if (_chapter_in_progress > 0)
|
|
28
|
_current_state = UnknownEnum.Value_2;
|
|
29
|
for (var i = 0; i < max_available_chapter; i++)
|
|
30
|
{
|
|
31
|
var chapter = i + 1;
|
|
32
|
if (scr_completed_chapter_any_slot(chapter))
|
|
33
|
_chapter_completed = chapter;
|
|
34
|
}
|
|
35
|
if (_chapter_completed > 0)
|
|
36
|
{
|
|
37
|
_current_state = UnknownEnum.Value_3;
|
|
38
|
if (_chapter_completed >= max_available_chapter)
|
|
39
|
_current_state = UnknownEnum.Value_4;
|
|
40
|
}
|
|
41
|
if (!is_original_launcher(_launch_data))
|
|
42
|
_current_state = UnknownEnum.Value_4;
|
|
43
|
change_state(_current_state);
|
|
44
|
};
|
|
45
|
|
|
46
|
change_state = function(arg0, arg1)
|
|
47
|
{
|
|
48
|
_current_state = arg0;
|
|
49
|
switch (_current_state)
|
|
50
|
{
|
|
51
|
case UnknownEnum.Value_4:
|
|
52
|
with (obj_screen_start)
|
|
53
|
clean_up();
|
|
54
|
start_bgm();
|
|
55
|
create_select_screen();
|
|
56
|
break;
|
|
57
|
case UnknownEnum.Value_1:
|
|
58
|
stop_bgm();
|
|
59
|
create_start_screen();
|
|
60
|
break;
|
|
61
|
case UnknownEnum.Value_2:
|
|
62
|
stop_bgm();
|
|
63
|
create_continue_screen();
|
|
64
|
break;
|
|
65
|
case UnknownEnum.Value_3:
|
|
66
|
stop_bgm();
|
|
67
|
create_start_next_screen();
|
|
68
|
break;
|
|
69
|
case UnknownEnum.Value_5:
|
|
70
|
with (obj_screen_start)
|
|
71
|
clean_up();
|
|
72
|
_pending_titles = arg1;
|
|
73
|
if (scr_is_switch_os())
|
|
74
|
{
|
|
75
|
if (array_length(_pending_titles) > 1)
|
|
76
|
_load_type = UnknownEnum.Value_1;
|
|
77
|
}
|
|
78
|
if (_load_type == UnknownEnum.Value_0)
|
|
79
|
{
|
|
80
|
_pending_title = _pending_titles[0];
|
|
81
|
var adjusted_list = [];
|
|
82
|
for (var i = 0; i < array_length(_pending_titles); i++)
|
|
83
|
{
|
|
84
|
if (_pending_titles[i] == _pending_title)
|
|
85
|
continue;
|
|
86
|
adjusted_list[array_length(adjusted_list)] = _pending_titles[i];
|
|
87
|
}
|
|
88
|
_pending_titles = adjusted_list;
|
|
89
|
create_load_prompt_screen(_pending_title.title);
|
|
90
|
}
|
|
91
|
else
|
|
92
|
{
|
|
93
|
create_load_prompt_multiple_screen(_pending_titles);
|
|
94
|
}
|
|
95
|
break;
|
|
96
|
case UnknownEnum.Value_6:
|
|
97
|
with (obj_screen_start)
|
|
98
|
clean_up();
|
|
99
|
create_load_deny_confirm_screen();
|
|
100
|
break;
|
|
101
|
case UnknownEnum.Value_0:
|
|
102
|
with (obj_screen_start)
|
|
103
|
clean_up();
|
|
104
|
break;
|
|
105
|
}
|
|
106
|
};
|
|
107
|
|
|
108
|
create_start_screen = function()
|
|
109
|
{
|
|
110
|
var start_text = (global.lang == "en") ? "Would you like to start from Chapter 1?" : "Chapter 1から始めますか?";
|
|
111
|
var yes_text = (global.lang == "en") ? "Yes" : "はい";
|
|
112
|
var no_text = (global.lang == "en") ? "No" : "いいえ";
|
|
113
|
var choices = [new create_choice(yes_text, UnknownEnum.Value_0), new create_choice(no_text, UnknownEnum.Value_1)];
|
|
114
|
var choice_offset = (global.lang == "ja") ? -20 : 0;
|
|
115
|
var start_screen = instance_create(0, 0, obj_screen_start);
|
|
116
|
start_screen.init(id, start_text, choices, choice_offset);
|
|
117
|
start_screen.fade_in();
|
|
118
|
};
|
|
119
|
|
|
120
|
create_continue_screen = function()
|
|
121
|
{
|
|
122
|
var continue_text = "Continue from Chapter " + string(_chapter_in_progress) + "?";
|
|
123
|
if (global.lang == "ja")
|
|
124
|
continue_text = "Chapter " + string(_chapter_in_progress) + "から続けますか?";
|
|
125
|
var yes_text = (global.lang == "en") ? "Yes" : "はい";
|
|
126
|
var no_text = (global.lang == "en") ? "No" : "いいえ";
|
|
127
|
var choices = [new create_choice(yes_text, UnknownEnum.Value_0), new create_choice(no_text, UnknownEnum.Value_1)];
|
|
128
|
var choice_offset = (global.lang == "ja") ? -20 : 0;
|
|
129
|
var start_screen = instance_create(0, 0, obj_screen_start);
|
|
130
|
start_screen.init(id, continue_text, choices, choice_offset);
|
|
131
|
start_screen.fade_in();
|
|
132
|
};
|
|
133
|
|
|
134
|
create_start_next_screen = function()
|
|
135
|
{
|
|
136
|
var continue_text = "Chapter " + string(_chapter_completed) + " was completed.";
|
|
137
|
if (global.lang == "ja")
|
|
138
|
continue_text = "Chapter " + string(_chapter_completed) + "はクリア済みです。";
|
|
139
|
var play_next_text = "Play Chapter " + string(_chapter_completed + 1);
|
|
140
|
if (global.lang == "ja")
|
|
141
|
play_next_text = "Chapter " + string(_chapter_completed + 1) + "をプレイ";
|
|
142
|
var chapter_select_text = (global.lang == "en") ? "Chapter Select" : "チャプター選択";
|
|
143
|
var choices = [new create_choice(play_next_text, UnknownEnum.Value_0), new create_choice(chapter_select_text, UnknownEnum.Value_1)];
|
|
144
|
var start_screen = instance_create(0, 0, obj_screen_start);
|
|
145
|
var choice_offset = (global.lang == "en") ? -70 : -100;
|
|
146
|
start_screen.init(id, continue_text, choices, choice_offset);
|
|
147
|
start_screen.fade_in();
|
|
148
|
};
|
|
149
|
|
|
150
|
create_select_screen = function()
|
|
151
|
{
|
|
152
|
var select_screen = instance_create(0, 0, obj_screen_select);
|
|
153
|
select_screen.init(id);
|
|
154
|
select_screen.fade_in();
|
|
155
|
};
|
|
156
|
|
|
157
|
create_load_prompt_screen = function(arg0)
|
|
158
|
{
|
|
159
|
var load_text = scr_get_app_title(arg0) + "Save Data found.\nImport this Save Data?\n(This will only be asked once.)";
|
|
160
|
if (global.lang == "ja")
|
|
161
|
load_text = scr_get_app_title(arg0) + "セーブデータを検出しました。\nこのセーブデータを取り込みますか?\n(この確認は一度しか行いません)";
|
|
162
|
var yes_text = (global.lang == "en") ? "Yes" : "はい";
|
|
163
|
var no_text = (global.lang == "en") ? "No" : "いいえ";
|
|
164
|
var choices = [new create_choice(yes_text, UnknownEnum.Value_0), new create_choice(no_text, UnknownEnum.Value_1)];
|
|
165
|
var choice_offset = (global.lang == "ja") ? -20 : 0;
|
|
166
|
var start_screen = instance_create(0, 0, obj_screen_start);
|
|
167
|
start_screen.init(id, load_text, choices, choice_offset);
|
|
168
|
start_screen.fade_in();
|
|
169
|
};
|
|
170
|
|
|
171
|
create_load_prompt_multiple_screen = function(arg0)
|
|
172
|
{
|
|
173
|
var load_text = "Multiple DELTARUNE Save Files found.\nWould you like to import one of these?\n(This will only be asked once.)\n \n ";
|
|
174
|
if (global.lang == "ja")
|
|
175
|
load_text = "複数の『DELTARUNE』セーブデータが存在します。\nどれか1つを取り込みますか?\n(この確認は一度しか行いません)\n \n ";
|
|
176
|
var choices = [];
|
|
177
|
for (var i = 0; i < array_length(arg0); i++)
|
|
178
|
{
|
|
179
|
var prev_title = arg0[i];
|
|
180
|
var title_choice = scr_get_app_title_choice_text(prev_title.title);
|
|
181
|
var new_choice = new create_choice(title_choice, prev_title);
|
|
182
|
choices[array_length(choices)] = new_choice;
|
|
183
|
}
|
|
184
|
var do_not_text = (global.lang == "en") ? "Do Not Import" : "取り込まない";
|
|
185
|
choices[array_length(choices)] = new create_choice(do_not_text, UnknownEnum.Value_1);
|
|
186
|
var start_screen = instance_create(0, 0, obj_screen_start);
|
|
187
|
start_screen.init(id, load_text, choices, 0, -32);
|
|
188
|
start_screen.fade_in();
|
|
189
|
};
|
|
190
|
|
|
191
|
create_load_deny_confirm_screen = function()
|
|
192
|
{
|
|
193
|
var deny_text = (global.lang == "en") ? "Proceed without importing?" : "取り込まずに進めますか?";
|
|
194
|
var yes_text = (global.lang == "en") ? "Yes" : "はい";
|
|
195
|
var no_text = (global.lang == "en") ? "No" : "いいえ";
|
|
196
|
var choices = [new create_choice(yes_text, UnknownEnum.Value_0), new create_choice(no_text, UnknownEnum.Value_1)];
|
|
197
|
var choice_offset = (global.lang == "ja") ? -20 : 0;
|
|
198
|
var start_screen = instance_create(0, 0, obj_screen_start);
|
|
199
|
start_screen.init(id, deny_text, choices, choice_offset);
|
|
200
|
start_screen.fade_in();
|
|
201
|
};
|
|
202
|
|
|
203
|
trigger_event = function(arg0, arg1)
|
|
204
|
{
|
|
205
|
var event_name = arg0;
|
|
206
|
var event_value = arg1;
|
|
207
|
switch (_current_state)
|
|
208
|
{
|
|
209
|
case UnknownEnum.Value_0:
|
|
210
|
if (arg0 == "init_complete")
|
|
211
|
init();
|
|
212
|
else if (arg0 == "load_prompt")
|
|
213
|
change_state(UnknownEnum.Value_5, arg1);
|
|
214
|
break;
|
|
215
|
case UnknownEnum.Value_5:
|
|
216
|
if (event_value == UnknownEnum.Value_0)
|
|
217
|
{
|
|
218
|
global.savedata = _pending_title.save_data;
|
|
219
|
_restart_room = true;
|
|
220
|
change_state(UnknownEnum.Value_0);
|
|
221
|
with (obj_init_console)
|
|
222
|
convert_loaded_file();
|
|
223
|
}
|
|
224
|
else if (event_value == UnknownEnum.Value_1)
|
|
225
|
{
|
|
226
|
if (_load_type == UnknownEnum.Value_0)
|
|
227
|
{
|
|
228
|
if (array_length(_pending_titles) > 0)
|
|
229
|
{
|
|
230
|
change_state(UnknownEnum.Value_0);
|
|
231
|
trigger_event("load_prompt", _pending_titles);
|
|
232
|
}
|
|
233
|
else
|
|
234
|
{
|
|
235
|
change_state(UnknownEnum.Value_6);
|
|
236
|
}
|
|
237
|
}
|
|
238
|
else
|
|
239
|
{
|
|
240
|
change_state(UnknownEnum.Value_6);
|
|
241
|
}
|
|
242
|
}
|
|
243
|
else
|
|
244
|
{
|
|
245
|
_pending_title = event_value;
|
|
246
|
global.savedata = _pending_title.save_data;
|
|
247
|
_restart_room = true;
|
|
248
|
change_state(UnknownEnum.Value_0);
|
|
249
|
with (obj_init_console)
|
|
250
|
convert_loaded_file();
|
|
251
|
}
|
|
252
|
break;
|
|
253
|
case UnknownEnum.Value_6:
|
|
254
|
if (event_value == UnknownEnum.Value_0)
|
|
255
|
{
|
|
256
|
_restart_room = true;
|
|
257
|
change_state(UnknownEnum.Value_0);
|
|
258
|
with (obj_init_console)
|
|
259
|
create_new_save_file();
|
|
260
|
}
|
|
261
|
else
|
|
262
|
{
|
|
263
|
room_restart();
|
|
264
|
}
|
|
265
|
break;
|
|
266
|
case UnknownEnum.Value_1:
|
|
267
|
if (event_value == UnknownEnum.Value_0)
|
|
268
|
{
|
|
269
|
_target_chapter = UnknownEnum.Value_1;
|
|
270
|
show_transition();
|
|
271
|
}
|
|
272
|
else
|
|
273
|
{
|
|
274
|
change_state(UnknownEnum.Value_4);
|
|
275
|
}
|
|
276
|
break;
|
|
277
|
case UnknownEnum.Value_2:
|
|
278
|
if (event_value == UnknownEnum.Value_0)
|
|
279
|
{
|
|
280
|
_target_chapter = _chapter_in_progress;
|
|
281
|
show_transition();
|
|
282
|
}
|
|
283
|
else
|
|
284
|
{
|
|
285
|
change_state(UnknownEnum.Value_4);
|
|
286
|
}
|
|
287
|
break;
|
|
288
|
case UnknownEnum.Value_3:
|
|
289
|
if (event_value == UnknownEnum.Value_0)
|
|
290
|
{
|
|
291
|
_target_chapter = _chapter_completed + 1;
|
|
292
|
show_transition();
|
|
293
|
}
|
|
294
|
else
|
|
295
|
{
|
|
296
|
change_state(UnknownEnum.Value_4);
|
|
297
|
}
|
|
298
|
break;
|
|
299
|
case UnknownEnum.Value_4:
|
|
300
|
if (event_name == "launch_game")
|
|
301
|
{
|
|
302
|
_target_chapter = event_value;
|
|
303
|
show_transition();
|
|
304
|
}
|
|
305
|
else if (event_value == UnknownEnum.Value_4)
|
|
306
|
{
|
|
307
|
quit();
|
|
308
|
}
|
|
309
|
else if (event_value == UnknownEnum.Value_5)
|
|
310
|
{
|
|
311
|
toggle_language();
|
|
312
|
}
|
|
313
|
break;
|
|
314
|
}
|
|
315
|
};
|
|
316
|
|
|
317
|
show_transition = function()
|
|
318
|
{
|
|
319
|
if (instance_exists(obj_screen_transition))
|
|
320
|
exit;
|
|
321
|
if (global.bgm != -4)
|
|
322
|
audio_sound_gain(global.bgm, 0, 500);
|
|
323
|
var sound_file = get_chapter_confirm_sound(_target_chapter);
|
|
324
|
var volume = 1;
|
|
325
|
if (_target_chapter == 3)
|
|
326
|
volume = 0.7;
|
|
327
|
audio_play_sound(sound_file, 50, 0, volume);
|
|
328
|
var delay = round(audio_sound_length(sound_file) * room_speed);
|
|
329
|
var transition = instance_create(0, 0, obj_screen_transition);
|
|
330
|
transition.init(id, _target_chapter, delay);
|
|
331
|
transition.start(launch_game);
|
|
332
|
};
|
|
333
|
|
|
334
|
launch_game = function(arg0)
|
|
335
|
{
|
|
336
|
audio_stop_all();
|
|
337
|
var chapstring = string(_target_chapter);
|
|
338
|
var parameters = get_chapter_switch_parameters();
|
|
339
|
if (scr_is_switch_os())
|
|
340
|
{
|
|
341
|
game_change("rom:/chapter" + chapstring + "_switch/", parameters);
|
|
342
|
}
|
|
343
|
else
|
|
344
|
{
|
|
345
|
switch (os_type)
|
|
346
|
{
|
|
347
|
case os_windows:
|
|
348
|
game_change("/chapter" + chapstring + "_windows", "-game data.win" + parameters);
|
|
349
|
break;
|
|
350
|
case os_ps4:
|
|
351
|
game_change("", "-game /app0/games/chapter" + chapstring + "_ps4/game.win" + parameters);
|
|
352
|
break;
|
|
353
|
case os_ps5:
|
|
354
|
game_change("", "-game /app0/games/chapter" + chapstring + "_ps5/game.win" + parameters);
|
|
355
|
break;
|
|
356
|
case os_macosx:
|
|
357
|
game_change("chapter" + chapstring + "_mac", parameters);
|
|
358
|
break;
|
|
359
|
}
|
|
360
|
}
|
|
361
|
};
|
|
362
|
|
|
363
|
quit = function()
|
|
364
|
{
|
|
365
|
game_end();
|
|
366
|
};
|
|
367
|
|
|
368
|
toggle_language = function()
|
|
369
|
{
|
|
370
|
if (_restart_room)
|
|
371
|
exit;
|
|
372
|
_restart_room = true;
|
|
373
|
var target_lang = (global.lang == "en") ? "ja" : "en";
|
|
374
|
global.lang = target_lang;
|
|
375
|
ossafe_ini_open("true_config.ini");
|
|
376
|
ini_write_string("LANG", "LANG", global.lang);
|
|
377
|
ossafe_ini_close();
|
|
378
|
ossafe_savedata_save();
|
|
379
|
if (!global.is_console)
|
|
380
|
room_restart();
|
|
381
|
};
|
|
382
|
|
|
383
|
start_bgm = function()
|
|
384
|
{
|
|
385
|
if (global.bgm == -4 || !audio_is_playing(global.bgm))
|
|
386
|
global.bgm = audio_play_sound(AUDIO_DRONE, 15, 1);
|
|
387
|
};
|
|
388
|
|
|
389
|
stop_bgm = function()
|
|
390
|
{
|
|
391
|
if (global.bgm != -4)
|
|
392
|
{
|
|
393
|
audio_stop_sound(global.bgm);
|
|
394
|
global.bgm = -4;
|
|
395
|
}
|
|
396
|
};
|
|
397
|
|
|
398
|
if (global.is_console)
|
|
399
|
{
|
|
400
|
var console_init = instance_create(0, 0, obj_init_console);
|
|
401
|
console_init.init(id, _launch_data);
|
|
402
|
}
|
|
403
|
else
|
|
404
|
{
|
|
405
|
var pc_init = instance_create(0, 0, obj_init_pc);
|
|
406
|
pc_init.init(id, _launch_data);
|
|
407
|
}
|
|
408
|
|
|
409
|
enum UnknownEnum
|
|
410
|
{
|
|
411
|
Value_0,
|
|
412
|
Value_1,
|
|
413
|
Value_2,
|
|
414
|
Value_3,
|
|
415
|
Value_4,
|
|
416
|
Value_5,
|
|
417
|
Value_6,
|
|
418
|
Value_7
|
|
419
|
}
|