Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b3cactusflirt_Step_0

(view raw script w/o annotations or w/e)
1
if (!place_meeting(x, y, obj_board_grayregion))
2
    blushamt = -1;
3
scr_depth_board
scr_depth_board

function
scr_depth_board()
{ depth = 1000000 - ((y * 10) + ((sprite_height - sprite_yoffset) * 10)); } function scr_board_depth() {
scr_depth_board();
}
();
4
if (init == 0)
5
{
6
    with (obj_mainchara_board)
7
    {
8
        if (name == "kris")
9
            other.kr = id;
10
    }
11
    if (kr != 0)
12
        init = 1;
13
}
14
if (active == 1)
15
{
16
    var _xx, _yy;
17
    if (con == 1)
18
    {
19
        pushed = true;
20
        for (var i = 0; i < 3; i++)
21
            snd_play_delay(snd_wing, 1 + (2 * i), 1, 1.5 + (i / 20));
22
        _xx = 0;
23
        _yy = 0;
24
        if (dir == "right")
25
            _xx = 32;
26
        if (dir == "left")
27
            _xx = -32;
28
        if (dir == "down")
29
            _yy = 32;
30
        if (dir == "up")
31
            _yy = -32;
32
        x += _xx;
33
        y += _yy;
34
        var checker = instance_place(x, y, obj_board_solid);
35
        if (checker == -4)
36
            checker = collision_rectangle(132, 68, 508, 92, object_index, true, false);
37
        if (checker == -4)
38
            checker = collision_rectangle(132, 292, 508, 316, object_index, true, false);
39
        if (checker == -4)
40
            checker = collision_rectangle(132, 68, 156, 316, object_index, true, false);
41
        if (checker == -4)
42
            checker = collision_rectangle(484, 68, 508, 316, object_index, true, false);
43
        if (checker != -4)
44
            con = 99;
45
        else
46
            con = 2;
47
        x -= _xx;
48
        y -= _yy;
49
    }
50
    if (con == 2)
51
    {
52
        
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 + _xx, pushspeed);
53
        
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; }
("y", y, y + _yy, pushspeed);
54
        timer = 0;
55
        con = 3;
56
    }
57
    if (con == 3)
58
    {
59
        timer++;
60
        if (timer >= pushspeed)
61
        {
62
            con = 98;
63
            timer = 0;
64
            global.interact = 0;
65
        }
66
    }
67
    if (con == 98)
68
    {
69
        timer++;
70
        if (timer == 6)
71
        {
72
            safe_delete(mysolid);
73
            with (fakeground)
74
            {
75
                
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; }
("image_index", 0, 4, 8);
76
                
scr_doom
scr_doom

function
scr_doom(arg0, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; } }
(id, 10);
77
            }
78
            door = instance_create(x, y, obj_board_warptouch);
79
            with (door)
80
            {
81
                setxy_board(1960, 1160);
82
                warpx = 896;
83
                warpy = 1344;
84
                playerX = 1184;
85
                playerY = 1440;
86
            }
87
            con++;
88
        }
89
    }
90
    if (con == 99)
91
        con = 0;
92
}
93
else if (daddy != 0)
94
{
95
    if (!(x >= 128 && x <= 512 && y >= 64 && y <= 320))
96
        instance_destroy();
97
}