Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_battleoutline_Draw_0

(view raw script w/o annotations or w/e)
1
if (!surface_exists(surf))
2
    surf = surface_create(sprite_width + buffer, sprite_height + buffer);
3
if (sprite_width != surface_get_width(surf) || sprite_height != surface_get_height(surf))
4
    surface_resize(surf, sprite_width + buffer, sprite_height + buffer);
5
if (i_ex(target))
6
{
7
    sprite_index = target.sprite_index;
8
    image_index = target.image_index;
9
    image_xscale = target.image_xscale;
10
    image_yscale = target.image_yscale;
11
    x = target.x;
12
    y = target.y;
13
}
14
if (image_alpha > 0)
15
{
16
    surface_set_target(surf);
17
    draw_clear_alpha(c_red, 0);
18
    var _half = buffer * 0.5;
19
    gpu_set_colorwriteenable(false, false, false, true);
20
    draw_sprite_ext(sprite_index, image_index, _half, _half - image_yscale, image_xscale, image_yscale, 0, c_white, 1);
21
    draw_sprite_ext(sprite_index, image_index, _half + image_xscale, _half, image_xscale, image_yscale, 0, c_white, 1);
22
    draw_sprite_ext(sprite_index, image_index, _half - image_xscale, _half, image_xscale, image_yscale, 0, c_white, 1);
23
    draw_sprite_ext(sprite_index, image_index, _half, _half + image_yscale, image_xscale, image_yscale, 0, c_white, 1);
24
    gpu_set_fog(true, #202020, 0, 1);
25
    gpu_set_colorwriteenable(true, true, true, true);
26
    draw_sprite_ext(sprite_index, image_index, _half, _half, image_xscale, image_yscale, 0, c_white, 1);
27
    gpu_set_fog(false, c_black, 0, 0);
28
    surface_reset_target();
29
    draw_surface_ext(surf, x - _half, y - _half, 1, 1, 0, c_white, image_alpha);
30
}