Undertale script viewer

← back to main script listing

gml_Script_scr_draw_screen_border

(view raw script w/o annotations or w/e)
1
var border_id = argument0;
2
draw_enable_alphablend(0);
3
if (border_id == 1)
4
{
5
    if (os_type == os_ps4)
6
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_line_1080, 0, 0);
7
    if (os_type == os_psvita)
8
        draw_background(bg_border_line_544, 0, 0);
9
}
10
if (border_id == 2)
11
{
12
    var fade_time = 60;
13
    if (instance_exists(obj_stalkerflowey))
14
    {
15
        global.screen_border_state += (1 / fade_time);
16
        if (global.screen_border_state > 1)
17
            global.screen_border_state = 1;
18
    }
19
    else
20
    {
21
        global.screen_border_state -= (1 / fade_time);
22
        if (global.screen_border_state < 0)
23
            global.screen_border_state = 0;
24
    }
25
    var idle_min = 300000;
26
    var idle_time = 0;
27
    if (obj_time.idle && current_time >= (obj_time.idle_time + idle_min))
28
        idle_time = current_time - (obj_time.idle_time + idle_min);
29
    var idle_frame = floor(idle_time / 100) % 3;
30
    var base = -4;
31
    var overlay;
32
    for (var i = 0; i < 9; i++)
33
    {
34
        overlay[i, 0] = noone;
35
        overlay[i, 1] = spr_undertaletitle;
36
        overlay[i, 2] = spr_undertaletitle;
37
    }
38
    if (os_type == os_ps4)
39
    {
40
        base = 207;
41
        overlay[0, 1] = spr_blconbelow;
42
        overlay[0, 2] = spr_truechara_laugh;
43
        overlay[1, 1] = spr_superbone;
44
        overlay[1, 2] = spr_bpants_face;
45
        overlay[2, 1] = spr_barktry_ja;
46
        overlay[2, 2] = spr_finalfroggit;
47
        overlay[3, 1] = spr_undertaletitle;
48
        overlay[3, 2] = spr_undynex_example;
49
        overlay[4, 1] = spr_vegetoid;
50
        overlay[4, 2] = spr_blconbelow;
51
        overlay[5, 1] = spr_alphys_r;
52
        overlay[5, 2] = spr_undertaletitle;
53
        overlay[6, 1] = spr_shootingstar;
54
        overlay[6, 2] = spr_alphyshelper_embarrass;
55
        overlay[7, 1] = spr_mett_sugararm;
56
        overlay[7, 2] = spr_gb_npc;
57
        overlay[8, 1] = spr_spaghettipot_wrecked;
58
        overlay[8, 2] = spr_greydoor;
59
        if (idle_frame == 1)
60
        {
61
            overlay[0, 0] = spr_looxhurt;
62
            overlay[1, 0] = spr_vegetoidhurt;
63
            overlay[2, 0] = spr_dogeBtail;
64
            overlay[3, 0] = spr_dogeB;
65
            overlay[4, 0] = spr_lesserdoge;
66
            overlay[5, 0] = spr_lesserdogehurt;
67
            overlay[6, 0] = spr_icecap;
68
            overlay[7, 0] = spr_icecubehurt;
69
            overlay[8, 0] = spr_snowdrake;
70
        }
71
        else if (idle_frame == 2)
72
        {
73
            overlay[0, 0] = spr_vegetoid;
74
            overlay[1, 0] = spr_dummybattle;
75
            overlay[2, 0] = spr_dogeB_hurt;
76
            overlay[3, 0] = spr_lesserdogetail;
77
            overlay[4, 0] = spr_lesserdogehead;
78
            overlay[5, 0] = spr_icecaphurt;
79
            overlay[6, 0] = spr_icecube;
80
            overlay[7, 0] = spr_chillglasses;
81
            overlay[8, 0] = spr_snowdrake_head;
82
        }
83
        if (global.screen_border_state > 0)
84
            overlay1 = spr_snowdrake_body;
85
    }
86
    else if (os_type == os_psvita)
87
    {
88
        base = 227;
89
        overlay[0, 1] = spr_talkbt;
90
        overlay[0, 2] = spr_undyneb_face3;
91
        overlay[1, 1] = spr_heartorange;
92
        overlay[1, 2] = spr_wizard_orbhurt;
93
        overlay[2, 1] = spr_undertaletitle;
94
        overlay[2, 2] = spr_oolbone_ja;
95
        overlay[3, 1] = button_ps4_l3;
96
        overlay[3, 2] = spr_undertaletitle;
97
        overlay[4, 1] = spr_bpants_cloud;
98
        overlay[4, 2] = spr_whimsunhurt;
99
        overlay[5, 1] = buttonL_vita_triangle;
100
        overlay[5, 2] = spr_vulkinface5;
101
        if (idle_frame == 1)
102
        {
103
            overlay[0, 0] = spr_jerry;
104
            overlay[1, 0] = spr_mandognormal;
105
            overlay[2, 0] = spr_mandogax;
106
            overlay[3, 0] = spr_mandoge;
107
            overlay[4, 0] = spr_movedogebody;
108
            overlay[5, 0] = spr_movedogeheadb;
109
        }
110
        else if (idle_frame == 2)
111
        {
112
            overlay[0, 0] = spr_jerryhurt;
113
            overlay[1, 0] = spr_womandognormal;
114
            overlay[2, 0] = spr_womandogax;
115
            overlay[3, 0] = spr_womandoge;
116
            overlay[4, 0] = spr_movedogeheada;
117
            overlay[5, 0] = spr_movedogearms;
118
        }
119
        if (global.screen_border_state > 0)
120
            overlay1 = spr_movedogetail;
121
    }
122
    if (base != -4)
123
    {
124
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(base, 0, 0);
125
        if (overlay[0, 0] != noone)
126
        {
127
            if (global.screen_border_state > 0)
128
            {
129
                draw_enable_alphablend(1);
130
                draw_set_alpha(global.screen_border_state * 0.5);
131
            }
132
            scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(overlay[0, 0], overlay[0, 1], overlay[0, 2]);
133
            if (global.screen_border_state > 0)
134
            {
135
                draw_set_alpha(1);
136
                draw_enable_alphablend(0);
137
            }
138
        }
139
        for (var i = 1; i < 9; i++)
140
        {
141
            if (overlay[i, 0] != noone)
142
                scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(overlay[i, 0], overlay[i, 1], overlay[i, 2]);
143
        }
144
    }
145
}
146
if (border_id == 3)
147
{
148
    var room_id = global.currentroom;
149
    if ((room_id >= room_area1 && room_id <= room_ruinsexit) || (room >= room_introstory && room <= room_intromenu) || (room >= room_settings && room <= room_controltest))
150
        border_id = 4;
151
    if ((room_id >= room_tundra1 && room_id <= room_fogroom) || room_id == room_shop1 || (room_id >= room_icecave1 && room_id <= room_ice_dog))
152
        border_id = 5;
153
    if ((room_id >= room_water1 && room_id <= room_water_undynefinal3) || room_id == room_shop2 || room_id == room_shop5)
154
        border_id = 6;
155
    if ((room_id >= room_fire1 && room_id <= room_fire_finalelevator) || room_id == room_shop3 || room_id == room_shop4 || (room_id >= room_fire_labelevator && room_id <= room_truelab_elevatorinside))
156
        border_id = 7;
157
    if (room_id >= room_castle_elevatorout && room_id <= room_castle_trueexit)
158
        border_id = 8;
159
    if (room_id >= room_truelab_elevator && room_id <= room_truelab_power)
160
        border_id = 9;
161
    if (room_id == room_water_undynefinal3 || room_id == room_fire_elevator || room_id == room_fire_finalelevator || room_id == room_fire_labelevator || room_id == room_truelab_elevatorinside || room_id == room_riverman_transition || room_id == room_dogshrine)
162
        border_id = 3.5;
163
    if (global.flag[479 truelab_unsuppress_border] == 0 && (room_id == room_truelab_elevator || room_id == room_truelab_hall1))
164
        border_id = 3.5;
165
    if (border_id != global.screen_border_state)
166
    {
167
        if (global.screen_border_state != 0)
168
        {
169
            if (global.screen_border_dynamic_fade_id == border_id)
170
                global.screen_border_dynamic_fade_level = 1 - global.screen_border_dynamic_fade_level;
171
            else
172
                global.screen_border_dynamic_fade_level = 1;
173
            global.screen_border_dynamic_fade_id = global.screen_border_state;
174
        }
175
        global.screen_border_state = border_id;
176
    }
177
    if (global.screen_border_dynamic_fade_level > 0)
178
    {
179
        var fade_time = 30;
180
        global.screen_border_dynamic_fade_level -= (1 / fade_time);
181
        if (global.screen_border_dynamic_fade_level > 0)
182
        {
183
            scr_draw_screen_border
scr_draw_screen_border

var border_id = argument0; draw_enable_alphablend(0); if (border_id == 1) { if (os_type == os_ps4) scr_draw_background_ps4(bg_border_line_1080, 0, 0); if (os_type == os_psvita) draw_background(bg_border_line_544, 0, 0); } if (border_id == 2) { var fade_time = 60; if (instance_exists(obj_stalkerflowey)) { global.screen_border_state += (1 / fade_time); if (global.screen_border_state > 1) global.screen_border_state = 1; } else { global.screen_border_state -= (1 / fade_time); if (global.screen_border_state < 0) global.screen_border_state = 0; } var idle_min = 300000; var idle_time = 0; if (obj_time.idle && current_time >= (obj_time.idle_time + idle_min)) idle_time = current_time - (obj_time.idle_time + idle_min); var idle_frame = floor(idle_time / 100) % 3; var base = -4; var overlay; for (var i = 0; i < 9; i++) { overlay[i, 0] = noone; overlay[i, 1] = spr_undertaletitle; overlay[i, 2] = spr_undertaletitle; } if (os_type == os_ps4) { base = 207; overlay[0, 1] = spr_blconbelow; overlay[0, 2] = spr_truechara_laugh; overlay[1, 1] = spr_superbone; overlay[1, 2] = spr_bpants_face; overlay[2, 1] = spr_barktry_ja; overlay[2, 2] = spr_finalfroggit; overlay[3, 1] = spr_undertaletitle; overlay[3, 2] = spr_undynex_example; overlay[4, 1] = spr_vegetoid; overlay[4, 2] = spr_blconbelow; overlay[5, 1] = spr_alphys_r; overlay[5, 2] = spr_undertaletitle; overlay[6, 1] = spr_shootingstar; overlay[6, 2] = spr_alphyshelper_embarrass; overlay[7, 1] = spr_mett_sugararm; overlay[7, 2] = spr_gb_npc; overlay[8, 1] = spr_spaghettipot_wrecked; overlay[8, 2] = spr_greydoor; if (idle_frame == 1) { overlay[0, 0] = spr_looxhurt; overlay[1, 0] = spr_vegetoidhurt; overlay[2, 0] = spr_dogeBtail; overlay[3, 0] = spr_dogeB; overlay[4, 0] = spr_lesserdoge; overlay[5, 0] = spr_lesserdogehurt; overlay[6, 0] = spr_icecap; overlay[7, 0] = spr_icecubehurt; overlay[8, 0] = spr_snowdrake; } else if (idle_frame == 2) { overlay[0, 0] = spr_vegetoid; overlay[1, 0] = spr_dummybattle; overlay[2, 0] = spr_dogeB_hurt; overlay[3, 0] = spr_lesserdogetail; overlay[4, 0] = spr_lesserdogehead; overlay[5, 0] = spr_icecaphurt; overlay[6, 0] = spr_icecube; overlay[7, 0] = spr_chillglasses; overlay[8, 0] = spr_snowdrake_head; } if (global.screen_border_state > 0) overlay1 = spr_snowdrake_body; } else if (os_type == os_psvita) { base = 227; overlay[0, 1] = spr_talkbt; overlay[0, 2] = spr_undyneb_face3; overlay[1, 1] = spr_heartorange; overlay[1, 2] = spr_wizard_orbhurt; overlay[2, 1] = spr_undertaletitle; overlay[2, 2] = spr_oolbone_ja; overlay[3, 1] = button_ps4_l3; overlay[3, 2] = spr_undertaletitle; overlay[4, 1] = spr_bpants_cloud; overlay[4, 2] = spr_whimsunhurt; overlay[5, 1] = buttonL_vita_triangle; overlay[5, 2] = spr_vulkinface5; if (idle_frame == 1) ...
(global.screen_border_dynamic_fade_id);
184
            draw_set_alpha(1 - global.screen_border_dynamic_fade_level);
185
        }
186
        else
187
        {
188
            global.screen_border_dynamic_fade_id = 0;
189
            global.screen_border_dynamic_fade_level = 0;
190
        }
191
    }
192
}
193
if (border_id == 3.5)
194
{
195
    draw_set_color(c_black);
196
    ossafe_fill_rectangle(0, 0, window_get_width() - 1, window_get_height() - 1);
197
    draw_set_color(c_white);
198
}
199
if (border_id == 4)
200
{
201
    if (os_type == os_ps4)
202
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_ruins_1080, 0, 0);
203
    if (os_type == os_psvita)
204
        draw_background(bg_border_ruins_544, 0, 0);
205
}
206
if (border_id == 5)
207
{
208
    if (os_type == os_ps4)
209
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_tundra_1080, 0, 0);
210
    if (os_type == os_psvita)
211
        draw_background(bg_border_tundra_544, 0, 0);
212
}
213
if (border_id == 6)
214
{
215
    if (os_type == os_ps4)
216
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_water1_1080, 0, 0);
217
    if (os_type == os_psvita)
218
        draw_background(bg_border_water1_544, 0, 0);
219
}
220
if (border_id == 7)
221
{
222
    if (os_type == os_ps4)
223
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_fire_1080, 0, 0);
224
    if (os_type == os_psvita)
225
        draw_background(bg_border_fire_544, 0, 0);
226
}
227
if (border_id == 8)
228
{
229
    if (os_type == os_ps4)
230
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_castle_1080, 0, 0);
231
    if (os_type == os_psvita)
232
        draw_background(bg_border_castle_544, 0, 0);
233
}
234
if (border_id == 9)
235
{
236
    if (os_type == os_ps4)
237
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_truelab_1080, 0, 0);
238
    if (os_type == os_psvita)
239
        draw_background(bg_border_truelab_544, 0, 0);
240
}
241
if (border_id == 10)
242
{
243
    if (os_type == os_ps4)
244
        scr_draw_background_ps4
scr_draw_background_ps4

var bg = argument0; var xx = argument1; var yy = argument2; if (os_type == os_ps4) { var scale = window_get_width() / 1920; draw_background_stretched(bg, xx * scale, yy * scale, background_get_width(bg) * scale, background_get_height(bg) * scale); } else { draw_background(bg, xx, yy); }
(bg_border_rad_1080, 0, 0);
245
    if (os_type == os_psvita)
246
        draw_background(bg_border_rad_544, 0, 0);
247
}
248
draw_set_alpha(1);
249
draw_enable_alphablend(1);