Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_knight_stream_Draw_0

(view raw script w/o annotations or w/e)
1
draw_self();
2
scr_draw_in_box_ext_begin(-4, -4);
3
with (obj_regularbullet)
4
    draw_self();
5
with (obj_knight_streamline)
6
{
7
    line_length = 
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; }
(line_length, 400, 60);
8
    width = 
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; }
(width, width_goal, min(abs(width_goal - width) * 0.5, 16));
9
    x1 = x + lengthdir_x(200, direction);
10
    y1 = y + lengthdir_y(200, direction);
11
    x2 = x1 + lengthdir_x(line_length, direction + 180);
12
    y2 = y1 + lengthdir_y(line_length, direction + 180);
13
    draw_line_width_color(x1, y1, x2, y2, width, c_gray, c_gray);
14
}
15
with (obj_bullet_knight_stream)
16
{
17
    line_length = 
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; }
(line_length, 400, 60);
18
    width = 
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; }
(width, width_goal, min(abs(width_goal - width) * 0.5, 16));
19
    x1 = x + lengthdir_x(200, direction);
20
    y1 = y + lengthdir_y(200, direction);
21
    x2 = x1 + lengthdir_x(line_length, direction + 180);
22
    y2 = y1 + lengthdir_y(line_length, direction + 180);
23
    draw_line_width_color(x1, y1, x2, y2, width, c_red, c_red);
24
}
25
with (obj_bullet_knight_stream)
26
{
27
    if (width > 8)
28
        draw_line_width_color(x1, y1, x2, y2, width * (0.8 + (sin(global.time * pi) * 0.2)), c_maroon, c_maroon);
29
}
30
with (obj_bullet_knight_stream)
31
{
32
    if (width > 8)
33
        draw_line_width_color(x1, y1, x2, y2, width * (0.65 + (sin(global.time * pi) * 0.2)), c_black, c_black);
34
}
35
scr_draw_in_box_end
scr_draw_in_box_end

function
scr_draw_in_box_end()
{ if (!instance_exists(obj_growtangle)) exit; gpu_set_alphatestref(0); gpu_set_alphatestenable(false); gpu_set_blendmode(bm_normal); }
();