Undertale script viewer

← back to main script listing

gml_Object_obj_truechara_Draw_0

(view raw script w/o annotations or w/e)
1
if (flashred == 1)
2
{
3
    redsiner += 1;
4
    draw_set_alpha(abs(sin(redsiner / 2)));
5
    draw_set_color(c_red);
6
    ossafe_fill_rectangle(-20, -20, 999, 999);
7
    draw_set_alpha(1);
8
}
9
draw_sprite_ext(sprite_index, image_index, x, y, image_xscale, image_yscale, 0, c_white, 1);
10
if (choicer == 1)
11
{
12
    buffer += 1;
13
    scr_setfont
scr_setfont

var newfont = argument0; if (global.language == "ja") { if (newfont == fnt_main) newfont = fnt_ja_main; if (newfont == fnt_maintext) newfont = fnt_ja_maintext; if (newfont == fnt_plain) newfont = fnt_ja_plain; } draw_set_font(newfont);
(fnt_main);
14
    draw_set_color(c_white);
15
    if (choice == 0)
16
    {
17
        draw_set_color(c_yellow);
18
        draw_sprite(spr_heart, 0, 75, 357);
19
    }
20
    draw_text(100, 350, 
ERASE
scr_gettext
scr_gettext

var text_id = argument[0]; var text = ds_map_find_value(global.text_data_en, text_id); if (is_undefined(text)) text = ""; if (global.language == "ja") { var loc_text = ds_map_find_value(global.text_data_ja, text_id); if (!is_undefined(loc_text)) text = loc_text; } for (var i = 1; i <= (string_length(text) - 3); i++) { if (string_copy(text, i, 2) == "\[" && string_char_at(text, i + 3) == "]") { var sel = string_char_at(text, i + 2); var replace; if (sel == "C") replace = global.charname; else if (sel == "G") replace = string(global.gold); else if (sel == "I") replace = global.itemname[global.menucoord[1]]; else if (sel == "1" && argument_count > 1) replace = argument[1]; else if (sel == "2" && argument_count > 2) replace = argument[2]; else if (sel == "3" && argument_count > 3) replace = argument[3]; else if (sel == "4" && argument_count > 4) replace = argument[4]; else if (sel == "5" && argument_count > 5) replace = argument[5]; else if (sel == "6" && argument_count > 6) replace = argument[6]; else if (sel == "7" && argument_count > 7) replace = argument[7]; else if (sel == "8" && argument_count > 8) replace = argument[8]; else if (sel == "9" && argument_count > 9) replace = argument[9]; else replace = ""; var before = string_copy(text, 1, i - 1); var after = string_copy(text, i + 4, string_length(text)); text = before + replace + after; i += (string_length(replace) - 1); } } return text;
("obj_truechara_erase")
);
21
    draw_set_color(c_white);
22
    if (choice == 1)
23
    {
24
        draw_set_color(c_yellow);
25
        draw_sprite(spr_heart, 0, 455, 357);
26
    }
27
    draw_text(480, 350, 
DO NOT
scr_gettext
scr_gettext

var text_id = argument[0]; var text = ds_map_find_value(global.text_data_en, text_id); if (is_undefined(text)) text = ""; if (global.language == "ja") { var loc_text = ds_map_find_value(global.text_data_ja, text_id); if (!is_undefined(loc_text)) text = loc_text; } for (var i = 1; i <= (string_length(text) - 3); i++) { if (string_copy(text, i, 2) == "\[" && string_char_at(text, i + 3) == "]") { var sel = string_char_at(text, i + 2); var replace; if (sel == "C") replace = global.charname; else if (sel == "G") replace = string(global.gold); else if (sel == "I") replace = global.itemname[global.menucoord[1]]; else if (sel == "1" && argument_count > 1) replace = argument[1]; else if (sel == "2" && argument_count > 2) replace = argument[2]; else if (sel == "3" && argument_count > 3) replace = argument[3]; else if (sel == "4" && argument_count > 4) replace = argument[4]; else if (sel == "5" && argument_count > 5) replace = argument[5]; else if (sel == "6" && argument_count > 6) replace = argument[6]; else if (sel == "7" && argument_count > 7) replace = argument[7]; else if (sel == "8" && argument_count > 8) replace = argument[8]; else if (sel == "9" && argument_count > 9) replace = argument[9]; else replace = ""; var before = string_copy(text, 1, i - 1); var after = string_copy(text, i + 4, string_length(text)); text = before + replace + after; i += (string_length(replace) - 1); } } return text;
("obj_truechara_donot")
);
28
    if (keyboard_check_pressed(vk_right))
29
    {
30
        if (choice == 0)
31
        {
32
            choice = 1;
33
            snd_play(snd_squeak);
34
        }
35
    }
36
    if (keyboard_check_pressed(vk_left))
37
    {
38
        if (choice == 1)
39
        {
40
            choice = 0;
41
            snd_play(snd_squeak);
42
        }
43
    }
44
    if (control_check_pressed(0) && buffer >= 12)
45
    {
46
        snd_play(snd_select);
47
        choicer = 0;
48
        caster_stop(all);
49
        if (choice == 0)
50
            con = 19;
51
        if (choice == 1)
52
            con = 29;
53
        alarm[4] = 30;
54
    }
55
}