Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_ch3_GSB02_Create_0

(view raw script w/o annotations or w/e)
1
con = -1;
2
customcon = 0;
3
camcon = 0;
4
timer = 0;
5
spotlight_con = -1;
6
sound_check = false;
7
sound_check_won = false;
8
game_start = false;
9
game_active = false;
10
game_retry = false;
11
border_switch = false;
12
laugh_track = false;
13
laugh_track_timer = 0;
14
laugh_track_finish = false;
15
left_button = 
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; }
(4);
16
right_button = 
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; }
(5);
17
if (
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; } }
())
18
{
19
    left_button = 
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; }
(5);
20
    right_button = 
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; }
(4);
21
}
22
if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
23
{
24
    if (!
scr_havechar
scr_havechar

function
scr_havechar(arg0)
{ var checker = arg0; if (checker == "susie" || checker == "su" || checker == "s") checker = 2; if (checker == "ralsei" || checker == "ra" || checker == "r") checker = 3; if (checker == "noelle" || checker == "no" || checker == "n") checker = 4; _rreturn = 0; if (global.char[0] == checker) _rreturn = 1; if (global.char[1] == checker) _rreturn = 1; if (global.char[2] == checker) _rreturn = 1; return _rreturn; }
(2) || !
scr_havechar
scr_havechar

function
scr_havechar(arg0)
{ var checker = arg0; if (checker == "susie" || checker == "su" || checker == "s") checker = 2; if (checker == "ralsei" || checker == "ra" || checker == "r") checker = 3; if (checker == "noelle" || checker == "no" || checker == "n") checker = 4; _rreturn = 0; if (global.char[0] == checker) _rreturn = 1; if (global.char[1] == checker) _rreturn = 1; if (global.char[2] == checker) _rreturn = 1; return _rreturn; }
(3))
25
    {
26
        
scr_losechar
scr_losechar

function
scr_losechar()
{ global.char[2] = 0; global.char[1] = 0; with (obj_darkcontroller) { chartotal = 0; havechar[0] = 0; havechar[1] = 0; havechar[2] = 0; havechar[3] = 0; for (i = 0; i < 3; i += 1) { global.faceaction[i] = 0; if (global.char[i] != 0) chartotal += 1; if (global.char[i] == 1) { havechar[0] = 1; charpos[0] = i; } if (global.char[i] == 2) { havechar[1] = 1; charpos[1] = i; } if (global.char[i] == 3) { havechar[2] = 1; charpos[2] = i; } if (global.char[i] == 4) { havechar[3] = 1; charpos[3] = i; } } } global.submenu = 0; global.charselect = -1; for (i = 0; i < 36; i += 1) global.submenucoord[i] = 0; }
();
27
        
scr_getchar
scr_getchar

function
scr_getchar(arg0)
{ switch (arg0) { case "kr": case "kris": arg0 = 1; break; case "su": case "susie": arg0 = 2; break; case "ra": case "ralsei": arg0 = 3; break; case "no": case "noelle": arg0 = 4; break; } var characterToGet = arg0; getchar = 0; if (global.char[0] == 0) { global.char[0] = characterToGet; getchar = 1; } if (global.char[1] == 0 && getchar == 0) { global.char[1] = characterToGet; getchar = 1; } if (global.char[2] == 0 && getchar == 0) { global.char[2] = characterToGet; getchar = 1; } with (obj_darkcontroller) { chartotal = 0; havechar[0] = 0; havechar[1] = 0; havechar[2] = 0; havechar[3] = 0; for (i = 0; i < 3; i += 1) { global.faceaction[i] = 0; if (global.char[i] != 0) chartotal += 1; if (global.char[i] == 1) { havechar[0] = 1; charpos[0] = i; } if (global.char[i] == 2) { havechar[1] = 1; charpos[1] = i; } if (global.char[i] == 3) { havechar[2] = 1; charpos[2] = i; } if (global.char[i] == 4) { havechar[3] = 1; charpos[3] = i; } } } }
(2);
28
        
scr_getchar
scr_getchar

function
scr_getchar(arg0)
{ switch (arg0) { case "kr": case "kris": arg0 = 1; break; case "su": case "susie": arg0 = 2; break; case "ra": case "ralsei": arg0 = 3; break; case "no": case "noelle": arg0 = 4; break; } var characterToGet = arg0; getchar = 0; if (global.char[0] == 0) { global.char[0] = characterToGet; getchar = 1; } if (global.char[1] == 0 && getchar == 0) { global.char[1] = characterToGet; getchar = 1; } if (global.char[2] == 0 && getchar == 0) { global.char[2] = characterToGet; getchar = 1; } with (obj_darkcontroller) { chartotal = 0; havechar[0] = 0; havechar[1] = 0; havechar[2] = 0; havechar[3] = 0; for (i = 0; i < 3; i += 1) { global.faceaction[i] = 0; if (global.char[i] != 0) chartotal += 1; if (global.char[i] == 1) { havechar[0] = 1; charpos[0] = i; } if (global.char[i] == 2) { havechar[1] = 1; charpos[1] = i; } if (global.char[i] == 3) { havechar[2] = 1; charpos[2] = i; } if (global.char[i] == 4) { havechar[3] = 1; charpos[3] = i; } } } }
(3);
29
        room_restart();
30
    }
31
}
32
if (global.plot < 140)
33
{
34
    con = 0;
35
    with (obj_border_controller)
36
        hide_border();
37
}
38
else
39
{
40
    con = 31;
41
    game_retry = true;
42
    snd_free_all();
43
    global.interact = 0;
44
    with (obj_mainchara)
45
        visible = 0;
46
    with (obj_caterpillarchara)
47
        visible = 0;
48
    var retry_screen = instance_create(0, 0, obj_gameover_retry);
49
    if (os_type == os_ps4 || os_type == os_ps5)
50
        retry_screen.split_screen_timer = -3;
51
}
52
cheerloop = 0;
53
cheercon = -1;
54
lifttimer = 0;
55
spotlight[0] = -4;
56
rhythmgame_con = 0;
57
krispose = 0;
58
instrument_offset[0] = 0;
59
instrument[0] = -4;
60
instruments = 0;
61
silhouettes = false;
62
raiser = 0;
63
pistonsound = 0;
64
fulltimer = 0;
65
susie_spotlight = false;
66
ralsei_spotlight = false;
67
kris_spotlight = false;
68
kris_flash = false;
69
show_debug = false;
70
audience_cheer = instance_create(0, 0, obj_ch3_audience);
71
audience_cheer.audience_active = true;
72
audience_cheer.blend_mode = 13788985;
73
tutorial_con = 0;
74
tutorial_current_con = tutorial_con;
75
tutorial_advance = false;
76
tutorial_loaded = false;
77
tv_time = -4;
78
tv_time_con = 0;
79
tv_time_active = false;
80
81
start_song = function(arg0)
82
{
83
    with (obj_actor)
84
        visible = false;
85
    var _retry = 
scr_flag_get
scr_flag_get

function
scr_flag_get(arg0)
{ var flag_value = global.flag[arg0]; return flag_value; }
(1096) > 0;
86
    var y_offset = _retry ? 0 : 100;
87
    if (global.plot >= 150)
88
        y_offset = 0;
89
    with (obj_rhythmgame)
90
    {
91
        with (performer)
92
        {
93
            y += y_offset;
94
            visible = true;
95
            sprite_index = spr_kris_rock_2;
96
        }
97
        with (drums.performer)
98
        {
99
            y += y_offset;
100
            visible = true;
101
            sprite_index = spr_susie_drum;
102
        }
103
        with (vocals.performer)
104
        {
105
            y += y_offset;
106
            visible = true;
107
        }
108
    }
109
    var is_hardmode = variable_global_exists("band_difficulty") && global.band_difficulty == 1;
110
    var is_replay = global.plot >= 150;
111
    with (obj_rhythmgame)
112
    {
113
        replayversion = is_replay;
114
        freeplay = is_replay;
115
        hardmode = is_hardmode;
116
        song_id = arg0;
117
        event_user(0);
118
    }
119
    if (variable_global_exists("band_difficulty"))
120
        global.band_difficulty = 0;
121
    with (obj_rhythmgame_spotlight_solo)
122
        con = 2;
123
};
124
125
end_song = function(arg0 = true)
126
{
127
    with (obj_rhythmgame_spotlight_solo)
128
        con = 0;
129
    with (obj_rhythmgame)
130
    {
131
        if (arg0)
132
            event_user(1);
133
        with (performer)
134
        {
135
            visible = false;
136
            y -= 100;
137
        }
138
        with (drums.performer)
139
        {
140
            visible = false;
141
            y -= 100;
142
        }
143
        with (vocals.performer)
144
        {
145
            visible = false;
146
            y -= 100;
147
        }
148
    }
149
};