1 |
event_inherited(); |
2 |
if (global.snowdin_flag[13] == 0) |
3 |
{ |
4 |
switch (scene) |
5 |
{ |
6 |
case 1: |
7 |
if (!instance_exists(obj_dialogue)) |
8 |
{ |
9 |
x_dest[0] = x; |
10 |
y_dest[0] = 320; |
11 |
axis_override = "y"; |
12 |
can_walk = true; |
13 |
if (npc_arrived) |
14 |
{ |
15 |
can_walk = false; |
16 |
scene++; |
17 |
} |
18 |
} |
19 |
break; |
20 |
case 2: |
21 |
scr_textscr_textfunction scr_text()
{
if (!instance_exists(obj_dialogue))
msg = instance_create(x, y, obj_dialogue);
} (); |
22 |
is_talking = true; |
23 |
with (msg) |
24 |
{ |
25 |
prt = false; |
26 |
sndfnt = 102; |
27 |
message[0] = "* Oh my goodness! Did you# get left behind?"; |
28 |
prt[0] = 333; |
29 |
} |
30 |
scene++; |
31 |
break; |
32 |
case 3: |
33 |
if (!instance_exists(obj_dialogue)) |
34 |
{ |
35 |
action_sprite = true; |
36 |
sprite_index = spr_martlet_book; |
37 |
image_index = 0; |
38 |
image_speed = 0.2; |
39 |
scene++; |
40 |
} |
41 |
break; |
42 |
case 4: |
43 |
if (image_index >= (image_number - 1)) |
44 |
{ |
45 |
image_speed = 0; |
46 |
action_sprite = false; |
47 |
down_sprite_idle = 875; |
48 |
scene++; |
49 |
} |
50 |
break; |
51 |
case 5: |
52 |
scr_textscr_textfunction scr_text()
{
if (!instance_exists(obj_dialogue))
msg = instance_create(x, y, obj_dialogue);
} (); |
53 |
is_talking = true; |
54 |
timer = 30; |
55 |
with (msg) |
56 |
{ |
57 |
prt = false; |
58 |
sndfnt = 102; |
59 |
message[0] = "* Might I ask your name?"; |
60 |
ch_msg = 0; |
61 |
ch[1] = "Clover"; |
62 |
message[1] = "* Hmm... not on the# resident list..."; |
63 |
message[2] = "* Ummm... see, this is# tough. I can't leave my# post."; |
64 |
message[3] = "* I'm supposed to wait# here until this bad# person comes."; |
65 |
message[4] = "* The troublemaker who# caused all this, ya# know?"; |
66 |
message[5] = "* But I can't just leave# you to find the others# alone!"; |
67 |
message[6] = "* You're a child! I could# never do that!"; |
68 |
prt[0] = 321; |
69 |
prt[1] = 338; |
70 |
prt[2] = 311; |
71 |
prt[3] = 317; |
72 |
prt[4] = 317; |
73 |
prt[5] = 338; |
74 |
prt[6] = 313; |
75 |
} |
76 |
scene++; |
77 |
break; |
78 |
case 6: |
79 |
if (global.dialogue_open || !scr_timerscr_timerfunction scr_timer()
{
if (timer > 0)
{
timer--;
return false;
}
else
{
return true;
}
} ()) |
80 |
exit; |
81 |
scene++; |
82 |
break; |
83 |
case 7: |
84 |
scr_textscr_textfunction scr_text()
{
if (!instance_exists(obj_dialogue))
msg = instance_create(x, y, obj_dialogue);
} (); |
85 |
is_talking = true; |
86 |
with (msg) |
87 |
{ |
88 |
sndfnt = 102; |
89 |
message[0] = "* Okay, how 'bout we# hurry and catch up# with the others..."; |
90 |
message[1] = "* Then I come back and# no one will ever# know!"; |
91 |
message[2] = "* Ready?"; |
92 |
prt[0] = 320; |
93 |
prt[1] = 321; |
94 |
prt[2] = 321; |
95 |
} |
96 |
if (!global.dialogue_open) |
97 |
scene++; |
98 |
break; |
99 |
case 8: |
100 |
if (!alarm[0]) |
101 |
alarm[0] = 20;gml_Object_obj_martlet_snowdin_21_geno_Alarm_0.gmlinstance_create(obj_pl.x, obj_pl.y, obj_heart_initiate_battle);
global.battle_enemy_name = "martlet genocide";
global.battling_enemy = false;
global.battling_boss = true;
global.battle_start = true;
global.current_room_overworld = room_get_name(room); |
102 |
scene++; |
103 |
break; |
104 |
} |
105 |
} |
106 |
if (global.snowdin_flag[13] == 3 && global.snowdin_flag[21] == 0) |
107 |
{ |
108 |
switch (scene) |
109 |
{ |
110 |
case 1: |
111 |
scr_textscr_textfunction scr_text()
{
if (!instance_exists(obj_dialogue))
msg = instance_create(x, y, obj_dialogue);
} (); |
112 |
is_talking = true; |
113 |
with (msg) |
114 |
{ |
115 |
sndfnt = 102; |
116 |
message[0] = "* I... I have no idea how# to handle this."; |
117 |
message[1] = "* ..."; |
118 |
message[2] = "* ASGORE would know what# to do."; |
119 |
message[3] = "* You should go talk to# him."; |
120 |
message[4] = "* There's a river up# ahead. A raft is docked# there."; |
121 |
message[5] = "* The current should lead# to Hotland."; |
122 |
message[6] = "* I'll meet up with you# once you get there."; |
123 |
message[7] = "* In the meantime...# I have work to# attend to."; |
124 |
message[8] = "* See you later."; |
125 |
prt[0] = 317; |
126 |
prt[1] = 317; |
127 |
prt[2] = 329; |
128 |
prt[3] = 321; |
129 |
prt[4] = 321; |
130 |
prt[5] = 338; |
131 |
prt[6] = 321; |
132 |
prt[7] = 321; |
133 |
prt[8] = 321; |
134 |
} |
135 |
if (!global.dialogue_open) |
136 |
scene++; |
137 |
break; |
138 |
case 2: |
139 |
scr_cutscene_start(); |
140 |
action_sprite = true; |
141 |
sprite_index = spr_martlet_fly_away; |
142 |
image_speed = 0.4; |
143 |
scene++; |
144 |
break; |
145 |
case 3: |
146 |
if (image_index >= (image_number - 1)) |
147 |
{ |
148 |
image_speed = 0; |
149 |
if (scr_camera_movescr_camera_movefunction scr_camera_move(arg0, arg1, arg2)
{
if (!instance_exists(obj_camera))
{
instance_create(__view_get(e__VW.Object, 0).x, __view_get(e__VW.Object, 0).y, obj_camera);
__view_set(e__VW.Object, 0, obj_camera);
}
else
{
obj_camera.x = __view_get(e__VW.Object, 0).x;
obj_camera.y = __view_get(e__VW.Object, 0).y;
__view_set(e__VW.Object, 0, obj_camera);
}
obj_camera.move = true;
obj_camera.xx = arg0;
obj_camera.yy = arg1;
obj_camera.spd = arg2;
if (abs(arg0 - obj_camera.x) <= arg2 && abs(arg1 - obj_camera.y) <= arg2)
return true;
else
return false;
}
enum e__VW
{
XView,
YView,
WView,
HView,
Angle,
HBorder,
VBorder,
HSpeed,
VSpeed,
Object,
Visible,
XPort,
YPort,
WPort,
HPort,
Camera,
SurfaceID
} (obj_pl.x, obj_pl.y, 2)) |
150 |
{ |
151 |
global.route = 1; |
152 |
global.snowdin_flag[14] = 1; |
153 |
scr_cutscene_end(); |
154 |
scr_radio_restart(); |
155 |
__view_set(e__VW.Object, 0, obj_pl); |
156 |
instance_destroy(); |
157 |
} |
158 |
} |
159 |
break; |
160 |
} |
161 |
} |
162 |
else if (global.snowdin_flag[13] == 3 && global.snowdin_flag[21] == 1) |
163 |
{ |
164 |
switch (scene) |
165 |
{ |
166 |
case 1: |
167 |
scr_textscr_textfunction scr_text()
{
if (!instance_exists(obj_dialogue))
msg = instance_create(x, y, obj_dialogue);
} (); |
168 |
is_talking = true; |
169 |
with (msg) |
170 |
{ |
171 |
sndfnt = 102; |
172 |
message[0] = "* You're not off the# hook, Clover."; |
173 |
message[1] = "* Unless you decide right# now to change your# ways..."; |
174 |
message[2] = "* The Royal Guard will# find you. "; |
175 |
message[3] = "* It could be me or# someone much, much# worse."; |
176 |
message[4] = "* How your life plays out# from this moment is up# to you."; |
177 |
message[5] = "* I don't know what the# humans taught you but..."; |
178 |
message[6] = "* A child your age# shouldn't be corrupted# by violence."; |
179 |
message[7] = "* Please... Please choose# wisely..."; |
180 |
prt[0] = 321; |
181 |
prt[1] = 338; |
182 |
prt[2] = 321; |
183 |
prt[3] = 317; |
184 |
prt[4] = 338; |
185 |
prt[5] = 338; |
186 |
prt[6] = 321; |
187 |
prt[7] = 317; |
188 |
} |
189 |
if (!global.dialogue_open) |
190 |
scene++; |
191 |
break; |
192 |
case 2: |
193 |
scr_cutscene_start(); |
194 |
action_sprite = true; |
195 |
sprite_index = spr_martlet_fly_away; |
196 |
image_speed = 0.4; |
197 |
scene++; |
198 |
break; |
199 |
case 3: |
200 |
if (image_index >= (image_number - 1)) |
201 |
{ |
202 |
image_speed = 0; |
203 |
if (scr_camera_movescr_camera_movefunction scr_camera_move(arg0, arg1, arg2)
{
if (!instance_exists(obj_camera))
{
instance_create(__view_get(e__VW.Object, 0).x, __view_get(e__VW.Object, 0).y, obj_camera);
__view_set(e__VW.Object, 0, obj_camera);
}
else
{
obj_camera.x = __view_get(e__VW.Object, 0).x;
obj_camera.y = __view_get(e__VW.Object, 0).y;
__view_set(e__VW.Object, 0, obj_camera);
}
obj_camera.move = true;
obj_camera.xx = arg0;
obj_camera.yy = arg1;
obj_camera.spd = arg2;
if (abs(arg0 - obj_camera.x) <= arg2 && abs(arg1 - obj_camera.y) <= arg2)
return true;
else
return false;
}
enum e__VW
{
XView,
YView,
WView,
HView,
Angle,
HBorder,
VBorder,
HSpeed,
VSpeed,
Object,
Visible,
XPort,
YPort,
WPort,
HPort,
Camera,
SurfaceID
} (obj_pl.x, obj_pl.y, 2)) |
204 |
{ |
205 |
global.snowdin_flag[14] = 1; |
206 |
scr_cutscene_end(); |
207 |
scr_radio_restart(); |
208 |
__view_set(e__VW.Object, 0, obj_pl); |
209 |
instance_destroy(); |
210 |
} |
211 |
} |
212 |
break; |
213 |
} |
214 |
} |
215 |
|
216 |
enum e__VW |
217 |
{ |
218 |
XView, |
219 |
YView, |
220 |
WView, |
221 |
HView, |
222 |
Angle, |
223 |
HBorder, |
224 |
VBorder, |
225 |
HSpeed, |
226 |
VSpeed, |
227 |
Object, |
228 |
Visible, |
229 |
XPort, |
230 |
YPort, |
231 |
WPort, |
232 |
HPort, |
233 |
Camera, |
234 |
SurfaceID |
235 |
} |