Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_cyber_shadowMaker_fireworks_Draw_0

(view raw script w/o annotations or w/e)
1
if (is_active || inactive_cleanup)
2
{
3
    draw_set_color(c_black);
4
    draw_set_alpha(frontshadOpacity);
5
    if (room == room_dw_cyber_maze_fireworks)
6
        draw_rectangle(160, 280, 480, 480, 0);
7
    if (room == room_dw_cyber_post_music_boss_slide)
8
    {
9
        if (obj_mainchara.x < 840)
10
        {
11
            fade_reset = false;
12
            fade_cleanup = true;
13
            fade_in = false;
14
            frontshadOpacity *= (1 - ((520 / obj_mainchara.x) * 0.25));
15
        }
16
        else if (!fade_reset)
17
        {
18
            fade_reset = true;
19
            fade_cleanup = false;
20
            fade_timer = 0;
21
        }
22
        draw_rectangle(520, 2600, 2720, 2640, 0);
23
    }
24
    draw_set_color(c_white);
25
    draw_set_alpha(1);
26
    gpu_set_blendenable(false);
27
    gpu_set_colorwriteenable(false, false, false, true);
28
    draw_set_alpha(0);
29
    if (room == room_dw_cyber_maze_fireworks)
30
    {
31
        scr_draw_sprite_tiled_area
scr_draw_sprite_tiled_area

function scr_draw_sprite_tiled_area() { var sprite = argument[0]; var subimg = argument[1]; var xx = argument[2]; var yy = argument[3]; var x1 = argument[4]; var y1 = argument[5]; var x2 = argument[6]; var y2 = argument[7]; var xscale = argument[8]; var yscale = argument[9]; var col = (argument_count > 10) ? argument[10] : 16777215; var alpha = (argument_count > 11) ? argument[11] : 1; var sw = sprite_get_width(sprite) * xscale; var sh = sprite_get_height(sprite) * yscale; var i = x1 - ((x1 % sw) - (xx % sw)) - (sw * ((x1 % sw) < (xx % sw))); var j = y1 - ((y1 % sh) - (yy % sh)) - (sh * ((y1 % sh) < (yy % sh))); var jj = j; while (i <= x2) { while (j <= y2) { var left; if (i <= x1) left = x1 - i; else left = 0; var X = i + left; var top; if (j <= y1) top = y1 - j; else top = 0; var Y = j + top; var width; if (x2 <= (i + sw)) width = ((sw - ((i + sw) - x2)) + 1) - left; else width = sw - left; var height; if (y2 <= (j + sh)) height = ((sh - ((j + sh) - y2)) + 1) - top; else height = sh - top; draw_sprite_part_ext(sprite, subimg, left, top, width, height, X, Y, xscale, yscale, col, alpha); j += sh; } j = jj; i += sw; } return 0; }
(spr_blank_tile_white, 0, 160, 360, 160, 360, 280, 480, 1, 1, c_white, 0);
32
        scr_draw_sprite_tiled_area
scr_draw_sprite_tiled_area

function scr_draw_sprite_tiled_area() { var sprite = argument[0]; var subimg = argument[1]; var xx = argument[2]; var yy = argument[3]; var x1 = argument[4]; var y1 = argument[5]; var x2 = argument[6]; var y2 = argument[7]; var xscale = argument[8]; var yscale = argument[9]; var col = (argument_count > 10) ? argument[10] : 16777215; var alpha = (argument_count > 11) ? argument[11] : 1; var sw = sprite_get_width(sprite) * xscale; var sh = sprite_get_height(sprite) * yscale; var i = x1 - ((x1 % sw) - (xx % sw)) - (sw * ((x1 % sw) < (xx % sw))); var j = y1 - ((y1 % sh) - (yy % sh)) - (sh * ((y1 % sh) < (yy % sh))); var jj = j; while (i <= x2) { while (j <= y2) { var left; if (i <= x1) left = x1 - i; else left = 0; var X = i + left; var top; if (j <= y1) top = y1 - j; else top = 0; var Y = j + top; var width; if (x2 <= (i + sw)) width = ((sw - ((i + sw) - x2)) + 1) - left; else width = sw - left; var height; if (y2 <= (j + sh)) height = ((sh - ((j + sh) - y2)) + 1) - top; else height = sh - top; draw_sprite_part_ext(sprite, subimg, left, top, width, height, X, Y, xscale, yscale, col, alpha); j += sh; } j = jj; i += sw; } return 0; }
(spr_blank_tile_white, 0, 360, 360, 360, 360, 480, 480, 1, 1, c_white, 0);
33
        scr_draw_sprite_tiled_area
scr_draw_sprite_tiled_area

function scr_draw_sprite_tiled_area() { var sprite = argument[0]; var subimg = argument[1]; var xx = argument[2]; var yy = argument[3]; var x1 = argument[4]; var y1 = argument[5]; var x2 = argument[6]; var y2 = argument[7]; var xscale = argument[8]; var yscale = argument[9]; var col = (argument_count > 10) ? argument[10] : 16777215; var alpha = (argument_count > 11) ? argument[11] : 1; var sw = sprite_get_width(sprite) * xscale; var sh = sprite_get_height(sprite) * yscale; var i = x1 - ((x1 % sw) - (xx % sw)) - (sw * ((x1 % sw) < (xx % sw))); var j = y1 - ((y1 % sh) - (yy % sh)) - (sh * ((y1 % sh) < (yy % sh))); var jj = j; while (i <= x2) { while (j <= y2) { var left; if (i <= x1) left = x1 - i; else left = 0; var X = i + left; var top; if (j <= y1) top = y1 - j; else top = 0; var Y = j + top; var width; if (x2 <= (i + sw)) width = ((sw - ((i + sw) - x2)) + 1) - left; else width = sw - left; var height; if (y2 <= (j + sh)) height = ((sh - ((j + sh) - y2)) + 1) - top; else height = sh - top; draw_sprite_part_ext(sprite, subimg, left, top, width, height, X, Y, xscale, yscale, col, alpha); j += sh; } j = jj; i += sw; } return 0; }
(spr_blank_tile_white, 0, 160, 280, 160, 280, 480, 360, 1, 1, c_white, frontshadOpacity);
34
        scr_draw_sprite_tiled_area
scr_draw_sprite_tiled_area

function scr_draw_sprite_tiled_area() { var sprite = argument[0]; var subimg = argument[1]; var xx = argument[2]; var yy = argument[3]; var x1 = argument[4]; var y1 = argument[5]; var x2 = argument[6]; var y2 = argument[7]; var xscale = argument[8]; var yscale = argument[9]; var col = (argument_count > 10) ? argument[10] : 16777215; var alpha = (argument_count > 11) ? argument[11] : 1; var sw = sprite_get_width(sprite) * xscale; var sh = sprite_get_height(sprite) * yscale; var i = x1 - ((x1 % sw) - (xx % sw)) - (sw * ((x1 % sw) < (xx % sw))); var j = y1 - ((y1 % sh) - (yy % sh)) - (sh * ((y1 % sh) < (yy % sh))); var jj = j; while (i <= x2) { while (j <= y2) { var left; if (i <= x1) left = x1 - i; else left = 0; var X = i + left; var top; if (j <= y1) top = y1 - j; else top = 0; var Y = j + top; var width; if (x2 <= (i + sw)) width = ((sw - ((i + sw) - x2)) + 1) - left; else width = sw - left; var height; if (y2 <= (j + sh)) height = ((sh - ((j + sh) - y2)) + 1) - top; else height = sh - top; draw_sprite_part_ext(sprite, subimg, left, top, width, height, X, Y, xscale, yscale, col, alpha); j += sh; } j = jj; i += sw; } return 0; }
(spr_blank_tile_white, 0, 280, 360, 280, 360, 358, 480, 1, 1, c_white, frontshadOpacity);
35
    }
36
    if (room == room_dw_cyber_post_music_boss_slide)
37
    {
38
        scr_draw_sprite_tiled_area
scr_draw_sprite_tiled_area

function scr_draw_sprite_tiled_area() { var sprite = argument[0]; var subimg = argument[1]; var xx = argument[2]; var yy = argument[3]; var x1 = argument[4]; var y1 = argument[5]; var x2 = argument[6]; var y2 = argument[7]; var xscale = argument[8]; var yscale = argument[9]; var col = (argument_count > 10) ? argument[10] : 16777215; var alpha = (argument_count > 11) ? argument[11] : 1; var sw = sprite_get_width(sprite) * xscale; var sh = sprite_get_height(sprite) * yscale; var i = x1 - ((x1 % sw) - (xx % sw)) - (sw * ((x1 % sw) < (xx % sw))); var j = y1 - ((y1 % sh) - (yy % sh)) - (sh * ((y1 % sh) < (yy % sh))); var jj = j; while (i <= x2) { while (j <= y2) { var left; if (i <= x1) left = x1 - i; else left = 0; var X = i + left; var top; if (j <= y1) top = y1 - j; else top = 0; var Y = j + top; var width; if (x2 <= (i + sw)) width = ((sw - ((i + sw) - x2)) + 1) - left; else width = sw - left; var height; if (y2 <= (j + sh)) height = ((sh - ((j + sh) - y2)) + 1) - top; else height = sh - top; draw_sprite_part_ext(sprite, subimg, left, top, width, height, X, Y, xscale, yscale, col, alpha); j += sh; } j = jj; i += sw; } return 0; }
(spr_blank_tile_white, 0, 520, 2640, 520, 2640, 2720, 2800, 1, 1, c_white, 0);
39
        scr_draw_sprite_tiled_area
scr_draw_sprite_tiled_area

function scr_draw_sprite_tiled_area() { var sprite = argument[0]; var subimg = argument[1]; var xx = argument[2]; var yy = argument[3]; var x1 = argument[4]; var y1 = argument[5]; var x2 = argument[6]; var y2 = argument[7]; var xscale = argument[8]; var yscale = argument[9]; var col = (argument_count > 10) ? argument[10] : 16777215; var alpha = (argument_count > 11) ? argument[11] : 1; var sw = sprite_get_width(sprite) * xscale; var sh = sprite_get_height(sprite) * yscale; var i = x1 - ((x1 % sw) - (xx % sw)) - (sw * ((x1 % sw) < (xx % sw))); var j = y1 - ((y1 % sh) - (yy % sh)) - (sh * ((y1 % sh) < (yy % sh))); var jj = j; while (i <= x2) { while (j <= y2) { var left; if (i <= x1) left = x1 - i; else left = 0; var X = i + left; var top; if (j <= y1) top = y1 - j; else top = 0; var Y = j + top; var width; if (x2 <= (i + sw)) width = ((sw - ((i + sw) - x2)) + 1) - left; else width = sw - left; var height; if (y2 <= (j + sh)) height = ((sh - ((j + sh) - y2)) + 1) - top; else height = sh - top; draw_sprite_part_ext(sprite, subimg, left, top, width, height, X, Y, xscale, yscale, col, alpha); j += sh; } j = jj; i += sw; } return 0; }
(spr_blank_tile_white, 0, 520, 2600, 520, 2600, 2720, 2640, 1, 1, c_white, frontshadOpacity);
40
    }
41
    draw_set_alpha(1);
42
    gpu_set_blendenable(true);
43
    gpu_set_colorwriteenable(true, true, true, true);
44
    gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
45
    gpu_set_alphatestenable(true);
46
    draw_sprite_ext(obj_mainchara.sprite_index, obj_mainchara.image_index, obj_mainchara.x, (obj_mainchara.y + (obj_mainchara.sprite_height * obj_mainchara.image_yscale)) - 4, 2, -2, 0, frontShadowColor, frontshadOpacity);
47
    if (i_ex(obj_caterpillarchara))
48
    {
49
        var sus_x, sus_sprite, sus_index, sus_y, sus_height, ral_x, ral_sprite, ral_index, ral_y, ral_height;
50
        with (obj_caterpillarchara)
51
        {
52
            if (name == "susie")
53
            {
54
                sus_x = x;
55
                sus_y = y;
56
                sus_sprite = sprite_index;
57
                sus_index = image_index;
58
                sus_height = sprite_height;
59
            }
60
            if (name == "ralsei")
61
            {
62
                ral_x = x;
63
                ral_y = y;
64
                ral_sprite = sprite_index;
65
                ral_index = image_index;
66
                ral_height = sprite_height;
67
            }
68
        }
69
        if (sus_x != 0)
70
            draw_sprite_ext(sus_sprite, sus_index, sus_x, (sus_y + (sus_height * 2)) - 4, 2, -2, 0, frontShadowColor, frontshadOpacity);
71
        if (ral_x != 0)
72
            draw_sprite_ext(ral_sprite, ral_index, ral_x, (ral_y + (ral_height * 2)) - 4, 2, -2, 0, frontShadowColor, frontshadOpacity);
73
    }
74
    if (i_ex(obj_interactablesolid))
75
    {
76
        var hacker_sprite, hacker_index, hacker_x, hacker_y, hacker_height;
77
        with (obj_interactablesolid)
78
        {
79
            hacker_x = x;
80
            hacker_y = y;
81
            hacker_sprite = sprite_index;
82
            hacker_index = image_index;
83
            hacker_height = sprite_height;
84
        }
85
        draw_sprite_ext(hacker_sprite, hacker_index, hacker_x, (hacker_y + (hacker_height * 2)) - 4, 2, -2, 0, frontShadowColor, 1);
86
    }
87
    gpu_set_alphatestenable(false);
88
    gpu_set_blendmode(bm_normal);
89
}