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
|
.set LOCALID_PLAYER, 1
.set LOCALID_ATTENDANT, 2
.set LOCALID_OPPONENT, 3
FallarborTown_BattleTentBattleRoom_MapScripts:: @ 8200899
map_script MAP_SCRIPT_ON_TRANSITION, FallarborTown_BattleTentBattleRoom_OnTransition
map_script MAP_SCRIPT_ON_FRAME_TABLE, FallarborTown_BattleTentBattleRoom_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, FallarborTown_BattleTentBattleRoom_OnWarp
.byte 0
@ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
@ The player is represented instead by object event 1, which has the gfx id VAR_OBJ_GFX_ID_1
@ The opponent is represented by object event 3, which has the gfx id VAR_OBJ_GFX_ID_0
FallarborTown_BattleTentBattleRoom_OnTransition: @ 82008A9
call FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx
end
FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfx:: @ 82008AF
checkplayergender
compare VAR_RESULT, MALE
goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale
compare VAR_RESULT, FEMALE
goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale
return
FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxMale:: @ 82008C7
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
return
FallarborTown_BattleTentBattleRoom_EventScript_SetPlayerGfxFemale:: @ 82008D2
setvar VAR_OBJ_GFX_ID_1, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
setvar VAR_OBJ_GFX_ID_0, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
return
FallarborTown_BattleTentBattleRoom_OnFrame: @ 82008DD
map_script_2 VAR_TEMP_0, 0, FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom
.2byte 0
FallarborTown_BattleTentBattleRoom_EventScript_EnterRoom:: @ 82008E7
lockall
showobjectat LOCALID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter
waitmovement 0
frontier_get FRONTIER_DATA_BATTLE_NUM
compare VAR_RESULT, 0
goto_if_ne FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge
FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter:: @ 820090F
tower_setopponent
addobject LOCALID_OPPONENT
applymovement LOCALID_OPPONENT, FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter
waitmovement 0
applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_M_BELLY_DRUM
waitse
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_SetKOTourneyBegin, MSGBOX_DEFAULT
battletent_getopponentintro
msgbox gStringVar4, MSGBOX_DEFAULT
waitmessage
call BattleFrontier_BattleArenaBattleRoom_EventScript_DoArenaBattle
switch VAR_RESULT
case 1, FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent
applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_M_SNORE
waitse
waitmovement 0
fallarbortent_getopponentname
msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsOpponent, MSGBOX_DEFAULT
FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost:: @ 820097E
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
special LoadPlayerParty
warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
FallarborTown_BattleTentBattleRoom_EventScript_DefeatedOpponent:: @ 820099C
applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantJump
playse SE_BANG
waitse
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_WinnerIsPlayer, MSGBOX_DEFAULT
closemessage
FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum:: @ 82009B3
frontier_get FRONTIER_DATA_BATTLE_NUM
addvar VAR_RESULT, 1
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
switch VAR_RESULT
case 3, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon
applymovement LOCALID_OPPONENT, FallarborTown_BattleTentBattleRoom_Movement_OpponentExit
waitmovement 0
removeobject LOCALID_OPPONENT
applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
msgbox BattleFrontier_BattleArenaBattleRoom_Text_MonsWillBeRestored, MSGBOX_DEFAULT
special LoadPlayerParty
special SavePlayerParty
frontier_setpartyorder FRONTIER_PARTY_SIZE
playfanfare MUS_HEAL
waitfanfare
special HealPlayerParty
FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge:: @ 8200A2A
frontier_get FRONTIER_DATA_BATTLE_NUM
compare VAR_RESULT, 1
call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent
compare VAR_RESULT, 2
call_if_eq FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent
multichoice 20, 6, MULTI_GO_ON_REST_RETIRE, 1
switch VAR_RESULT
case 0, FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge
case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge
case 2, FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge
FallarborTown_BattleTentBattleRoom_EventScript_AskPauseChallenge:: @ 8200A78
msgbox BattleFrontier_BattleArenaBattleRoom_Text_SaveAndShutDown, MSGBOX_YESNO
switch VAR_RESULT
case NO, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
case YES, FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge
case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
FallarborTown_BattleTentBattleRoom_EventScript_AskRetireChallenge:: @ 8200AA6
message BattleFrontier_BattleArenaBattleRoom_Text_RetireFromChallenge
waitmessage
multichoicedefault 20, 8, MULTI_YESNO, 1, 0
switch VAR_RESULT
case 1, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
case 0, FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyLost
case MULTI_B_PRESSED, FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
FallarborTown_BattleTentBattleRoom_EventScript_ContinueChallenge:: @ 8200AD8
closemessage
applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos
waitmovement 0
applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle
waitmovement 0
goto FallarborTown_BattleTentBattleRoom_EventScript_NextOpponentEnter
waitstate
FallarborTown_BattleTentBattleRoom_EventScript_WarpToLobbyWon:: @ 8200AF3
delay 60
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
special LoadPlayerParty
warp MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY, 255, 6, 6
waitstate
@ Unreachable code block? The flow into the next block also doesnt make sense
arena_get ARENA_DATA_WIN_STREAK
compare VAR_RESULT, MAX_STREAK
goto_if_eq FallarborTown_BattleTentBattleRoom_EventScript_IncrementBattleNum
addvar VAR_RESULT, 1
arena_set ARENA_DATA_WIN_STREAK, VAR_RESULT
@ See above
FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor2ndOpponent:: @ 8200B43
message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor2ndOpponent
waitmessage
return
FallarborTown_BattleTentBattleRoom_EventScript_ReadyFor3rdOpponent:: @ 8200B4A
message BattleFrontier_BattleArenaBattleRoom_Text_ReadyFor3rdOpponent
waitmessage
return
FallarborTown_BattleTentBattleRoom_EventScript_PauseChallenge:: @ 8200B51
message BattleFrontier_BattleArenaBattleRoom_Text_SavingPleaseWait
waitmessage
fallarbortent_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
fadescreen FADE_TO_BLACK
frontier_reset
end
FallarborTown_BattleTentBattleRoom_EventScript_ResumeChallenge:: @ 8200B73
applymovement LOCALID_ATTENDANT, FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer
waitmovement 0
applymovement LOCALID_PLAYER, FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant
waitmovement 0
goto FallarborTown_BattleTentBattleRoom_EventScript_AskContinueChallenge
end
FallarborTown_BattleTentBattleRoom_Movement_PlayerEnter: @ 8200B8D
walk_up
walk_up
walk_up
walk_in_place_fastest_right
step_end
FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceBattle: @ 8200B92
walk_in_place_fastest_right
step_end
FallarborTown_BattleTentBattleRoom_Movement_PlayerFaceAttendant: @ 8200B94
walk_in_place_fastest_left
step_end
FallarborTown_BattleTentBattleRoom_Movement_OpponentEnter: @ 8200B96
walk_down
walk_down
walk_down
walk_down
walk_in_place_fastest_left
step_end
@ Unused
FallarborTown_BattleTentBattleRoom_Movement_OpponentStepForward: @ 8200B9C
walk_left
step_end
FallarborTown_BattleTentBattleRoom_Movement_OpponentExit: @ 8200B9E
walk_up
walk_up
walk_up
walk_up
step_end
FallarborTown_BattleTentBattleRoom_Movement_AttendantJump: @ 8200BA3
disable_jump_landing_ground_effect
jump_in_place_down
step_end
FallarborTown_BattleTentBattleRoom_Movement_AttendantApproachPlayer: @ 8200BA6
walk_down
walk_down
walk_down
walk_in_place_fastest_right
step_end
FallarborTown_BattleTentBattleRoom_Movement_AttendantReturnToPos: @ 8200BAB
walk_up
walk_up
walk_up
walk_in_place_fastest_down
step_end
FallarborTown_BattleTentBattleRoom_OnWarp: @ 8200BB0
map_script_2 VAR_TEMP_1, 0, FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects
.2byte 0
FallarborTown_BattleTentBattleRoom_EventScript_SetUpObjects:: @ 8200BBA
hideobjectat OBJ_EVENT_ID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
hideobjectat LOCALID_PLAYER, MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM
removeobject LOCALID_OPPONENT
setvar VAR_TEMP_1, 1
end
|