Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_dw_churchb_bellchaser_Draw_0

(view raw script w/o annotations or w/e)
1
draw_self();
2
if (drawaura)
3
{
4
    drawx = 0;
5
    drawscale = 1;
6
    if (con == 1 || drawaura)
7
        auraalph = lerp(auraalph, 1, 0.1);
8
    drawsiner += 0.25;
9
    tempx = x;
10
    x += drawx;
11
    superscalex = 0;
12
    superdrawx = 0;
13
    superscalexb = 1;
14
    gpu_set_blendmode(bm_add);
15
    for (var i = 0; i < 5; i++)
16
    {
17
        var aura = (i * 9) + ((drawsiner * 3) % 9);
18
        var aurax = (aura * 0.75) + (sin(aura / 4) * 4);
19
        var auray = 45 * 
scr_ease_in
scr_ease_in

function
scr_ease_in(arg0, arg1)
{ if (arg1 < -3 || arg1 > 7) return arg0; switch (arg1) { case -3: return ease_in_bounce(arg0, 0, 1, 1); case -2: return ease_in_elastic(arg0, 0, 1, 1); case -1: var _s = 1.70158; return arg0 * arg0 * (((_s + 1) * arg0) - _s); case 0: return arg0; case 1: return -cos(arg0 * 1.5707963267948966) + 1; case 6: return power(2, 10 * (arg0 - 1)); case 7: return -(sqrt(1 - sqr(arg0)) - 1); default: return power(arg0, arg1); } }
(aura / 45, 1);
20
        var aurayscale = min(80 / sprite_height, 1);
21
        draw_sprite_ext(sprite_index, image_index, x - ((aurax / 180) * drawscale * sprite_width), y - ((auray / 82) * sprite_height * aurayscale), (image_xscale + (aurax / 36)) * drawscale, image_yscale + ((auray / 36) * aurayscale), image_angle, c_red, image_alpha * (1 - (auray / 45)) * 0.5 * auraalph);
22
    }
23
    gpu_set_blendmode(bm_normal);
24
    var xmult = min((70 / sprite_width) * 4, 4);
25
    var ymult = min((80 / sprite_height) * 5, 5);
26
    var ysmult = min((80 / sprite_height) * 0.2, 0.2);
27
    draw_sprite_ext_centerscale(sprite_index, image_index, x + superdrawx + (sin(drawsiner / 5) * xmult), y + (cos(drawsiner / 5) * ymult), image_xscale + superscalex, image_yscale + (sin(drawsiner / 5) * ysmult), image_angle, 255, image_alpha * 0.2 * auraalph);
28
    draw_sprite_ext_centerscale(sprite_index, image_index, (x + superdrawx) - (sin(drawsiner / 5) * xmult), y - (cos(drawsiner / 5) * ymult), image_xscale + superscalex, image_yscale - (sin(drawsiner / 5) * ysmult), image_angle, 255, image_alpha * 0.2 * auraalph);
29
    
scr_draw_outline_ext
scr_draw_outline_ext

function
scr_draw_outline_ext(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9)
{ gpu_set_fog(true, arg7, 0, 0); var __xdirA = arg9; var __xdirB = 0; var __ydirA = 0; var __ydirB = arg9; if ((arg6 % 90) != 0) { __xdirA = lengthdir_x(arg9, arg6); __xdirB = lengthdir_x(arg9, arg6 + 90); __ydirA = lengthdir_y(arg9, arg6 + 90); __ydirB = lengthdir_y(arg9, arg6); } draw_sprite_ext(arg0, arg1, arg2 + __xdirA, arg3 + __ydirA, arg4, arg5, arg6, c_white, arg8); draw_sprite_ext(arg0, arg1, arg2 - __xdirA, arg3 - __ydirA, arg4, arg5, arg6, c_white, arg8); draw_sprite_ext(arg0, arg1, arg2 + __xdirB, arg3 + __ydirB, arg4, arg5, arg6, c_white, arg8); draw_sprite_ext(arg0, arg1, arg2 - __xdirB, arg3 - __ydirB, arg4, arg5, arg6, c_white, arg8); gpu_set_fog(false, c_white, 0, 0); }
(sprite_index, image_index, x, y, image_xscale * drawscale, image_yscale, image_angle, c_red, image_alpha * 0.3 * auraalph, 2);
30
    draw_sprite_ext(sprite_index, image_index, x, y, image_xscale * drawscale, image_yscale, image_angle, image_blend, image_alpha);
31
    x = tempx;
32
}
33
var draw_collision = false;
34
if (draw_collision)
35
{
36
    var myx = x + (sprite_width / 2);
37
    var myy = (y + sprite_height) - 10;
38
    var size = 48;
39
    d_circle(myx, myy - size, size, 1);
40
    var targx = obj_mainchara.bbox_left + ((obj_mainchara.bbox_right - obj_mainchara.bbox_left) / 2);
41
    var targy = obj_mainchara.bbox_top + ((obj_mainchara.bbox_bottom - obj_mainchara.bbox_top) / 2);
42
    draw_line(myx, myy, targx, targy);
43
}