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 = obj_dialogue_box_battle_transformation_any
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
}