Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b3belevator_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 (active == 1)
4
{
5
    if (con == 0 && obj_board_camera.con == 0)
6
    {
7
        kris.controlled = 0;
8
        susie.controlled = 1;
9
        ralsei.follow = 0;
10
        con = 0.5;
11
        teactive = 1;
12
    }
13
    if (teactive == 1)
14
    {
15
        tetimer++;
16
        if (tetimer == 200)
17
        {
18
            tetimer = 0;
19
            teactive = 2;
20
        }
21
    }
22
    if (con == 0.5)
23
    {
24
        timer++;
25
        if (timer == 5)
26
            
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", 304, 176, 0);
27
        if (timer == 30)
28
        {
29
            
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", 352, 176, 3);
30
            timer = 0;
31
            con = 1;
32
        }
33
    }
34
    if (con == 1)
35
    {
36
        var allaboard = 0;
37
        with (obj_mainchara_board)
38
        {
39
            if (y > 224)
40
                allaboard++;
41
        }
42
        if (allaboard == 0)
43
        {
44
            obj_board_b3b_elevatorbg.open = false;
45
            snd_play(snd_board_door_close);
46
            blocker = instance_create(1440, 1536, obj_board_solid);
47
            with (blocker)
48
            {
49
                setxy_board(x, y);
50
                image_xscale = 2;
51
            }
52
            con++;
53
        }
54
    }
55
    if (con == 2 && teactive == 2)
56
    {
57
        timer++;
58
        if (timer == 5)
59
        {
60
            obj_board_b3b_elevatorbg.drawlight = true;
61
            snd_play(snd_bell);
62
        }
63
        if (timer == 30)
64
        {
65
            snd_play_x(snd_impact_bc, 0.8, 0.6);
66
            
scr_shakeobj_ext
scr_shakeobj_ext

function
scr_shakeobj_ext()
{ var _shakeobj = instance_create(x, y, obj_shakeobj_ext); _shakeobj.target = id; if (argument_count >= 1) { if (i_ex(argument0)) _shakeobj.target = argument0; } if (argument_count >= 2) { if (argument1 != -1) _shakeobj.shakexamt = argument1; } if (argument_count >= 3) { if (argument2 != -1) _shakeobj.shakeyamt = argument2; } if (argument_count >= 4) { if (argument3 != -1) _shakeobj.shakereduct = argument3; } if (argument_count >= 5) { if (argument4 != -1) _shakeobj.shakespeed = argument4; } with (_shakeobj) event_user(0); }
(342, 4, 0);
67
            obj_board_b3b_elevatorbg.rising = true;
68
            var elesnd = snd_init("elevator.ogg");
69
            elevatorsound = snd_loop(elesnd);
70
            snd_volume(elevatorsound, 0, 0);
71
            snd_volume(elevatorsound, 1, 30);
72
            snd_pitch(elevatorsound, 0.6);
73
            timer = 0;
74
            con++;
75
        }
76
    }
77
    if (con == 3)
78
    {
79
        timer++;
80
        var linepause = 35;
81
        var talklength = 65;
82
        var prefire = 19;
83
        var _myspeed = obj_board_b3b_elevatorbg.myspeed;
84
        var _doomtime = obj_board_b3b_elevatorbg.doomtime;
85
        if (timer == ((5 + ((talklength + linepause) * 3)) - prefire))
86
        {
87
            var decor = 
scr_board_marker
scr_board_marker

function
scr_board_marker()
{ var _thismarker = instance_create(argument0, argument1, obj_board_marker); _thismarker.sprite_index = argument2; _thismarker.image_xscale = 2; _thismarker.image_yscale = 2; if (argument_count >= 4) _thismarker.image_speed = argument3; if (argument_count >= 5) { if (argument4 != -1) _thismarker.depth = argument4; } if (argument_count >= 6) _thismarker.image_xscale = argument5; if (argument_count >= 6) _thismarker.image_yscale = argument5; if (argument_count >= 7) _thismarker.animateonce = argument6; return _thismarker; }
(board_tilex(1), board_tiley(-2) + 30, spr_board_b3b_vhs);
88
            decor.vspeed = _myspeed;
89
            
scr_doom
scr_doom

function
scr_doom(arg0, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; } }
(decor, _doomtime);
90
        }
91
        if (timer == ((5 + ((talklength + linepause) * 4)) - prefire))
92
        {
93
            var decor = 
scr_board_marker
scr_board_marker

function
scr_board_marker()
{ var _thismarker = instance_create(argument0, argument1, obj_board_marker); _thismarker.sprite_index = argument2; _thismarker.image_xscale = 2; _thismarker.image_yscale = 2; if (argument_count >= 4) _thismarker.image_speed = argument3; if (argument_count >= 5) { if (argument4 != -1) _thismarker.depth = argument4; } if (argument_count >= 6) _thismarker.image_xscale = argument5; if (argument_count >= 6) _thismarker.image_yscale = argument5; if (argument_count >= 7) _thismarker.animateonce = argument6; return _thismarker; }
(board_tilex(9.5), board_tiley(-2) - 36, spr_board_b3b_woodpanelcar);
94
            decor.vspeed = _myspeed;
95
            
scr_doom
scr_doom

function
scr_doom(arg0, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; } }
(decor, _doomtime);
96
        }
97
        if (timer == (5 + ((talklength + linepause) * 6) + 30))
98
        {
99
            timer = 0;
100
            con++;
101
            obj_board_b3b_elevatorbg.finishrising = 1;
102
        }
103
    }
104
    if (con == 4)
105
    {
106
        if (obj_board_b3b_elevatorbg.rising == 10)
107
        {
108
            timer++;
109
            if (timer == 1)
110
                snd_volume(elevatorsound, 0, 30);
111
            if (timer == 30)
112
            {
113
                snd_stop(elevatorsound);
114
                snd_play(snd_board_torch_high);
115
                snd_play_delay(snd_board_torch, 5, 1, 1.6);
116
                snd_play_delay(snd_noise, 6, 1, 1);
117
                safe_delete(block);
118
                
scr_board_gridreset
scr_board_gridreset

function
scr_board_gridreset()
{ with (obj_board_controller) grid_reset = true; }
();
119
                with (ld)
120
                    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("x", x, x - 26, 6, -1, "out");
121
                with (rd)
122
                    
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("x", x, x + 28, 6, -1, "out");
123
                obj_board_b3b_elevatorbg.drawlight = false;
124
            }
125
            if (timer == 45)
126
            {
127
                con = 15;
128
                timer = 0;
129
            }
130
        }
131
    }
132
    if (con == 15)
133
    {
134
        timer++;
135
        if (timer == 1)
136
        {
137
        }
138
        if (timer == 15)
139
        {
140
            
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", "0U0U0U0U0U0U0U0U0U0U0U0U0U");
141
            timer = 0;
142
            con = 16;
143
        }
144
    }
145
    if (con == 16)
146
    {
147
        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", 304, 160, 2))
148
        {
149
            timer++;
150
            if (timer == 1)
151
            {
152
                snd_play(snd_board_escaped);
153
                
scr_quickwarp
scr_quickwarp

function
scr_quickwarp(arg0, arg1, arg2, arg3)
{ with (obj_board_camera) { global.interact = 1; shift = "warp"; warpx = arg0; warpy = arg1; playerX = arg2; playerY = arg3; } }
(2432, 1856, 2608, 2080);
154
                con++;
155
            }
156
        }
157
    }
158
}
159
else
160
{
161
}