Undertale script viewer

← back to main script listing

gml_Object_obj_dancemett_Step_0

(view raw script w/o annotations or w/e)
1
if (y > (global.idealborder[2] - 80) && flash == 0)
2
{
3
    sprite_index = spr_tinydancemett_tell;
4
    flash = 1;
5
}
6
if (flash == 1)
7
{
8
    timer += vspeed;
9
    image_speed = timer / 60;
10
    if (timer > 60)
11
        flash = 2;
12
}
13
if (flash == 2)
14
{
15
    image_index = 0;
16
    sprite_index = spr_tinydancemett;
17
    flash = 3;
18
    image_speed = 0.5;
19
}
20
if (flash == 3)
21
{
22
    if (image_index == 2)
23
        flash = 4;
24
}
25
if (flash == 4)
26
{
27
    i = 0;
28
    repeat (2)
29
    {
30
        lt = instance_create(x + 10, y + 10, obj_kissybullet_pl);
31
        lt.speed = 1;
32
        lt.sprite_index = spr_tinysparkle;
33
        lt.direction = i * 180;
34
        lt.vspeed = -1;
35
        lt.gravity = 0.1 + random(0.05);
36
        lt.hspeed += (hspeed + random(0.5)) - 0.25;
37
        i += 1;
38
    }
39
    flash = 5;
40
}
41
if (flash == 5)
42
{
43
    if (image_index == 6)
44
        flash = 6;
45
}
46
if (flash == 6)
47
{
48
    repeat (1)
49
    {
50
        lt = instance_create(x + 10, y + 10, obj_kissybullet_pl);
51
        lt.speed = 2;
52
        lt.sprite_index = spr_tinysparkle;
53
        lt.direction = (i * 180) + 90;
54
        lt.vspeed = (-1.5 + random(0.5)) - 0.25;
55
        lt.gravity = 0.1 + random(0.05);
56
        lt.hspeed += (hspeed + random(0.5)) - 0.25;
57
        i += 1;
58
    }
59
    flash = 9;
60
}
61
if (flash == 9)
62
{
63
    flash = 10;
64
    alarm[4] = 40;
65
}
66
if (y > room_height)
67
    instance_destroy();
68
if (collision_rectangle(x + 2, y + 2, x + 22, y + 22, obj_heartshot, 0, 1))
69
{
70
    g = collision_rectangle(x + 2, y + 2, x + 22, y + 22, obj_heartshot, 0, 1);
71
    with (g)
72
        instance_destroy();
73
    bp = instance_create(x - 15, y - 6, obj_brokenpiece);
74
    bp.sprite_index = sprite_index;
75
    bp.image_index = image_index;
76
    bp.depth = depth + 1;
77
    instance_destroy();
78
}
79
siner += 1;
80
x = xstart + (sin(siner / 6) * 10);