Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b1rocks2_Step_0

(view raw script w/o annotations or w/e)
1
if (player == 0)
2
{
3
    with (obj_mainchara_board)
4
    {
5
        if (name == "kris")
6
            other.player = id;
7
    }
8
}
9
scr_board_populatevars
scr_board_populatevars

function
scr_board_populatevars()
{ if (!variable_instance_exists(id, "kris")) kris = 0; if (!variable_instance_exists(id, "susie")) susie = 0; if (!variable_instance_exists(id, "ralsei")) ralsei = 0; if (kris == 0) { with (obj_mainchara_board) { if (name == "kris") other.kris = id; } } if (ralsei == 0) { with (obj_mainchara_board) { if (name == "ralsei") other.ralsei = id; } } if (susie == 0) { with (obj_mainchara_board) { if (name == "susie") other.susie = id; } } }
();
10
if (active == 1)
11
{
12
    if (sucon != 0 && obj_board_camera.con != 0)
13
        sucon = 0;
14
    if (sucon == 0 && obj_board_camera.con == 0)
15
    {
16
        if (obj_b1rocks1.sulazy == 1)
17
            sulazy = 1;
18
        if (obj_b1rocks1.sucomplain == 1)
19
            sucomplain = 1;
20
        if (obj_b1rocks1.supickup == 1)
21
            supickup = 1;
22
        ralsei.follow = 0;
23
        
scr_pathfind_end
scr_pathfind_end

function
scr_pathfind_end(arg0)
{ with (obj_mainchara_board) { if (name == arg0) { path_end(); path_target_x = -1; path_target_y = -1; is_moving_timer = 0; is_moving = false; } } }
("susie");
24
        
scr_pathfind_end
scr_pathfind_end

function
scr_pathfind_end(arg0)
{ with (obj_mainchara_board) { if (name == arg0) { path_end(); path_target_x = -1; path_target_y = -1; is_moving_timer = 0; is_moving = false; } } }
("ralsei");
25
        if (susie.x == 480)
26
            sudir = "left";
27
        else
28
            sudir = "right";
29
        sucon = -1;
30
        if (global.flag[1020 got_power_croissant])
31
            
scr_var_delay
scr_var_delay

function
scr_var_delay(arg0, arg1, arg2)
{
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_var_delayed(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_delay_var(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
}
("sucon", 20, 15);
32
        else if (sulazy == 0)
33
            
scr_var_delay
scr_var_delay

function
scr_var_delay(arg0, arg1, arg2)
{
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_var_delayed(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_delay_var(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
}
("sucon", 40, 12 + irandom(8));
34
        else
35
            
scr_var_delay
scr_var_delay

function
scr_var_delay(arg0, arg1, arg2)
{
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_var_delayed(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
} function scr_delay_var(arg0, arg1, arg2) {
scr_script_delayed(scr_var, arg2, arg0, arg1);
}
("sucon", 48, 12 + irandom(8));
36
    }
37
    if (sucon == 48)
38
    {
39
        if (sulazy == 1 && !i_ex(obj_tennatalkbubble) && !i_ex(obj_couchwriter))
40
        {
41
            var sutalk = stringsetloc(
Whatever, I'm just going to wait for Kris to pull us to the next screen.
"Whatever, I'm just going to wait for Kris to pull us to the next screen.", "obj_b1rocks2_slash_Step_0_gml_53_0"
);
42
            
scr_couchtalk
scr_couchtalk

function scr_couchclear(arg0) { with (obj_couchwriter) { if (speaker == arg0) instance_destroy(); } } function
scr_couchtalk(arg0, arg1)
{ var ix = -1; var iy = -1; if (argument_count >= 6) { ix = argument4; iy = argument5; } var couchtext = instance_create_depth(ix, iy, 5000, obj_couchwriter); couchtext.mystring = arg0; couchtext.speaker = arg1; if (argument_count >= 3) couchtext.cleartext = argument2; if (argument_count >= 4) couchtext.drawtime = argument3; if (argument_count >= 7) couchtext.customsnd = argument6; if (argument_count >= 8) couchtext.customcolor = argument7; if (argument_count >= 9) couchtext.talkrate = argument8; if (argument_count >= 10) couchtext.talklength = argument9; return couchtext; }
(sutalk, "susie", 2);
43
            sulazy = 2;
44
        }
45
        
scr_play_susie_recording
scr_play_susie_recording

function
scr_play_susie_recording(arg0)
{ with (obj_mainchara_board) { if (name == "susie") { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg0; susierecordsave = false; } } }
("0D0D0D");
46
    }
47
    if (sucon == 40)
48
    {
49
        var suwalk = "";
50
        if (sudir == "right")
51
        {
52
            repeat (800)
53
                suwalk += "0R";
54
        }
55
        if (sudir == "left")
56
        {
57
            repeat (800)
58
                suwalk += "0L";
59
        }
60
        
scr_play_susie_recording
scr_play_susie_recording

function
scr_play_susie_recording(arg0)
{ with (obj_mainchara_board) { if (name == "susie") { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg0; susierecordsave = false; } } }
(suwalk);
61
        sucon = 41;
62
    }
63
    if (sucon == 41)
64
    {
65
        if (susie.iframes > 0)
66
        {
67
            if (sucomplain == 0)
68
            {
69
                var sutalk = stringsetloc(
Stupid rocks!!
"Stupid rocks!!", "obj_b1rocks2_slash_Step_0_gml_77_0"
);
70
                
scr_couchtalk
scr_couchtalk

function scr_couchclear(arg0) { with (obj_couchwriter) { if (speaker == arg0) instance_destroy(); } } function
scr_couchtalk(arg0, arg1)
{ var ix = -1; var iy = -1; if (argument_count >= 6) { ix = argument4; iy = argument5; } var couchtext = instance_create_depth(ix, iy, 5000, obj_couchwriter); couchtext.mystring = arg0; couchtext.speaker = arg1; if (argument_count >= 3) couchtext.cleartext = argument2; if (argument_count >= 4) couchtext.drawtime = argument3; if (argument_count >= 7) couchtext.customsnd = argument6; if (argument_count >= 8) couchtext.customcolor = argument7; if (argument_count >= 9) couchtext.talkrate = argument8; if (argument_count >= 10) couchtext.talklength = argument9; return couchtext; }
(sutalk, "susie", 2);
71
                sucomplain = 1;
72
            }
73
            sucon = 42;
74
        }
75
    }
76
    if (sucon == 41 || sucon == 42)
77
    {
78
        if (sudir == "right" && susie.x >= 480)
79
        {
80
            
scr_stop_susie_recording
scr_stop_susie_recording

function
scr_stop_susie_recording()
{ with (obj_mainchara_board) { if (name == "susie") { susierecordstring = ""; susierecordcon = 0; susierecordcount = 0; } } }
();
81
            susie.x = 480;
82
            susie.facing = 0;
83
            sulazy = true;
84
        }
85
        if (sudir == "left" && susie.x <= 128)
86
        {
87
            
scr_stop_susie_recording
scr_stop_susie_recording

function
scr_stop_susie_recording()
{ with (obj_mainchara_board) { if (name == "susie") { susierecordstring = ""; susierecordcon = 0; susierecordcount = 0; } } }
();
88
            susie.x = 128;
89
            susie.facing = 0;
90
            sulazy = true;
91
        }
92
    }
93
    if (sucon == 20)
94
    {
95
        sucon = -1;
96
        scr_delay_var("sucon", 21, irandom(15) + 5);
97
        if (supickup == 0 && !i_ex(obj_tennatalkbubble) && !i_ex(obj_couchwriter))
98
        {
99
            var sutalk = stringsetloc(
It's easy if you hold something over your head
"It's easy if you hold something over your head", "obj_b1rocks2_slash_Step_0_gml_112_0"
);
100
            
scr_couchtalk
scr_couchtalk

function scr_couchclear(arg0) { with (obj_couchwriter) { if (speaker == arg0) instance_destroy(); } } function
scr_couchtalk(arg0, arg1)
{ var ix = -1; var iy = -1; if (argument_count >= 6) { ix = argument4; iy = argument5; } var couchtext = instance_create_depth(ix, iy, 5000, obj_couchwriter); couchtext.mystring = arg0; couchtext.speaker = arg1; if (argument_count >= 3) couchtext.cleartext = argument2; if (argument_count >= 4) couchtext.drawtime = argument3; if (argument_count >= 7) couchtext.customsnd = argument6; if (argument_count >= 8) couchtext.customcolor = argument7; if (argument_count >= 9) couchtext.talkrate = argument8; if (argument_count >= 10) couchtext.talklength = argument9; return couchtext; }
(sutalk, "susie", 2);
101
            supickup = 1;
102
        }
103
        with (susie)
104
        {
105
            grabbed = other.ralsei;
106
            grab = 1;
107
            grabmarker = instance_create(x, y, obj_board_grabobject);
108
            with (grabmarker)
109
            {
110
                drawreticle = false;
111
                snd_play(snd_board_lift);
112
                grabdaddy = other.id;
113
                grabbedid = other.grabbed;
114
                sprite_index = grabbedid.sprite_index;
115
                image_xscale = grabbedid.image_xscale;
116
                image_yscale = grabbedid.image_yscale;
117
                image_speed = grabbedid.image_speed;
118
                sourcex = grabbedid.x;
119
                sourcey = grabbedid.y;
120
            }
121
            with (grabbed)
122
            {
123
                visible = false;
124
                frozen = true;
125
                setxy(board_tilex(-1), board_tiley(-1));
126
                if (object_index == obj_mainchara_board)
127
                    canfreemove = 0;
128
            }
129
        }
130
    }
131
    if (sucon == 21)
132
    {
133
        var suwalk = "";
134
        if (sudir == "right")
135
        {
136
            repeat (800)
137
                suwalk += "0R";
138
        }
139
        if (sudir == "left")
140
        {
141
            repeat (800)
142
                suwalk += "0L";
143
        }
144
        
scr_play_susie_recording
scr_play_susie_recording

function
scr_play_susie_recording(arg0)
{ with (obj_mainchara_board) { if (name == "susie") { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg0; susierecordsave = false; } } }
(suwalk);
145
        sucon = 22;
146
    }
147
    if (sucon == 22)
148
    {
149
        suhitbuff--;
150
        if (grabmarker == 0)
151
        {
152
            with (obj_board_grabobject)
153
                other.grabmarker = id;
154
        }
155
        var _hit = 0;
156
        with (susie)
157
        {
158
            if (place_meeting(x, y, obj_board_hazard))
159
                _hit = 1;
160
        }
161
        if (_hit == 1 && suhitbuff <= 0)
162
        {
163
            suhitbuff = 20;
164
            snd_play(snd_board_playerhurt);
165
            if (ralsei.myhealth > 1)
166
                ralsei.myhealth -= 1;
167
        }
168
        if (i_ex(grabmarker))
169
        {
170
            if (suhitbuff > 0 && ((suhitbuff / 2) % 2) == 0)
171
                grabmarker.visible = 1 - grabmarker.visible;
172
            if (suhitbuff <= 0)
173
                grabmarker.visible = true;
174
        }
175
        susie.iframes = 100;
176
        if (sudir == "right" && susie.x >= 480)
177
        {
178
            
scr_play_susie_recording
scr_play_susie_recording

function
scr_play_susie_recording(arg0)
{ with (obj_mainchara_board) { if (name == "susie") { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg0; susierecordsave = false; } } }
("0D0D0D");
179
            susie.x = 480;
180
            susie.facing = 0;
181
            sucon = 23;
182
            susie.iframes = 0;
183
        }
184
        if (sudir == "left" && susie.x <= 128)
185
        {
186
            
scr_play_susie_recording
scr_play_susie_recording

function
scr_play_susie_recording(arg0)
{ with (obj_mainchara_board) { if (name == "susie") { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg0; susierecordsave = false; } } }
("0D0D0D");
187
            susie.x = 128;
188
            susie.facing = 0;
189
            sucon = 23;
190
            susie.iframes = 0;
191
        }
192
    }
193
    if (talkcon == 0 && obj_board_camera.con == 0)
194
    {
195
        talkcon = -1;
196
        scr_delay_var("talkcon", 1, 10);
197
    }
198
    if (talkcon == 1)
199
    {
200
        var tentalk = stringsetloc(
Uh oh!#Watch out#for falling#peaches!!
"Uh oh!#Watch out#for falling#peaches!!", "obj_b1rocks2_slash_Step_0_gml_218_0"
);
201
        scr_tennabubble_xytail(tentalk, 576 + camerax(), 116 + cameray(), 584 + camerax(), 182 + cameray(), 1, -1, 8);
202
        talkcon = -1;
203
        scr_delay_var("talkcon", 2, 60);
204
    }
205
    if (talkcon == 2)
206
    {
207
        var couchtalk = stringsetloc(
Peaches?#But I thought#that they were#rocks.
"Peaches?#But I thought#that they were#rocks.", "obj_b1rocks2_slash_Step_0_gml_225_0"
);
208
        
scr_couchtalk
scr_couchtalk

function scr_couchclear(arg0) { with (obj_couchwriter) { if (speaker == arg0) instance_destroy(); } } function
scr_couchtalk(arg0, arg1)
{ var ix = -1; var iy = -1; if (argument_count >= 6) { ix = argument4; iy = argument5; } var couchtext = instance_create_depth(ix, iy, 5000, obj_couchwriter); couchtext.mystring = arg0; couchtext.speaker = arg1; if (argument_count >= 3) couchtext.cleartext = argument2; if (argument_count >= 4) couchtext.drawtime = argument3; if (argument_count >= 7) couchtext.customsnd = argument6; if (argument_count >= 8) couchtext.customcolor = argument7; if (argument_count >= 9) couchtext.talkrate = argument8; if (argument_count >= 10) couchtext.talklength = argument9; return couchtext; }
(couchtalk, "ralsei", 1, -1, -1, -1);
209
        talkcon = 3;
210
    }
211
    if (talkcon == 3 && !i_ex(obj_tennatalkbubble))
212
    {
213
        var talk = stringsetloc(
I don't know where you got that idea.
"I don't know where you got that idea.", "obj_b1rocks2_slash_Step_0_gml_232_0"
);
214
        var tentalk = stringsetloc(
I have no#clue where you#got that idea.
"I have no#clue where you#got that idea.", "obj_b1rocks2_slash_Step_0_gml_233_0"
);
215
        scr_tennabubble_xytail(tentalk, 562 + camerax(), 122 + cameray(), 572 + camerax(), 172 + cameray(), 1, -1, 8);
216
        talkcon = 4;
217
    }
218
    if (!i_ex(boulderdropper))
219
    {
220
        boulderdropper = instance_create(x, y, obj_boulderDropper);
221
        boulderdropper.daddy = id;
222
        boulderdropper.timer = 90;
223
        if (player.x < 320)
224
            boulderdropper.premake = "right";
225
        else
226
            boulderdropper.premake = "left";
227
    }
228
}
229
else
230
{
231
    sucon = 0;
232
    grabmarker = 0;
233
    suhitbuff = 0;
234
    sudir = "none";
235
    if (i_ex(boulderdropper))
236
    {
237
        con = 0;
238
        roomvisit++;
239
        safe_delete(boulderdropper);
240
        boulderdropper = 0;
241
        dialogued = 0;
242
    }
243
}