-
Notifications
You must be signed in to change notification settings - Fork 848
/
Copy pathVermilionPort.asm
315 lines (268 loc) · 7.16 KB
/
VermilionPort.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
object_const_def
const VERMILIONPORT_SAILOR1
const VERMILIONPORT_SAILOR2
const VERMILIONPORT_SUPER_NERD
VermilionPort_MapScripts:
def_scene_scripts
scene_script VermilionPortNoopScene, SCENE_VERMILIONPORT_ASK_ENTER_SHIP
scene_script VermilionPortLeaveShipScene, SCENE_VERMILIONPORT_LEAVE_SHIP
def_callbacks
callback MAPCALLBACK_NEWMAP, VermilionPortFlypointCallback
VermilionPortNoopScene:
end
VermilionPortLeaveShipScene:
sdefer VermilionPortLeaveShipScript
end
VermilionPortFlypointCallback:
setflag ENGINE_FLYPOINT_VERMILION
endcallback
VermilionPortLeaveShipScript:
applymovement PLAYER, VermilionPortLeaveFastShipMovement
appear VERMILIONPORT_SAILOR1
setscene SCENE_VERMILIONPORT_ASK_ENTER_SHIP
setevent EVENT_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN_TWIN_1
setevent EVENT_FAST_SHIP_CABINS_SE_SSE_GENTLEMAN
setevent EVENT_FAST_SHIP_PASSENGERS_FIRST_TRIP
clearevent EVENT_OLIVINE_PORT_PASSAGE_POKEFAN_M
setevent EVENT_FAST_SHIP_FIRST_TIME
setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
blackoutmod VERMILION_CITY
end
VermilionPortSailorAtGangwayScript:
faceplayer
opentext
checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
iftrue VermilionPortAlreadyRodeScript
writetext VermilionPortDepartingText
waitbutton
closetext
turnobject VERMILIONPORT_SAILOR1, DOWN
pause 10
playsound SFX_EXIT_BUILDING
disappear VERMILIONPORT_SAILOR1
waitsfx
applymovement PLAYER, VermilionPortEnterFastShipMovement
playsound SFX_EXIT_BUILDING
special FadeOutToWhite
waitsfx
setevent EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
clearevent EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
clearevent EVENT_BEAT_POKEMANIAC_ETHAN
clearevent EVENT_BEAT_BURGLAR_COREY
clearevent EVENT_BEAT_BUG_CATCHER_KEN
clearevent EVENT_BEAT_GUITARIST_CLYDE
clearevent EVENT_BEAT_POKEFANM_JEREMY
clearevent EVENT_BEAT_POKEFANF_GEORGIA
clearevent EVENT_BEAT_SAILOR_KENNETH
clearevent EVENT_BEAT_TEACHER_SHIRLEY
clearevent EVENT_BEAT_SCHOOLBOY_NATE
clearevent EVENT_BEAT_SCHOOLBOY_RICKY
setevent EVENT_FAST_SHIP_DESTINATION_OLIVINE
appear VERMILIONPORT_SAILOR1
setmapscene FAST_SHIP_1F, SCENE_FASTSHIP1F_ENTER_SHIP
warp FAST_SHIP_1F, 25, 1
end
VermilionPortAlreadyRodeScript:
writetext VermilionPortCantBoardText
waitbutton
closetext
end
VermilionPortWalkUpToShipScript:
turnobject VERMILIONPORT_SAILOR2, RIGHT
checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
iftrue .skip
checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2
iftrue .skip
turnobject PLAYER, LEFT
opentext
readvar VAR_WEEKDAY
ifequal MONDAY, .NextShipWednesday
ifequal TUESDAY, .NextShipWednesday
ifequal THURSDAY, .NextShipSunday
ifequal FRIDAY, .NextShipSunday
ifequal SATURDAY, .NextShipSunday
writetext VermilionPortAskBoardingText
yesorno
iffalse VermilionPortNotRidingMoveAwayScript
writetext VermilionPortAskTicketText
promptbutton
checkitem S_S_TICKET
iffalse .NoTicket
writetext VermilionPortSSTicketText
waitbutton
closetext
setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2
applymovement PLAYER, VermilionPortApproachFastShipMovement
sjump VermilionPortSailorAtGangwayScript
.NoTicket:
writetext VermilionPortNoTicketText
waitbutton
closetext
applymovement PLAYER, VermilionPortCannotEnterFastShipMovement
end
.NextShipWednesday:
writetext VermilionPortSailWednesdayText
waitbutton
closetext
applymovement PLAYER, VermilionPortCannotEnterFastShipMovement
end
.NextShipSunday:
writetext VermilionPortSailSundayText
waitbutton
closetext
applymovement PLAYER, VermilionPortCannotEnterFastShipMovement
end
.skip:
end
VermilionPortNotRidingScript:
writetext VermilionPortComeAgainText
waitbutton
closetext
end
VermilionPortNotRidingMoveAwayScript:
writetext VermilionPortComeAgainText
waitbutton
closetext
applymovement PLAYER, VermilionPortCannotEnterFastShipMovement
end
VermilionPortSailorScript:
faceplayer
opentext
checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
iftrue VermilionPortAlreadyRodeScript
readvar VAR_WEEKDAY
ifequal MONDAY, .NextShipWednesday
ifequal TUESDAY, .NextShipWednesday
ifequal THURSDAY, .NextShipSunday
ifequal FRIDAY, .NextShipSunday
ifequal SATURDAY, .NextShipSunday
writetext VermilionPortAskBoardingText
yesorno
iffalse VermilionPortNotRidingScript
writetext VermilionPortAskTicketText
promptbutton
checkitem S_S_TICKET
iffalse .NoTicket
writetext VermilionPortSSTicketText
waitbutton
closetext
setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2
applymovement PLAYER, VermilionPortApproachFastShipRightMovement
sjump VermilionPortSailorAtGangwayScript
.NoTicket:
writetext VermilionPortNoTicketText
waitbutton
closetext
end
.NextShipWednesday:
writetext VermilionPortSailWednesdayText
waitbutton
closetext
end
.NextShipSunday:
writetext VermilionPortSailSundayText
waitbutton
closetext
end
VermilionPortSuperNerdScript:
faceplayer
opentext
writetext VermilionPortSuperNerdText
waitbutton
closetext
end
VermilionPortHiddenIron:
hiddenitem IRON, EVENT_VERMILION_PORT_HIDDEN_IRON
VermilionPortEnterFastShipMovement:
step DOWN
step_end
VermilionPortLeaveFastShipMovement:
step UP
step_end
VermilionPortCannotEnterFastShipMovement:
step RIGHT
turn_head LEFT
step_end
VermilionPortApproachFastShipMovement:
step DOWN
step DOWN
step DOWN
step DOWN
step DOWN
step_end
VermilionPortApproachFastShipRightMovement:
step RIGHT
step DOWN
step DOWN
step DOWN
step DOWN
step DOWN
step DOWN
step_end
VermilionPortDepartingText:
text "We're departing"
line "soon. Please get"
cont "on board."
done
VermilionPortCantBoardText:
text "Sorry. You can't"
line "board now."
done
VermilionPortAskBoardingText:
text "Welcome to FAST"
line "SHIP S.S.AQUA."
para "Will you be board-"
line "ing today?"
done
VermilionPortAskTicketText:
text "May I see your"
line "S.S.TICKET?"
done
VermilionPortComeAgainText:
text "We hope to see you"
line "again!"
done
VermilionPortSSTicketText:
text "<PLAYER> flashed"
line "the S.S.TICKET."
para "That's it."
line "Thank you!"
done
VermilionPortNoTicketText:
text "<PLAYER> tried to"
line "show the S.S."
cont "TICKET…"
para "…But no TICKET!"
para "Sorry!"
line "You may board only"
para "if you have an"
line "S.S.TICKET."
done
VermilionPortSailWednesdayText:
text "The FAST SHIP will"
line "sail on Wednesday."
done
VermilionPortSailSundayText:
text "The FAST SHIP will"
line "sail next Sunday."
done
VermilionPortSuperNerdText:
text "You came from"
line "JOHTO?"
para "I hear many rare"
line "#MON live over"
cont "there."
done
VermilionPort_MapEvents:
db 0, 0 ; filler
def_warp_events
warp_event 9, 5, VERMILION_PORT_PASSAGE, 5
warp_event 7, 17, FAST_SHIP_1F, 1
def_coord_events
coord_event 7, 11, SCENE_VERMILIONPORT_ASK_ENTER_SHIP, VermilionPortWalkUpToShipScript
def_bg_events
bg_event 16, 13, BGEVENT_ITEM, VermilionPortHiddenIron
def_object_events
object_event 7, 17, SPRITE_SAILOR, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, VermilionPortSailorAtGangwayScript, EVENT_VERMILION_PORT_SAILOR_AT_GANGWAY
object_event 6, 11, SPRITE_SAILOR, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, VermilionPortSailorScript, -1
object_event 11, 11, SPRITE_SUPER_NERD, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, VermilionPortSuperNerdScript, -1