Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_dw_fcastle_top_ascent_Create_0

related scripts: Create_0 Draw_0Step_0Step_2

(view raw script w/o annotations or w/e)
1
if (global.entrance == 0)
2
    global.start_in_platmode = true;
3
layer_set_visible("DEBUG_ASSETS", 0);
4
layer_set_visible("NPCs", 0);
5
con = 0;
6
timer = 0;
7
init = 0;
8
ascent_con = 0;
9
can_reset = false;
10
draw_grayscale = false;
11
surf = -4;
12
killer_bullet = -4;
13
marker_manager = instance_create(0, 0, obj_plat_marker_sequence_manager);
14
PROGRESS_FLAG = 1844;
15
_INTRO_BIT = 0;
16
_SHURIKEN_BIT = 1;
17
_FREEWILL_BIT = 3;
18
_FALLBIT_1A = 16;
19
_FALLBIT_1B = 8;
20
_FALLBIT_2 = 9;
21
_FALLBIT_3A = 10;
22
_FALLBIT_3B = 11;
23
_FALLBIT_3C = 12;
24
_FALLBIT_4 = 13;
25
_CLEAR_BIT = 14;
26
if (
scr_debug
scr_debug

function
scr_debug()
{ return global.debug == 1; }
())
27
{
28
    if (global.tempflag[90] == 0.001)
29
    {
30
        global.tempflag[90] = 0;
31
        global.flag[PROGRESS_FLAG] = 0;
32
        global.facing = 1;
33
        global.start_in_platmode = false;
34
        with (obj_mainchara)
35
            setxy(12, 5716);
36
        with (obj_caterpillarchara)
37
        {
38
            if (name == "susie")
39
                setxy(obj_mainchara.x - 6, obj_mainchara.y - 16);
40
            else
41
                setxy(obj_mainchara.x - 2, obj_mainchara.y - 12);
42
            
scr_caterpillar_interpolate
scr_caterpillar_interpolate

function
scr_caterpillar_interpolate(arg0 = "none")
{ if (arg0 == "all") { with (obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else if (arg0 == "none") { if (object_index == obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else { with (obj_caterpillarchara) { if (name == arg0) scr_caterpillar_interpolate_old(); } } } function scr_caterinterp(arg0 = "none") {
scr_caterpillar_interpolate(arg0);
} function scr_caterpillar_interpolate_old() { var _newfacing = direction_to_object_bbox(id, 1200, true); remx[0] = obj_mainchara.x; remy[0] = obj_mainchara.y; facing[0] = _newfacing; for (var _iaia = target; _iaia > 0; _iaia -= 1) { remx[_iaia] = lerp(obj_mainchara.x, x + halign, _iaia / target); remy[_iaia] = lerp(obj_mainchara.y, y + valign, _iaia / target); facing[_iaia] = _newfacing; } }
(name);
43
        }
44
    }
45
    if (keyboard_check(ord("P")))
46
        global.tempflag[90] = 0.002;
47
    if (global.tempflag[90] == 0.002)
48
    {
49
        global.tempflag[90] = 0;
50
        scr_flag_set_ext(PROGRESS_FLAG, _FREEWILL_BIT, 0, 2);
51
        global.start_in_platmode = true;
52
    }
53
    if (global.tempflag[90] == 0.003)
54
    {
55
        global.tempflag[90] = 0;
56
        global.flag[PROGRESS_FLAG] = 0;
57
        scr_flag_set_ext(PROGRESS_FLAG, _FREEWILL_BIT, 1, 2);
58
        global.facing = 1;
59
        global.start_in_platmode = false;
60
        with (obj_mainchara)
61
            setxy(12, 5716);
62
        with (obj_caterpillarchara)
63
        {
64
            if (name == "susie")
65
                setxy(obj_mainchara.x - 6, obj_mainchara.y - 16);
66
            else
67
                setxy(obj_mainchara.x - 2, obj_mainchara.y - 12);
68
            
scr_caterpillar_interpolate
scr_caterpillar_interpolate

function
scr_caterpillar_interpolate(arg0 = "none")
{ if (arg0 == "all") { with (obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else if (arg0 == "none") { if (object_index == obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else { with (obj_caterpillarchara) { if (name == arg0) scr_caterpillar_interpolate_old(); } } } function scr_caterinterp(arg0 = "none") {
scr_caterpillar_interpolate(arg0);
} function scr_caterpillar_interpolate_old() { var _newfacing = direction_to_object_bbox(id, 1200, true); remx[0] = obj_mainchara.x; remy[0] = obj_mainchara.y; facing[0] = _newfacing; for (var _iaia = target; _iaia > 0; _iaia -= 1) { remx[_iaia] = lerp(obj_mainchara.x, x + halign, _iaia / target); remy[_iaia] = lerp(obj_mainchara.y, y + valign, _iaia / target); facing[_iaia] = _newfacing; } }
(name);
69
        }
70
    }
71
    if (global.tempflag[90] == 0.004)
72
    {
73
        global.tempflag[90] = 0;
74
        global.start_in_platmode = true;
75
        scr_flag_set_ext(PROGRESS_FLAG, _FREEWILL_BIT, 3, 2);
76
    }
77
}
78
79
get_room_progress = function()
80
{
81
    if (scr_flag_get_ext(PROGRESS_FLAG, _CLEAR_BIT))
82
        return 9;
83
    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_4))
84
        return 8;
85
    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_3A))
86
        return 5;
87
    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_2))
88
        return 3;
89
    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_1A))
90
        return 1;
91
    return 0;
92
};
93
94
wallmarker = -4;
95
introcon = scr_flag_get_ext(PROGRESS_FLAG, _INTRO_BIT, 2);
96
shuricon = scr_flag_get_ext(PROGRESS_FLAG, _SHURIKEN_BIT, 3);
97
furthest_room_progress = get_room_progress();
98
current_room_progress = 0;
99
waiting_for_free_will_scene = false;
100
wants_to_reveal_wall = false;
101
failcounter = scr_flag_get_ext(PROGRESS_FLAG, _FREEWILL_BIT, 2);
102
103
failed_jump_loops = function()
104
{
105
    if (!d_plat_exists(0))
106
    {
107
        if (failcounter > 2)
108
        {
109
            if (current_room_progress >= furthest_room_progress && current_room_progress < 9)
110
            {
111
                if (current_room_progress >= 8)
112
                {
113
                    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_4) == 0)
114
                    {
115
                        scr_flag_set_ext(PROGRESS_FLAG, _FALLBIT_4, 1);
116
                        
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");
117
                        msgsetsubloc(0, 
Face k* Damn,Delay 11 close!Delay 11 Be ready to hit the flower,Delay 11 k,Delay 11 Kris?
"\\Ek* Damn^1, close^1! Be ready to hit the flower^1, k^1, Kris?", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_89_0"
);
118
                        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("ralsei", "1");
119
                        msgnextsubloc(
Face 1* (Susie telling Kris what to do...)
"\\E1* (Susie telling Kris what to do...)", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_91_0"
);
120
                        d_make_plat(0, 0);
121
                    }
122
                }
123
                else if (current_room_progress >= 5)
124
                {
125
                    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_3A) == 0)
126
                    {
127
                        scr_flag_set_ext(PROGRESS_FLAG, _FALLBIT_3A, 1);
128
                        
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");
129
                        msgsetsubloc(0, 
Face 2* We almost had it!
"\\E2* We almost had it!", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_98_0"
);
130
                        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "k");
131
                        msgnextsubloc(
Face k* Next time,Delay 11 right,Delay 11 Kris?
"\\Ek* Next time^1, right^1, Kris?", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_100_0"
);
132
                        d_make_plat(0, 0);
133
                    }
134
                    else if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_3B) == 0)
135
                    {
136
                        scr_flag_set_ext(PROGRESS_FLAG, _FALLBIT_3B, 1);
137
                        
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");
138
                        msgsetsubloc(0, 
Face K* I meant next next time.
"\\EK* I meant next next time.", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_105_0"
);
139
                        d_make_plat(0, 0);
140
                    }
141
                    else if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_3C) == 0)
142
                    {
143
                        scr_flag_set_ext(PROGRESS_FLAG, _FALLBIT_3C, 1);
144
                        var small_text = stringsetloc(
Hey, shut up!
"Hey, shut up!", "obj_dw_fcastle_top_ascent_slash_Create_0_gml_110_0"
);
145
                        var sf = 
146
                        {
147
                            x: "mid",
148
                            y: "topmid"
149
                        };
150
                        if (global.lang == "ja")
151
                        {
152
                            sf = 
153
                            {
154
                                x: 224,
155
                                y: 12
156
                            };
157
                        }
158
                        
scr_smallface
scr_smallface

function
scr_smallface(arg0, arg1, arg2, arg3, arg4, arg5)
{
scr_smallface_reset(arg0);
global.smsprite[arg0] = spr_face_susie_alt; if (is_string(arg1)) { if (arg1 == "susie") global.smsprite[arg0] = spr_face_susie_alt; if (arg1 == "ralsei") global.smsprite[arg0] = spr_face_r_nohat; if (arg1 == "ralsei" && global.flag[1311]) global.smsprite[arg0] = spr_face_r_dark; if (arg1 == "lancer") global.smsprite[arg0] = spr_face_l0; if (arg1 == "noelle") global.smsprite[arg0] = spr_face_n_matome; if (arg1 == "noelle_cropped") global.smsprite[arg0] = spr_face_n_matome_cropped; if (arg1 == "queen") global.smsprite[arg0] =
scr_84_get_sprite("spr_face_queen");
if (arg1 == "rouxls") global.smsprite[arg0] = spr_face_rurus; if (arg1 == "berdly") global.smsprite[arg0] = spr_face_berdly_dark; if (arg1 == "rudy") global.smsprite[arg0] = spr_face_rudy; if (arg1 == "flowery") global.smsprite[arg0] = spr_face_flowery; if (arg1 == "toriel") global.smsprite[arg0] = spr_face_t0; if (arg1 == "opuppet") { global.smsprite[arg0] = spr_miniface_orange; global.smcolor[arg0] = c_orange; global.smshake[arg0] = 1; } if (arg1 == "sans") global.smsprite[arg0] = asset_get_index("spr_face_sans" + string(arg2)); var flower_list = ["orange", "aqua", "green", "seth", "blue", "yellow"]; for (var i = 0; i < array_length(flower_list); i++) { if (arg1 != flower_list[i]) continue; global.smsprite[arg0] = spr_empty; break; } if (arg1 == "orange") global.smcolor[arg0] = #FFAC87; if (arg1 == "aqua") global.smcolor[arg0] = #84F9FF; if (arg1 == "green") global.smcolor[arg0] = #AEFFBC; if (arg1 == "seth") global.smcolor[arg0] = #E2A8FC; if (arg1 == "blue") global.smcolor[arg0] = #86A7FF; if (arg1 == "yellow") global.smcolor[arg0] = #FFF8A1; if (arg1 == "none" || arg1 == "empty") global.smsprite[arg0] = spr_empty; } else { global.smsprite[arg0] = arg1; if (arg1 == 0) global.smsprite[arg0] = spr_empty; } global.smimage[arg0] = arg2; if (is_string(arg3)) { if (global.fighting == 1) { if (arg3 == "left") global.smxx[arg0] = 60; if (arg3 == "leftmid") global.smxx[arg0] = 160; if (arg3 == "mid" || arg3 == "middle") global.smxx[arg0] = 260; if (arg3 == "rightmid") global.smxx[arg0] = 360; if (arg3 == "right") global.smxx[arg0] = 460; } else { if (arg3 == "left") global.smxx[arg0] = 70; if (arg3 == "leftmid") global.smxx[arg0] = 160; if (arg3 == "mid" || arg3 == "middle") global.smxx[arg0] = 260; if (arg3 == "rightmid") global.smxx[arg0] = 360; if (arg3 == "right") global.smxx[arg0] = 400; } } else { global.smxx[arg0] = arg3; } ...
(0, 35, 0, sf.x, sf.y, small_text);
159
                        
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");
160
                        msgsetsubloc(0, 
Face G* She meant next next next time.Mini text 0
"\\EG* She meant next next next time.\\f0", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_114_0"
);
161
                        d_make_plat(0, 0);
162
                    }
163
                }
164
                else if (current_room_progress >= 3)
165
                {
166
                    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_2) == 0)
167
                    {
168
                        scr_flag_set_ext(PROGRESS_FLAG, _FALLBIT_2, 1);
169
                        
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");
170
                        msgsetsubloc(0, 
Face 2* We got further that time!
"\\E2* We got further that time!", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_122_0"
);
171
                        
scr_anyface_next
scr_anyface_next

function
scr_anyface_next(arg0, arg1)
{ global.msgno++;
scr_anyface(arg0, global.msgno, arg1);
}
("susie", "9");
172
                        msgnextsubloc(
Face 9* Yeah,Delay 11 should be a piece of cake!
"\\E9* Yeah^1, should be a piece of cake!", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_124_0"
);
173
                        d_make_plat(0, 0);
174
                    }
175
                }
176
                else if (current_room_progress >= 1)
177
                {
178
                    if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_1A) == 0)
179
                    {
180
                        scr_flag_set_ext(PROGRESS_FLAG, _FALLBIT_1A, 1);
181
                        
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");
182
                        msgsetsubloc(0, 
Face k* Kris,Delay 11 you'll get it.Delay 11 Don't worry.
"\\Ek* Kris^1, you'll get it^1. Don't worry.", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_131_0"
);
183
                        d_make_plat(0, 0);
184
                    }
185
                    else if (scr_flag_get_ext(PROGRESS_FLAG, _FALLBIT_1B) == 0)
186
                    {
187
                        scr_flag_set_ext(PROGRESS_FLAG, _FALLBIT_1B, 1);
188
                        
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");
189
                        msgsetsubloc(0, 
Face 1* (Do it for Susie,Delay 11 Kris!)
"\\E1* (Do it for Susie^1, Kris!)", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_136_0"
);
190
                        d_make_plat(0, 0);
191
                    }
192
                }
193
                furthest_room_progress = current_room_progress;
194
            }
195
        }
196
        else if (!waiting_for_free_will_scene)
197
        {
198
            failcounter++;
199
            if (failcounter == 1)
200
            {
201
                
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");
202
                msgsetsubloc(0, 
Face E* Well,Delay 11 this is a tad difficult...
"\\EE* Well^1, this is a tad difficult...", (global.lang == "ja") ? stringset("&\t\t\t") : stringset("&"), "obj_dw_fcastle_top_ascent_slash_Create_0_gml_147_0"
);
203
                d_make_plat(0, 1);
204
                scr_flag_set_ext(PROGRESS_FLAG, _FREEWILL_BIT, 1, 2);
205
            }
206
            if (failcounter >= 2)
207
            {
208
                failcounter = 2;
209
                waiting_for_free_will_scene = true;
210
                scr_flag_set_ext(PROGRESS_FLAG, _FREEWILL_BIT, 2, 2);
211
            }
212
        }
213
        global.flag[1901] = global.flag[1901] + 1;
214
        if (global.flag[1901] >= 10 && global.flag[1902] == 0 && failcounter >= 3)
215
            wants_to_reveal_wall = true;
216
    }
217
    current_room_progress = 0;
218
};
219
220
reset_all_stage_elements = function()
221
{
222
    if (can_reset)
223
    {
224
        can_reset = 0;
225
        ascent_con = 0;
226
        with (obj_plat_follower)
227
        {
228
            if (is_platform_mode == 3)
229
                drop_off_platform_mode();
230
        }
231
        with (obj_slashpusher)
232
        {
233
            if (autocloses)
234
            {
235
                closed_state = 0;
236
                su_act.blocked = true;
237
                sprite_index = spr_plat_slashpusher;
238
            }
239
            else if (strength < 15)
240
            {
241
                closed_state = 1;
242
                su_act.blocked = false;
243
                sprite_index = spr_plat_slashpusher_semiclosed;
244
                with (su_act)
245
                    activetimer = 50;
246
            }
247
        }
248
        with (obj_plat_vinehook_small)
249
            recover();
250
    }
251
};
252
253
create_scary_bullet = function(arg0, arg1)
254
{
255
    with (instance_create(obj_plat_player.x + (arg0 * 500), obj_plat_player.y - 40, obj_plat_bulletred))
256
    {
257
        sprite_index = spr_plat_enm_shuriken_3d;
258
        image_speed = 1;
259
        hspeed = arg1;
260
        image_xscale = 1;
261
        image_yscale = 1;
262
        image_angle = 275 + (35 * arg0);
263
        lifetime = 300;
264
        timer = 0;
265
        neutralizable = true;
266
        neutralize_effect = false;
267
        damage = 60;
268
        with (obj_plat_cam_nudgezone)
269
        {
270
            if (nudgex != 0)
271
                x = xstart;
272
        }
273
        
274
        step_func = function()
275
        {
276
            timer++;
277
            with (
scr_afterimage_monochrome
scr_afterimage_monochrome

function
scr_afterimage_monochrome(arg0, arg1)
{ afterimage = instance_create(x, y, obj_afterimage_onecolor); afterimage.tint = arg0; afterimage.additive = arg1; afterimage.sprite_index = sprite_index; afterimage.image_index = image_index; afterimage.image_blend = image_blend; afterimage.image_speed = 0; afterimage.depth = depth; afterimage.image_xscale = image_xscale; afterimage.image_yscale = image_yscale; afterimage.image_angle = image_angle; return afterimage; } function scr_afterimage_monochrome_parallax(arg0, arg1, arg2) { afterimage = instance_create(x, y, obj_afterimage_onecolor_parallax); afterimage.tint = arg0; afterimage.additive = arg1; afterimage.sprite_index = sprite_index; afterimage.image_index = image_index; afterimage.image_blend = image_blend; afterimage.image_speed = 0; afterimage.depth = depth; afterimage.image_xscale = image_xscale; afterimage.image_yscale = image_yscale; afterimage.image_angle = image_angle; afterimage.parallax_depth = arg2; return afterimage; }
(255, true))
278
            {
279
                image_alpha = 0.1;
280
                image_blend = c_red;
281
            }
282
            if ((timer % 8) == 0 && 
scr_onscreen_tolerance
scr_onscreen_tolerance

function
scr_onscreen_tolerance(arg0, arg1)
{ obj = arg0; spacer = arg1; var __cx = camera_get_view_x(view_camera[0]); var __cy = camera_get_view_y(view_camera[0]); if ((obj.x + obj.sprite_width + spacer) < __cx || (obj.x - spacer) > (__cx + 640) || (obj.y + obj.sprite_height + spacer) < __cy || (obj.y - spacer) > (__cy + 480)) return false; else return true; }
(self, 100))
283
            {
284
                snd_stop(motor_upper_quick_bc);
285
                snd_play(motor_upper_quick_bc, lerp(0.3, 1, abs(x - obj_plat_player.x) / 200), 0.4);
286
            }
287
        };
288
    }
289
};
290
291
marker_manager.register_event(255, 2, failed_jump_loops);