Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_battle_enemy_attack_guardener_launcher_Step_0

(view raw script w/o annotations or w/e)
1
if (live_call())
2
    return global.live_result;
3
switch (scene)
4
{
5
    case 0:
6
        image_alpha += 0.2;
7
        if (image_alpha >= 1)
8
            cutscene_advance();
9
        break;
10
    case 1:
11
        var turn_speed_inc = 0.25;
12
        if (turn_speed < turn_speed_max)
13
            turn_speed += turn_speed_inc;
14
        else
15
            cutscene_advance();
16
        break;
17
    case 2:
18
        if (image_angle >= shoot_point_next)
19
        {
20
            image_speed = 1;
21
            image_index = 0;
22
            launch_noloop = true;
23
            shoot_point_next += shoot_point_inc;
24
        }
25
        break;
26
}
27
image_angle += turn_speed;
28
if (launch_noloop == true)
29
{
30
    launch_noloop = false;
31
    if (attack_count > 0)
32
    {
33
        attack_count -= 1;
34
        for (var i = 0; i < 8; i++)
35
        {
36
            var new_dir = image_angle + (i * 45);
37
            var xx = x + lengthdir_x(10, new_dir + (turn_speed * 3));
38
            var yy = y + lengthdir_y(10, new_dir + (turn_speed * 3));
39
            var new_seed = instance_create_depth(xx, yy, depth + 1, obj_battle_enemy_attack_guardener_seed_small);
40
            new_seed.direction = new_dir;
41
            new_seed.launch_speed = 3.5;
42
        }
43
        audio_play_sound(snd_arc_shoot, 1, 0);
44
    }
45
    else
46
    {
47
        instance_destroy();
48
        instance_destroy(obj_battle_enemy_attack_guardener_attack_4);
49
    }
50
}
51
if (floor(image_index) >= (image_number - 1))
52
{
53
    image_speed = 0;
54
    image_index = 0;
55
}