Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_sneo_rotatingwall_pipis_Step_0

(view raw script w/o annotations or w/e)
1
if (global.turntimer < 1)
2
    instance_destroy();
3
if (timer > 0)
4
{
5
    timer++;
6
    x += (3 - random(6));
7
    y += (3 - random(6));
8
}
9
else if (i_ex(obj_sneo_wall_controller_new))
10
{
11
    x += obj_sneo_wall_controller_new.wallspeed[wallnumber];
12
}
13
if (timer == 8)
14
{
15
    snd_play(snd_bomb);
16
    instance_destroy();
17
    fx = instance_create(x, y, obj_pipis_destroy_fx);
18
    fx.image_xscale = 1.5;
19
    fx.image_yscale = 1.5;
20
    for (i = 0; i < 12; i++)
21
    {
22
        radialshot = instance_create(x, y, obj_sneo_heatattack_bullet);
23
        with (radialshot)
24
            scr_bullet_init
scr_bullet_init

function scr_bullet_init() { grazed = 0; grazetimer = 0; destroyonhit = 1; target = 0; inv = 60; damage = 10; element = 0; grazepoints = 1; timepoints = 1; active = 1; updateimageangle = 0; }
();
25
        radialshot.sprite_index = spr_diamondbullet;
26
        radialshot.dir = ((i * 30) + random(28)) - 14;
27
        radialshot.active = 1;
28
        radialshot.depth = depth - 1;
29
        radialshot.target = target;
30
        radialshot.damage = damage;
31
        radialshot.grazed = 0;
32
        radialshot.element = 6;
33
    }
34
    radialshot = instance_create(x, y, obj_sneo_heatattack_bullet);
35
    with (radialshot)
36
        scr_bullet_init
scr_bullet_init

function scr_bullet_init() { grazed = 0; grazetimer = 0; destroyonhit = 1; target = 0; inv = 60; damage = 10; element = 0; grazepoints = 1; timepoints = 1; active = 1; updateimageangle = 0; }
();
37
    radialshot.sprite_index = spr_diamondbullet;
38
    radialshot.dir = (point_direction(x, y, obj_heart.x + 10, obj_heart.y + 10) - 5) + random(10);
39
    radialshot.active = 1;
40
    radialshot.depth = depth - 1;
41
    radialshot.target = target;
42
    radialshot.damage = damage;
43
    radialshot.grazed = 0;
44
    radialshot.element = 6;
45
}