Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_susiezilla_singlescreen_shadowguy_parent_Draw_73

(view raw script w/o annotations or w/e)
1
mark_counter = 
scr_approach
scr_approach

function
scr_approach(arg0, arg1, arg2)
{ if (arg0 < arg1) { arg0 += arg2; if (arg0 > arg1) return arg1; } else { arg0 -= arg2; if (arg0 < arg1) return arg1; } return arg0; }
(mark_counter, 1, 0.1);
2
if (hitcon || state == states.dead)
3
    exit;
4
with (obj_susiezilla_gamecontroller)
5
{
6
    if (gameover)
7
        exit;
8
}
9
if (object_index != obj_susiezilla_singlescreen_shadowguy_laser_machine)
10
{
11
    if (object_index == obj_susiezilla_singlescreen_shadowguy_in_dozer)
12
    {
13
        if (x < (camerax() - 32) || x > (camerax() + camerawidth() + 32))
14
        {
15
            var diir = (x < (camerax() - 32)) ? -1 : 1;
16
            var where = (camerax() + (camerawidth() * 0.5) + ((camerawidth() * 0.5 * diir) - (8 * diir))) - (sin(global.time * 0.4) * 2);
17
            draw_sprite_ext(spr_susiezilla_extremedanger_indicator, 0, where, y - 48, diir * 0.75 * mark_counter, 0.75 * mark_counter, 0, c_white, 1);
18
            if ((global.time % 6) < 3)
19
                draw_sprite_ext(spr_susiezilla_extremedanger_indicator, 1, where, y - 48, diir * 0.75 * mark_counter, 0.75 * mark_counter, 0, c_white, 1);
20
        }
21
    }
22
    else
23
    {
24
        if (x < (camerax() - 32))
25
            draw_sprite_ext(spr_susiezilla_enemy_indicator, 0, (camerax() + 8) - (sin(global.time * 0.4) * 2), y - 48, -mark_counter, mark_counter, 0, c_white, 1);
26
        if (x > (camerax() + camerawidth() + 32))
27
            draw_sprite_ext(spr_susiezilla_enemy_indicator, 0, ((camerax() + camerawidth()) - 8) + (sin(global.time * 0.4) * 2), y - 48, mark_counter, mark_counter, 0, c_white, 1);
28
    }
29
}
30
else if (x < (camerax() + 32) || x > ((camerax() + camerawidth()) - 32))
31
{
32
    var diir = (x < (camerax() + 32)) ? -1 : 1;
33
    var where = (camerax() + (camerawidth() * 0.5) + ((camerawidth() * 0.5 * diir) - (8 * diir))) - (sin(global.time * 0.4) * 2);
34
    draw_sprite_ext(spr_susiezilla_extremedanger_indicator, 0, where, y - 48, diir, 1, 0, c_white, 1);
35
    if ((global.time % 6) < 3)
36
        draw_sprite_ext(spr_susiezilla_extremedanger_indicator, 1, where, y - 48, diir, 1, 0, c_white, 1);
37
    if (state == states.charge)
38
    {
39
        for (aa = 0; aa < ((48 / max_charge) * state_timer); aa++)
40
        {
41
            var tempdir = 90 - (7.5 * aa);
42
            draw_sprite_ext(spr_susiezilla_extremedanger_bar, 0, (where + lengthdir_x(18, tempdir)) - (64 * diir), (y - 48) + lengthdir_y(18, tempdir), 1, 1, tempdir, c_white, 1);
43
        }
44
        draw_set_halign(fa_center);
45
        draw_set_valign(fa_middle);
46
        draw_set_font(fnt_comicsans);
47
        draw_set_color(c_black);
48
        draw_text_transformed(where - (64 * diir) - 2, y - 54 - 2, string_format((state_timer / max_charge) * 100, 3, 1) + "%", 2, 2, ra);
49
        draw_text_transformed((where - (64 * diir)) + 2, (y - 52) + 2, string_format((state_timer / max_charge) * 100, 3, 1) + "%", 2, 2, ra);
50
        draw_text_transformed((where - (64 * diir)) + 2, y - 52 - 2, string_format((state_timer / max_charge) * 100, 3, 1) + "%", 2, 2, ra);
51
        draw_text_transformed(where - (64 * diir) - 2, (y - 52) + 2, string_format((state_timer / max_charge) * 100, 3, 1) + "%", 2, 2, ra);
52
        draw_set_color(c_maroon);
53
        draw_text_transformed(where - (64 * diir), y - 52, string_format((state_timer / max_charge) * 100, 3, 1) + "%", 2, 2, ra);
54
        draw_set_color(c_red);
55
        draw_text_transformed((where + rxo) - (64 * diir), (y - 52) + 2 + ryo, string_format((state_timer / max_charge) * 100, 3, 1) + "%", 2, 2, ra);
56
        draw_set_halign(fa_left);
57
        draw_set_valign(fa_top);
58
        draw_set_color(c_white);
59
    }
60
}