Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_berdlyb_spearblast_bullet_Step_0

(view raw script w/o annotations or w/e)
1
if (init == 0)
2
{
3
    snd_stop(snd_rocket);
4
    snd_play(snd_rocket);
5
    init = 1;
6
    timer = 2;
7
    path_start(bulletPath, 21, path_action_stop, false);
8
}
9
if (spawnrate >= 0)
10
{
11
    if (spawntimer == spawnrate)
12
    {
13
        d = scr_childbullet
scr_childbullet

function scr_childbullet() { var __child = instance_create(argument[0], argument[1], argument[2]); var __parent = (argument_count == 4) ? argument[3] : id; if (__parent.damage != -1) __child.damage = __parent.damage; if (__parent.grazepoints != -1) __child.grazepoints = __parent.grazepoints; if (__parent.timepoints != -1) __child.timepoints = __parent.timepoints; if (__parent.inv != -1) __child.inv = __parent.inv; if (__parent.target != -1) __child.target = __parent.target; if (__parent.grazed != -1) __child.grazed = __parent.grazed; if (__parent.grazetimer != -1) __child.grazetimer = __parent.grazetimer; __child.element = __parent.element; return __child; }
(x, y, obj_berdlyb_spearblast_trail);
14
        d.grazepoints = childgraze;
15
        d.image_angle = direction;
16
        spawntimer = 0;
17
    }
18
    else
19
    {
20
        spawntimer++;
21
    }
22
}
23
if (spawnchild >= 1)
24
{
25
    timer--;
26
    if (timer <= 0)
27
    {
28
        for (i = 0; i < spawnchild; i++)
29
        {
30
            d = scr_childbullet
scr_childbullet

function scr_childbullet() { var __child = instance_create(argument[0], argument[1], argument[2]); var __parent = (argument_count == 4) ? argument[3] : id; if (__parent.damage != -1) __child.damage = __parent.damage; if (__parent.grazepoints != -1) __child.grazepoints = __parent.grazepoints; if (__parent.timepoints != -1) __child.timepoints = __parent.timepoints; if (__parent.inv != -1) __child.inv = __parent.inv; if (__parent.target != -1) __child.target = __parent.target; if (__parent.grazed != -1) __child.grazed = __parent.grazed; if (__parent.grazetimer != -1) __child.grazetimer = __parent.grazetimer; __child.element = __parent.element; return __child; }
(x, y, obj_berdlyb_spearblast_mini);
31
            d.grazepoints = childgraze;
32
            d.direction = direction + childOffset;
33
            if (spawnchild == 2)
34
            {
35
                d.x += lengthdir_x(3, d.direction);
36
                d.y += lengthdir_y(3, d.direction);
37
            }
38
            d.image_angle = direction + childOffset;
39
            d.updateimageangle = 1;
40
            timer = 2;
41
            if (i == 0)
42
                childOffset *= -1;
43
        }
44
    }
45
}
46
image_angle = direction;