Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b3bs_ribbick_trash_Step_0

(view raw script w/o annotations or w/e)
1
radius = 40;
2
if (i_ex(obj_mainchara))
3
{
4
    var mx = obj_mainchara.x + (obj_mainchara.sprite_width / 2);
5
    var ox = x + (sprite_width / 2);
6
    if (abs(mx - ox) <= radius && obj_mainchara.y >= y && con == 0)
7
    {
8
        
scr_depth
scr_depth

function
scr_depth()
{ if (argument_count > 0) { with (argument0) depth = 100000 - ((y * 10) + (sprite_height * 10)); } else { depth = 100000 - ((y * 10) + (sprite_height * 10)); } }
();
9
        snd_play_x(snd_wing, 1, 0.8);
10
        with (object_index)
11
            con = 1;
12
        visible = 1;
13
        rabbick = instance_create(x, y, obj_chaseenemy);
14
        with (rabbick)
15
        {
16
            sprite_index = spr_ribbick_Idle;
17
            touchsprite = spr_ribbick_Idle;
18
            scr_delay_var("autodepth", 1, 4);
19
            alertcon = -1;
20
            pacetype = 10;
21
            autodepth = 0;
22
            var maxy = 40;
23
            var found = 0;
24
            for (var i = 40; i < 180; i++)
25
            {
26
                if (!found)
27
                {
28
                    if (place_meeting(x, y + i + 20, obj_solidblock))
29
                    {
30
                        found = 1;
31
                        maxy = i;
32
                    }
33
                }
34
            }
35
            depth = other.depth - 1;
36
            
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 + maxy, round(maxy / 18));
37
        }
38
        rabbick.myencounter = encounterno;
39
        rabbick.encounterflag = encounterflag;
40
    }
41
}