Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_tutorial_text_Draw_73

(view raw script w/o annotations or w/e)
1
if (view_current == 0 && !d_ex())
2
{
3
    var camx = camerax();
4
    var camy = cameray();
5
    var displayformat = 0;
6
    var exitstring = stringsetloc(
Exit
"Exit", "obj_tutorial_text_slash_Draw_73_gml_14_0"
);
7
    var holdstring = stringsetloc(
Hold
"Hold", "obj_tutorial_text_slash_Draw_73_gml_15_0"
);
8
    var resetstring = stringsetloc(
Reset
"Reset", "obj_tutorial_text_slash_Draw_73_gml_16_0"
);
9
    var playstring = stringsetloc(
Play
"Play", "obj_tutorial_text_slash_Draw_73_gml_17_0"
);
10
    var playpianostring = stringsetloc(
Play Piano
"Play Piano", "obj_tutorial_text_slash_Draw_73_gml_18_0"
);
11
    var movebookshelf = stringsetloc(
Move Bookshelf
"Move Bookshelf", "obj_tutorial_text_slash_Draw_73_gml_19_0"
);
12
    var movepiano = stringsetloc(
Move Piano
"Move Piano", "obj_tutorial_text_slash_Draw_73_gml_20_0"
);
13
    var shiftstring = stringsetloc(
Shift Octave
"Shift Octave", "obj_tutorial_text_slash_Draw_73_gml_21_0"
);
14
    var chargejump = stringsetloc(
Charge Jump
"Charge Jump", "obj_tutorial_text_slash_Draw_73_gml_22_0"
);
15
    line[0] = "";
16
    line[1] = "";
17
    line[2] = "";
18
    line[3] = "";
19
    holdline[0] = false;
20
    holdline[1] = false;
21
    holdline[2] = false;
22
    holdline[3] = false;
23
    linecount = 2;
24
    exitline = -1;
25
    but[0] = 4;
26
    but[1] = 5;
27
    but[2] = 6;
28
    var count = 0;
29
    canceltimer = 0;
30
    if (i_ex(obj_ch4_DCA08D) || room == room_dw_church_jackenstein)
31
    {
32
        line[0] = chargejump;
33
        holdline[0] = true;
34
        linecount = 1;
35
    }
36
    if (i_ex(obj_mike_minigame_controller))
37
    {
38
        active = obj_mike_minigame_controller.phase == 2;
39
        line[0] = exitstring;
40
        holdline[0] = true;
41
        holdvalue[0] = obj_mike_minigame_controller.hold_quit_timer;
42
        holdvalueLimit[0] = 30;
43
        but[0] = 6;
44
        linecount = 1;
45
    }
46
    if (i_ex(obj_dw_church_bookshelfpuzzle))
47
    {
48
        linecount = 3;
49
        line[0] = playpianostring;
50
        line[1] = resetstring;
51
        line[2] = exitstring;
52
        holdline[1] = true;
53
        but[0] = 4;
54
        but[1] = 6;
55
        but[2] = 5;
56
        exitline = 2;
57
        holdvalue[1] = 0;
58
        holdvalueLimit[1] = 15;
59
        with (obj_dw_church_remote_piano)
60
        {
61
            if (con == 2)
62
            {
63
                other.canceltimer = endtimer;
64
                other.canceltime = endtime;
65
                other.holdvalue[1] = shelfresettimer;
66
                other.holdvalueLimit[1] = shelfresettime;
67
            }
68
        }
69
    }
70
    if (i_ex(obj_dw_church_pianopiece_right))
71
    {
72
        linecount = 3;
73
        line[0] = movebookshelf;
74
        line[1] = shiftstring;
75
        line[2] = exitstring;
76
        but[0] = 4;
77
        but[1] = 6;
78
        but[2] = 5;
79
        exitline = 2;
80
        displayformat = 1;
81
        with (obj_dw_church_remote_piano)
82
        {
83
            if (con == 2 || con == -999)
84
            {
85
                other.canceltimer = endtimer;
86
                other.canceltime = endtime;
87
            }
88
        }
89
    }
90
    if (i_ex(obj_church_piano_playable))
91
    {
92
        linecount = 2;
93
        line[0] = playstring;
94
        line[1] = exitstring;
95
        but[0] = 4;
96
        but[1] = 5;
97
        exitline = 1;
98
        with (obj_church_piano_playable)
99
        {
100
            if (con == 1)
101
            {
102
                other.canceltimer = canceltimer;
103
                other.canceltime = canceltime;
104
            }
105
        }
106
    }
107
    if (i_ex(obj_dw_church_remotepianomove))
108
    {
109
        if (obj_dw_church_remotepianomove.final)
110
        {
111
            linecount = 1;
112
            line[0] = playpianostring;
113
            but[0] = 4;
114
        }
115
        else
116
        {
117
            if (global.flag[1538] == 1)
118
            {
119
                linecount = 2;
120
                line[0] = movepiano;
121
                line[1] = exitstring;
122
                but[0] = 4;
123
                but[1] = 5;
124
                exitline = 1;
125
            }
126
            else
127
            {
128
                linecount = 3;
129
                line[0] = movebookshelf;
130
                line[1] = resetstring;
131
                line[2] = exitstring;
132
                but[0] = 4;
133
                but[1] = 6;
134
                but[2] = 5;
135
                exitline = 2;
136
            }
137
            with (obj_dw_church_remotepianomove)
138
            {
139
                if (engaged)
140
                {
141
                    other.canceltimer = endtimer;
142
                    other.canceltime = endtime;
143
                }
144
            }
145
        }
146
    }
147
    if (i_ex(obj_dw_church_organ))
148
    {
149
        linecount = 3;
150
        line[0] = playstring;
151
        line[1] = shiftstring;
152
        line[2] = exitstring;
153
        but[0] = 4;
154
        but[1] = 6;
155
        but[2] = 5;
156
        exitline = 2;
157
        with (obj_dw_church_organ)
158
        {
159
            other.canceltimer = endtimer;
160
            other.canceltime = endtime;
161
        }
162
    }
163
    if (i_ex(obj_church_secretpiano_playable))
164
    {
165
        linecount = 2;
166
        line[0] = playstring;
167
        line[1] = exitstring;
168
        but[0] = 4;
169
        but[1] = 5;
170
        exitline = 1;
171
        with (obj_church_secretpiano_playable)
172
        {
173
            other.canceltimer = canceltimer;
174
            other.canceltime = canceltime;
175
        }
176
    }
177
    if (i_ex(obj_dw_church_sideclimb))
178
    {
179
        linecount = 1;
180
        line[0] = exitstring;
181
        exitline = 0;
182
        but[0] = 5;
183
        canceltimer = obj_dw_church_sideclimb.canceltimer;
184
        canceltime = 30;
185
    }
186
    if (instructionLerp > 0 || active)
187
    {
188
        if (instructionLerp < 1 && active)
189
            instructionLerp += 0.1;
190
        else if (!active)
191
            instructionLerp -= 0.1;
192
        var _easedLerp = 
scr_ease_out
scr_ease_out

function
scr_ease_out(arg0, arg1)
{ if (arg1 < -3 || arg1 > 7) return arg0; switch (arg1) { case -3: return ease_out_bounce(arg0, 0, 1, 1); case -2: return ease_out_elastic(arg0, 0, 1, 1); case -1: return ease_out_back(arg0, 0, 1, 1); case 0: return arg0; case 1: return sin(arg0 * 1.5707963267948966); case 2: return -arg0 * (arg0 - 2); case 6: return -power(2, -10 * arg0) + 1; case 7: arg0--; return sqrt(1 - (arg0 * arg0)); default: arg0--; if (arg1 == 4) { return -1 * (power(arg0, arg1) - 1); break; } return power(arg0, arg1) + 1; } }
(instructionLerp, 3);
193
        
scr_84_set_draw_font
scr_84_set_draw_font

function
scr_84_set_draw_font(arg0)
{ global.chemg_font = arg0; draw_set_font(
scr_84_get_font(arg0));
}
("mainbig");
194
        draw_set_color(c_white);
195
        draw_set_halign(fa_right);
196
        var space = 28;
197
        var margin = 20;
198
        var yloc = 480 - (space * linecount) - margin;
199
        var reddening = clamp(canceltimer / canceltime, 0, 1);
200
        var redcol = merge_color(c_white, c_red, reddening);
201
        var butmarg = -12;
202
        var gamepad = false;
203
        if (global.is_console || obj_gamecontroller.gamepad_active)
204
            gamepad = true;
205
        if (displayformat == 0)
206
        {
207
            var xloc = (camx + 640 + 100) - margin - (_easedLerp * 100);
208
            if (gamepad)
209
            {
210
                for (var i = 0; i < linecount; i++)
211
                {
212
                    var buttspr = 
scr_getbuttonsprite
scr_getbuttonsprite

function
scr_getbuttonsprite(arg0, arg1)
{ var control = arg0; var isString = arg1; var button = noone; var is_dualshock = os_type == os_ps4 || global.gamepad_type == "Sony DualShock 4"; var is_dualsense = os_type == os_ps5 || global.gamepad_type == "DualSense Wireless Controller"; var button_sprite = button_questionmark; var invert = is_dualshock && (global.typer == 50 || global.typer == 70 || global.typer == 71); if (isString) { if (control == "A") { button_sprite = button_xbox_left; if (scr_is_switch_os()) { button_sprite = button_switch_left_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_left_dark : button_ps4_dpad_left; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_left_dark : button_ps5_dpad_left; } return button_sprite; } if (control == "D") { button_sprite = button_xbox_right; if (scr_is_switch_os()) { button_sprite = button_switch_right_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_right_dark : button_ps4_dpad_right; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_right_dark : button_ps5_dpad_right; } return button_sprite; } if (control == "W") { button_sprite = button_xbox_up; if (scr_is_switch_os()) { button_sprite = button_switch_up_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_up_dark : button_ps4_dpad_up; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_up_dark : button_ps5_dpad_up; } return button_sprite; } if (control == "S") { button_sprite = button_xbox_down; if (scr_is_switch_os()) { button_sprite = button_switch_down_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_down_dark : button_ps4_dpad_down; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_down_dark : button_ps5_dpad_down; } return button_sprite; } if (control == "l") { button_sprite = button_xbox_left_bumper; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l1; if (is_dualsense) button_sprite = button_ps5_l1; } if (scr_is_switch_os()) button_sprite = button_switch_l_0; return button_sprite; } if (control == "L") { button_sprite = button_xbox_left_trigger; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l2; if (is_dualsense) button_sprite = button_ps5_l2; } if (scr_is_switch_os()) button_sprite = button_switch_zl_0; return button_sprite; } if (control == "r") { button_sprite = button_xbox_right_bumper; if (is_dualshock || is_dualsense) ...
(global.input_g[but[i]], false);
213
                    var butoffset = 4;
214
                    draw_set_color(c_white);
215
                    if (i != exitline)
216
                    {
217
                        var fullline = " : " + line[i];
218
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, camy + yloc + (space * i), fullline);
219
                        var butxpos = (xloc - string_width(" : " + line[i]) - sprite_get_width(buttspr)) + butmarg;
220
                        draw_sprite_ext(buttspr, 0, butxpos, camy + yloc + (space * i) + butoffset, 2, 2, 0, c_white, 1);
221
                        if (holdline[i])
222
                            
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(butxpos, camy + yloc + (space * i), holdstring + " ");
223
                        if (holdvalueLimit[i] != -1)
224
                        {
225
                            var spritexpos = butxpos - string_width(holdstring + " ") - 28 - 6;
226
                            var spriteypos = camy + yloc + (space * i) + 3;
227
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((holdvalue[i] / holdvalueLimit[i]) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, c_white, holdvalue[i] / 8);
228
                        }
229
                    }
230
                    else
231
                    {
232
                        draw_set_color(redcol);
233
                        var fullline = " : " + line[i];
234
                        var butxpos = (xloc - string_width(fullline) - sprite_get_width(buttspr)) + butmarg;
235
                        draw_set_halign(fa_right);
236
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(butxpos - 4, camy + yloc + (space * i), holdstring);
237
                        draw_sprite_ext(buttspr, 0, butxpos, camy + yloc + (space * i) + butoffset, 2, 2, 0, redcol, 1);
238
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, camy + yloc + (space * i), fullline);
239
                        draw_set_color(c_white);
240
                        var spritexpos = 
scr_even
scr_even

function
scr_even(arg0)
{ return round(arg0 / 2) * 2; }
((butxpos - 4 - 28 - 1 - string_width(holdstring)) + (butmarg / 2));
241
                        var spriteypos = camy + yloc + (space * i) + 3;
242
                        if (active)
243
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
244
                    }
245
                }
246
                draw_set_color(c_white);
247
            }
248
            else
249
            {
250
                for (var i = 0; i < linecount; i++)
251
                {
252
                    var hold = holdline[i];
253
                    var holdstr = "";
254
                    if (hold)
255
                        holdstr = holdstring + " ";
256
                    var fullline = holdstr + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
257
                    if (exitline == i)
258
                    {
259
                        fullline = holdstring + " " + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
260
                        var spritexpos = (camx + 720) - (_easedLerp * 100) - round(string_width(fullline)) - 28 - 8;
261
                        var spriteypos = camy + yloc + (space * i) + 3;
262
                        if (active)
263
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
264
                        draw_set_color(redcol);
265
                    }
266
                    
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, camy + yloc + (space * i), fullline);
267
                    if (holdvalueLimit[i] != -1)
268
                    {
269
                        var spritexpos = (camx + 720) - (_easedLerp * 100) - round(string_width(fullline)) - 28 - 8;
270
                        var spriteypos = camy + yloc + (space * i) + 3;
271
                        draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((holdvalue[i] / holdvalueLimit[i]) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, c_white, holdvalue[i] / 8);
272
                    }
273
                    draw_set_color(c_white);
274
                }
275
            }
276
            draw_set_halign(fa_left);
277
        }
278
        if (displayformat == 1)
279
        {
280
            if (linecount >= 1)
281
            {
282
                butmarg = 2;
283
                var i = 0;
284
                var xloc = ((camx + margin) - 100) + (_easedLerp * 100);
285
                yloc = ((camy + 480) - (space * 2) - margin) + 2;
286
                if (gamepad)
287
                {
288
                    var buttspr = 
scr_getbuttonsprite
scr_getbuttonsprite

function
scr_getbuttonsprite(arg0, arg1)
{ var control = arg0; var isString = arg1; var button = noone; var is_dualshock = os_type == os_ps4 || global.gamepad_type == "Sony DualShock 4"; var is_dualsense = os_type == os_ps5 || global.gamepad_type == "DualSense Wireless Controller"; var button_sprite = button_questionmark; var invert = is_dualshock && (global.typer == 50 || global.typer == 70 || global.typer == 71); if (isString) { if (control == "A") { button_sprite = button_xbox_left; if (scr_is_switch_os()) { button_sprite = button_switch_left_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_left_dark : button_ps4_dpad_left; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_left_dark : button_ps5_dpad_left; } return button_sprite; } if (control == "D") { button_sprite = button_xbox_right; if (scr_is_switch_os()) { button_sprite = button_switch_right_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_right_dark : button_ps4_dpad_right; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_right_dark : button_ps5_dpad_right; } return button_sprite; } if (control == "W") { button_sprite = button_xbox_up; if (scr_is_switch_os()) { button_sprite = button_switch_up_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_up_dark : button_ps4_dpad_up; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_up_dark : button_ps5_dpad_up; } return button_sprite; } if (control == "S") { button_sprite = button_xbox_down; if (scr_is_switch_os()) { button_sprite = button_switch_down_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_down_dark : button_ps4_dpad_down; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_down_dark : button_ps5_dpad_down; } return button_sprite; } if (control == "l") { button_sprite = button_xbox_left_bumper; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l1; if (is_dualsense) button_sprite = button_ps5_l1; } if (scr_is_switch_os()) button_sprite = button_switch_l_0; return button_sprite; } if (control == "L") { button_sprite = button_xbox_left_trigger; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l2; if (is_dualsense) button_sprite = button_ps5_l2; } if (scr_is_switch_os()) button_sprite = button_switch_zl_0; return button_sprite; } if (control == "r") { button_sprite = button_xbox_right_bumper; if (is_dualshock || is_dualsense) ...
(global.input_g[but[i]], false);
289
                    var butoffset = 4;
290
                    draw_set_halign(fa_left);
291
                    if (i != exitline)
292
                    {
293
                        var fullline = " : " + line[i];
294
                        if (holdline[i])
295
                        {
296
                            
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc + (space * i), holdstring + " ");
297
                            xloc += string_width(holdstring + " ");
298
                        }
299
                        draw_sprite_ext(buttspr, 0, xloc, yloc + butoffset, 2, 2, 0, c_white, 1);
300
                        xloc += ((sprite_get_width(buttspr) * 2) + butmarg);
301
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
302
                    }
303
                    else
304
                    {
305
                        draw_set_color(redcol);
306
                        var fullline = " : " + line[i];
307
                        if (holdline[i])
308
                        {
309
                            
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc + (space * i), holdstring + " ");
310
                            xloc += string_width(holdstring + " ");
311
                        }
312
                        draw_sprite_ext(buttspr, 0, xloc, yloc + butoffset, 2, 2, 0, c_white, 1);
313
                        xloc += ((sprite_get_width(buttspr) * 2) + butmarg);
314
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
315
                        draw_set_color(-1);
316
                        var spritexpos = xloc + round(string_width(fullline)) + 6;
317
                        var spriteypos = yloc + 3;
318
                        if (active)
319
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
320
                    }
321
                }
322
                else
323
                {
324
                    var hold = holdline[i];
325
                    var holdstr = "";
326
                    if (hold)
327
                        holdstr = holdstring + " ";
328
                    var fullline = holdstr + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
329
                    if (exitline == i)
330
                    {
331
                        fullline = holdstring + " " + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
332
                        var spritexpos = xloc + round(string_width(fullline)) + 4;
333
                        var spriteypos = yloc + 3;
334
                        if (active)
335
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
336
                        draw_set_color(redcol);
337
                    }
338
                    draw_set_halign(fa_left);
339
                    
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
340
                    draw_set_halign(fa_right);
341
                    draw_set_color(c_white);
342
                }
343
            }
344
            if (linecount >= 2)
345
            {
346
                butmarg = -12;
347
                draw_set_halign(fa_right);
348
                yloc = ((camy + 480) - (space * 2) - margin) + 2;
349
                var i = 1;
350
                var xloc = (camx + 640 + 100) - margin - (_easedLerp * 100);
351
                if (gamepad)
352
                {
353
                    var buttspr = 
scr_getbuttonsprite
scr_getbuttonsprite

function
scr_getbuttonsprite(arg0, arg1)
{ var control = arg0; var isString = arg1; var button = noone; var is_dualshock = os_type == os_ps4 || global.gamepad_type == "Sony DualShock 4"; var is_dualsense = os_type == os_ps5 || global.gamepad_type == "DualSense Wireless Controller"; var button_sprite = button_questionmark; var invert = is_dualshock && (global.typer == 50 || global.typer == 70 || global.typer == 71); if (isString) { if (control == "A") { button_sprite = button_xbox_left; if (scr_is_switch_os()) { button_sprite = button_switch_left_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_left_dark : button_ps4_dpad_left; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_left_dark : button_ps5_dpad_left; } return button_sprite; } if (control == "D") { button_sprite = button_xbox_right; if (scr_is_switch_os()) { button_sprite = button_switch_right_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_right_dark : button_ps4_dpad_right; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_right_dark : button_ps5_dpad_right; } return button_sprite; } if (control == "W") { button_sprite = button_xbox_up; if (scr_is_switch_os()) { button_sprite = button_switch_up_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_up_dark : button_ps4_dpad_up; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_up_dark : button_ps5_dpad_up; } return button_sprite; } if (control == "S") { button_sprite = button_xbox_down; if (scr_is_switch_os()) { button_sprite = button_switch_down_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_down_dark : button_ps4_dpad_down; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_down_dark : button_ps5_dpad_down; } return button_sprite; } if (control == "l") { button_sprite = button_xbox_left_bumper; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l1; if (is_dualsense) button_sprite = button_ps5_l1; } if (scr_is_switch_os()) button_sprite = button_switch_l_0; return button_sprite; } if (control == "L") { button_sprite = button_xbox_left_trigger; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l2; if (is_dualsense) button_sprite = button_ps5_l2; } if (scr_is_switch_os()) button_sprite = button_switch_zl_0; return button_sprite; } if (control == "r") { button_sprite = button_xbox_right_bumper; if (is_dualshock || is_dualsense) ...
(global.input_g[but[i]], false);
354
                    var butoffset = 4;
355
                    draw_set_color(c_white);
356
                    if (i != exitline)
357
                    {
358
                        var fullline = " : " + line[i];
359
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
360
                        var butxpos = (xloc - string_width(" : " + line[i]) - sprite_get_width(buttspr)) + butmarg;
361
                        draw_sprite_ext(buttspr, 0, butxpos, yloc + butoffset, 2, 2, 0, c_white, 1);
362
                        if (holdline[i])
363
                            
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(butxpos, yloc, holdstring + " ");
364
                    }
365
                    else
366
                    {
367
                        draw_set_color(redcol);
368
                        var fullline = " : " + line[i];
369
                        var butxpos = (xloc - string_width(fullline) - sprite_get_width(buttspr)) + butmarg;
370
                        draw_set_halign(fa_right);
371
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(butxpos - 4, yloc, holdstring);
372
                        draw_sprite_ext(buttspr, 0, butxpos, yloc + butoffset, 2, 2, 0, redcol, 1);
373
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
374
                        draw_set_color(c_white);
375
                        var spritexpos = (butxpos - string_width(holdstring) - (sprite_get_width(spr_quiz_hud_timer) * 2)) + butmarg + 2;
376
                        var spriteypos = yloc + 3;
377
                        if (active)
378
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
379
                    }
380
                    draw_set_color(c_white);
381
                }
382
                else
383
                {
384
                    var hold = holdline[i];
385
                    var holdstr = "";
386
                    if (hold)
387
                        holdstr = holdstring + " ";
388
                    var fullline = holdstr + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
389
                    if (exitline == i)
390
                    {
391
                        fullline = holdstring + " " + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
392
                        var spritexpos = xloc - (sprite_get_width(spr_quiz_hud_timer) * 2) - round(string_width(fullline)) - 4;
393
                        var spriteypos = yloc + 3;
394
                        if (active)
395
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
396
                        draw_set_color(redcol);
397
                    }
398
                    
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
399
                    draw_set_color(c_white);
400
                }
401
                draw_set_halign(fa_left);
402
            }
403
            if (linecount >= 3)
404
            {
405
                var i = 2;
406
                var xloc = camx + 320;
407
                butmarg = 2;
408
                yloc = (((camy + 480) - (space * 1) - margin) + 2 + 100) - (_easedLerp * 100);
409
                if (gamepad)
410
                {
411
                    var buttspr = 
scr_getbuttonsprite
scr_getbuttonsprite

function
scr_getbuttonsprite(arg0, arg1)
{ var control = arg0; var isString = arg1; var button = noone; var is_dualshock = os_type == os_ps4 || global.gamepad_type == "Sony DualShock 4"; var is_dualsense = os_type == os_ps5 || global.gamepad_type == "DualSense Wireless Controller"; var button_sprite = button_questionmark; var invert = is_dualshock && (global.typer == 50 || global.typer == 70 || global.typer == 71); if (isString) { if (control == "A") { button_sprite = button_xbox_left; if (scr_is_switch_os()) { button_sprite = button_switch_left_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_left_dark : button_ps4_dpad_left; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_left_dark : button_ps5_dpad_left; } return button_sprite; } if (control == "D") { button_sprite = button_xbox_right; if (scr_is_switch_os()) { button_sprite = button_switch_right_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_right_dark : button_ps4_dpad_right; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_right_dark : button_ps5_dpad_right; } return button_sprite; } if (control == "W") { button_sprite = button_xbox_up; if (scr_is_switch_os()) { button_sprite = button_switch_up_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_up_dark : button_ps4_dpad_up; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_up_dark : button_ps5_dpad_up; } return button_sprite; } if (control == "S") { button_sprite = button_xbox_down; if (scr_is_switch_os()) { button_sprite = button_switch_down_0; } else if (is_dualshock || is_dualsense) { button_sprite = invert ? button_ps4_dpad_down_dark : button_ps4_dpad_down; if (is_dualsense) button_sprite = invert ? button_ps4_dpad_down_dark : button_ps5_dpad_down; } return button_sprite; } if (control == "l") { button_sprite = button_xbox_left_bumper; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l1; if (is_dualsense) button_sprite = button_ps5_l1; } if (scr_is_switch_os()) button_sprite = button_switch_l_0; return button_sprite; } if (control == "L") { button_sprite = button_xbox_left_trigger; if (is_dualshock || is_dualsense) { button_sprite = button_ps4_l2; if (is_dualsense) button_sprite = button_ps5_l2; } if (scr_is_switch_os()) button_sprite = button_switch_zl_0; return button_sprite; } if (control == "r") { button_sprite = button_xbox_right_bumper; if (is_dualshock || is_dualsense) ...
(global.input_g[but[i]], false);
412
                    var butoffset = 4;
413
                    draw_set_halign(fa_left);
414
                    if (i != exitline)
415
                    {
416
                        var fullline = " : " + line[i];
417
                        if (holdline[i])
418
                        {
419
                            xloc -= string_width(holdstring + " ");
420
                            
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, holdstring + " ");
421
                            xloc += string_width(holdstring + " ");
422
                        }
423
                        else
424
                        {
425
                            xloc -= (string_width(fullline) - (sprite_get_width(buttspr) * 2));
426
                        }
427
                        draw_sprite_ext(buttspr, 0, xloc, yloc + butoffset, 2, 2, 0, c_white, 1);
428
                        xloc += ((sprite_get_width(buttspr) * 2) + butmarg);
429
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
430
                    }
431
                    else
432
                    {
433
                        draw_set_color(redcol);
434
                        var fullline = " : " + line[i];
435
                        xloc -= round((string_width(holdstring + " ") + (sprite_get_width(buttspr) * 2) + string_width(fullline)) / 2);
436
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, holdstring + " ");
437
                        xloc += string_width(holdstring + " ");
438
                        draw_sprite_ext(buttspr, 0, xloc, yloc + butoffset, 2, 2, 0, c_white, 1);
439
                        xloc += ((sprite_get_width(buttspr) * 2) + butmarg);
440
                        
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
441
                        draw_set_color(-1);
442
                        var spritexpos = xloc + round(string_width(fullline)) + 6;
443
                        var spriteypos = yloc + 3;
444
                        if (active)
445
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
446
                    }
447
                }
448
                else
449
                {
450
                    var hold = holdline[i];
451
                    var holdstr = "";
452
                    if (hold)
453
                        holdstr = holdstring + " ";
454
                    var fullline = holdstr + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
455
                    if (exitline == i)
456
                    {
457
                        fullline = holdstring + " " + 
scr_get_input_name
scr_get_input_name

function
scr_get_input_name(arg0)
{ var _control = "[?]"; if (global.is_console || obj_gamecontroller.gamepad_active) { _control = global.input_g[arg0]; if (_control == gp_padr) return "\\*D "; if (_control == gp_padl) return "\\*A "; if (_control == gp_padu) return "\\*W "; if (_control == gp_padd) return "\\*S "; if (_control == global.button0) return "\\*Z "; if (_control == global.button1) return "\\*X "; if (_control == global.button2) return "\\*C "; } var left_bracket = (global.lang == "en") ? "[" : "["; var right_bracket = (global.lang == "en") ? "]" : "]"; _control = left_bracket + global.asc_def[global.input_k[arg0]] + right_bracket; if (!is_string(_control)) _control = "[?]"; else return _control; }
(but[i]) + " : " + line[i];
458
                        xloc -= round(string_width(fullline) / 2);
459
                        var spritexpos = xloc + round(string_width(fullline)) + 4;
460
                        var spriteypos = yloc + 3;
461
                        if (active)
462
                            draw_sprite_ext(spr_quiz_hud_timer, clamp(28 - ((canceltimer / canceltime) * 29), 0, 28), spritexpos, spriteypos, 2, 2, 0, redcol, canceltimer / 8);
463
                        draw_set_color(redcol);
464
                    }
465
                    else
466
                    {
467
                        xloc -= round(string_width(fullline) / 2);
468
                    }
469
                    draw_set_halign(fa_left);
470
                    
scr_84_draw_text_outline
scr_84_draw_text_outline

function
scr_84_draw_text_outline(arg0, arg1, arg2)
{ var xx = arg0; var yy = arg1; var str = arg2; var __txtcolor__ = draw_get_color(); draw_set_colour(c_black); draw_text(xx - 1, yy - 1, str); draw_text(xx + 1, yy - 1, str); draw_text(xx - 1, yy + 1, str); draw_text(xx + 1, yy + 1, str); draw_set_colour(__txtcolor__); draw_text(xx, yy, str); }
(xloc, yloc, fullline);
471
                    draw_set_halign(fa_right);
472
                    draw_set_color(c_white);
473
                }
474
            }
475
        }
476
    }
477
}
478
draw_set_halign(fa_left);