Deltarune (Chapter 4) script viewer

← back to main script listing

gml_GlobalScript_scr_draw_beam

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

function
scr_draw_beam(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7)
{ var __xx = arg0; var __yy = arg1; var _end0 =
scr_rotatevector(new Vector2(arg2), arg4);
_end0.x += __xx; _end0.y += __yy; var _end1 =
scr_rotatevector(new Vector2(arg2), arg4 + (arg3 / 2));
_end1.x += __xx; _end1.y += __yy; var _end2 =
scr_rotatevector(new Vector2(arg2), arg4 - (arg3 / 2));
_end2.x += __xx; _end2.y += __yy; var _col = draw_get_color(); var _alpha = draw_get_alpha(); draw_set_color(arg5); draw_set_alpha(arg6); if (arg7) d_circle(_end0.x, _end0.y, arg3 / 2, 0); d_triangle(__xx, __yy, _end1.x, _end1.y, _end2.x, _end2.y, 0); draw_set_color(_col); draw_set_alpha(_alpha); }
(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7)
2
{
3
    var __xx = arg0;
4
    var __yy = arg1;
5
    var _end0 = 
scr_rotatevector
scr_rotatevector

function
scr_rotatevector(arg0, arg1)
{ if (arg1 == 0) return arg0; var _dir = point_direction(0, 0, arg0.x, arg0.y); var _len = point_distance(0, 0, arg0.x, arg0.y); arg0.x = lengthdir_x(_len, _dir + arg1); arg0.y = lengthdir_y(_len, _dir + arg1); return arg0; } function scr_dir_to_vector(arg0) { var __dir = arg0[0]; var __len = 1; if (argument_count > 1) __len = arg0[1]; return new Vector2(lengthdir_x(__dir, __len), lengthdir_y(__dir, __len)); }
(new Vector2(arg2), arg4);
6
    _end0.x += __xx;
7
    _end0.y += __yy;
8
    var _end1 = 
scr_rotatevector
scr_rotatevector

function
scr_rotatevector(arg0, arg1)
{ if (arg1 == 0) return arg0; var _dir = point_direction(0, 0, arg0.x, arg0.y); var _len = point_distance(0, 0, arg0.x, arg0.y); arg0.x = lengthdir_x(_len, _dir + arg1); arg0.y = lengthdir_y(_len, _dir + arg1); return arg0; } function scr_dir_to_vector(arg0) { var __dir = arg0[0]; var __len = 1; if (argument_count > 1) __len = arg0[1]; return new Vector2(lengthdir_x(__dir, __len), lengthdir_y(__dir, __len)); }
(new Vector2(arg2), arg4 + (arg3 / 2));
9
    _end1.x += __xx;
10
    _end1.y += __yy;
11
    var _end2 = 
scr_rotatevector
scr_rotatevector

function
scr_rotatevector(arg0, arg1)
{ if (arg1 == 0) return arg0; var _dir = point_direction(0, 0, arg0.x, arg0.y); var _len = point_distance(0, 0, arg0.x, arg0.y); arg0.x = lengthdir_x(_len, _dir + arg1); arg0.y = lengthdir_y(_len, _dir + arg1); return arg0; } function scr_dir_to_vector(arg0) { var __dir = arg0[0]; var __len = 1; if (argument_count > 1) __len = arg0[1]; return new Vector2(lengthdir_x(__dir, __len), lengthdir_y(__dir, __len)); }
(new Vector2(arg2), arg4 - (arg3 / 2));
12
    _end2.x += __xx;
13
    _end2.y += __yy;
14
    var _col = draw_get_color();
15
    var _alpha = draw_get_alpha();
16
    draw_set_color(arg5);
17
    draw_set_alpha(arg6);
18
    if (arg7)
19
        d_circle(_end0.x, _end0.y, arg3 / 2, 0);
20
    d_triangle(__xx, __yy, _end1.x, _end1.y, _end2.x, _end2.y, 0);
21
    draw_set_color(_col);
22
    draw_set_alpha(_alpha);
23
}