Undertale script viewer

← back to main script listing

gml_Object_obj_the_end_really_Draw_0

(view raw script w/o annotations or w/e)
1
timer += 1;
2
if (type == 0)
3
{
4
    draw_sprite_ext(spr_undertaletitle, 0, 0, -60, 2, 2, 0, c_white, 2);
5
    if (timer == 1)
6
        caster_play(noise, 1, 1);
7
}
8
if (type == 1)
9
{
10
    if (photo_alpha <= 1)
11
        photo_alpha += 0.04;
12
    draw_sprite_ext(spr_friendphoto, 0, 140, 50, 2, 2, 0, c_white, photo_alpha);
13
    if (death == 1)
14
        draw_sprite_ext(spr_charaphoto, 0, 140, 50, 2, 2, 0, c_white, photo_alpha);
15
}
16
if (timer >= 120)
17
{
18
    draw_set_color(c_white);
19
    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_maintext);
20
    if (death == 1)
21
        draw_set_color(c_red);
22
    if (type == 0)
23
        draw_text_transformed(205, 260, 
THE END
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;
("the_end")
, 5, 4, 0);
24
    if (type == 1)
25
        draw_text_transformed(205, 300, 
THE END
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;
("the_end")
, 5, 4, 0);
26
}
27
if (timer >= 200 && dogamt == 0)
28
{
29
    dogamt = 1;
30
    if (death == 0)
31
        caster_loop(song, 0.9, 0.9);
32
    if (death == 1)
33
        caster_loop(mus_prebattle1, 1, 0.2);
34
}
35
if (timer >= 220 && death == 1)
36
    timer = 210;
37
if (timer >= 1320 && dogamt < 2)
38
{
39
    dogamt = 2;
40
    dog = instance_create(640, 380, obj_npc_marker);
41
    dog.depth = -4;
42
    if (type == 1)
43
        dog.y = 420;
44
    dog.image_speed = 0.2;
45
    dog.visible = true;
46
    dog.sprite_index = spr_tobdogl;
47
    dog.hspeed = -1;
48
    dog.image_xscale = 2;
49
    dog.image_yscale = 2;
50
}
51
if (timer >= 1668 && dogamt < 3)
52
{
53
    dogamt = 3;
54
    dog.hspeed = 0;
55
    dog.sprite_index = spr_tobdogl_still;
56
    dog.image_speed = 0.05;
57
}
58
if (timer >= 3686 && dogamt < 4)
59
{
60
    dogamt = 4;
61
    dog.sprite_index = spr_sleepdog;
62
    dog.y += 8;
63
}