Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b3bridge_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 (!i_ex(boulderdropper))
6
    {
7
        var locx = x;
8
        var locy = y;
9
        boulderdropper = instance_create(locx, locy, obj_boulderDropper);
10
        boulderdropper.daddy = id;
11
        boulderdropper.timer = 80;
12
        if (kris.x < 320)
13
            boulderdropper.premake = "right";
14
        else
15
            boulderdropper.premake = "left";
16
    }
17
    if (con == 0 && obj_board_camera.con == 0)
18
    {
19
        var yloc = 292;
20
        if (visit == 0)
21
            timer++;
22
        if (visit == 1)
23
        {
24
            timer++;
25
            if (timer == 1)
26
            {
27
                tenna.bounce = 1;
28
                var tetalk = stringsetloc(
Watch out! Falling rocks!
"Watch out! Falling rocks!", "obj_b3bridge_slash_Step_0_gml_79_0"
);
29
                
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, 60, 474, yloc);
30
            }
31
            if (global.flag[1124 tenna_falling_stuff] == 2)
32
            {
33
            }
34
        }
35
    }
36
    if (suwalk == 0 && obj_board_camera.con == 0)
37
    {
38
        suwalktimer++;
39
        if (suwalktimer == 30)
40
        {
41
            with (susie)
42
            {
43
                grabbed = other.ralsei;
44
                grab = 1;
45
                grabmarker = instance_create(x, y, obj_board_grabobject);
46
                with (grabmarker)
47
                {
48
                    drawreticle = false;
49
                    snd_play(snd_board_lift);
50
                    grabdaddy = other.id;
51
                    grabbedid = other.grabbed;
52
                    sprite_index = grabbedid.sprite_index;
53
                    image_xscale = grabbedid.image_xscale;
54
                    image_yscale = grabbedid.image_yscale;
55
                    image_speed = grabbedid.image_speed;
56
                    sourcex = grabbedid.x;
57
                    sourcey = grabbedid.y;
58
                }
59
                with (grabbed)
60
                {
61
                    visible = false;
62
                    frozen = true;
63
                    setxy(board_tilex(-1), board_tiley(-1));
64
                    if (object_index == obj_mainchara_board)
65
                        canfreemove = 0;
66
                }
67
            }
68
            suwalk = 1;
69
            var walkstring = "";
70
            for (var i = 0; i < irandom(14); i++)
71
                walkstring += "0W";
72
            if (susie.x < 320)
73
            {
74
                for (var i = 0; i < 96; i++)
75
                    walkstring += "0R";
76
            }
77
            else
78
            {
79
                for (var i = 0; i < 96; i++)
80
                    walkstring += "0L";
81
            }
82
            
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; } } }
("susie", walkstring);
83
        }
84
    }
85
    suhitbuff--;
86
    var suhit = false;
87
    susie.iframes = 20;
88
    if (suhitbuff <= 0)
89
    {
90
        with (susie)
91
        {
92
            if (place_meeting(x, y, obj_board_hazard))
93
            {
94
                var hurt = instance_place(x, y, obj_board_hazard);
95
                if (hurt.active_hitbox == true)
96
                {
97
                    suhit = true;
98
                    snd_play(snd_board_damage);
99
                }
100
                safe_delete(hurt);
101
            }
102
        }
103
        with (obj_board_grabobject)
104
        {
105
            if (place_meeting(x, y, obj_board_hazard))
106
            {
107
                var hurt = instance_place(x, y, obj_board_hazard);
108
                if (hurt.active_hitbox == true)
109
                {
110
                    suhit = true;
111
                    snd_play(snd_board_damage);
112
                }
113
                safe_delete(hurt);
114
            }
115
        }
116
    }
117
    if (suhit == true)
118
    {
119
        suhitbuff = 20;
120
        with (ralsei)
121
        {
122
            iframes = 20;
123
            if (myhealth > 1)
124
                myhealth--;
125
            with (obj_board_healthbar)
126
            {
127
                if (target == other.id)
128
                {
129
                    
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); }
();
130
                    scr_delay_var("mycolor", mycolor, 2);
131
                    mycolor = c_red;
132
                }
133
            }
134
        }
135
    }
136
    if (i_ex(obj_board_grabobject))
137
    {
138
        if (suhitbuff > 0 && ((suhitbuff / 2) % 2) == 0)
139
        {
140
            with (obj_board_grabobject)
141
                visible = 1 - visible;
142
        }
143
        if (suhitbuff <= 0)
144
        {
145
            with (obj_board_grabobject)
146
                visible = true;
147
        }
148
    }
149
}
150
else
151
{
152
    safe_delete(boulderdropper);
153
    suwalk = 0;
154
    suwalktimer = 0;
155
    if (timer > 0)
156
    {
157
        visit++;
158
        timer = 0;
159
    }
160
}
161
if (active && obj_board_camera.con != 0)
162
    susie.iframes = 0;