Deltarune (Chapter 1) script viewer

← back to main script listing

gml_Object_obj_lancerboss2_Draw_0

(view raw script w/o annotations or w/e)
1
if (state == 3)
2
{
3
    shakesine = 0;
4
    siner = 0;
5
    hurttimer -= 1;
6
    if (hurttimer < 0)
7
    {
8
        state = 0;
9
    }
10
    else
11
    {
12
        if (global.monster[myself] == 0)
13
            scr_defeatrun
scr_defeatrun

function scr_defeatrun() { defeatanim = instance_create(x, y, obj_defeatanim); defeatanim.sprite_index = sprite_index; defeatanim.sprite_index = hurtsprite; defeatanim.image_index = 0; defeatanim.image_xscale = image_xscale; defeatanim.image_yscale = image_yscale; instance_destroy(); }
();
14
        hurtshake += 1;
15
        if (hurtshake > 1)
16
        {
17
            if (shakex > 0)
18
                shakex -= 1;
19
            if (shakex < 0)
20
                shakex += 1;
21
            shakex = -shakex;
22
            hurtshake = 0;
23
        }
24
        if ((global.monsterhp[myself] / global.monstermaxhp[myself]) <= 0.65)
25
            hurtlevel = 1;
26
        if ((global.monsterhp[myself] / global.monstermaxhp[myself]) <= 0.2)
27
            hurtlevel = 2;
28
        draw_sprite_ext(hurtsprite, 0, x + (shakex * 2), y, 2, 2, 0, image_blend, 1);
29
    }
30
}
31
if (state == 0)
32
{
33
    shakesine += 1;
34
    siner += 1;
35
    shx = random((sin(shakesine / 6) * hurtlevel) / 1.5);
36
    thissprite = idlesprite;
37
    if (global.mercymod[myself] >= global.mercymax[myself])
38
        thissprite = sparedsprite;
39
    draw_sprite_ext(thissprite, hurtlevel, x + shx, y, 2, 2, 0, image_blend, 1);
40
    if (flash == 1)
41
    {
42
        fsiner += 1;
43
        d3d_set_fog(true, c_white, 0, 1);
44
        draw_sprite_ext(thissprite, hurtlevel, x, y, 2, 2, 0, image_blend, (-cos(fsiner / 5) * 0.4) + 0.6);
45
        d3d_set_fog(false, c_black, 0, 0);
46
    }
47
}
48
if (becomeflash == 0)
49
    flash = 0;
50
becomeflash = 0;