Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_bq_baseball_Step_0

(view raw script w/o annotations or w/e)
1
if (!i_ex(baseball_hitbox) || !i_ex(wheel_hitbox_graze))
2
{
3
    instance_destroy();
4
    exit;
5
}
6
baseball_combo_timer--;
7
if (hit == 0)
8
    image_angle += 3;
9
if (hit == 1)
10
{
11
    hit_timer += 1;
12
    if (hit_timer == 1)
13
    {
14
        repeat (3)
15
        {
16
            fakesplash = instance_create((x - 20) + irandom(40), (y - 20) + irandom(40), o_boxing_splash);
17
            fakesplash.friction = -0.5;
18
            fakesplash.sprite_index = spr_boxing_splash2;
19
            if (hit_direction == -1)
20
                fakesplash.hspeed = -1 - random(2);
21
            if (hit_direction == 1)
22
                fakesplash.hspeed = 1 + random(2);
23
            fakesplash.vspeed = 1 + random(2);
24
        }
25
        xbase = x;
26
        ybase = y;
27
    }
28
    if (hit_timer > 0 && hit_timer < (10 / f))
29
    {
30
        x = (xbase + (15 / hit_timer)) - irandom(30 / hit_timer);
31
        y = (ybase + (15 / hit_timer)) - irandom(30 / hit_timer);
32
    }
33
    if (hit_timer > 0 && hit_timer < (10 / f))
34
    {
35
        with (obj_bq_baseball)
36
        {
37
            if (hit == 0)
38
                y -= vspeed;
39
        }
40
    }
41
    if (hit_timer > (10 / f))
42
        vspeed = -32 / f;
43
    if (y < -4 && vspeed < 0)
44
        instance_destroy();
45
}
46
if (y > 490)
47
    instance_destroy();