Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_ch2_scene26_cityscape_Draw_0

related scripts: Create_0Draw_0 Step_0

(view raw script w/o annotations or w/e)
1
var cx = camera_get_view_x(view_camera[0]);
2
var cy = camera_get_view_y(view_camera[0]);
3
var vw = view_wport[0];
4
var vh = view_hport[0];
5
siner++;
6
drawx = (cx * -0.125) + xstart;
7
drawy = (room == room_dw_mansion_prefountain) ? ((cy * -0.125) + 620) : ((cy + ystart) - 80);
8
if (auto_scroll)
9
    x_offset -= 0.5;
10
if (auto_scroll_y)
11
{
12
    auto_scroll_y_timer++;
13
    y_offset -= 0.75;
14
    if (auto_scroll_y_timer >= 30)
15
        auto_scroll_y = false;
16
}
17
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_mansion_ferris_wheel_bg, 0, drawx + x_offset, drawy + y_offset, drawx + x_offset, drawy, room_width, drawy + y_offset + vh, 1, 1, c_white, 1);
18
if (show_laser_outline)
19
{
20
    if (reveal_pos < 0)
21
        reveal_pos = cx;
22
    if (!cityscape_reveal)
23
    {
24
        reveal_pos += 16;
25
        if (reveal_pos >= (cx + vw))
26
            cityscape_reveal = true;
27
        gpu_set_blendenable(false);
28
        gpu_set_colorwriteenable(false, false, false, true);
29
        draw_set_alpha(0);
30
        draw_rectangle(reveal_pos, 0, cx + vw, cy + vh, false);
31
        draw_set_alpha(1);
32
        gpu_set_blendenable(true);
33
        gpu_set_colorwriteenable(true, true, true, true);
34
        gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
35
        gpu_set_alphatestenable(true);
36
        
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_cutscene_26_laser_cityscape, 0, drawx, drawy, drawx, drawy, room_width, room_height, 1, 1, c_white, 1);
37
        gpu_set_alphatestenable(false);
38
        gpu_set_blendmode(bm_normal);
39
    }
40
    else
41
    {
42
        
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_cutscene_26_laser_cityscape, 0, drawx, drawy, drawx, drawy, room_width, room_height, 1, 1, c_white, main_alpha);
43
    }
44
}
45
if (show_laser_beam)
46
{
47
    if (beam_offset < 60)
48
        beam_offset += 4;
49
    if (show_laser_hand && hand_alpha > 0)
50
        hand_alpha -= 0.1;
51
    else
52
        show_laser_hand = false;
53
    gpu_set_blendenable(false);
54
    gpu_set_colorwriteenable(false, false, false, true);
55
    draw_set_alpha(0);
56
    
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_cutscene_26_laser_cityscape_mask, 0, drawx, drawy, drawx, drawy, room_width, room_height, 1, 1, c_white, main_alpha);
57
    draw_rectangle(drawx, cy + 190, cx + vw, cy + vh, false);
58
    draw_set_alpha(1);
59
    gpu_set_blendenable(true);
60
    gpu_set_colorwriteenable(true, true, true, true);
61
    gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
62
    gpu_set_alphatestenable(true);
63
    
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_cutscene_26_laser_beam_big, 0, (cx + (vw / 2)) - beam_offset, cy, (cx + (vw / 2)) - beam_offset, cy, cx + (vw / 2) + beam_offset, cy + 200, 1, 1, c_white, 1);
64
    d3d_set_fog(false, c_black, 0, 0);
65
    gpu_set_alphatestenable(false);
66
    gpu_set_blendmode(bm_normal);
67
}
68
if (show_mini_fountains)
69
{
70
    if (mini_alpha < 1)
71
        mini_alpha += 0.1;
72
    
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_cutscene_26_laser_cityscape, 0, drawx, drawy, drawx, drawy, room_width, room_height, 1, 1, c_white, mini_alpha);
73
    gpu_set_blendenable(false);
74
    gpu_set_colorwriteenable(false, false, false, true);
75
    draw_set_alpha(0);
76
    
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_cutscene_26_laser_cityscape_mask, 0, drawx, drawy, drawx, drawy, room_width, room_height, 1, 1, c_white, mini_alpha);
77
    draw_rectangle(drawx, cy + 190, cx + vw, cy + vh, false);
78
    draw_set_alpha(1);
79
    gpu_set_blendenable(true);
80
    gpu_set_colorwriteenable(true, true, true, true);
81
    gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
82
    gpu_set_alphatestenable(true);
83
    
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_cutscene_26_laser_beam_big, 0, kris_screen.x - 2, cy, kris_screen.x - 2, cy, kris_screen.x + 2, cy + 210, 1, 1, c_white, mini_alpha);
84
    
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_cutscene_26_laser_beam_big, 0, sus_screen.x - 2, cy, sus_screen.x - 2, cy, sus_screen.x + 2, cy + 210, 1, 1, c_white, mini_alpha);
85
    
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_cutscene_26_laser_beam_big, 0, no_screen.x - 2, cy, no_screen.x - 2, cy, no_screen.x + 2, cy + 210, 1, 1, c_white, mini_alpha);
86
    d3d_set_fog(false, c_black, 0, 0);
87
    gpu_set_alphatestenable(false);
88
    gpu_set_blendmode(bm_normal);
89
}
90
if (mini_cityscape)
91
    
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_cutscene_26_laser_cityscape, 0, drawx, drawy, drawx, drawy, room_width, room_height, 1, 1, c_white, main_alpha);
92
if (tender_goodbye)
93
{
94
    siner++;
95
    if (!tender_fly)
96
        sinery = sin(siner / 20) * 4;
97
    else
98
        sinery -= 10;
99
    if (tender_reveal_pos < 0)
100
    {
101
        snd_play(snd_magicsprinkle);
102
        tender_reveal_pos = (cx + (vw / 2)) - sprite_get_width(byebye_sprite);
103
    }
104
    if (!tender_reveal)
105
    {
106
        tender_reveal_pos += 8;
107
        if (tender_reveal_pos >= (cx + (vw / 2) + (sprite_get_width(byebye_sprite) * 2)))
108
            tender_reveal = true;
109
    }
110
    gpu_set_blendenable(false);
111
    gpu_set_colorwriteenable(false, false, false, true);
112
    draw_set_alpha(0);
113
    draw_rectangle(tender_reveal_pos, cy + 40 + sinery, cx + (vw / 2) + (sprite_get_width(byebye_sprite) * 2), cy + 40 + (sprite_get_height(byebye_sprite) * 2) + sinery, false);
114
    draw_set_alpha(1);
115
    gpu_set_blendenable(true);
116
    gpu_set_colorwriteenable(true, true, true, true);
117
    gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
118
    gpu_set_alphatestenable(true);
119
    draw_sprite_ext(byebye_sprite, 0, (cx + (vw / 2)) - sprite_get_width(byebye_sprite), cy + 40 + sinery, 2, 2, 0, c_white, 0.8 + (sin(siner / 8) * 0.2));
120
    gpu_set_alphatestenable(false);
121
    gpu_set_blendmode(bm_normal);
122
}
123
if (tender_cancel)
124
{
125
    siner++;
126
    if (tender_cancel_pos < 0)
127
        tender_cancel_pos = (cx + (vw / 2)) - sprite_get_width(byebye_sprite) - 10;
128
    tender_cancel_pos += 16;
129
    if (tender_cancel_pos >= (cx + (vw / 2) + sprite_get_width(byebye_sprite) + 10))
130
    {
131
        tender_timer--;
132
        if (tender_timer <= -30)
133
            tender_fly = true;
134
    }
135
    if (!tender_fly)
136
    {
137
        sinery = sin(siner / 20) * 4;
138
    }
139
    else
140
    {
141
        sinery -= 10;
142
        if (sinery <= -200)
143
        {
144
            tender_goodbye = false;
145
            tender_cancel = false;
146
        }
147
    }
148
    gpu_set_blendenable(false);
149
    gpu_set_colorwriteenable(false, false, false, true);
150
    draw_set_alpha(0);
151
    draw_rectangle(tender_cancel_pos, sinery + cy + 50 + (sprite_get_height(byebye_sprite) / 2), cx + (vw / 2) + sprite_get_width(byebye_sprite) + 10, cy + 120 + (sprite_get_height(spr_cutscene_27_tender_cancelled) * 2) + sinery, false);
152
    draw_set_alpha(1);
153
    gpu_set_blendenable(true);
154
    gpu_set_colorwriteenable(true, true, true, true);
155
    gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
156
    gpu_set_alphatestenable(true);
157
    draw_set_color(c_red);
158
    draw_rectangle((cx + (vw / 2)) - sprite_get_width(byebye_sprite) - 10, cy + 50 + (sprite_get_height(byebye_sprite) / 2) + sinery, cx + (vw / 2) + sprite_get_width(byebye_sprite) + 10, cy + 50 + (sprite_get_height(byebye_sprite) / 2) + 4 + sinery, false);
159
    draw_set_color(c_white);
160
    draw_sprite_ext(spr_cutscene_27_tender_cancelled, 0, (cx + (vw / 2)) - sprite_get_width(spr_cutscene_27_tender_cancelled), cy + 120 + sinery, 2, 2, 0, c_white, 0.9 + (sin(siner / 8) * 0.1));
161
    gpu_set_alphatestenable(false);
162
    gpu_set_blendmode(bm_normal);
163
}
164
if (show_hands)
165
{
166
    draw_sprite_ext(spr_cutscene_26_laser_hand_right, 0, hand_right_xpos, cy + 80, 2, 2, 0, c_white, 1);
167
    gpu_set_blendenable(false);
168
    gpu_set_colorwriteenable(false, false, false, true);
169
    draw_set_alpha(0);
170
    
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_cutscene_26_laser_cityscape_mask, 0, drawx, drawy, drawx, drawy, room_width, room_height, 1, 1, c_white, knife_alpha);
171
    draw_rectangle(drawx, cy + 190, cx + vw, cy + vh, false);
172
    draw_set_alpha(1);
173
    gpu_set_blendenable(true);
174
    gpu_set_colorwriteenable(true, true, true, true);
175
    gpu_set_blendmode_ext(bm_dest_alpha, bm_inv_dest_alpha);
176
    gpu_set_alphatestenable(true);
177
    draw_sprite_ext(spr_cutscene_26_laser_knife, 0, (cx + (vw / 2)) - sprite_get_width(spr_cutscene_26_laser_knife), knife_ypos, 2, 2, 0, c_white, 1);
178
    d3d_set_fog(false, c_black, 0, 0);
179
    gpu_set_alphatestenable(false);
180
    gpu_set_blendmode(bm_normal);
181
}