Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_shadow_mantle_enemy_spawn_Step_0

(view raw script w/o annotations or w/e)
1
if (!i_ex(obj_shadow_mantle_enemy))
2
    exit;
3
if (global.shadow_mantle_losses == 0 && obj_shadow_mantle_enemy.speedrun >= 0 && obj_shadow_mantle_enemy.speedrun < 5)
4
{
5
    if (obj_shadow_mantle_enemy.speedrun == 0)
6
        enemy = instance_create(256, 128, obj___);
7
    if (obj_shadow_mantle_enemy.speedrun == 1)
8
        enemy = instance_create(448, 160, obj___);
9
    if (obj_shadow_mantle_enemy.speedrun == 2)
10
        enemy = instance_create(384, 256, obj___);
11
    if (obj_shadow_mantle_enemy.speedrun == 3)
12
        enemy = instance_create(192, 192, obj___);
13
    if (obj_shadow_mantle_enemy.speedrun == 4)
14
        enemy = instance_create(320, 192, obj___);
15
    enemy.move_type = move_type;
16
    obj_shadow_mantle_enemy.speedrun++;
17
}
18
else
19
{
20
    var b = irandom(instance_number(obj_spawn_pos) - 1);
21
    enemy = instance_create(pos[b].x - 11, pos[b].y - 10, obj___);
22
    enemy.move_type = move_type;
23
}
24
if (shadow_mantle_move == true)
25
{
26
    obj_shadow_mantle_enemy.targetx = enemy.x;
27
    obj_shadow_mantle_enemy.targety = enemy.y - 32;
28
    obj_shadow_mantle_enemy.movestyle = "to point and stop";
29
    with (obj_shadow_mantle_enemy)
30
    {
31
        if (x < targetx)
32
            sprite_index = spr_shadow_mantle_side_r;
33
        else
34
            sprite_index = spr_shadow_mantle_side_l;
35
    }
36
}
37
snd_play(snd_wing);
38
instance_destroy();
39
with (obj_spawn_pos)
40
    instance_destroy();