Undertale script viewer

← back to main script listing

gml_Object_obj_creditsloader_Draw_0

(view raw script w/o annotations or w/e)
1
if (a_con == 4)
2
{
3
    with (asriel)
4
        instance_destroy();
5
    a2 = scr_marker
scr_marker

thismarker = instance_create(argument0, argument1, obj_npc_marker); thismarker.visible = true; thismarker.image_speed = 0; thismarker.sprite_index = argument2; return thismarker;
(286, 140, spr_kidasriel_front_kawaii);
6
    a2.depth = 100000;
7
    a2.image_xscale = 2;
8
    a2.image_yscale = 2;
9
    a2.image_index = 0;
10
    a_con = 5;
11
    alarm[4] = 60;
12
}
13
if (a_con == 6)
14
{
15
    global.typer = 85;
16
    global.msc = 0;
17
    global.msg[0] = 
\XI mean,Delay 11 we haven't
even done the\R
Special Thanks\X yet...Wait for input
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_creditsloader_449")
;
18
    global.msg[1] = 
Ready?Delay 11
Let's end all of
this for good!Wait for inputClose MessageClose Message
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_creditsloader_450")
;
19
    scr_blcon_ofs
scr_blcon_ofs

writer = instance_create(argument0 + 30, argument1 + 10, OBJ_WRITER); writer.writingx += argument3; writer.writingxend += argument3; writer.writingy += argument4; blcon = instance_create(writer.x - 30, writer.y - 10, obj_blconwideslave); blcon.parent = writer; if (argument2 == 1) blcon.sprite_index = spr_blconwdshrt_l; if (argument2 == 2) { blcon.sprite_index = spr_blconabove; writer.writingy -= 20; writer.writingx -= 20; } if (argument2 == 3) { blcon.sprite_index = spr_blconwdshrt; writer.writingy -= 20; } if (argument2 == 4) { blcon.sprite_index = spr_blconbelow; writer.writingx -= 10; }
(a2.x + 80, a2.y, 0, 6, 0);
20
    a_con = 7;
21
}
22
if (a_con == 7 && instance_exists(OBJ_WRITER))
23
{
24
    if (OBJ_WRITER.stringno == 1)
25
        a2.image_index = 1;
26
}
27
if (a_con == 7 && instance_exists(OBJ_WRITER) == 0)
28
{
29
    a_con = 8;
30
    alarm[4] = 50;
31
    ch = instance_create(300, 300, obj_creditsheart);
32
    snd_play(snd_impact);
33
    specialfade = 15;
34
    drawbar = 1;
35
}
36
if (a_con == 8)
37
    a2.image_alpha -= 0.06;
38
if (a_con == 9)
39
{
40
    alarm[5] = 10;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
41
    active = 1;
42
    a_con = 10;
43
}
44
if (a_con == 2)
45
{
46
    a_con = 3;
47
    global.typer = 86;
48
    global.msc = 0;
49
    global.msg[0] = 
Ha ha ha ha...Wait for input
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_creditsloader_492")
;
50
    global.msg[1] = 
\M1Did you REALLY
think it was
OVER!?!?Wait for inputClose MessageClose Message
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_creditsloader_493")
;
51
    scr_blcon_x
scr_blcon_x

scr_blcon(argument0, argument1, 0);
(asriel.x + 80, asriel.y - 20);
52
}
53
if (a_con == 3 && instance_exists(OBJ_WRITER) == 0)
54
{
55
    caster_stop(horror);
56
    a_con = 4;
57
    instance_create(0, 0, obj_flasher);
58
    snd_play(snd_break2);
59
}
60
if (active == 1)
61
    mytimer += 1;
62
if (mytimer == 10)
63
{
64
    lastsong = caster_load("music/end/express_myself.ogg");
65
    caster_play(lastsong, 1, 1);
66
    memory = 0;
67
    alarm[5] = 1;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
68
}
69
if (credno >= 60 && memory == 0)
70
{
71
    alarm[5] = 90;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
72
    memory = 2;
73
}
74
if (memory == 2 && credno >= 252)
75
{
76
    alarm[5] = -1;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
77
    cb = instance_create(320, 240, obj_creditboss);
78
    cb.alarm[0] = 60;
79
    cb.type = 2;
80
    memory = 3;
81
}
82
if (memory == 3 && instance_exists(obj_creditboss) == 0)
83
{
84
    alarm[5] = 60;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
85
    memory = 4;
86
}
87
if (memory == 4 && credno >= 596)
88
{
89
    memory = 7;
90
    alarm[5] = 100;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
91
}
92
if (memory == 7 && credno >= 716)
93
{
94
    memory = 6;
95
    alarm[5] = 160;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
96
}
97
if (memory == 6 && credno >= 881)
98
{
99
    memory = -2;
100
    st_y = 500;
101
    st_t = 0;
102
    st_f = 1;
103
    alarm[5] = -1;
gml_Object_obj_creditsloader_Alarm_5.gml

if (memory == 0) { if (rounded == 0) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(1); } if (rounded == 1) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(1); } if (rounded == 2) { cb = instance_create(100, choose(40), obj_creditboss); cb.type = choose(0); } if (rounded == 3) { cb = instance_create(100, choose(260), obj_creditboss); cb.type = choose(0); } alarm[5] = 35; rounded += 1; if (rounded == 4) rounded = 0; } if (memory == 1) { i = 0; xx = 10 + (floor(random(6)) * 20); repeat (4) { event_user(0); cb.x = xx; xx += 90; cb.y = -40; cb.vspeed = 0.5; cb.gravity = 0.1; i += 1; } alarm[5] = 15; } if (memory == 2) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = -200; cb.y = 10 + (i * 40); cb.hspeed = 9; } for (i = 0; i < 12; i += 1) { event_user(0); cb.x = room_width + 200; cb.y = 30 + (i * 40); cb.hspeed = -9; } alarm[5] = 50; } if (memory == 4) { if (memswitch == 0) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = 90; cb.hspeed = 2; cb.action = 3; cb.vspeed = 6; } for (i = 0; i < 12; i += 1) { event_user(0); with (cb) width = string_width(text); cb.image_angle = 90; cb.x = 40 + (i * 60); cb.y = -300 - cb.width; cb.hspeed = -2; cb.action = 3; cb.vspeed = 6; } } if (memswitch == 1) { for (i = 0; i < 12; i += 1) { event_user(0); cb.x = 10 + (i * 60); with (cb) width = string_width(text); cb.y = -300 + cb.width; cb.image_angle = -90; cb.hspeed = -2; ...
104
}
105
if (drawbar == 1)
106
{
107
    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);
108
    draw_set_color(c_lime);
109
    draw_set_alpha(specialfade);
110
    scr_drawtext_centered_scaled
scr_drawtext_centered_scaled

var xx = argument0; var yy = argument1; var text = argument2; var xscale = argument3; var yscale = argument4; var display_scale = surface_get_width(application_surface) / view_wview[view_current]; var lineheight = round(string_height(" ") * yscale); var eol = string_pos("#", text); yy = round(yy * display_scale) / display_scale; while (eol != 0) { var line = substr(text, 1, eol); text = substr(text, eol + 1); width = string_width(line) * xscale; var line_x = round((xx - (width / 2)) * display_scale) / display_scale; draw_text_transformed(line_x, yy, line, xscale, yscale, 0); yy += lineheight; eol = string_pos("#", text); } var width = string_width(text) * xscale; draw_text_transformed(round(xx - (width / 2)), yy, text, xscale, yscale, 0);
(320, 20,
SPECIAL THANKS
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;
("credits_specialthanks")
, 2, 2);
111
    specialfade -= 0.05;
112
    draw_set_alpha(1);
113
    draw_sprite(spr_hpname, 0, 260, 450);
114
    draw_sprite_ext(spr_infinitysign, 0, 296, 452, 2, 2, 0, c_yellow, 1);
115
}
116
if (memory == -2 && !instance_exists(obj_creditbullet))
117
{
118
    drawbar = 0;
119
    st_t += 1;
120
    if (st_t < 150 && st_y > 50)
121
    {
122
        st_f += 0.25;
123
        st_y -= st_f;
124
        st_f2 = 1;
125
    }
126
    if (st_t > 240 && st_y < 500)
127
    {
128
        vol = 0.8;
129
        l_alpha = 0;
130
        st_y += st_f2;
131
        st_f2 += 0.25;
132
        st_f3 = 0;
133
        st_y2 = 500;
134
    }
135
    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);
136
    draw_set_color(c_yellow);
137
    if (hitno > 0)
138
    {
139
        scr_drawtext_centered_scaled
scr_drawtext_centered_scaled

var xx = argument0; var yy = argument1; var text = argument2; var xscale = argument3; var yscale = argument4; var display_scale = surface_get_width(application_surface) / view_wview[view_current]; var lineheight = round(string_height(" ") * yscale); var eol = string_pos("#", text); yy = round(yy * display_scale) / display_scale; while (eol != 0) { var line = substr(text, 1, eol); text = substr(text, eol + 1); width = string_width(line) * xscale; var line_x = round((xx - (width / 2)) * display_scale) / display_scale; draw_text_transformed(line_x, yy, line, xscale, yscale, 0); yy += lineheight; eol = string_pos("#", text); } var width = string_width(text) * xscale; draw_text_transformed(round(xx - (width / 2)), yy, text, xscale, yscale, 0);
(320, st_y,
TOUCHED CREDITS
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;
("credits_touched")
, 2, 2);
140
        draw_set_font(fnt_maintext);
141
        for (i = 0; i < hitno; i += 1)
142
            scr_drawtext_centered
scr_drawtext_centered

var xx = argument0; var yy = argument1; var text = argument2; scr_drawtext_centered_scaled(xx, yy, text, 1, 1);
(320, st_y + 40 + (i * 20), hitname[i]);
143
    }
144
    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);
145
    if (hitno <= 0)
146
    {
147
        ossafe_ini_open("undertale.ini");
148
        ini_write_real("reset", "s_key", 1);
149
        ossafe_ini_close();
150
        ossafe_savedata_save();
151
        scr_drawtext_centered_scaled
scr_drawtext_centered_scaled

var xx = argument0; var yy = argument1; var text = argument2; var xscale = argument3; var yscale = argument4; var display_scale = surface_get_width(application_surface) / view_wview[view_current]; var lineheight = round(string_height(" ") * yscale); var eol = string_pos("#", text); yy = round(yy * display_scale) / display_scale; while (eol != 0) { var line = substr(text, 1, eol); text = substr(text, eol + 1); width = string_width(line) * xscale; var line_x = round((xx - (width / 2)) * display_scale) / display_scale; draw_text_transformed(line_x, yy, line, xscale, yscale, 0); yy += lineheight; eol = string_pos("#", text); } var width = string_width(text) * xscale; draw_text_transformed(round(xx - (width / 2)), yy, text, xscale, yscale, 0);
(320, st_y,
Incredible work.#Somewhere, felt a#door opening...!
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;
("credits_door")
, 4, 4);
152
    }
153
    if (st_t >= 320)
154
    {
155
        draw_set_color(c_white);
156
        st_y2 -= 2;
157
        scr_drawtext_centered_scaled
scr_drawtext_centered_scaled

var xx = argument0; var yy = argument1; var text = argument2; var xscale = argument3; var yscale = argument4; var display_scale = surface_get_width(application_surface) / view_wview[view_current]; var lineheight = round(string_height(" ") * yscale); var eol = string_pos("#", text); yy = round(yy * display_scale) / display_scale; while (eol != 0) { var line = substr(text, 1, eol); text = substr(text, eol + 1); width = string_width(line) * xscale; var line_x = round((xx - (width / 2)) * display_scale) / display_scale; draw_text_transformed(line_x, yy, line, xscale, yscale, 0); yy += lineheight; eol = string_pos("#", text); } var width = string_width(text) * xscale; draw_text_transformed(round(xx - (width / 2)), yy, text, xscale, yscale, 0);
(320, st_y2,
Thanks to friends and#family for supporting us.#And UNDERTALE TEAM thanks#you, the player, from#the bottom of our hearts.#Without you, all of this#would be impossible.# #Good night.
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;
("credits_finalthanks")
, 2, 2);
158
        if (st_y2 <= -400)
159
        {
160
            if (st_y2 >= -410)
161
                l_alpha = 0;
162
            depth = -9000;
163
            draw_set_color(c_black);
164
            draw_set_alpha(l_alpha);
165
            l_alpha += (1/120);
166
            ossafe_fill_rectangle(-10, -10, 999, 999);
167
            if (st_y2 <= -830)
168
            {
169
                caster_free(lastsong);
170
                do_room_goto = true;
171
            }
172
        }
173
    }
174
}
175
if (ting == 1)
176
{
177
    snd_stop(snd_block2);
178
    snd_play(snd_block2);
179
    ting = 0;
180
}