Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b2bridgepuzzle1_Step_0

(view raw script w/o annotations or w/e)
1
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; } } }
();
2
scr_gameshow_populatevars
scr_gameshow_populatevars

function
scr_gameshow_populatevars()
{ if (!variable_instance_exists(id, "kr_real")) kr_real = 0; if (!variable_instance_exists(id, "su_real")) su_real = 0; if (!variable_instance_exists(id, "ra_real")) ra_real = 0; if (!variable_instance_exists(id, "tenna")) tenna = 0; if (kr_real == 0) { with (obj_mainchara) other.kr_real = id; } if (su_real == 0) { with (obj_caterpillarchara) { if (name == "susie") other.su_real = id; } } if (ra_real == 0) { with (obj_caterpillarchara) { if (name == "ralsei") other.ra_real = id; } } if (tenna == 0) { with (obj_actor_tenna) other.tenna = id; } }
();
3
4
autosolve = function()
5
{
6
    if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
7
    {
8
        with (obj_board_bridge)
9
        {
10
            if (puzzleid == 0)
11
                instance_destroy();
12
        }
13
        with (obj_board_bridge_placed)
14
        {
15
            if (puzzleid == 0)
16
                instance_destroy();
17
        }
18
        instance_create_board(3, 3, obj_board_bridge);
19
        instance_create_board(5, 3, obj_board_bridge);
20
        instance_create_board(7, 3, obj_board_bridge);
21
        instance_create_board(8, 3, obj_board_bridge);
22
        instance_create_board(9, 3, obj_board_bridge);
23
    }
24
};
25
26
if (puzzle == 0)
27
{
28
    with (obj_board_event_bridgepuzzle)
29
    {
30
        if (puzzleid == 0)
31
            other.puzzle = id;
32
    }
33
}
34
if (active == 1)
35
{
36
    if (con == 0 && obj_board_camera.con == 0)
37
    {
38
        if (rawalk == 0)
39
        {
40
            rawalk = 1;
41
            ralsei.follow = 0;
42
            
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("ralsei", 2, 4, 0);
43
            
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("susie", 1, 5, 1);
44
        }
45
        with (kris)
46
        {
47
            if (place_meeting(x, y, obj_board_trigger))
48
            {
49
                var trig = instance_place(x, y, obj_board_trigger);
50
                if (trig.extflag == "b2bridgepuzzle1trig")
51
                    other.con = 1;
52
            }
53
        }
54
    }
55
    if (con >= 5 && !solved && surftalk == 0)
56
    {
57
        var starttime = 900;
58
        var proceed = true;
59
        if (surftime < starttime)
60
        {
61
            if (ralsei.visible == false)
62
                proceed = false;
63
        }
64
        if (proceed)
65
            surftime++;
66
        if (surftime >= starttime)
67
        {
68
            surfboardready = true;
69
            if (broketease == 0)
70
            {
71
                broketease = 99;
72
                show_debug_message_concat("can't break tease now");
73
            }
74
            var susieouttatheway = false;
75
            var inst = collision_rectangle(ralsei.x - 10, ralsei.y - 10, ralsei.x + 32 + 10, ralsei.y + 32 + 10, susie, 0, true);
76
            if (!i_ex(inst) && !i_ex(obj_board_grabobject))
77
                susieouttatheway = true;
78
            if (susieouttatheway)
79
            {
80
                surftalk = 1;
81
                surftime = 0;
82
            }
83
            else
84
            {
85
                debug_message("susie in the way!");
86
            }
87
        }
88
    }
89
    if (surftalk == 1)
90
    {
91
        surftime++;
92
        if (surftime == 1)
93
        {
94
            
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("ralsei", "0W0W");
95
            
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", "0W0W");
96
            with (ralsei)
97
            {
98
                debug_print("surfboard created");
99
                x = round(x / 32) * 32;
100
                y = round(y / 32) * 32;
101
                other.lastknownralseicoords = [x, y];
102
                other.surfboard = instance_create(x, y, obj_board_bridgespawner);
103
            }
104
            surfboard.ralsei = true;
105
            surfboard.active = true;
106
            surfboard.sprite_index = spr_board_ralsei_surfboard;
107
            resetralvis = true;
108
            debug_message(lastknownralseicoords);
109
        }
110
        if (surftime == 2)
111
        {
112
            ralsei.visible = false;
113
            with (ralsei)
114
                setxy(board_tilex(11), board_tiley(0));
115
        }
116
        if (solved)
117
        {
118
            surftime = 999;
119
            surftalk = -2;
120
        }
121
        if (surftime == 8)
122
        {
123
            didsurf = true;
124
            var ratalk = stringsetloc(
--oh!!
"--oh!!", "obj_b2bridgepuzzle1_slash_Step_0_gml_69_0"
);
125
            
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; }
(ratalk, "ralsei", 2, 80);
126
            
scr_shakeobj
scr_shakeobj

function
scr_shakeobj()
{ var _shakeobj = instance_create(x, y, obj_shakeobj); _shakeobj.target = id; if (argument_count >= 1) { if (i_ex(argument0)) _shakeobj.target = argument0; } if (argument_count >= 2) { if (argument1 != -1) _shakeobj.shakeamt = argument1; } if (argument_count >= 3) { if (argument2 != -1) _shakeobj.shakereduct = argument2; } with (_shakeobj) event_user(0); }
(ra_real);
127
            snd_play(snd_wing);
128
        }
129
        if (surftime == 30)
130
        {
131
            snd_play(snd_noise);
132
            su_real.sprite_index = spr_susie_point_right;
133
            su_real.x += 10;
134
            su_real.y += 52;
135
            
scr_shakeobj
scr_shakeobj

function
scr_shakeobj()
{ var _shakeobj = instance_create(x, y, obj_shakeobj); _shakeobj.target = id; if (argument_count >= 1) { if (i_ex(argument0)) _shakeobj.target = argument0; } if (argument_count >= 2) { if (argument1 != -1) _shakeobj.shakeamt = argument1; } if (argument_count >= 3) { if (argument2 != -1) _shakeobj.shakereduct = argument2; } with (_shakeobj) event_user(0); }
(su_real);
136
            var sutalk = stringsetloc(
I KNEW YOU COULD TURN INTO A SURF BOARD!
"I KNEW YOU COULD TURN INTO A SURF BOARD!", "obj_b2bridgepuzzle1_slash_Step_0_gml_81_0"
);
137
            
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, 100);
138
            
scr_resetgameshowcharacter_delay
scr_resetgameshowcharacter_delay

function
scr_resetgameshowcharacter_delay()
{ var _x_smooth = 0; if (argument_count == 3) _x_smooth = 1; return
scr_script_delayed(scr_resetgameshowcharacter, argument1, argument0, _x_smooth);
}
("susie", 111);
139
        }
140
    }
141
    if (con == 1)
142
    {
143
        con = 2;
144
        timer = -31;
145
        kris.cantleave = true;
146
    }
147
    if (con == 2)
148
    {
149
        timer++;
150
        if (timer == -30)
151
        {
152
            var ratalk = stringsetloc(
Oh! Another puzzle!
"Oh! Another puzzle!", "obj_b2bridgepuzzle1_slash_Step_0_gml_52_0"
);
153
            
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; }
(ratalk, "ralsei", 2, 80);
154
        }
155
        if (timer == 1)
156
        {
157
            su_real.sprite_index = su_real.usprite;
158
            var sutalk = stringsetloc(
...
"...", "obj_b2bridgepuzzle1_slash_Step_0_gml_58_0"
);
159
            
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, 60);
160
        }
161
        if (timer == 30)
162
            ra_real.sprite_index = ra_real.lsprite;
163
        if (timer == 55)
164
        {
165
            kr_real.sprite_index = kr_real.lsprite;
166
            kris.canfreemove = 0;
167
            kris.controlled = false;
168
            with (obj_board_playercamera)
169
                instance_destroy();
170
            with (obj_board_grayregion)
171
                instance_destroy();
172
            with (obj_mainchara_board)
173
                fun = false;
174
        }
175
        if (timer == 60)
176
        {
177
            var ratalk = stringsetloc(
So, um, should be easy for you, right?
"So, um, should be easy for you, right?", "obj_b2bridgepuzzle1_slash_Step_0_gml_72_0"
);
178
            
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; }
(ratalk, "ralsei", 2, 80);
179
        }
180
        if (timer == 120)
181
        {
182
            
scr_shakeobj
scr_shakeobj

function
scr_shakeobj()
{ var _shakeobj = instance_create(x, y, obj_shakeobj); _shakeobj.target = id; if (argument_count >= 1) { if (i_ex(argument0)) _shakeobj.target = argument0; } if (argument_count >= 2) { if (argument1 != -1) _shakeobj.shakeamt = argument1; } if (argument_count >= 3) { if (argument2 != -1) _shakeobj.shakereduct = argument2; } with (_shakeobj) event_user(0); }
(su_real, 4);
183
            su_real.sprite_index = spr_susieb_attackready_unarmed;
184
            snd_play(snd_whip_crack_only);
185
            var sutalk = stringsetloc(
Look over there!
"Look over there!", "obj_b2bridgepuzzle1_slash_Step_0_gml_80_0"
);
186
            
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, 45);
187
        }
188
        if (timer == 160)
189
        {
190
            var ratalk = stringsetloc(
Huh?
"Huh?", "obj_b2bridgepuzzle1_slash_Step_0_gml_85_0"
);
191
            
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; }
(ratalk, "ralsei", 2, 50);
192
            ra_real.sprite_index = ra_real.rsprite;
193
        }
194
        if (timer == 175)
195
        {
196
            with (su_real)
197
                sprite_index = usprite;
198
            con++;
199
            timer = 0;
200
        }
201
    }
202
    if (con == 3)
203
    {
204
        with (obj_board_playercamera)
205
            _end = 99;
206
        su_real.depth = 95320;
207
        timer++;
208
        if (timer == 1)
209
        {
210
            kr_real.sprite_index = kr_real.usprite;
211
            with (su_real)
212
            {
213
                image_speed = 0.25;
214
                
scr_move_to_point_over_time
scr_move_to_point_over_time

function
scr_move_to_point_over_time(arg0, arg1, arg2)
{ _mmm = instance_create(x, y, obj_move_to_point); _mmm.target = id; _mmm.movex = arg0; _mmm.movey = arg1; _mmm.movemax = arg2; return _mmm; }
(274, 288, 8);
215
            }
216
        }
217
        if (timer == 14)
218
            su_real.sprite_index = spr_susieu_dark_benddown;
219
        if (timer == 20)
220
        {
221
            
scr_shakeobj
scr_shakeobj

function
scr_shakeobj()
{ var _shakeobj = instance_create(x, y, obj_shakeobj); _shakeobj.target = id; if (argument_count >= 1) { if (i_ex(argument0)) _shakeobj.target = argument0; } if (argument_count >= 2) { if (argument1 != -1) _shakeobj.shakeamt = argument1; } if (argument_count >= 3) { if (argument2 != -1) _shakeobj.shakereduct = argument2; } with (_shakeobj) event_user(0); }
(su_real, 8);
222
            snd_play(snd_wing);
223
        }
224
        if (timer == 26)
225
        {
226
            
scr_shakeobj
scr_shakeobj

function
scr_shakeobj()
{ var _shakeobj = instance_create(x, y, obj_shakeobj); _shakeobj.target = id; if (argument_count >= 1) { if (i_ex(argument0)) _shakeobj.target = argument0; } if (argument_count >= 2) { if (argument1 != -1) _shakeobj.shakeamt = argument1; } if (argument_count >= 3) { if (argument2 != -1) _shakeobj.shakereduct = argument2; } with (_shakeobj) event_user(0); }
(su_real, 8);
227
            snd_play(snd_equip);
228
            obj_ch3_gameshow.wires.sprite_index = spr_controllerwires_skr;
229
        }
230
        if (timer == 32)
231
        {
232
            with (su_real)
233
            {
234
                sprite_index = usprite;
235
                image_index = 0;
236
                image_speed = 0;
237
                snd_play(snd_wing);
238
            }
239
        }
240
        if (timer == 38)
241
        {
242
            var ratalk = stringsetloc(
?
" ? ", "obj_b2bridgepuzzle1_slash_Step_0_gml_132_0"
);
243
            
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; }
(ratalk, "ralsei", 2, 30, -1, -1, 14);
244
            
scr_resetgameshowcharacter_delay
scr_resetgameshowcharacter_delay

function
scr_resetgameshowcharacter_delay()
{ var _x_smooth = 0; if (argument_count == 3) _x_smooth = 1; return
scr_script_delayed(scr_resetgameshowcharacter, argument1, argument0, _x_smooth);
}
("ralsei", 30);
245
            with (su_real)
246
            {
247
                image_speed = 0.25;
248
                sprite_index = dsprite;
249
                
scr_move_to_point_over_time
scr_move_to_point_over_time

function
scr_move_to_point_over_time(arg0, arg1, arg2)
{ _mmm = instance_create(x, y, obj_move_to_point); _mmm.target = id; _mmm.movex = arg0; _mmm.movey = arg1; _mmm.movemax = arg2; return _mmm; }
(140, 392, 8);
250
            }
251
        }
252
        if (timer == 47)
253
        {
254
            with (su_real)
255
            {
256
                image_speed = 0;
257
                sprite_index = usprite;
258
                
scr_shakeobj
scr_shakeobj

function
scr_shakeobj()
{ var _shakeobj = instance_create(x, y, obj_shakeobj); _shakeobj.target = id; if (argument_count >= 1) { if (i_ex(argument0)) _shakeobj.target = argument0; } if (argument_count >= 2) { if (argument1 != -1) _shakeobj.shakeamt = argument1; } if (argument_count >= 3) { if (argument2 != -1) _shakeobj.shakereduct = argument2; } with (_shakeobj) event_user(0); }
(id, 4);
259
            }
260
            con = 4;
261
            timer = 0;
262
        }
263
    }
264
    if (con == 4)
265
    {
266
        var sutalk = stringsetloc(
Let's go, easy puzzle.
"Let's go, easy puzzle.", "obj_b2bridgepuzzle1_slash_Step_0_gml_158_0"
);
267
        
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, 90);
268
        with (obj_mainchara_board)
269
        {
270
            fun = false;
271
            canfreemove = true;
272
        }
273
        kris.controlled = 0;
274
        susie.controlled = 1;
275
        with (obj_mainchara_board)
276
            cantleave = true;
277
        susie.facing = 0;
278
        global.interact = 0;
279
        con = 5;
280
        sutease = -2;
281
        timer = 0;
282
    }
283
    if (sutease == -2)
284
    {
285
        if (surfboardready)
286
        {
287
            sutease = -4;
288
            broketease = -4;
289
        }
290
        else if (instance_exists(obj_board_grabobject))
291
        {
292
            with (obj_board_grabobject)
293
            {
294
                if (grabbedid.object_index == obj_mainchara_board)
295
                {
296
                    print_message("broke teasing sequence early");
297
                    other.broketease = 42;
298
                    other.sutease = -4;
299
                    other.suteasetimer = 0;
300
                    
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; } } }
("kris");
301
                    
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", "0W0W");
302
                    
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("ralsei", "0W0W");
303
                    other.kris.canfreemove = true;
304
                    
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("kris", 1, 4, 0);
305
                    other.kris.fun = 0;
306
                    other.kris.image_speed = 0;
307
                }
308
            }
309
        }
310
    }
311
    if (sutease > 0 && sutease < 99)
312
    {
313
        if (i_ex(obj_board_grabobject))
314
        {
315
            with (obj_board_grabobject)
316
            {
317
                if (grabbedid.object_index == obj_pushableblock_board || grabbedid.object_index == obj_mainchara_board)
318
                {
319
                    print_message("broke teasing sequence");
320
                    other.broketease = 1;
321
                    other.sutease = 100;
322
                    other.suteasetimer = 0;
323
                    
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; } } }
("kris");
324
                    
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", "0W0W");
325
                    
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("ralsei", "0W0W");
326
                    other.kris.fun = 0;
327
                    other.kris.image_speed = 0;
328
                }
329
            }
330
        }
331
    }
332
    if (broketease == 1 && solved == 0)
333
    {
334
        if (surfboardready)
335
            broketease = 999;
336
        else
337
            broketeasetimer++;
338
        if (broketeasetimer == 55)
339
        {
340
            var sutalk = stringsetloc(
Uhh... knock it off, "Kris". You're uh, distracting me.
"Uhh... knock it off, \"Kris\". You're uh, distracting me.", "obj_b2bridgepuzzle1_slash_Step_0_gml_198_0"
);
341
            
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, 120);
342
            su_real.sprite_index = su_real.rsprite;
343
        }
344
        if (broketeasetimer == 175)
345
        {
346
            var ratalk = stringsetloc(
S-Sorry, Susie!
"S-Sorry, Susie!", "obj_b2bridgepuzzle1_slash_Step_0_gml_204_0"
);
347
            
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; }
(ratalk, "ralsei", 2, 60);
348
            ra_real.sprite_index = ra_real.lsprite;
349
        }
350
        if (broketeasetimer == 235)
351
        {
352
            
scr_resetgameshowcharacter
scr_resetgameshowcharacter

function
scr_resetgameshowcharacter(arg0)
{ if (room == room_dw_puzzlecloset_3) exit; var _name = arg0; var _smooth = 0; var __found = 0; if (argument_count == 2) _smooth = argument1; if (_name == "kris" || _name == "kr" || _name == "k" || _name == "Kris" || _name == "Kr" || _name == "K" || _name == "all") { var _krx = 248; var _kry = 400; if (
scr_swordroom())
{ _krx = 300; _kry = 298; } with (obj_mainchara) { if (_smooth == 0) { setxy(_krx, _kry); } else {
scr_lerpvar("x", x, _krx, _smooth);
scr_lerpvar("y", y, _kry, _smooth);
} fun = true; ignoredepth = true; depth = 95240; sprite_index = spr_krisu_dark; image_speed = 0; image_index = 0; if (
scr_swordroom())
{ sprite_index = spr_krisu_holdcontroller; depth = 96260; }
scr_darksize();
__found = 1; } } if (_name == "susie" || _name == "su" || _name == "Susie" || _name == "Su" || _name == "S" || _name == "s" || _name == "all") { with (obj_caterpillarchara) { if (name == "susie") { fun = true; ignoredepth = true; depth = 95165; var _sux = 140; var _suy = 392; if (_smooth == 0) { setxy(_sux, _suy); } else {
scr_lerpvar("x", x, _sux, _smooth);
scr_lerpvar("y", y, _suy, _smooth);
} sprite_index = spr_susie_walk_up_dw; image_speed = 0; image_index = 0;
scr_darksize();
__found = 1; } } } if (_name == "ralsei" || _name == "ra" || _name == "Ralsei" || _name == "Ra" || _name == "R" || _name == "r" || _name == "all") { with (obj_caterpillarchara) { if (name == "ralsei") { fun = true; ignoredepth = true; depth = 95145; var _rax = 342; var _ray = 396; if (_smooth == 0) { setxy(_rax, _ray); } else {
scr_lerpvar("x", x, _rax, _smooth);
scr_lerpvar("y", y, _ray, _smooth);
} sprite_index = spr_ralsei_walk_up; image_speed = 0; image_index = 0;
scr_darksize();
__found = 1; } } } if (_name == "tenna" || _name == "Tenna" || _name == "te" || _name == "t" || _name == "Te" || _name == "T" || _name == "all") ...
("ralsei");
353
            
scr_resetgameshowcharacter
scr_resetgameshowcharacter

function
scr_resetgameshowcharacter(arg0)
{ if (room == room_dw_puzzlecloset_3) exit; var _name = arg0; var _smooth = 0; var __found = 0; if (argument_count == 2) _smooth = argument1; if (_name == "kris" || _name == "kr" || _name == "k" || _name == "Kris" || _name == "Kr" || _name == "K" || _name == "all") { var _krx = 248; var _kry = 400; if (
scr_swordroom())
{ _krx = 300; _kry = 298; } with (obj_mainchara) { if (_smooth == 0) { setxy(_krx, _kry); } else {
scr_lerpvar("x", x, _krx, _smooth);
scr_lerpvar("y", y, _kry, _smooth);
} fun = true; ignoredepth = true; depth = 95240; sprite_index = spr_krisu_dark; image_speed = 0; image_index = 0; if (
scr_swordroom())
{ sprite_index = spr_krisu_holdcontroller; depth = 96260; }
scr_darksize();
__found = 1; } } if (_name == "susie" || _name == "su" || _name == "Susie" || _name == "Su" || _name == "S" || _name == "s" || _name == "all") { with (obj_caterpillarchara) { if (name == "susie") { fun = true; ignoredepth = true; depth = 95165; var _sux = 140; var _suy = 392; if (_smooth == 0) { setxy(_sux, _suy); } else {
scr_lerpvar("x", x, _sux, _smooth);
scr_lerpvar("y", y, _suy, _smooth);
} sprite_index = spr_susie_walk_up_dw; image_speed = 0; image_index = 0;
scr_darksize();
__found = 1; } } } if (_name == "ralsei" || _name == "ra" || _name == "Ralsei" || _name == "Ra" || _name == "R" || _name == "r" || _name == "all") { with (obj_caterpillarchara) { if (name == "ralsei") { fun = true; ignoredepth = true; depth = 95145; var _rax = 342; var _ray = 396; if (_smooth == 0) { setxy(_rax, _ray); } else {
scr_lerpvar("x", x, _rax, _smooth);
scr_lerpvar("y", y, _ray, _smooth);
} sprite_index = spr_ralsei_walk_up; image_speed = 0; image_index = 0;
scr_darksize();
__found = 1; } } } if (_name == "tenna" || _name == "Tenna" || _name == "te" || _name == "t" || _name == "Te" || _name == "T" || _name == "all") ...
("susie");
354
            broketease = 2;
355
        }
356
    }
357
    if (sutease == -2)
358
    {
359
        suteasetimer++;
360
        if (suteasetimer == 1)
361
        {
362
            
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; } } }
("kris");
363
            
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", "0W0W");
364
        }
365
        if (suteasetimer == 90)
366
        {
367
            suteasetimer = 0;
368
            sutease = 1;
369
        }
370
    }
371
    if (sutease == 1)
372
    {
373
        suteasetimer++;
374
        if (suteasetimer == 1)
375
        {
376
            kris.canfreemove = true;
377
            
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("kris", 1, 4, 1);
378
        }
379
        if (suteasetimer > 1)
380
        {
381
            if (
scr_board_checklocation
scr_board_checklocation

function
scr_board_checklocation()
{ var _name = argument0; var _xloc = argument1; var _yloc = argument2; if (_xloc < 12) _xloc = board_tilex(_xloc); if (_yloc < 12) _yloc = board_tiley(_yloc); var _tol = 4; if (argument_count == 4) _tol = argument3; var targ = 0; with (obj_mainchara_board) { if (name == _name) targ = id; } if (!i_ex(targ)) { debug_message("target does not exist"); return false; } if (abs(targ.x - _xloc) < _tol && abs(targ.y - _yloc) < _tol) return true; }
("kris", 1, 4, 4))
382
            {
383
                
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; } } }
("kris");
384
                
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", "0W0W");
385
                with (kris)
386
                    setxy(board_tilex(1), board_tiley(4));
387
                kris.allow_diagonals = false;
388
                suteasetimer = 0;
389
                sutease = 1.5;
390
            }
391
        }
392
    }
393
    if (sutease == 1.5)
394
    {
395
        suteasetimer++;
396
        if (suteasetimer >= 90)
397
        {
398
            suteasetimer = 0;
399
            sutease = 2;
400
        }
401
    }
402
    if (sutease == 2)
403
    {
404
        kris.image_speed = 0.125;
405
        suteasetimer++;
406
        if (suteasetimer == 1)
407
        {
408
            var krstring = "";
409
            for (var i = 0; i < 80; i++)
410
                krstring += "0R0R0R0W0W0L0L0L0W0W";
411
            
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", krstring);
412
        }
413
        if (suteasetimer == 60)
414
        {
415
            var sutalk = stringsetloc(
Eww, Kris, stop trying to hug Ralsei.
"Eww, Kris, stop trying to hug Ralsei.", "obj_b2bridgepuzzle1_slash_Step_0_gml_263_0"
);
416
            
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, 90);
417
        }
418
        if (suteasetimer == 140)
419
        {
420
            var ratalk = stringsetloc(
K... Kris!?
"K... Kris!?", "obj_b2bridgepuzzle1_slash_Step_0_gml_268_0"
);
421
            
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; }
(ratalk, "ralsei", 2, 80);
422
        }
423
        if (suteasetimer == 151)
424
        {
425
            
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", "0W0W");
426
            with (kris)
427
                setxy(board_tilex(1), board_tiley(4));
428
            with (ralsei)
429
                setxy(board_tilex(2), board_tiley(4));
430
            var ralstring = "";
431
            var krstring = "";
432
            for (var i = 0; i < 1200; i++)
433
            {
434
                ralstring += "0U0U0U0U0U0U0U0U0L0L0L0L0L0L0L0L0D0D0D0D0D0D0D0D0R0R0R0R0R0R0R0R";
435
                krstring += "0R0R0R0R0R0R0R0R0U0U0U0U0U0U0U0U0L0L0L0L0L0L0L0L0D0D0D0D0D0D0D0D";
436
            }
437
            
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", krstring);
438
            
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("ralsei", ralstring);
439
        }
440
    }
441
    if (sutease < 4 && solved == 1)
442
    {
443
        sutease = 100;
444
        suteasetimer = 0;
445
        kris.fun = 0;
446
        
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("kris", "0D");
447
        
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("ralsei", "0D");
448
    }
449
    if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
450
    {
451
        if (solved == 0 && keyboard_check_pressed(vk_f5))
452
            autosolve();
453
    }
454
    if (solved == 0)
455
    {
456
        if (puzzle.solved == true)
457
        {
458
            solved = 1;
459
            with (obj_board_bridge)
460
            {
461
                if (puzzleid == 0 && sprite_index != spr_board_ralsei_surfboard)
462
                {
463
                    with (instance_create(x, y, obj_board_smokepuff))
464
                        image_blend = #B46A37;
465
                    instance_destroy();
466
                }
467
            }
468
            with (obj_board_bridge)
469
            {
470
                if (sprite_index == spr_board_ralsei_surfboard)
471
                {
472
                    if (visible)
473
                        instance_create(x, y, obj_board_smokepuff);
474
                    instance_destroy();
475
                }
476
            }
477
            
scr_board_gridreset
scr_board_gridreset

function
scr_board_gridreset()
{ with (obj_board_controller) grid_reset = true; }
();
478
            var doreset = true;
479
            with (obj_board_bridge_placed)
480
            {
481
                if (sprite_index == spr_board_ralsei_surfboard)
482
                    doreset = false;
483
            }
484
            if (doreset)
485
            {
486
                with (obj_mainchara_board)
487
                {
488
                    if (name == "ralsei")
489
                    {
490
                        if (!visible)
491
                        {
492
                            follow = false;
493
                            setxy(other.lastknownralseicoords[0], other.lastknownralseicoords[1]);
494
                            visible = true;
495
                        }
496
                        fun = 0;
497
                        if (other.broketease != 42)
498
                        {
499
                            
scr_board_caterpillar_interpolate_ralsei
scr_board_caterpillar_interpolate_ralsei

function
scr_board_caterpillar_interpolate_ralsei()
{ var _ralsei = obj_board_controller.ralsei_object; if (_ralsei != -1) { with (_ralsei) { for (i = 0; i < 75; i += 1) { remx[i] = x; remy[i] = y; facing[i] = 0; } } var _a = 0; var _dir = point_direction(_ralsei.x, _ralsei.y, x, y); repeat (_ralsei.ralsei_target) { _ralsei.remx[_a] = lerp(obj_board_controller.kris_object.x, _ralsei.x, _a / _ralsei.ralsei_target); _ralsei.remy[_a] = lerp(obj_board_controller.kris_object.y, _ralsei.y, _a / _ralsei.ralsei_target); if (_dir >= 45 && _dir < 135) _ralsei.facingdir[_a] = 2; else if (_dir >= 135 && _dir < 225) _ralsei.facingdir[_a] = 3; else if (_dir >= 225 && _dir < 315) _ralsei.facingdir[_a] = 0; else if (_dir >= 315 || _dir < 45) _ralsei.facingdir[_a] = 1; _a++; } } }
();
500
                            canfreemove = true;
501
                            follow = true;
502
                        }
503
                        else
504
                        {
505
                            
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("ralsei,", 4, 2, 0);
506
                        }
507
                    }
508
                }
509
            }
510
            global.flag[1023 cant_grab_ralsei] = 0;
511
            timer = 0;
512
        }
513
    }
514
}
515
else
516
{
517
    rawalk = 0;
518
}
519
if (sutease == 100 && solved == 1)
520
{
521
    suteasetimer++;
522
    if (suteasetimer == 1)
523
    {
524
        with (obj_mainchara_board)
525
        {
526
            if (name == "kris")
527
                canfreemove = true;
528
        }
529
        global.flag[1024 board_transitioning?] = 1;
530
        sukriswalk = 1;
531
    }
532
    if (suteasetimer == 15)
533
    {
534
        if (puzzle.resetcount < 2)
535
        {
536
            var ratalk = stringsetloc(
Susie!! That was amazing!!
"Susie!! That was amazing!!", "obj_b2bridgepuzzle1_slash_Step_0_gml_462_0"
);
537
            
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; }
(ratalk, "ralsei", 2, 60);
538
        }
539
        if (puzzle.resetcount >= 2 && puzzle.resetcount < 5)
540
        {
541
            var ratalk = stringsetloc(
Wow!! Great job, Susie!!
"Wow!! Great job, Susie!!", "obj_b2bridgepuzzle1_slash_Step_0_gml_467_0"
);
542
            
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; }
(ratalk, "ralsei", 2, 60);
543
        }
544
        if (puzzle.resetcount >= 5)
545
        {
546
            var sutalk = stringsetloc(
Took you long enough, dumbass.
"Took you long enough, dumbass.", "obj_b2bridgepuzzle1_slash_Step_0_gml_472_0"
);
547
            
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, 60);
548
        }
549
    }
550
    if (suteasetimer == 60)
551
    {
552
        if (puzzle.resetcount < 2)
553
        {
554
            var sutalk = stringsetloc(
You doubted my geniusness?
"You doubted my geniusness?", "obj_b2bridgepuzzle1_slash_Step_0_gml_480_0"
);
555
            
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, 60);
556
        }
557
        if (puzzle.resetcount >= 2 && puzzle.resetcount < 5)
558
        {
559
            var sutalk = stringsetloc(
Yeah, great job, "Susie."
"Yeah, great job, \"Susie.\"", "obj_b2bridgepuzzle1_slash_Step_0_gml_486_0"
);
560
            
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, 60);
561
        }
562
        if (puzzle.resetcount >= 5)
563
        {
564
            var ratalk = stringsetloc(
Huh? No, Susie, you did great!
"Huh? No, Susie, you did great!", "obj_b2bridgepuzzle1_slash_Step_0_gml_491_0"
);
565
            
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; }
(ratalk, "ralsei", 2, 60);
566
        }
567
    }
568
    with (obj_board_grabobject)
569
    {
570
        if (i_ex(grabbedid))
571
        {
572
            with (grabbedid)
573
            {
574
                if (object_index == obj_mainchara_board)
575
                {
576
                    if (follow)
577
                    {
578
                        debug_print("grabbed break");
579
                        
scr_play_recording
scr_play_recording

function
scr_play_recording(arg0, arg1)
{ with (obj_mainchara_board) { if (name == arg0) { susierecordcon = 2; susierecordcount = 0; susierecordstring = arg1; susierecordsave = false; } } }
("ralsei", "0W");
580
                        follow = false;
581
                    }
582
                }
583
            }
584
        }
585
    }
586
}
587
if (active && obj_board_camera.con == 0 && solved == true)
588
{
589
    with (obj_board_grabobject)
590
    {
591
        sourcex = x;
592
        sourcey = y;
593
    }
594
    if (sukriswalk == 1)
595
    {
596
        sukriswalktimer++;
597
        if (sukriswalktimer == 2)
598
            
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("kris", 10, 7, 0);
599
        if (sukriswalktimer > 1)
600
        {
601
            if (
scr_board_checklocation
scr_board_checklocation

function
scr_board_checklocation()
{ var _name = argument0; var _xloc = argument1; var _yloc = argument2; if (_xloc < 12) _xloc = board_tilex(_xloc); if (_yloc < 12) _yloc = board_tiley(_yloc); var _tol = 4; if (argument_count == 4) _tol = argument3; var targ = 0; with (obj_mainchara_board) { if (name == _name) targ = id; } if (!i_ex(targ)) { debug_message("target does not exist"); return false; } if (abs(targ.x - _xloc) < _tol && abs(targ.y - _yloc) < _tol) return true; }
("kris", 10, 7, 2))
602
            {
603
                sukriswalktimer = 0;
604
                sukriswalk = 2;
605
                kris.x = board_tilex(10);
606
                kris.y = board_tiley(7);
607
            }
608
        }
609
    }
610
    if (sukriswalk == 2)
611
    {
612
        if (
scr_board_checklocation
scr_board_checklocation

function
scr_board_checklocation()
{ var _name = argument0; var _xloc = argument1; var _yloc = argument2; if (_xloc < 12) _xloc = board_tilex(_xloc); if (_yloc < 12) _yloc = board_tiley(_yloc); var _tol = 4; if (argument_count == 4) _tol = argument3; var targ = 0; with (obj_mainchara_board) { if (name == _name) targ = id; } if (!i_ex(targ)) { debug_message("target does not exist"); return false; } if (abs(targ.x - _xloc) < _tol && abs(targ.y - _yloc) < _tol) return true; }
("kris", board_tilex(10), board_tiley(7), 10))
613
        {
614
            sukriswalktimer++;
615
            if (sukriswalktimer == 6)
616
            {
617
                with (obj_mainchara_board)
618
                    controlled = 0;
619
                kris.controlled = 1;
620
                global.interact = 1;
621
                obj_board_camera.shift = "down";
622
                with (obj_b2tennaleave1)
623
                    cont1 = 1;
624
            }
625
        }
626
    }
627
}
628
if (active)
629
{
630
    if (obj_b2enemysquabble.battlecon == 15)
631
    {
632
        var trig = 0;
633
        with (obj_board_trigger)
634
        {
635
            if (extflag == "b2retreadcomment")
636
            {
637
                if (place_meeting(x, y, other.kris))
638
                    trig = 1;
639
            }
640
        }
641
        if (trig == 1)
642
        {
643
            if (retread == 0)
644
            {
645
                retreadtimer = 0;
646
                retread = 1;
647
            }
648
        }
649
    }
650
}
651
if (retread == 1)
652
{
653
    retreadtimer++;
654
    if (retreadtimer == 1)
655
    {
656
        con = 99;
657
        var ratalk = stringsetloc(
Umm, nice job on this puzzle, Kris...
"Umm, nice job on this puzzle, Kris...", "obj_b2bridgepuzzle1_slash_Step_0_gml_559_0"
);
658
        
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; }
(ratalk, "ralsei", 2, 80);
659
    }
660
    if (retreadtimer == 92)
661
    {
662
        var sutalk = stringsetloc(
Hey, I got the throwing thingy.
"Hey, I got the throwing thingy.", "obj_b2bridgepuzzle1_slash_Step_0_gml_564_0"
);
663
        
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, 80);
664
        retread = 2;
665
    }
666
}
667
if (resetralvis == true)
668
{
669
    if (!active && obj_board_camera.con == 0)
670
    {
671
        ralsei.visible = true;
672
        resetralvis = false;
673
        with (obj_board_bridge)
674
        {
675
            if (puzzleid == 0)
676
                instance_destroy();
677
        }
678
        with (obj_board_bridge_placed)
679
        {
680
            if (sprite_index == spr_board_ralsei_surfboard)
681
            {
682
                sprite_index = spr_board_bridge_1x;
683
                image_index = 1;
684
                image_speed = 0;
685
            }
686
        }
687
    }
688
}
689
if (active)
690
{
691
    if (con == 99)
692
    {
693
        if (suwalk == 0 && obj_board_camera.con == 0)
694
        {
695
            suwalktimer++;
696
            if (suwalktimer == 1)
697
                ralsei.follow = true;
698
            if (suwalktimer == 8)
699
            {
700
                if (susie.x > 320)
701
                    
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("susie", choose(1, 2), choose(2, 3, 4, 5), 0);
702
                else
703
                    
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("susie", 10, choose(3, 4, 5, 6), 0);
704
            }
705
        }
706
    }
707
}
708
else
709
{
710
    if (con >= 5)
711
        con = 99;
712
    if (con == 99)
713
    {
714
        suwalktimer = 0;
715
        suwalk = 0;
716
    }
717
}