Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_battle_enemy_attack_rotating_bullet_explode_Step_0

(view raw script w/o annotations or w/e)
1
if (live_call())
2
    return global.live_result;
3
var battle_box = 3154;
4
switch (scene)
5
{
6
    case 1:
7
        draw_alpha += 0.15;
8
        if (draw_alpha >= 1)
9
            scene++;
10
        break;
11
    case 2:
12
        cutscene_wait(0.5);
13
        break;
14
    case 3:
15
        var bullet_number = 9;
16
        var y_offset = 0;
17
        var y_offset_inc = 10;
18
        var spawn_width = 100;
19
        var bullet_inc = spawn_width / bullet_number;
20
        var bullet_count = 1;
21
        var dir_offset = 40;
22
        var dir_start = 90 + (dir_offset * 0.5);
23
        var dir_inc = dir_offset / bullet_number;
24
        var istart = battle_box.x - (spawn_width * 0.5);
25
        for (var i = istart; i < (istart + spawn_width); i += bullet_inc)
26
        {
27
            var bullet = instance_create_depth(i, 200 + y_offset, -100, obj_battle_enemy_attack_bullet_residue);
28
            y_offset += (y_offset_inc * sign(bullet_count - (bullet_number * 0.5)));
29
            bullet.speed = 4;
30
            bullet.direction = dir_start - (bullet_count * dir_inc);
31
            bullet_count += 1;
32
            bullet.alarm[0] = 140;
33
            bullet.gravity = 0.15;
34
        }
35
        scene++;
36
        break;
37
    case 4:
38
        draw_alpha -= 0.25;
39
        if (draw_alpha <= 0)
40
            instance_destroy();
41
        break;
42
}