Undertale Yellow script viewer

← back to main script listing

gml_Object_obj_battle_enemy_attack_cs_1_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 (attack_tick)
5
{
6
    case 30:
7
    case 70:
8
    case 110:
9
        var snake_spawn_y;
10
        do
11
            snake_spawn_y = choose(battle_box.bbox_top + 20, battle_box.y, battle_box.bbox_bottom - 20);
12
        until (snake_spawn_y != snake_spawn_last);
13
        var snake = instance_create_depth(choose(battle_box.bbox_left - 40, battle_box.bbox_right + 40), snake_spawn_y, -50, obj_battle_enemy_attack_slither_snake_snake);
14
        if (snake.x < battle_box.x)
15
        {
16
            snake.direction = 0;
17
        }
18
        else
19
        {
20
            snake.image_yscale = -1;
21
            snake.direction = 180;
22
        }
23
        snake.image_angle = snake.direction;
24
        snake.speed = 5;
25
        snake_spawn_last = snake_spawn_y;
26
        break;
27
    case 150:
28
    case 190:
29
    case 230:
30
        var snake_spawn_x;
31
        do
32
            snake_spawn_x = choose(battle_box.bbox_left + 20, battle_box.x, battle_box.bbox_right - 20);
33
        until (snake_spawn_x != snake_spawn_last);
34
        var snake = instance_create_depth(snake_spawn_x, choose(battle_box.bbox_top - 40, battle_box.bbox_bottom + 40), -50, obj_battle_enemy_attack_slither_snake_snake);
35
        if (snake.y < battle_box.y)
36
            snake.direction = 270;
37
        else
38
            snake.direction = 90;
39
        snake.image_angle = snake.direction;
40
        snake.speed = 5;
41
        snake_spawn_last = snake_spawn_x;
42
        break;
43
    case 270:
44
        instance_destroy();
45
        break;
46
}
47
attack_tick += 1;