Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b2intro_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
if (debuginit == 0)
4
{
5
    debuginit = 1;
6
    if (
scr_debug
scr_debug

function
scr_debug()
{ if (global.debug == 1) return 1; }
())
7
    {
8
        switch (global.tempflag[89])
9
        {
10
            case 1:
11
                active = false;
12
                debug_print("reunite elnina");
13
                
scr_board_instawarp
scr_board_instawarp

function
scr_board_instawarp(arg0, arg1, arg2, arg3, arg4)
{ with (obj_board_camera) { instawarp = true; if (argument_count == 6) { instawarproomgoto = argument5; camsavex = arg0; camsavey = arg1; } if (arg4 == "left" || arg4 == "right")
scr_quickwarp(arg0, arg1, arg2, arg3 + (obj_board_controller.kris_object.y - 144));
else if (arg4 == "up" || arg4 == "down")
scr_quickwarp(arg0, arg1, arg2 + (obj_board_controller.kris_object.x - 288), arg3);
else
scr_quickwarp(arg0, arg1, arg2, arg3);
} }
(1664, 2624, 1840, 2848);
14
                obj_board_inventory.ninfriendo = 1;
15
                
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", "0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U");
16
                break;
17
            case 2:
18
                active = false;
19
                debug_print("reunite lanino");
20
                
scr_board_instawarp
scr_board_instawarp

function
scr_board_instawarp(arg0, arg1, arg2, arg3, arg4)
{ with (obj_board_camera) { instawarp = true; if (argument_count == 6) { instawarproomgoto = argument5; camsavex = arg0; camsavey = arg1; } if (arg4 == "left" || arg4 == "right")
scr_quickwarp(arg0, arg1, arg2, arg3 + (obj_board_controller.kris_object.y - 144));
else if (arg4 == "up" || arg4 == "down")
scr_quickwarp(arg0, arg1, arg2 + (obj_board_controller.kris_object.x - 288), arg3);
else
scr_quickwarp(arg0, arg1, arg2, arg3);
} }
(1664, 2624, 1840, 2848);
21
                obj_board_inventory.ninfriendo = 1;
22
                
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", "0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U");
23
                break;
24
            case 3:
25
                
scr_board_instawarp
scr_board_instawarp

function
scr_board_instawarp(arg0, arg1, arg2, arg3, arg4)
{ with (obj_board_camera) { instawarp = true; if (argument_count == 6) { instawarproomgoto = argument5; camsavex = arg0; camsavey = arg1; } if (arg4 == "left" || arg4 == "right")
scr_quickwarp(arg0, arg1, arg2, arg3 + (obj_board_controller.kris_object.y - 144));
else if (arg4 == "up" || arg4 == "down")
scr_quickwarp(arg0, arg1, arg2 + (obj_board_controller.kris_object.x - 288), arg3);
else
scr_quickwarp(arg0, arg1, arg2, arg3);
} }
(2432, 3392, 2496, 3584);
26
                obj_board_inventory.camera = 1;
27
                with (obj_mainchara_board)
28
                {
29
                    if (name == "kris")
30
                        camera = true;
31
                }
32
                debug_print("tenna leaves");
33
                
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", "0R0R0R0R0R0R0R0R0R0R0R0R0R0R0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0U0LU0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0L0LU0U0U0U0U0U0U0U0U");
34
                break;
35
            case 4:
36
                debug_message("Shuttah Battle");
37
                
scr_board_instawarp
scr_board_instawarp

function
scr_board_instawarp(arg0, arg1, arg2, arg3, arg4)
{ with (obj_board_camera) { instawarp = true; if (argument_count == 6) { instawarproomgoto = argument5; camsavex = arg0; camsavey = arg1; } if (arg4 == "left" || arg4 == "right")
scr_quickwarp(arg0, arg1, arg2, arg3 + (obj_board_controller.kris_object.y - 144));
else if (arg4 == "up" || arg4 == "down")
scr_quickwarp(arg0, arg1, arg2 + (obj_board_controller.kris_object.x - 288), arg3);
else
scr_quickwarp(arg0, arg1, arg2, arg3);
} }
(2432, 1600, 2464, 1664);
38
                with (obj_mainchara_board)
39
                {
40
                    if (name == "kris")
41
                        camera = true;
42
                }
43
                obj_board_inventory.ninfriendo = 1;
44
                
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", "0W0W0W0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0RD0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0R0W0W0W0W0W0W0W0W0W0W0W0W0W010W0W0W0W0W0W0W0W0W0W0W0W0D0D0D0D0W0W0W0W0W0W0W0W0W0W0W0W0W0W0L0L0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W010W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W0W010W0W0W0W0W0W0W0W0W0W0W0W");
45
                break;
46
        }
47
        global.tempflag[89] = 0;
48
    }
49
}
50
if (active == 1)
51
{
52
    if (kris.boat == true)
53
    {
54
        suwalk = 1;
55
        boated = true;
56
    }
57
    if (boated == true && kris.boat == false && susie.canfreemove == true)
58
    {
59
        ralsei.follow = true;
60
        
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++; } } }
();
61
        
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", 4, 4, 0);
62
        boated = false;
63
    }
64
    if (obj_board_camera.con == 0 && makeboat == 1)
65
    {
66
        var startsnd = 492;
67
        var endsnd = 493;
68
        with (obj_mainchara_board)
69
            canfreemove = false;
70
        boat = instance_create(room_width, room_height, obj_board_boat);
71
        with (boat)
72
            setxy_board(1856, 3296);
73
        boat.visible = false;
74
        star1 = instance_create(320, 192, obj_board_startransition);
75
        star1.image_index = -3;
76
        star1.targx = boat.x;
77
        star1.targy = boat.y;
78
        star1.randim = 3;
79
        snd_stop(startsnd);
80
        snd_play(startsnd);
81
        with (boat)
82
            scr_delay_var("visible", true, other.star1.transitiontime);
83
        snd_play_delay(endsnd, star1.transitiontime);
84
        makeboat = -1;
85
        scr_delay_var("makeboat", 2, star1.transitiontime);
86
    }
87
    if (makeboat == 2)
88
    {
89
        makeboat = 3;
90
        with (obj_mainchara_board)
91
            canfreemove = true;
92
    }
93
    if (con == 0 && !init)
94
    {
95
        
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") ...
("all");
96
        if (global.plot < 130)
97
            global.plot = 130;
98
        global.interact = 0;
99
        kris.visible = 0;
100
        susie.visible = 0;
101
        ralsei.visible = 0;
102
        kris.canfreemove = 0;
103
        ralsei.follow = 0;
104
        ralsei.x = kris.x - 32;
105
        susie.x = kris.x + 32;
106
        init = 1;
107
    }
108
    if (con == 0 && obj_board_camera.con == 0 && !i_ex(obj_board_transition))
109
    {
110
        con = 1;
111
        suwalk = 1;
112
    }
113
    if (con == 1)
114
    {
115
        var startsnd = 492;
116
        var endsnd = 493;
117
        var timespread = 15;
118
        timer++;
119
        if (timer == (1 + (timespread * 0)))
120
        {
121
            star1 = instance_create(320, 192, obj_board_startransition);
122
            star1.image_index = 0;
123
            star1.targx = kris.x;
124
            star1.targy = kris.y;
125
            with (kris)
126
                scr_delay_var("visible", true, other.star1.transitiontime);
127
            snd_play_delay(endsnd, star1.transitiontime);
128
            snd_stop(startsnd);
129
            snd_play(startsnd);
130
        }
131
        if (timer == (1 + (timespread * 1)))
132
        {
133
            star1 = instance_create(320, 192, obj_board_startransition);
134
            star1.image_index = 1;
135
            star1.targx = susie.x;
136
            star1.targy = susie.y;
137
            snd_stop(startsnd);
138
            snd_play(startsnd);
139
            with (susie)
140
                scr_delay_var("visible", true, other.star1.transitiontime);
141
            snd_play_delay(endsnd, star1.transitiontime);
142
            firstvisitcon = -1;
143
        }
144
        if (timer == (1 + (timespread * 2)))
145
        {
146
            snd_free_all();
147
            star1 = instance_create(320, 192, obj_board_startransition);
148
            star1.image_index = 2;
149
            star1.targx = ralsei.x;
150
            star1.targy = ralsei.y;
151
            snd_stop(startsnd);
152
            snd_play(startsnd);
153
            with (ralsei)
154
                scr_delay_var("visible", true, other.star1.transitiontime);
155
            snd_play_delay(endsnd, star1.transitiontime);
156
            timer = 0;
157
            con = 2;
158
        }
159
    }
160
    if (con == 2 && !i_ex(obj_board_startransition))
161
    {
162
        ralsei.follow = true;
163
        
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++; } } }
();
164
        with (ralsei)
165
        {
166
            for (i = 0; i < 10; i += 1)
167
                facingdir[i] = 1;
168
            facingdir[10] = 0;
169
        }
170
        with (obj_mainchara_board)
171
            canfreemove = true;
172
        ralsei.follow = true;
173
        mus_initloop(obj_ch3_gameshow.boardmusic);
174
        with (obj_actor_tenna)
175
            bounce = 1;
176
        var tetalk = stringsetloc(
Welcome to KODAKODA ISLAND!
"Welcome to KODAKODA ISLAND!", "obj_b2intro_slash_Step_0_gml_157_0"
);
177
        
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; }
(tetalk, "tenna", 2, 90);
178
        con = 3;
179
    }
180
    if (con == 3)
181
    {
182
        if (introtalk == 0)
183
        {
184
            introtalktimer++;
185
            if (introtalktimer == 90)
186
            {
187
                suwalk = 0;
188
                var sutalk = stringsetloc(
Alright Ralsei, turn into a surfboard.
"Alright Ralsei, turn into a surfboard.", "obj_b2intro_slash_Step_0_gml_170_0"
);
189
                
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);
190
            }
191
            if (introtalktimer == 180)
192
            {
193
                var ratalk = stringsetloc(
I can only be a block...
"I can only be a block...", "obj_b2intro_slash_Step_0_gml_176_0"
);
194
                
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, 90);
195
            }
196
        }
197
    }
198
    if (suwalk == 0 && obj_board_camera.con == 0)
199
    {
200
        suwalktimer++;
201
        if (suwalktimer == 1)
202
            ralsei.follow = true;
203
        if (suwalktimer == 10)
204
        {
205
            suwalk = 1;
206
            susie.sleepy = true;
207
            ralsei.follow = 1;
208
            var randwalk = choose(0, 1);
209
            switch (randwalk)
210
            {
211
                case 0:
212
                    
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", 3, choose(4, 5, 6), 0);
213
                    break;
214
                case 1:
215
                    
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(8, 9), choose(4, 5, 6), 0);
216
                    break;
217
            }
218
        }
219
    }
220
}
221
else
222
{
223
    suwalk = 0;
224
    suwalktimer = 0;
225
    timer = 0;
226
    introtalktimer = 99999;
227
    introtalk = 99;
228
}