Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_rhythmgame_Create_0

(view raw script w/o annotations or w/e)
1
y = 960;
2
depth = 110000;
3
tenna_boss = global.chapter == 3 && i_ex(obj_tenna_enemy);
4
if (tenna_boss)
5
    depth = 1000;
6
for (i = 0; i < 5; i++)
7
    remtrackpos[i] = 0;
8
song_initialized = 0;
9
loadsong = 0;
10
missnotetimer = 0;
11
missnotecon = 0;
12
minnote = 0;
13
trackpos = 0;
14
notespeed = 150;
15
speed_modifier = 1;
16
maxnote = 0;
17
buffer[0] = 0;
18
buffer[1] = 0;
19
pressedtimer[0] = 10;
20
pressedtimer[1] = 10;
21
bpm = 230;
22
notespacing = 60 / bpm;
23
meter = notespacing * 4;
24
startoffset = 0;
25
lineA = 0;
26
lineB = 0;
27
oneAtATime = true;
28
hold_start[0] = 0;
29
hold_end[0] = 0;
30
hold_start[1] = 0;
31
hold_end[1] = 0;
32
hold_score = 0;
33
heldnote[0] = 0;
34
heldnote[1] = 0;
35
heldnote[2] = 0;
36
points = 0;
37
total_score = 0;
38
score_scale = 2;
39
great = 0;
40
good = 0;
41
okay = 0;
42
miss = 0;
43
hurt_counter = 0;
44
safety_timer = 0;
45
safety_mode = false;
46
muted = false;
47
muted_time = 0;
48
averagetimeunit = 0;
49
safety_pos = 0;
50
smooth_timer = 0;
51
deltapos = 0;
52
score_var = 0;
53
fame_mul = 1;
54
fame = 6000;
55
total_fame = 6000;
56
max_fame = 12000;
57
max_score = 25000;
58
auto_play = false;
59
combo = 0;
60
max_combo = 0;
61
bg_timer = 0;
62
trackstart = 0;
63
goodScore = 0;
64
maxScore = 0;
65
track1 = -1;
66
track2 = -1;
67
track1_instance = -1;
68
track2_instance = -1;
69
note_hit_timer[0] = 0;
70
note_hit_timer[1] = 0;
71
note_hit_timer[2] = 0;
72
note_hit_score[0] = 0;
73
note_hit_score[1] = 0;
74
intro_con = -1;
75
camera_lerp = 0;
76
fame_tier = 0;
77
fixed_penalty = 0;
78
hardmode = 0;
79
leniency = 1.6;
80
bonus = 0;
81
song_id = -1;
82
track_length = 0;
83
scr_rhythmgame_init
scr_rhythmgame_init

function
scr_rhythmgame_init(arg0, arg1, arg2 = false)
{ instrument = arg0; note_color[0] = #01EA9E; note_color[1] = #17EEFF; note_color[2] = c_orange; if (instrument == 0) { scr_rhythmgame_notechart_lead(arg1); if (!arg2) exit; performer = instance_create(280, 316, obj_rhythmgame_performer); performer.sprite_index = spr_kris_rock_2; performer.image_speed = 0.5; performer.name = "kris"; performer.loop = false; } else if (instrument == 1) { note_color[0] = #D1176A; note_color[1] = #EA79C8; scr_rhythmgame_notechart_drums(arg1); if (!arg2) exit; performer = instance_create(56, 281, obj_rhythmgame_performer); performer.sprite_index = spr_susie_drum; performer.image_speed = 0.5; performer.loop = false; performer.name = "susie"; performer.animspeed = 3; } else if (instrument == 2) { note_color[0] = c_green; note_color[1] = #B5E61D; note_color[2] = c_lime; scr_rhythmgame_notechart_vocals(arg1); if (!arg2) exit; performer = instance_create(486, 304, obj_rhythmgame_performer); performer.sprite_index = spr_ralsei_rock_1; performer.image_speed = 0; performer.loop = true; performer.name = "ralsei"; performer.animspeed = 0.5; performer.mid = spr_ralsei_sing_polite; performer.idle = spr_ralsei_sing_polite_closed; } performer.image_xscale = 2; performer.image_yscale = 2; performer.depth = depth - 10; performer.rhythmer = id; }
(0, song_id, true);
84
drums = instance_create(170, y, obj_rhythmgame_chart);
85
with (drums)
86
{
87
    depth = other.depth - 10;
88
    
scr_rhythmgame_init
scr_rhythmgame_init

function
scr_rhythmgame_init(arg0, arg1, arg2 = false)
{ instrument = arg0; note_color[0] = #01EA9E; note_color[1] = #17EEFF; note_color[2] = c_orange; if (instrument == 0) { scr_rhythmgame_notechart_lead(arg1); if (!arg2) exit; performer = instance_create(280, 316, obj_rhythmgame_performer); performer.sprite_index = spr_kris_rock_2; performer.image_speed = 0.5; performer.name = "kris"; performer.loop = false; } else if (instrument == 1) { note_color[0] = #D1176A; note_color[1] = #EA79C8; scr_rhythmgame_notechart_drums(arg1); if (!arg2) exit; performer = instance_create(56, 281, obj_rhythmgame_performer); performer.sprite_index = spr_susie_drum; performer.image_speed = 0.5; performer.loop = false; performer.name = "susie"; performer.animspeed = 3; } else if (instrument == 2) { note_color[0] = c_green; note_color[1] = #B5E61D; note_color[2] = c_lime; scr_rhythmgame_notechart_vocals(arg1); if (!arg2) exit; performer = instance_create(486, 304, obj_rhythmgame_performer); performer.sprite_index = spr_ralsei_rock_1; performer.image_speed = 0; performer.loop = true; performer.name = "ralsei"; performer.animspeed = 0.5; performer.mid = spr_ralsei_sing_polite; performer.idle = spr_ralsei_sing_polite_closed; } performer.image_xscale = 2; performer.image_yscale = 2; performer.depth = depth - 10; performer.rhythmer = id; }
(1, other.song_id, true);
89
    mashcon = 1;
90
    rhythmgame = other.id;
91
}
92
vocals = instance_create(470, y, obj_rhythmgame_chart);
93
with (vocals)
94
{
95
    depth = other.depth - 10;
96
    
scr_rhythmgame_init
scr_rhythmgame_init

function
scr_rhythmgame_init(arg0, arg1, arg2 = false)
{ instrument = arg0; note_color[0] = #01EA9E; note_color[1] = #17EEFF; note_color[2] = c_orange; if (instrument == 0) { scr_rhythmgame_notechart_lead(arg1); if (!arg2) exit; performer = instance_create(280, 316, obj_rhythmgame_performer); performer.sprite_index = spr_kris_rock_2; performer.image_speed = 0.5; performer.name = "kris"; performer.loop = false; } else if (instrument == 1) { note_color[0] = #D1176A; note_color[1] = #EA79C8; scr_rhythmgame_notechart_drums(arg1); if (!arg2) exit; performer = instance_create(56, 281, obj_rhythmgame_performer); performer.sprite_index = spr_susie_drum; performer.image_speed = 0.5; performer.loop = false; performer.name = "susie"; performer.animspeed = 3; } else if (instrument == 2) { note_color[0] = c_green; note_color[1] = #B5E61D; note_color[2] = c_lime; scr_rhythmgame_notechart_vocals(arg1); if (!arg2) exit; performer = instance_create(486, 304, obj_rhythmgame_performer); performer.sprite_index = spr_ralsei_rock_1; performer.image_speed = 0; performer.loop = true; performer.name = "ralsei"; performer.animspeed = 0.5; performer.mid = spr_ralsei_sing_polite; performer.idle = spr_ralsei_sing_polite_closed; } performer.image_xscale = 2; performer.image_yscale = 2; performer.depth = depth - 10; performer.rhythmer = id; }
(2, other.song_id, true);
97
    auto_play = true;
98
    rhythmgame = other.id;
99
}
100
spooked = false;
101
paused = false;
102
note_streak = 0;
103
score_x = 550;
104
solo_difficulty = -1;
105
solo_con = 0;
106
timestamp[0] = scr_round_to_beat(37.56, bpm, 1) - notespacing;
107
timestamp[1] = scr_round_to_beat(58.43, bpm, 1) - notespacing;
108
timestamp[2] = scr_round_to_beat(79.3, bpm, 1) - notespacing;
109
timestamp[3] = scr_round_to_beat(100.17, bpm, 1) - notespacing;
110
track1_id = "ch3_karaoke_no_guitar.ogg";
111
track2_id = "ch3_karaoke_full.ogg";
112
dynamic_solo = false;
113
skip_invuln = false;
114
songset = false;
115
if (!i_ex(obj_music_event_manager))
116
    musicm = instance_create(x, y, obj_music_event_manager);
117
else
118
    musicm = obj_music_event_manager;
119
musicm.bpm = bpm;
120
musicm.loop = false;
121
musicm.beat_offset += bpm / 2;
122
show_debug = false;
123
button_swap = 
scr_buttons_swapped
scr_buttons_swapped

function
scr_buttons_swapped()
{ if (global.is_console || obj_gamecontroller.gamepad_active) { if (global.button0 == gp_face1 && global.button1 == gp_face2) return false; else if (global.button0 == gp_face2 && global.button1 == gp_face1) return true; else return
scr_buttons_swapped_ext();
} else if (global.input_k[4] != ord("Z") || global.input_k[5] != ord("X")) { return
scr_buttons_swapped_ext();
} else { return false; } }
();
124
effects = instance_create(x, y, obj_rhythmgame_effects);
125
effects.depth = depth - 40;
126
image_speed = 0;
127
fade = 1;
128
timer = 0;
129
debugsong = false;
130
replayquit = false;
131
text_timer = -1;
132
last_note_score = 0;
133
note_text = "GREAT";
134
score_color = c_yellow;
135
camy = cameray();
136
camx = camerax();
137
if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
138
{
139
    if (keyboard_check(ord("1")))
140
    {
141
        song_id = 1;
142
        
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("song set to practice song");
143
        debugsong = true;
144
    }
145
    else if (keyboard_check(ord("2")))
146
    {
147
        song_id = 2;
148
        
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("song set to tenna_battle");
149
        debugsong = true;
150
    }
151
    else if (keyboard_check(ord("3")))
152
    {
153
        song_id = 3;
154
        
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("song set to tutorial song");
155
        debugsong = true;
156
    }
157
    else if (keyboard_check(ord("4")))
158
    {
159
        song_id = 4;
160
        
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("song set to brand new board 4 track");
161
        debugsong = true;
162
    }
163
    else if (keyboard_check(ord("5")))
164
    {
165
        song_id = 5;
166
        
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("song set to rudebuster_boss");
167
        debugsong = true;
168
    }
169
    else if (keyboard_check(ord("6")))
170
    {
171
        song_id = 6;
172
        
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("song set to battle_vapor");
173
        debugsong = true;
174
    }
175
    else
176
    {
177
        song_id = 0;
178
        
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("song set to default, song,");
179
        if (keyboard_check(ord("0")))
180
        {
181
            
scr_debug_print
scr_debug_print

function
scr_debug_print(arg0)
{ } function print_message(arg0) { } function debug_print(arg0) { } function scr_debug_clear_all() { }
("(but also skipping its intro)");
182
            debugsong = true;
183
        }
184
    }
185
}
186
song_loaded = false;
187
lyric_time[0] = 0;
188
lyric_count = 0;
189
lyrics[0] = "";
190
censored_lyrics[0] = "";
191
lyrics_index = 0;
192
word_index = 0;
193
lyric_start_index = 0;
194
lyric_start[0] = 0;
195
lyric_end[0] = 0;
196
line_switch = -1;
197
current_lyric = "";
198
censored_lyric = "";
199
update_lyrics = false;
200
bg_con = 0;
201
floor_color = #274573;
202
special_song = 0;
203
chart_start = 0;
204
chart_end = 0;
205
main_vol = 1;
206
tracklist = scr_rhythmgame_songlist();
207
buttonswap = false;
208
if (tenna_boss)
209
{
210
    debug_print("loadin' tenna boss logic");
211
    song_id = 2;
212
    speed_modifier = 2;
213
    if (obj_tenna_enemy.completedrhythmwithouttakingdamage == 1)
214
        speed_modifier = 2.5;
215
    if (obj_tenna_enemy.completedrhythmwithouttakingdamage2 == 1)
216
        speed_modifier = 3;
217
}
218
init = 0;
219
song_done = false;
220
game_won = false;
221
lose_con = 0;
222
loop = false;
223
loop_start = 0;
224
last_score[0] = 0;
225
last_score[1] = 0;
226
last_score[2] = 0;
227
last_score[3] = 0;
228
last_score[4] = 0;
229
maxpos = 0;
230
fastforward = false;
231
bg_brightness = 1;
232
stage_tint = 0;
233
show_chart = 0;
234
focus = 0;
235
chart_lerp = 0;
236
chart_ease = 0;
237
kchart_lerp = 0;
238
kchart_ease = 0;
239
siner = 0;
240
miss_timer = 0;
241
tutorial = 0;
242
timer = 0;
243
freeplay = 0;
244
spotlight_color[0] = #2D2D2D;
245
spotlight_color[1] = #BD0F17;
246
spotlight_color[2] = #4A7CE8;
247
spotlight_color[3] = #79D7FF;
248
red_glow = 0;
249
hue = 0;
250
rainbow_con = 0;
251
smooth = 0;
252
stage_con = 0;
253
beat = false;
254
boss_delay = 45;
255
if (i_ex(obj_tenna_zoom) && obj_tenna_zoom.minigameinsanity == true)
256
    boss_delay = 17;
257
turn_length = 270;
258
invc = 0;
259
hurt_flash = 0;
260
difficulty = 5;
261
silhouette_surf = -4;
262
combo_surf = -4;
263
palette_active = true;
264
palette_pos = 1;
265
button_alpha = 0;
266
tutorial_ready = true;
267
brightness = 1;
268
target_brightness = 1;
269
replayversion = false;
270
if (global.plot >= 150 && room != room_dw_rhythm_empty && !tenna_boss)
271
    replayversion = true;
272
if (replayversion && freeplay == 0)
273
    freeplay = 1;
274
savemiss = 0;
275
savegreat = 0;
276
saveokay = 0;
277
savegood = 0;
278
pitch = 1;
279
reloading = false;
280
backup_trackpos = 0;
281
looptimer = 0;
282
lyric_surface = -4;
283
lyric_sprite[0] = -4;
284
lyric_sprite[1] = -4;
285
failsafe = 0;
286
guitar_sound[0] = snd_guitarpickup3;
287
guitar_sound[1] = snd_guitarpickup4;
288
guitar_sound[2] = snd_guitarpickup1;
289
guitar_sound[3] = snd_guitarpickup2;
290
miss_sound[0] = snd_guitarerror;
291
miss_sound[1] = snd_guitarerror2;
292
293
emergency_reload = function()
294
{
295
    if (!i_ex(track1))
296
    {
297
        if (trackpos <= 0)
298
            trackpos = 0.1;
299
        debug_print("Emergency reload called. Resuming from " + string(trackpos));
300
        remtrackpos[0] = trackpos;
301
        track1 = snd_init(track1_id);
302
        track2 = snd_init(track2_id);
303
        if (loop)
304
        {
305
            track1_instance = mus_loop(track1);
306
            track2_instance = mus_loop(track2);
307
        }
308
        else
309
        {
310
            track1_instance = mus_play(track1);
311
            track2_instance = mus_play(track2);
312
        }
313
        if (solo_con == 2)
314
        {
315
            track1_main = track1_solo_instance;
316
            track2_main = track2_solo_instance;
317
        }
318
        else
319
        {
320
            track1_main = track1_instance;
321
            track2_main = track2_instance;
322
        }
323
        snd_pitch(track1_instance, 0);
324
        snd_pitch(track2_instance, 0);
325
        if (song_id == 0)
326
        {
327
            track1_solo = snd_init(track1_id);
328
            track2_solo = snd_init(track2_id);
329
            track1_solo_instance = mus_play(track1_solo);
330
            track2_solo_instance = mus_play(track2_solo);
331
            snd_pitch(track1_solo_instance, 0);
332
            snd_pitch(track2_solo_instance, 0);
333
        }
334
        pitch = 0;
335
        reloading = true;
336
        if (solo_con == 2)
337
        {
338
            mus_volume(track1_instance, 0, 0);
339
            mus_volume(track2_instance, 0, 0);
340
            mus_volume(track1_solo_instance, 0, 0);
341
            mus_volume(track2_solo_instance, 1, 0);
342
        }
343
        else
344
        {
345
            if (oneAtATime)
346
                mus_volume(track1_instance, 0, 0);
347
            else
348
                mus_volume(track1_instance, 1, 0);
349
            mus_volume(track2_instance, 1, 0);
350
            if (song_id == 0)
351
            {
352
                mus_volume(track1_solo_instance, 0, 0);
353
                mus_volume(track2_solo_instance, 0, 0);
354
            }
355
        }
356
        if (tenna_boss)
357
        {
358
            global.batmusic[0] = track1;
359
            global.batmusic[1] = track1_instance;
360
            global.batmusic[2] = track2;
361
            global.batmusic[3] = track2_instance;
362
        }
363
    }
364
};
365
366
spotlight_col = function(arg0)
367
{
368
    var _combreq = tenna_boss ? min(15, maxnote) : 15;
369
    if (fame >= 12000 && combo >= _combreq)
370
    {
371
        if (stage_con == 0)
372
        {
373
            stage_con = 2;
374
            snd_play_volume(snd_crowd_cheer_single, 0.7);
375
        }
376
        if (smooth)
377
        {
378
            if (arg0 == 0)
379
                hue = (hue + 4) % 255;
380
        }
381
        else if (beat)
382
        {
383
            hue += 106.25;
384
            hue %= 255;
385
            beat = false;
386
        }
387
        var _rainbow = (hue + (arg0 * 85)) % 255;
388
        return make_color_hsv(_rainbow, 43, 223);
389
    }
390
    if (stage_con >= 1)
391
        stage_con = 0;
392
    var _score = fame + hold_score;
393
    var _col = merge_color(spotlight_color[1], spotlight_color[2], clamp01(inverselerp(3000, 4000, fame)));
394
    var _sscore = (_score - 4000) + (arg0 * 2000);
395
    if ((fame + hold_score) < 6000)
396
        _col = merge_color(spotlight_color[0], _col, clamp01(inverselerp(0, 2000, _sscore)));
397
    else
398
        _col = merge_color(_col, spotlight_color[3], clamp01(inverselerp(6000, 8000, _sscore)));
399
    return _col;
400
};
401
402
buttonb_p = function()
403
{
404
    if (button_swap)
405
        return button2_p();
406
    else
407
        return button1_p();
408
};
409
410
buttonb_h = function()
411
{
412
    if (button_swap)
413
        return button2_h();
414
    else
415
        return button1_h();
416
};
417
418
buttonr_p = function()
419
{
420
    if (button_swap)
421
        return button1_p();
422
    else
423
        return button2_p();
424
};
425
426
buttonr_h = function()
427
{
428
    if (button_swap)
429
        return button1_h();
430
    else
431
        return button2_h();
432
};
433
434
draw_rhythm_buttons = function(arg0, arg1, arg2)
435
{
436
    var _played = 0;
437
    var _swap = button_swap;
438
    var _ll = _swap ? 5 : 4;
439
    var _rr = _swap ? 4 : 5;
440
    if (global.is_console || obj_gamecontroller.gamepad_active)
441
    {
442
        _played = note_hit_timer[0] > 0;
443
        draw_sprite_ext(
scr_getbuttonsprite
scr_getbuttonsprite

function
scr_getbuttonsprite(arg0, arg1)
{ var control = arg0; var isString = arg1; var button = noone; var is_dualshock = os_type == os_ps4 || global.gamepad_type == "Sony DualShock 4"; var is_dualsense = os_type == os_ps5 || global.gamepad_type == "DualSense Wireless Controller"; var button_sprite = button_questionmark; var invert = is_dualshock && (global.typer == 50 || global.typer == 70 || global.typer == 71); if (isString) { if (control == "A") { button_sprite = button_xbox_left; if (scr_is_switch_os()) { button_sprite = button_switch_left_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_left_dark : button_ps4_dpad_left; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_left_dark : button_ps5_dpad_left; } return button_sprite; } if (control == "D") { button_sprite = button_xbox_right; if (scr_is_switch_os()) { button_sprite = button_switch_right_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_right_dark : button_ps4_dpad_right; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_right_dark : button_ps5_dpad_right; } return button_sprite; } if (control == "W") { button_sprite = button_xbox_up; if (scr_is_switch_os()) { button_sprite = button_switch_up_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_up_dark : button_ps4_dpad_up; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_up_dark : button_ps5_dpad_up; } return button_sprite; } if (control == "S") { button_sprite = button_xbox_down; if (scr_is_switch_os()) { button_sprite = button_switch_down_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_down_dark : button_ps4_dpad_down; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_down_dark : button_ps5_dpad_down; } return button_sprite; } if (control == "l") { button_sprite = button_xbox_left_bumper; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l1; if (is_dualsense) button_sprite = button_ps5_l1; } if (scr_is_switch_os()) button_sprite = button_switch_l_0; return button_sprite; } if (control == "L") { button_sprite = button_xbox_left_trigger; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l2; if (is_dualsense) button_sprite = button_ps5_l2; } if (scr_is_switch_os()) button_sprite = button_switch_zl_0; return button_sprite; } if (control == "r") { button_sprite = button_xbox_right_bumper; if (is_dualshock || is_dualsense) ...
(global.input_g[_ll], false), 0, (arg0 - 104) + (chart_ease * 34), (bottomy - 8) + (_played * 2), 2, 2, 0, arg1, arg2);
444
        _played = note_hit_timer[1] > 0;
445
        draw_sprite_ext(
scr_getbuttonsprite
scr_getbuttonsprite

function
scr_getbuttonsprite(arg0, arg1)
{ var control = arg0; var isString = arg1; var button = noone; var is_dualshock = os_type == os_ps4 || global.gamepad_type == "Sony DualShock 4"; var is_dualsense = os_type == os_ps5 || global.gamepad_type == "DualSense Wireless Controller"; var button_sprite = button_questionmark; var invert = is_dualshock && (global.typer == 50 || global.typer == 70 || global.typer == 71); if (isString) { if (control == "A") { button_sprite = button_xbox_left; if (scr_is_switch_os()) { button_sprite = button_switch_left_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_left_dark : button_ps4_dpad_left; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_left_dark : button_ps5_dpad_left; } return button_sprite; } if (control == "D") { button_sprite = button_xbox_right; if (scr_is_switch_os()) { button_sprite = button_switch_right_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_right_dark : button_ps4_dpad_right; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_right_dark : button_ps5_dpad_right; } return button_sprite; } if (control == "W") { button_sprite = button_xbox_up; if (scr_is_switch_os()) { button_sprite = button_switch_up_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_up_dark : button_ps4_dpad_up; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_up_dark : button_ps5_dpad_up; } return button_sprite; } if (control == "S") { button_sprite = button_xbox_down; if (scr_is_switch_os()) { button_sprite = button_switch_down_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_down_dark : button_ps4_dpad_down; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_down_dark : button_ps5_dpad_down; } return button_sprite; } if (control == "l") { button_sprite = button_xbox_left_bumper; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l1; if (is_dualsense) button_sprite = button_ps5_l1; } if (scr_is_switch_os()) button_sprite = button_switch_l_0; return button_sprite; } if (control == "L") { button_sprite = button_xbox_left_trigger; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l2; if (is_dualsense) button_sprite = button_ps5_l2; } if (scr_is_switch_os()) button_sprite = button_switch_zl_0; return button_sprite; } if (control == "r") { button_sprite = button_xbox_right_bumper; if (is_dualshock || is_dualsense) ...
(global.input_g[_rr], false), 0, (arg0 + 81) - (chart_ease * 34), (bottomy - 8) + (_played * 2), 2, 2, 0, arg1, arg2);
446
    }
447
    else
448
    {
449
        draw_set_alpha(arg2);
450
        var _input_name = 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(_ll);
451
        _played = note_hit_timer[0] > 0;
452
        var _buttonx = (arg0 - 80) + (chart_ease * 34);
453
        var _buttony = (bottomy - 16) + (_played * 2);
454
        var _scale = 2;
455
        draw_set_colour(_played ? c_yellow : c_white);
456
        draw_set_halign(fa_right);
457
        draw_text_transformed_outline(_buttonx, _buttony, _input_name, _scale, _scale, 0);
458
        _played = note_hit_timer[1] > 0;
459
        _input_name = string(
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(_rr));
460
        _buttonx = (arg0 + 82) - (chart_ease * 34);
461
        _buttony = (bottomy - 16) + (_played * 2);
462
        draw_set_halign(fa_left);
463
        draw_set_colour(_played ? c_yellow : c_white);
464
        draw_text_transformed_outline(_buttonx, _buttony, _input_name, _scale, _scale, 0);
465
        draw_set_valign(fa_top);
466
        draw_set_alpha(1);
467
    }
468
};
469
470
track_jump = function(arg0)
471
{
472
    smooth_timer = 6;
473
    safety_mode = true;
474
    safety_pos = trackpos;
475
    remtrackpos[4] += arg0;
476
    remtrackpos[3] += arg0;
477
    remtrackpos[2] += arg0;
478
    remtrackpos[1] += arg0;
479
    remtrackpos[0] += arg0;
480
};