Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_dw_fcastle_right_puzzle_Create_0

related scripts: Create_0 Draw_0Step_0

(view raw script w/o annotations or w/e)
1
layer_set_visible("DEBUG_ASSETS", 0);
2
layer_set_visible("NPCs", 0);
3
scr_plat_assetlayer
scr_plat_assetlayer

function
scr_plat_assetlayer(arg0 = "Plat_Assets", arg1 = false)
{ var _layer = layer_get_id(arg0); if (!layer_exists(_layer)) exit; var a = layer_get_all_elements(_layer); for (var i = 0; i < array_length(a); i++) { if (layer_get_element_type(a[i]) == 4) { var _x = layer_sprite_get_x(a[i]); var _y = layer_sprite_get_y(a[i]); var _spr = layer_sprite_get_sprite(a[i]); var _img = layer_sprite_get_index(a[i]); var _spd = layer_sprite_get_speed(a[i]); var _xscale = layer_sprite_get_xscale(a[i]); var _yscale = layer_sprite_get_yscale(a[i]); var _angle = layer_sprite_get_angle(a[i]); var _blend = layer_sprite_get_blend(a[i]); var _alpha = layer_sprite_get_alpha(a[i]); var _obj = instance_create_depth(_x, _y, 0, obj_plat_asset); with (_obj) { flat = arg1; sprite_index = _spr; image_index = _img; image_speed = _spd; image_xscale = _xscale; image_yscale = _yscale; image_angle = _angle; image_blend = _blend; image_alpha = _alpha;
scr_platswap_init(id, true);
} layer_sprite_destroy(a[i]); } } }
("PAPERSCRAPS", true);
4
_ROOM_FLAG = 1317;
5
_BIT_DOOR = 0;
6
_BIT_SIGNERY_LEFT = 1;
7
_BIT_SIGNERY_RIGHT = 2;
8
con = 0;
9
timer = 0;
10
init = 0;
11
doormarker = -4;
12
keycon = 0;
13
keycontimer = 0;
14
key_x = 0;
15
key_y = 0;
16
keymarker = -4;
17
signcon = 0;
18
signcontimer = 0;
19
sign_x = 0;
20
sign_y = 0;
21
signmarker = -4;
22
doorinteract = -4;
23
doorcon = 0;
24
stuckcon = 0;
25
stucktimer = 0;
26
conspiracy_scattered = false;
27
concon = 0;
28
read_documents = false;
29
30
scatter_papers = function()
31
{
32
    exit;
33
};
34
35
npc_sign_left = scr_makenpc_fromasset(findsprite(spr_dw_fcastle_right_puzzle_signery, "NPCs", c_red));
36
npc_sign_left.marker.image_blend = c_white;
37
npc_sign_left.marker.reflect_jump_y = 4;
38
readanyway = false;
39
with (npc_sign_left)
40
    
scr_platswap_init
scr_platswap_init

function
scr_platswap_init(arg0 = undefined, arg1 = true)
{ if (!instance_exists(obj_platswap)) return -4; if (!instance_exists(obj_platswap_helper)) instance_create(0, 0, obj_platswap_helper); var _helper = 658; if (arg0 == undefined) { ignore_yorigin = 0; if (!variable_instance_exists(id, "force_yplat")) force_yplat = false; with (_helper) init_platswap(other.id, arg1); return _helper; } if (instance_exists(arg0)) { with (arg0) { if (!variable_instance_exists(id, "force_yplat")) force_yplat = false; ignore_yorigin = 0; with (_helper) init_platswap(arg0.id, arg1); return _helper; } } } function scr_platswap_init_alt(arg0 = id, arg1 = true) { if (!instance_exists(obj_platswap)) return -4; if (!instance_exists(obj_platswap_helper)) instance_create(0, 0, obj_platswap_helper); if (instance_exists(arg0)) { with (arg0) { ignore_yorigin = 1; if (!variable_instance_exists(id, "force_yplat")) force_yplat = false; with (_helper) init_platswap(other.id, arg1); return _helper; } } } function scr_plat_make_pauseable(arg0 = id) { if (!instance_exists(obj_platswap)) return -4; if (!instance_exists(obj_plat_pausing_helper)) instance_create(0, 0, obj_plat_pausing_helper); with (obj_plat_pausing_helper) add_object(arg0); }
(self, false);
41
scr_setnpclogic
scr_setnpclogic

function
scr_setnpclogic(arg0, arg1, arg2)
{ if (arg0 == -4) {
scr_debug_print("Failed to add NPC logic");
exit; } if (arg0.marker.sprite_index == spr_debug_40x40) arg0.marker.visible = 0; with (instance_create(0, 0, obj_npc_wrapper)) { if (variable_struct_exists(arg1, "animspeed")) animspeed = arg1.animspeed; if (variable_struct_exists(arg1, "typer")) typer = arg1.typer; if (variable_struct_exists(arg1, "alwaysanimate")) alwaysanimate = arg1.alwaysanimate; npc = arg0; if (!variable_instance_exists(npc.id, "dialogue_side")) npc.dialogue_side = -1; setdialogue = arg2; choices = []; for (var i = 3; i < argument_count; i++) array_push(choices, argument[i]); } }
(npc_sign_left, {}, function(arg0)
42
{
43
    snd_play_flowery(210);
44
    global.msc = -99;
45
    global.choice = -1;
46
    global.choicemsg = [stringsetloc(
#Yes
"#Yes", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_106_0"
), stringsetloc(
#No
"#No", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_107_0"
), stringset(""), stringset("")];
47
    
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("no_name");
48
    msgsetloc(0, 
* (It's Signery.)Wait for input
"* (It's Signery.)/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_112_0"
);
49
    msgnextloc(
* (It seems to have a hint to the puzzle.)Wait for input
"* (It seems to have a hint to the puzzle.)/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_113_0"
);
50
    msgnext("\\C2");
51
    return 1;
52
}, function()
53
{
54
    if (global.choice == 0)
55
    {
56
        global.msc = -99;
57
        global.choice = -1;
58
        global.choicemsg = [stringsetloc(
Ralsei's#advice#please
"Ralsei's#advice#please", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_122_0"
), stringsetloc(
#Read Sign#Anyway
"#Read Sign#Anyway", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_123_0"
), stringset(""), stringset("")];
59
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("ralsei");
60
        msgsetloc(0, 
Face N* Kris,Delay 11 why don't you just ask me for help,Delay 11 first...?Wait for input
"\\EN* Kris^1, why don't you just ask me for help^1, first...?/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_128_0"
);
61
        msgnext("\\C2");
62
        return 2;
63
    }
64
    else
65
    {
66
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("no_name");
67
        msgsetloc(0, 
* ("The trunk and stem of the sign.")Wait for input
"* (\"The trunk and stem of the sign.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_134_0"
);
68
        msgnextloc(
* ("This is the part of the sign for not reading the sign.")Wait for inputClose Message
"* (\"This is the part of the sign for not reading the sign.\")/%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_135_0"
);
69
        d_make();
70
    }
71
}, function()
72
{
73
    if (global.choice == 0)
74
    {
75
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("ralsei");
76
        msgsetloc(0, 
Face 2* Thanks,Delay 11 Kris...Wait for input
"\\E2* Thanks^1, Kris.../", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_141_0"
);
77
        msgnextloc(
Face J* (That board can move PLATFORMS we can JUMP ON.)Wait for input
"\\EJ* (That board can move PLATFORMS we can JUMP ON.)/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_142_0"
);
78
        msgnextloc(
Face J* (Parts of PLATFORMS become solid BEHIND PAPER.)Wait for input
"\\EJ* (Parts of PLATFORMS become solid BEHIND PAPER.)/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_143_0"
);
79
        msgnextsubloc(
Face J* (Try using Argument №11 to switch PLATFORMs when using it!)Wait for input
"\\EJ* (Try using ~1 to switch PLATFORMs when using it!)/",
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; }
(4), "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_144_0"
);
80
        msgnextloc(
Face J* (By the way,Delay 11 we can only jump three tiles high.)Wait for input
"\\EJ* (By the way^1, we can only jump three tiles high.)/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_145_0"
);
81
        msgnextloc(
Face K* (I,Delay 11 um,Delay 11 counted.)Wait for inputClose Message
"\\EK* (I^1, um^1, counted.)/%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_146_0"
);
82
        d_make();
83
    }
84
    else
85
    {
86
        if (readanyway)
87
        {
88
            
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("no_name");
89
            msgsetloc(0, 
* ("This is a special area in the sign's hair for reading it twice or more.")Wait for input
"* (\"This is a special area in the sign's hair for reading it twice or more.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_151_0"
);
90
            msgnextloc(
* ("It's floral-scented,Delay 11 and remember,Delay 11 sniffing is free.")Wait for input
"* (\"It's floral-scented^1, and remember^1, sniffing is free.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_152_0"
);
91
            
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", "n");
92
            msgnextloc(
Face n* EVERYTHING in this stupid castle is already FLORAL SCENTED!Wait for input
"\\En* EVERYTHING in this stupid castle is already FLORAL SCENTED!/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_154_0"
);
93
            
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "K");
94
            msgnextloc(
Face K* Dude,Delay 11 don't be an anti-smeller.Delay 11 It's FREE sniffs.Wait for inputClose Message
"\\EK* Dude^1, don't be an anti-smeller^1. It's FREE sniffs./%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_156_0"
);
95
        }
96
        else
97
        {
98
            readanyway = true;
99
            
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("no_name");
100
            msgsetloc(0, 
* (The sign says...)Wait for input
"* (The sign says...)/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_160_0"
);
101
            msgnextloc(
* ("C'mon,Delay 11 Kris.Delay 11 The true clue was friendship.Delay 11 Ask Ralsei.")Wait for input
"* (\"C'mon^1, Kris^1. The true clue was friendship^1. Ask Ralsei.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_161_0"
);
102
            msgnextloc(
* ("Or his grass will be green with envy.")Wait for input
"* (\"Or his grass will be green with envy.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_162_0"
);
103
            
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", "l");
104
            msgnextloc(
Face l* Are you two DONE reading the sign yet?Wait for input
"\\El* Are you two DONE reading the sign yet?/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_164_0"
);
105
            
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "2");
106
            msgnextloc(
Face 2* Nah.Delay 11 We rule at not reading things we're looking at.Wait for inputClose Message
"\\E2* Nah^1. We rule at not reading things we're looking at./%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_166_0"
);
107
        }
108
        d_make();
109
    }
110
});
111
npc_sign_right = scr_makenpc_fromasset(findsprite(spr_dw_fcastle_right_puzzle_signery, "NPCs", c_lime));
112
npc_sign_right.marker.image_blend = c_white;
113
npc_sign_right.cantalk = 1;
114
npc_sign_right.marker.reflect_jump_y = 4;
115
with (npc_sign_right)
116
{
117
    
scr_platswap_init
scr_platswap_init

function
scr_platswap_init(arg0 = undefined, arg1 = true)
{ if (!instance_exists(obj_platswap)) return -4; if (!instance_exists(obj_platswap_helper)) instance_create(0, 0, obj_platswap_helper); var _helper = 658; if (arg0 == undefined) { ignore_yorigin = 0; if (!variable_instance_exists(id, "force_yplat")) force_yplat = false; with (_helper) init_platswap(other.id, arg1); return _helper; } if (instance_exists(arg0)) { with (arg0) { if (!variable_instance_exists(id, "force_yplat")) force_yplat = false; ignore_yorigin = 0; with (_helper) init_platswap(arg0.id, arg1); return _helper; } } } function scr_platswap_init_alt(arg0 = id, arg1 = true) { if (!instance_exists(obj_platswap)) return -4; if (!instance_exists(obj_platswap_helper)) instance_create(0, 0, obj_platswap_helper); if (instance_exists(arg0)) { with (arg0) { ignore_yorigin = 1; if (!variable_instance_exists(id, "force_yplat")) force_yplat = false; with (_helper) init_platswap(other.id, arg1); return _helper; } } } function scr_plat_make_pauseable(arg0 = id) { if (!instance_exists(obj_platswap)) return -4; if (!instance_exists(obj_plat_pausing_helper)) instance_create(0, 0, obj_plat_pausing_helper); with (obj_plat_pausing_helper) add_object(arg0); }
(self, false);
118
    remx = x;
119
    var signery_state = 0;
120
    if (scr_flag_get_ext(other._ROOM_FLAG, other._BIT_SIGNERY_LEFT, 1))
121
        signery_state = -1;
122
    else if (scr_flag_get_ext(other._ROOM_FLAG, other._BIT_SIGNERY_RIGHT, 1))
123
        signery_state = 1;
124
    marker.visible = (global.flag[1862] == 0 || global.flag[1862] == 3) && signery_state > 0;
125
    if (!marker.visible)
126
    {
127
        scr_delay_var("x", x + 1000, 3);
128
        with (marker)
129
            scr_delay_var("visible", true, 3);
130
    }
131
}
132
scr_setnpclogic
scr_setnpclogic

function
scr_setnpclogic(arg0, arg1, arg2)
{ if (arg0 == -4) {
scr_debug_print("Failed to add NPC logic");
exit; } if (arg0.marker.sprite_index == spr_debug_40x40) arg0.marker.visible = 0; with (instance_create(0, 0, obj_npc_wrapper)) { if (variable_struct_exists(arg1, "animspeed")) animspeed = arg1.animspeed; if (variable_struct_exists(arg1, "typer")) typer = arg1.typer; if (variable_struct_exists(arg1, "alwaysanimate")) alwaysanimate = arg1.alwaysanimate; npc = arg0; if (!variable_instance_exists(npc.id, "dialogue_side")) npc.dialogue_side = -1; setdialogue = arg2; choices = []; for (var i = 3; i < argument_count; i++) array_push(choices, argument[i]); } }
(npc_sign_right, {}, function(arg0)
133
{
134
    if (!npc_sign_right.cantalk)
135
        return -1;
136
    if (global.flag[1458] > 0)
137
    {
138
        snd_play_flowery(15);
139
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("no_name");
140
        msgsetloc(0, 
* ("A sign of Flowery's face.Delay 11 Perfect for Raly's room.")Wait for input
"* (\"A sign of Flowery's face^1. Perfect for Raly's room.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_188_0"
);
141
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", "U");
142
        msgnextloc(
Face U* I don't think my room,Delay 11 needs this type of...Wait for input
"\\EU* I don't think my room^1, needs this type of.../", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_190_0"
);
143
        
scr_msgno_func
scr_msgno_func

function
scr_msgno_func(arg0, arg1, arg2 = 0, arg3 = 0, arg4 = 30, arg5 = -4)
{ var __watcher = instance_create_depth(0, 0, 0, obj_msgno_func); __watcher.msgno = arg0; __watcher.dothing = arg1; __watcher.when = arg2; __watcher.functiontime = arg3; __watcher.doomer = arg4; __watcher.target = arg5; return __watcher; } function scr_msgfunc(arg0, arg1 = 0, arg2 = 0, arg3 = 30, arg4 = -4) { var __watcher = instance_create_depth(0, 0, 0, obj_msgno_func); __watcher.msgno = global.msgno; __watcher.dothing = arg0; __watcher.when = arg1; __watcher.functiontime = arg2; __watcher.doomer = arg3; __watcher.target = arg4; return __watcher; }
(2, function()
144
        {
145
            with (obj_dw_fcastle_right_puzzle)
146
            {
147
                with (npc_sign_right.marker)
148
                    visible = 0;
149
                with (npc_sign_right.mysolid)
150
                    instance_destroy();
151
                with (npc_sign_right)
152
                {
153
                    issolid = 0;
154
                    cantalk = 0;
155
                }
156
                snd_play(snd_item);
157
                snd_play_flowery(678);
158
            }
159
            global.flag[1862] = 2;
160
        }, 1);
161
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "L");
162
        msgnextloc(
Face L* Gotta start somewhere,Delay 11 man.Wait for inputClose Message
"\\EL* Gotta start somewhere^1, man./%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_205_0"
);
163
    }
164
    else if (global.flag[710] == 2)
165
    {
166
        snd_play_flowery(15);
167
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("no_name");
168
        msgsetloc(0, 
* ("A sign of Flowery's face.Delay 11 Perfect for Raly's room.")Wait for input
"* (\"A sign of Flowery's face^1. Perfect for Raly's room.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_212_0"
);
169
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "2");
170
        msgnextloc(
Face 2* Kinda got a point...Wait for input
"\\E2* Kinda got a point.../", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_214_0"
);
171
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", "Q");
172
        msgnextloc(
Face Q* My room already has enough,Delay 11 thank you.Wait for input
"\\EQ* My room already has enough^1, thank you./", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_216_0"
);
173
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "0");
174
        msgnextloc(
Face 0* Huh...Delay 11 'k then.Wait for input
"\\E0* Huh..^1. 'k then./", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_218_0"
);
175
        
scr_msgno_func
scr_msgno_func

function
scr_msgno_func(arg0, arg1, arg2 = 0, arg3 = 0, arg4 = 30, arg5 = -4)
{ var __watcher = instance_create_depth(0, 0, 0, obj_msgno_func); __watcher.msgno = arg0; __watcher.dothing = arg1; __watcher.when = arg2; __watcher.functiontime = arg3; __watcher.doomer = arg4; __watcher.target = arg5; return __watcher; } function scr_msgfunc(arg0, arg1 = 0, arg2 = 0, arg3 = 30, arg4 = -4) { var __watcher = instance_create_depth(0, 0, 0, obj_msgno_func); __watcher.msgno = global.msgno; __watcher.dothing = arg0; __watcher.when = arg1; __watcher.functiontime = arg2; __watcher.doomer = arg3; __watcher.target = arg4; return __watcher; }
(7, function()
176
        {
177
            with (obj_dw_fcastle_right_puzzle)
178
            {
179
                with (npc_sign_right.marker)
180
                    visible = 0;
181
                with (npc_sign_right.mysolid)
182
                    instance_destroy();
183
                with (npc_sign_right)
184
                {
185
                    issolid = 0;
186
                    cantalk = 0;
187
                }
188
                snd_play(snd_item);
189
                snd_play_flowery(678);
190
            }
191
            global.flag[1862] = 1;
192
        });
193
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("no_name", 0);
194
        msgnextloc(
* (Susie got the sign for your room.)Wait for inputClose Message
"* (Susie got the sign for your room.)/%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_235_0"
);
195
    }
196
    else if (arg0 || global.flag[1862] == 3)
197
    {
198
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("susie");
199
        msgsetloc(0, 
Face 0* (What's...Delay 11 in his room,Delay 11 anyway...?)Wait for inputClose Message
"\\E0* (What's..^1. in his room^1, anyway...?)/%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_240_0"
);
200
    }
201
    else
202
    {
203
        global.flag[1862] = 3;
204
        snd_play_flowery(15);
205
        
scr_speaker
scr_speaker

function
scr_speaker(arg0)
{ _speaker = arg0; global.typer = 5; if (global.darkzone == 1) global.typer = 6; if (global.fighting == 1) global.typer = 4; global.fc = 0; global.fe = 0; if (_speaker == "silent" && global.darkzone == 0) global.typer = 2; if (_speaker == "silent" && global.darkzone == 1) global.typer = 36; if (_speaker == "balloon" || _speaker == "enemy") global.typer = 50; if (_speaker == "sans") { global.typer = 14; global.fc = 6; } if (_speaker == "undyne" || _speaker == "und") { global.typer = 17; global.fc = 9; } if (_speaker == "temmie" || _speaker == "tem") global.typer = 21; if (_speaker == "jevil") global.typer = 35; if (_speaker == "catti") global.fc = 13; if (_speaker == "jockington" || _speaker == "joc") global.fc = 14; if (_speaker == "catty" || _speaker == "caddy") global.fc = 16; if (_speaker == "bratty" || _speaker == "bra") global.fc = 17; if (_speaker == "rouxls" || _speaker == "rou") global.fc = 18; if (_speaker == "burgerpants" || _speaker == "bur") global.fc = 19; if (_speaker == "spamton") { if (global.fighting == 0) global.typer = 66; else global.typer = 68; } if (_speaker == "sneo") global.typer = 67; if (_speaker == "susie" || _speaker == "sus") { global.fc = 1; global.typer = 10; if (global.darkzone == 1) { global.typer = 30; if (global.fighting == 1) global.typer = 47; } } if (_speaker == "ralsei" || _speaker == "ral") { global.fc = 2; global.typer = 31; if (global.fighting == 1) global.typer = 45; if (global.flag[30 ralsei_hat_state] == 1) global.typer = 6; } if (_speaker == "noelle" || _speaker == "noe") { global.fc = 3; if (global.darkzone == 0) global.typer = 12; else global.typer = 56; if (global.fighting == 1) global.typer = 59; } if (_speaker == "toriel" || _speaker == "tor") { global.fc = 4; global.typer = 7; } if (_speaker == "asgore" || _speaker == "asg") { global.fc = 10; global.typer = 18; if (global.darkzone == 1) global.typer = 89; } if (_speaker == "king" || _speaker == "kin") { global.fc = 20; global.typer = 33; if (global.chapter == 1) { if (global.plot < 235) global.typer = 36; ...
("no_name");
206
        msgsetloc(0, 
* ("A sign of Flowery's face.Delay 11 Perfect for Raly's room.")Wait for input
"* (\"A sign of Flowery's face^1. Perfect for Raly's room.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_245_0"
);
207
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", "l");
208
        msgnextloc(
Face l* My...Delay 11 my room doesn't need anything!Wait for input
"\\El* My..^1. my room doesn't need anything!/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_247_0"
);
209
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("no_name", 0);
210
        msgnextloc(
* ("Raly might disagree,Delay 11 but his room needs a little spice and flavor.")Wait for input
"* (\"Raly might disagree^1, but his room needs a little spice and flavor.\")/", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_249_0"
);
211
        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", "p");
212
        msgnextloc(
Face p* I'm,Delay 11 I'm not arguing with a sign!Wait for inputClose Message
"\\Ep* I'm^1, I'm not arguing with a sign!/%", "obj_dw_fcastle_right_puzzle_slash_Create_0_gml_251_0"
);
213
    }
214
});