Deltarune script viewer

← back to main script listing

gml_GlobalScript_scr_draw_circle_width

(view raw script w/o annotations or w/e)
1
function scr_draw_circle_width
scr_draw_circle_width

function scr_draw_circle_width(arg0, arg1, arg2, arg3) { if (arg3 <= 1 || arg3 >= arg2) { draw_circle(arg0, arg1, arg2, arg3 < arg2); exit; } ring_surf = -1; if (!surface_exists(ring_surf)) { ring_surf = surface_create(arg2 * 2, arg2 * 2); surface_set_target(ring_surf); draw_clear_alpha(c_black, 0); draw_circle(arg2, arg2, arg2, false); gpu_set_blendmode(bm_subtract); draw_circle(arg2, arg2, arg2 - arg3, false); gpu_set_blendmode(bm_normal); surface_reset_target(); } draw_surface(ring_surf, arg0 - arg2, arg1 - arg2); }
(arg0, arg1, arg2, arg3)
2
{
3
    if (arg3 <= 1 || arg3 >= arg2)
4
    {
5
        draw_circle(arg0, arg1, arg2, arg3 < arg2);
6
        exit;
7
    }
8
    ring_surf = -1;
9
    if (!surface_exists(ring_surf))
10
    {
11
        ring_surf = surface_create(arg2 * 2, arg2 * 2);
12
        surface_set_target(ring_surf);
13
        draw_clear_alpha(c_black, 0);
14
        draw_circle(arg2, arg2, arg2, false);
15
        gpu_set_blendmode(bm_subtract);
16
        draw_circle(arg2, arg2, arg2 - arg3, false);
17
        gpu_set_blendmode(bm_normal);
18
        surface_reset_target();
19
    }
20
    draw_surface(ring_surf, arg0 - arg2, arg1 - arg2);
21
}