357 lines
15 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

.set LOCALID_ATTENDANT, 1
BattleFrontier_BattleDomePreBattleRoom_MapScripts::
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleDomePreBattleRoom_OnFrame
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleDomePreBattleRoom_OnWarp
.byte 0
BattleFrontier_BattleDomePreBattleRoom_OnWarp:
map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_TurnPlayerNorth
.2byte 0
BattleFrontier_BattleDomePreBattleRoom_EventScript_TurnPlayerNorth::
setvar VAR_TEMP_1, 1
turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
end
BattleFrontier_BattleDomePreBattleRoom_OnFrame:
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom
.2byte 0
BattleFrontier_BattleDomePreBattleRoom_EventScript_EnterRoom::
goto_if_eq VAR_0x8006, 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle
frontier_set FRONTIER_DATA_RECORD_DISABLED, TRUE
setvar VAR_TEMP_0, 1
applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnter
waitmovement 0
lockall
BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound::
call BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForNextRoundMessage
waitmessage
switch VAR_RESULT @ No case?
call BattleFrontier_EventScript_GetCantRecordBattle
goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord
multichoice 16, 0, MULTI_TOURNEY_WITH_RECORD, TRUE
switch VAR_RESULT
case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo
case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowTourneyTree
case 2, BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge
case 3, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRecordBattle
case 4, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskPauseChallenge
case 5, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge
case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRoundNoRecord::
multichoice 16, 2, MULTI_TOURNEY_NO_RECORD, TRUE
switch VAR_RESULT
case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo
case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowTourneyTree
case 2, BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge
case 3, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskPauseChallenge
case 4, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge
case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRecordBattle::
message BattleFrontier_BattleDomePreBattleRoom_Text_RecordLastMatch
waitmessage
multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE
switch VAR_RESULT
case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_RecordBattle
case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_RecordBattle::
call BattleFrontier_EventScript_SaveBattle
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_AskPauseChallenge::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_SaveAndQuitGame, MSGBOX_YESNO
switch VAR_RESULT
case NO, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
case YES, BattleFrontier_BattleDomePreBattleRoom_EventScript_PauseChallenge
case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_AskRetireChallenge::
message BattleFrontier_BattleDomePreBattleRoom_Text_RetireYourChallenge
waitmessage
multichoicedefault 20, 8, MULTI_YESNO, 1, FALSE
switch VAR_RESULT
case 1, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
case 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_RetireChallenge
case MULTI_B_PRESSED, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_RetireChallenge::
dome_resolvewinners DOME_PLAYER_RETIRED
goto BattleFrontier_BattleDomeBattleRoom_EventScript_WarpToLobbyLost
BattleFrontier_BattleDomePreBattleRoom_EventScript_PauseChallenge::
message BattleFrontier_BattleDomePreBattleRoom_Text_SavingDataPleaseWait
waitmessage
dome_save CHALLENGE_STATUS_PAUSED
playse SE_SAVE
waitse
fadescreen FADE_TO_BLACK
frontier_reset
end
BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowOpponentInfo::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_PlayersNextOpponentIsTrainer, MSGBOX_DEFAULT
fadescreen FADE_TO_BLACK
dome_showopponentinfo
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowTourneyTree::
call BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowRoundMessage
fadescreen FADE_TO_BLACK
dome_showtourneytree
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_ShowRoundMessage::
frontier_get FRONTIER_DATA_BATTLE_NUM
switch VAR_RESULT
case DOME_ROUND1, BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound1
case DOME_ROUND2, BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound2
case DOME_SEMIFINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInSemifinals
case DOME_FINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInFinals
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound1::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound1, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInRound2::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound2, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInSemifinals::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInSemifinals, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_TourneyInFinals::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInFinals, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ContinueChallenge::
message BattleFrontier_BattleDomePreBattleRoom_Text_ChooseTwoMons
waitmessage
waitbuttonpress
fadescreen FADE_TO_BLACK
call BattleFrontier_EventScript_GetLvlMode
copyvar VAR_0x8004, VAR_RESULT
setvar VAR_0x8005, DOME_BATTLE_PARTY_SIZE @ 2 of the 3 party mons are selected for battle
special ChoosePartyForBattleFrontier
waitstate
frontier_resetsketch
goto_if_eq VAR_RESULT, 0, BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
dome_set DOME_DATA_SELECTED_MONS
dome_reduceparty
dome_setopponent
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_RightThisWay, MSGBOX_DEFAULT
closemessage
applymovement LOCALID_ATTENDANT, BattleFrontier_BattleDomePreBattleRoom_Movement_AttendantMoveAside
waitmovement 0
applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerWalkToDoor
waitmovement 0
opendoor 5, 1
waitdooranim
applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnterDoor
waitmovement 0
closedoor 5, 1
waitdooranim
warp MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM, 9, 5
setvar VAR_TEMP_0, 0
waitstate
end
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForNextRoundMessage::
frontier_get FRONTIER_DATA_BATTLE_NUM
switch VAR_RESULT
case DOME_ROUND1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound1
case DOME_ROUND2, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound2
case DOME_SEMIFINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForSemifinals
case DOME_FINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForFinals
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound1::
message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound1
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForRound2::
message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound2
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForSemifinals::
message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForSemifinals
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForFinals::
frontier_getbrainstatus
switch VAR_RESULT
case FRONTIER_BRAIN_SILVER, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilver
case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGold
case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilver
case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGold
message BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForFinals
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilver::
goto_if_set FLAG_TEMP_1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilverShort
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilver, MSGBOX_DEFAULT
setflag FLAG_TEMP_1
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGold::
goto_if_set FLAG_TEMP_1, BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGoldShort
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGold, MSGBOX_DEFAULT
setflag FLAG_TEMP_1
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerSilverShort::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilverShort, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReadyForTuckerGoldShort::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGoldShort, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_ReturnFromBattle::
setvar VAR_TEMP_0, 1
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_RestoreMonsToFullHealth, MSGBOX_DEFAULT
special LoadPlayerParty
frontier_setpartyorder FRONTIER_PARTY_SIZE
playfanfare MUS_HEAL
waitfanfare
special HealPlayerParty
call BattleFrontier_BattleDomePreBattleRoom_EventScript_RoundCompleteMessage
fadescreen FADE_TO_BLACK
dome_showstatictourneytree
waitstate
goto BattleFrontier_BattleDomePreBattleRoom_EventScript_AskReadyForNextRound
BattleFrontier_BattleDomePreBattleRoom_EventScript_RoundCompleteMessage::
frontier_get FRONTIER_DATA_BATTLE_NUM
switch VAR_RESULT
case DOME_ROUND2, BattleFrontier_BattleDomePreBattleRoom_EventScript_Round1Complete
case DOME_SEMIFINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_Round2Complete
case DOME_FINAL, BattleFrontier_BattleDomePreBattleRoom_EventScript_SemifinalsComplete
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_Round1Complete::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_Round1Complete, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_Round2Complete::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_Round2Complete, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_EventScript_SemifinalsComplete::
msgbox BattleFrontier_BattleDomePreBattleRoom_Text_SemifinalsComplete, MSGBOX_DEFAULT
return
BattleFrontier_BattleDomePreBattleRoom_Movement_AttendantMoveAside:
walk_right
face_left
step_end
BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnter:
walk_up
walk_up
walk_up
walk_up
step_end
BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerWalkToDoor:
walk_up
step_end
BattleFrontier_BattleDomePreBattleRoom_Movement_PlayerEnterDoor:
walk_up
set_invisible
step_end
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound1:
.string "下面是你的第一场比赛。\n准备好了吗?$"
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForRound2:
.string "接下来是你的第二场比赛。\n准备好了吗?$"
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForSemifinals:
.string "下一场是半决赛。\n准备好了吗?$"
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForFinals:
.string "决赛即将开始。\n准备好了吗?$"
BattleFrontier_BattleDomePreBattleRoom_Text_ChooseTwoMons:
.string "请选择两只\n参赛的宝可梦$"
BattleFrontier_BattleDomePreBattleRoom_Text_RightThisWay:
.string "这边请。$"
BattleFrontier_BattleDomePreBattleRoom_Text_RestoreMonsToFullHealth:
.string "感谢你的参与。\p现在将你的宝可梦\n的体力全部回复。$"
BattleFrontier_BattleDomePreBattleRoom_Text_Round1Complete:
.string "第一场比赛\n已经结束。\p这些是成功晋级的队伍$"
BattleFrontier_BattleDomePreBattleRoom_Text_Round2Complete:
.string "第二场比赛\n已经结束。\p这些是成功晋级的队伍$"
BattleFrontier_BattleDomePreBattleRoom_Text_SemifinalsComplete:
.string "半决赛比赛\n已经结束。\p这些是成功晋级的队伍$"
@ Unused
BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForRound2:
.string "恭喜通过第一回合\n比赛。\p接下来是第二回合。\n准备好了吗?$"
@ Unused
BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForSemifinals:
.string "恭喜进入\n半决赛。\p四个强队在此相遇。\n准备好了吗?$"
@ Unused
BattleFrontier_BattleDomePreBattleRoom_Text_CongratsReadyForFinals:
.string "恭喜进入\n决赛。\p你是冠军候选之一。\n准备好了吗?$"
BattleFrontier_BattleDomePreBattleRoom_Text_PlayersNextOpponentIsTrainer:
.string "{PLAYER}的下一位对手是\n这位训练家。$"
BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound1:
.string "锦标赛进入第一回合!$"
BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInRound2:
.string "锦标赛进入第二回合!$"
BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInSemifinals:
.string "锦标赛进入半决赛!$"
BattleFrontier_BattleDomePreBattleRoom_Text_TourneyInFinals:
.string "锦标赛进入决赛!$"
BattleFrontier_BattleDomePreBattleRoom_Text_SaveAndQuitGame:
.string "是否要存档并\n退出游戏?$"
BattleFrontier_BattleDomePreBattleRoom_Text_RetireYourChallenge:
.string "是否要退出\n对战锦标赛?$"
BattleFrontier_BattleDomePreBattleRoom_Text_SavingDataPleaseWait:
.string "正在记录存档。\n请稍候。$"
BattleFrontier_BattleDomePreBattleRoom_Text_RecordLastMatch:
.string "我能记录你在开拓通行证的\n最后一次比赛吗?$"
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilver:
.string "恭喜你成功\n进入决赛!\p在决赛中你将挑战的人是——\n巨蛋超级巨星石南。\p准备好了吗$"
@ Identical to ReadyForTuckerSilver
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGold:
.string "恭喜你成功\n进入决赛!\p在决赛中你将挑战的人是——\n巨蛋超级巨星石南。\p准备好了吗$"
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerSilverShort:
.string "接下来的是你最后的对手石南。\n准备好了吗?$"
@ Identical again
BattleFrontier_BattleDomePreBattleRoom_Text_ReadyForTuckerGoldShort:
.string "接下来的是你最后的对手石南。\n准备好了吗?$"