Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_dw_teevie_tv_screens_Draw_0

(view raw script w/o annotations or w/e)
1
if (init == 0)
2
    exit;
3
timer++;
4
image_xscale = 2;
5
image_yscale = 2;
6
var tvheight = 40 * image_yscale;
7
var tvwidth = 40 * image_xscale;
8
var xx = x;
9
var yy = y;
10
draw_set_color(c_black);
11
ossafe_fill_rectangle(x, y, (x + (width * tvwidth)) - 1, (y + (height * tvheight)) - 1, false);
12
draw_set_color(c_white);
13
draw_set_blend_mode(bm_add);
14
for (var i = 0; i < array_length(_screen_list); i++)
15
{
16
    var screen = _screen_list[i];
17
    var screen_tile_pos = screen.get_tile_pos();
18
    var screen_tile_x = screen_tile_pos.x;
19
    var screen_tile_y = screen_tile_pos.y;
20
    var screen_sprite = screen.get_screen_sprite();
21
    var screen_image_index = screen.get_screen_image_index();
22
    var screen_offset = screen.get_screen_offset();
23
    draw_sprite_ext(screen_sprite, screen_image_index + screen_offset, x + (screen_tile_x * tvwidth), y + (screen_tile_y * tvheight), image_xscale, image_yscale, image_angle, image_blend, image_alpha);
24
}
25
draw_set_blend_mode(bm_normal);
26
for (var i = 0; i < array_length(_screen_list); i++)
27
{
28
    var screen = _screen_list[i];
29
    var screen_tile_pos = screen.get_tile_pos();
30
    var screen_tile_x = screen_tile_pos.x;
31
    var screen_tile_y = screen_tile_pos.y;
32
    if (drawborders)
33
        tvbasesprite = spr_dw_teevie_tv_base;
34
    draw_sprite_ext(tvbasesprite, 4, x + (screen_tile_x * tvwidth), y + (screen_tile_y * tvheight), image_xscale, image_yscale, image_angle, c_white, image_alpha);
35
    draw_sprite_ext(tvbasesprite, 1, x + (screen_tile_x * tvwidth), y + (screen_tile_y * tvheight), image_xscale, image_yscale, image_angle, merge_color(tvbasecolor, screen.get_screen_color(), 0.6 + (sin((timer / 4) + screen_tile_x + screen_tile_y) * 0.1)), image_alpha);
36
    draw_sprite_ext(tvbasesprite, 2, x + (screen_tile_x * tvwidth), y + (screen_tile_y * tvheight), image_xscale, image_yscale, image_angle, merge_color(tvbasecolor, c_black, 0.5), image_alpha);
37
    draw_sprite_ext(tvbasesprite, 3, x + (screen_tile_x * tvwidth), y + (screen_tile_y * tvheight), image_xscale, image_yscale, image_angle, tvbasecolor, image_alpha);
38
    draw_sprite_ext(tvbasesprite, 5, x + (screen_tile_x * tvwidth), y + (screen_tile_y * tvheight), image_xscale, image_yscale, image_angle, c_white, image_alpha);
39
}