Deltarune (Chapter 2) script viewer

← back to main script listing

gml_Object_obj_ch2_scene26_cityscape_Draw_0

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