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
|
ROUTE43GATE_TOLL EQU 1000
object_const_def
const ROUTE43GATE_OFFICER
const ROUTE43GATE_ROCKET1
const ROUTE43GATE_ROCKET2
Route43Gate_MapScripts:
def_scene_scripts
scene_script .RocketShakedown ; SCENE_DEFAULT
scene_script .DummyScene ; SCENE_FINISHED
def_callbacks
callback MAPCALLBACK_NEWMAP, .CheckIfRockets
.RocketShakedown:
sdefer .RocketTakeover
end
.DummyScene:
end
.CheckIfRockets:
checkevent EVENT_CLEARED_ROCKET_HIDEOUT
iftrue .NoRockets
setmapscene ROUTE_43, 0 ; Route 43 does not have a scene variable
endcallback
.NoRockets:
setmapscene ROUTE_43, 1 ; Route 43 does not have a scene variable
endcallback
.RocketTakeover:
playmusic MUSIC_ROCKET_ENCOUNTER
readvar VAR_FACING
ifequal DOWN, RocketScript_Southbound
ifequal UP, RocketScript_Northbound
setscene SCENE_FINISHED
end
RocketScript_Southbound:
applymovement PLAYER, PlayerStepsIn
showemote EMOTE_SHOCK, ROUTE43GATE_ROCKET2, 15
applymovement ROUTE43GATE_ROCKET2, Rocket2Script_BlocksYouSouth
turnobject ROUTE43GATE_ROCKET1, UP
showemote EMOTE_SHOCK, ROUTE43GATE_ROCKET1, 15
applymovement ROUTE43GATE_ROCKET1, Rocket1Script_BlocksYouSouth
opentext
writetext RocketText_TollFee
promptbutton
checkmoney YOUR_MONEY, ROUTE43GATE_TOLL - 1
ifequal HAVE_MORE, RocketScript_TollSouth
sjump RocketScript_YoureBrokeSouth
RocketScript_TollSouth:
takemoney YOUR_MONEY, ROUTE43GATE_TOLL
writetext RocketText_ThankYou
sjump RocketScript_ShakeDownSouth
RocketScript_YoureBrokeSouth:
takemoney YOUR_MONEY, ROUTE43GATE_TOLL
writetext RocketText_AllYouGot
sjump RocketScript_ShakeDownSouth
RocketScript_ShakeDownSouth:
promptbutton
closetext
applymovement ROUTE43GATE_ROCKET1, Rocket1Script_LetsYouPassSouth
applymovement ROUTE43GATE_ROCKET2, Rocket2Script_LetsYouPassSouth
setscene SCENE_FINISHED
special RestartMapMusic
end
RocketScript_Northbound:
showemote EMOTE_SHOCK, ROUTE43GATE_ROCKET1, 15
applymovement ROUTE43GATE_ROCKET1, Rocket1Script_BlocksYouNorth
turnobject ROUTE43GATE_ROCKET2, DOWN
showemote EMOTE_SHOCK, ROUTE43GATE_ROCKET2, 15
applymovement ROUTE43GATE_ROCKET2, Rocket2Script_BlocksYouNorth
opentext
writetext RocketText_TollFee
promptbutton
checkmoney YOUR_MONEY, ROUTE43GATE_TOLL - 1
ifequal HAVE_MORE, RocketScript_TollNorth
sjump RocketScript_YoureBrokeNorth
RocketScript_TollNorth:
takemoney YOUR_MONEY, ROUTE43GATE_TOLL
writetext RocketText_ThankYou
sjump RocketScript_ShakeDownNorth
RocketScript_YoureBrokeNorth:
takemoney YOUR_MONEY, ROUTE43GATE_TOLL
writetext RocketText_AllYouGot
sjump RocketScript_ShakeDownNorth
RocketScript_ShakeDownNorth:
promptbutton
closetext
applymovement ROUTE43GATE_ROCKET2, Rocket2Script_LetsYouPassNorth
applymovement ROUTE43GATE_ROCKET1, Rocket1Script_LetsYouPassNorth
setscene SCENE_FINISHED
special RestartMapMusic
end
RocketScript_MakingABundle:
jumptextfaceplayer RocketText_MakingABundle
OfficerScript_GuardWithSludgeBomb:
faceplayer
opentext
checkevent EVENT_GOT_TM36_SLUDGE_BOMB
iftrue .GotSludgeBomb
writetext OfficerText_FoundTM
promptbutton
verbosegiveitem TM_SLUDGE_BOMB
iffalse .NoRoomForSludgeBomb
setevent EVENT_GOT_TM36_SLUDGE_BOMB
closetext
end
.GotSludgeBomb:
writetext OfficerText_AvoidGrass
waitbutton
.NoRoomForSludgeBomb:
closetext
end
PlayerStepsIn:
step DOWN
step_end
Rocket1Script_BlocksYouSouth:
big_step UP
big_step UP
big_step RIGHT
big_step RIGHT
turn_head UP
step_end
Rocket1Script_LetsYouPassSouth:
big_step LEFT
big_step LEFT
big_step DOWN
big_step DOWN
step_end
Rocket1Script_BlocksYouNorth:
big_step DOWN
big_step DOWN
big_step RIGHT
big_step RIGHT
turn_head DOWN
step_end
Rocket1Script_LetsYouPassNorth:
big_step LEFT
big_step LEFT
big_step UP
big_step UP
turn_head DOWN
step_end
Rocket2Script_BlocksYouSouth:
big_step UP
big_step UP
big_step LEFT
big_step LEFT
turn_head UP
step_end
Rocket2Script_LetsYouPassSouth:
big_step RIGHT
big_step RIGHT
big_step DOWN
big_step DOWN
turn_head UP
step_end
Rocket2Script_BlocksYouNorth:
big_step DOWN
big_step DOWN
big_step LEFT
big_step LEFT
turn_head DOWN
step_end
Rocket2Script_LetsYouPassNorth:
big_step RIGHT
big_step RIGHT
big_step UP
big_step UP
step_end
RocketText_TollFee:
text "Hold it there,"
line "kiddo!"
para "The toll is ¥{d:ROUTE43GATE_TOLL}"
line "to go through."
done
RocketText_ThankYou:
text "Thank you very"
line "much!"
done
RocketText_AllYouGot:
text "Then pay what you"
line "have, please."
done
RocketText_MakingABundle:
text "He-he-he. We're"
line "making a bundle."
para "Everyone wants to"
line "see what's going"
para "on up at LAKE OF"
line "RAGE."
done
OfficerText_FoundTM:
text "I got chased from"
line "my post by these"
cont "thugs in black."
para "They left this"
line "behind."
para "It makes me uncom-"
line "fortable. Could"
cont "you take it away?"
done
Text_ReceivedTM30: ; unreferenced
text "<PLAYER> received"
line "TM30."
done
OfficerText_AvoidGrass:
text "Use this gate to"
line "avoid walking in"
cont "the grass."
done
Route43Gate_MapEvents:
db 0, 0 ; filler
def_warp_events
warp_event 4, 0, ROUTE_43, 4
warp_event 5, 0, ROUTE_43, 5
warp_event 4, 7, ROUTE_43, 3
warp_event 5, 7, ROUTE_43, 3
def_coord_events
def_bg_events
def_object_events
object_event 0, 4, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, OfficerScript_GuardWithSludgeBomb, EVENT_LAKE_OF_RAGE_CIVILIANS
object_event 2, 4, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RocketScript_MakingABundle, EVENT_ROUTE_43_GATE_ROCKETS
object_event 7, 4, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RocketScript_MakingABundle, EVENT_ROUTE_43_GATE_ROCKETS
|