Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_dw_green_room_wall_fx_Draw_0

(view raw script w/o annotations or w/e)
1
var border_height = 10;
2
ossafe_fill_rectangle_color(x, y, (x + (image_xscale * 20)) - 1, (y + (image_yscale * 20)) - 1 - border_height, wall_dark, wall_dark, wall_light, wall_light);
3
if (!sprite_exists(starry_wall_sprite))
4
{
5
    var scale = 0.5;
6
    if (!surface_exists(bg_surface))
7
        bg_surface = surface_create(1720 * scale, 488 * scale);
8
    surface_set_target(bg_surface);
9
    draw_clear_alpha(c_black, 0);
10
    for (var i = 0; i < 12; i++)
11
    {
12
        var __x = (xadj + (i * 40)) - 80 - 120;
13
        var __y = y + (-40 + yadj + (44 * i));
14
        var amt = __y / 220;
15
        amt = clamp(amt, 0, 1);
16
        var colorSet = 16777215;
17
        var test = -4;
18
        var alph = 1 - (test / 500);
19
        draw_sprite_ext(spr_dw_green_room_bg_fx_wallrow, 0, __x * scale, __y * scale, 1, 1, 0, colorSet, alph);
20
        draw_sprite_ext(spr_dw_green_room_bg_fx_wallrow, 0, (__x + 720) * scale, __y * scale, 1, 1, 0, colorSet, alph);
21
        draw_sprite_ext(spr_dw_green_room_bg_fx_wallrow, 0, (__x + 1440) * scale, __y * scale, 1, 1, 0, colorSet, alph);
22
        draw_sprite_ext(spr_dw_green_room_bg_fx_wallrow, 0, (__x + 40) * scale, __y * scale, 1, 1, 0, colorSet, alph * 0.5);
23
        draw_sprite_ext(spr_dw_green_room_bg_fx_wallrow, 0, (__x + 40 + 720) * scale, __y * scale, 1, 1, 0, colorSet, alph * 0.5);
24
        draw_sprite_ext(spr_dw_green_room_bg_fx_wallrow, 0, (__x + 40 + 1440) * scale, __y * scale, 1, 1, 0, colorSet, alph * 0.5);
25
    }
26
    surface_reset_target();
27
    starry_wall_sprite = sprite_create_from_surface(bg_surface, 0, 0, 1720 * scale, (-40 + yadj + 528) * scale, false, true, 0, 0);
28
    surface_set_target(bg_surface);
29
    draw_clear_alpha(c_black, 0);
30
    
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; } function draw_sprite_tiled_area() { var sprite = argument0; var subimg = argument1; var xx = argument2; var yy = argument3; var x1 = argument4; var y1 = argument5; var x2 = argument6; var y2 = argument7; var xscale = argument8; var yscale = argument9; var blend = argument10; var alpha = argument11; 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, blend, alpha); j += sh; ...
(spr_dw_green_room_vines, 0, 0, 0, 0, 0, image_xscale * 10, 16, 1, 1, c_white, 1);
31
    surface_reset_target();
32
    vine_sprite = sprite_create_from_surface(bg_surface, 0, 0, image_xscale * 10, 16, false, true, 0, 0);
33
    surface_free(bg_surface);
34
}
35
else
36
{
37
    bg_speed -= tile_speed;
38
    bg_speed_y += tile_speed;
39
    if (bg_speed < -800)
40
        bg_speed += 480;
41
    if (bg_speed_y > -88)
42
        bg_speed_y -= 88;
43
    draw_set_alpha(1);
44
    scr_draw_set_mask(true, true);
45
    draw_sprite_ext(starry_wall_sprite, 0, x + bg_speed, y + bg_speed_y, 2, 2, 0, c_white, 1);
46
    scr_draw_in_mask_begin();
47
    var _light = merge_color(#66839D, #8CB497, 0.4);
48
    var _dark = merge_color(#66839D, #8CB497, 1);
49
    ossafe_fill_rectangle_color(x, y, (x + (image_xscale * 20)) - 1, (y + (image_yscale * 20)) - 1 - border_height, _light, _light, _dark, _dark);
50
    scr_draw_in_mask_end();
51
    draw_sprite_ext(vine_sprite, 0, x, y, 2, 2, 0, c_white, 1);
52
}
53
draw_set_color(#9FD886);
54
draw_set_alpha(0.3);
55
ossafe_fill_rectangle(x, (y + (image_yscale * 20)) - border_height, (x + (image_xscale * 20)) - 1, (y + (image_yscale * 20) + 20) - 1);
56
draw_set_color(c_white);
57
draw_set_alpha(1);