2025-04-27 15:01:24 +08:00

269 lines
12 KiB
PHP
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
.set LOCALID_BRANDON, 2
BattleFrontier_BattlePyramidTop_MapScripts::
map_script MAP_SCRIPT_ON_RESUME, BattleFrontier_BattlePyramidTop_OnResume
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattlePyramidTop_OnFrame
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattlePyramidTop_OnTransition
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattlePyramidTop_OnWarp
.byte 0
BattleFrontier_BattlePyramidTop_OnTransition:
pyramid_updatelight 200, PYRAMID_LIGHT_SET_RADIUS
setvar VAR_TEMP_F, 1
end
BattleFrontier_BattlePyramidTop_OnWarp:
map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattlePyramidTop_EventScript_SetUpObjects
.2byte 0
BattleFrontier_BattlePyramidTop_EventScript_SetUpObjects::
setvar VAR_TEMP_1, 1
turnobject OBJ_EVENT_ID_PLAYER, DIR_NORTH
goto_if_ne VAR_TEMP_C, 0, BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects
setobjectxyperm LOCALID_BRANDON, 0, 0
BattleFrontier_BattlePyramidTop_EventScript_EndSetUpObjects::
end
BattleFrontier_BattlePyramidTop_OnResume:
frontier_getbrainstatus
goto_if_eq VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus
call BattleFrontier_EventScript_SetBrainObjectGfx
BattleFrontier_BattlePyramidTop_EventScript_CheckChallengeStatus::
copyvar VAR_TEMP_C, VAR_RESULT
frontier_getstatus
switch VAR_TEMP_CHALLENGE_STATUS
case 0, BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge
case CHALLENGE_STATUS_SAVING, BattleFrontier_BattlePyramid_EventScript_WarpToLobby
case CHALLENGE_STATUS_PAUSED, BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge
frontier_get FRONTIER_DATA_BATTLE_OUTCOME
goto_if_eq VAR_RESULT, B_OUTCOME_LOST, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
goto_if_eq VAR_RESULT, B_OUTCOME_DREW, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
goto_if_eq VAR_RESULT, B_OUTCOME_FORFEITED, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
end
BattleFrontier_BattlePyramidTop_OnFrame:
map_script_2 VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0, BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic
map_script_2 VAR_TEMP_F, 1, BattleFrontier_BattlePyramidTop_EventScript_ShowMapName
.2byte 0
BattleFrontier_BattlePyramidTop_EventScript_PlayPyramidMusic::
playbgm MUS_B_PYRAMID_TOP, FALSE
setvar VAR_TEMP_PLAYING_PYRAMID_MUSIC, 1
end
BattleFrontier_BattlePyramidTop_EventScript_ShowMapName::
special ShowMapNamePopup
setvar VAR_TEMP_F, 0
end
BattleFrontier_BattlePyramidTop_EventScript_ReadyChallenge::
pyramid_save CHALLENGE_STATUS_SAVING
special SavePlayerParty
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, 0
pyramid_settrainers
frontier_setpartyorder FRONTIER_PARTY_SIZE
setvar VAR_TEMP_F, 1
end
BattleFrontier_BattlePyramidTop_EventScript_Attendant::
lock
faceplayer
goto_if_ne VAR_TEMP_D, 0, BattleFrontier_BattlePyramidTop_EventScript_StepForwardWhenReady
goto_if_ne VAR_TEMP_C, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattlePyramidTop_EventScript_BrandonHereMoveAside
msgbox BattleFrontier_BattlePyramidTop_Text_ReachedSummitUpYouGo, MSGBOX_DEFAULT
closemessage
applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside
waitmovement 0
applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop
waitmovement 0
applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantBlockPath
waitmovement 0
message BattleFrontier_BattlePyramidTop_Text_PlayerConqueredPyramid
waitmessage
playfanfare MUS_OBTAIN_B_POINTS
waitfanfare
closemessage
BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon::
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
warp MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY, 7, 13
waitstate
end
BattleFrontier_BattlePyramidTop_EventScript_StepForwardWhenReady::
msgbox BattleFrontier_BattlePyramidTop_Text_StepForwardWhenReady, MSGBOX_DEFAULT
closemessage
end
BattleFrontier_BattlePyramidTop_EventScript_BrandonHereMoveAside::
msgbox BattleFrontier_BattlePyramidTop_Text_ChiefBeatYouHere, MSGBOX_DEFAULT
applymovement LOCALID_ATTENDANT, BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside
setvar VAR_TEMP_D, 1
closemessage
end
BattleFrontier_BattlePyramidTop_EventScript_BattleBrandon::
lockall
switch VAR_TEMP_C
case FRONTIER_BRAIN_GOLD, BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold
case FRONTIER_BRAIN_STREAK, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech
case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech
frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH
goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech
special SpawnCameraObject
applymovement OBJ_EVENT_ID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp
waitmovement 0
msgbox BattleFrontier_BattlePyramidTop_Text_ExplorationsAreGrandestAdventure, MSGBOX_DEFAULT
closemessage
frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH
applymovement LOCALID_BRANDON, BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer
waitmovement 0
msgbox BattleFrontier_BattlePyramidTop_Text_ImPyramidKingBrandon, MSGBOX_DEFAULT
goto BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver
end
BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardSilverSpeech::
applymovement LOCALID_BRANDON, BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer
waitmovement 0
BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonSilver::
msgbox BattleFrontier_BattlePyramidTop_Text_BringCourageToOurBattle, MSGBOX_DEFAULT
call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle
playbgm MUS_B_PYRAMID_TOP, FALSE
goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver
goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonSilver::
frontier_getsymbols
goto_if_ne VAR_RESULT, 0, BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon
msgbox BattleFrontier_BattlePyramidTop_Text_BrandonFrontierPassPlease, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
message BattleFrontier_BattlePyramidTop_Text_ReceivedBraveSymbol
waitmessage
waitfanfare
frontier_givesymbol
msgbox BattleFrontier_BattlePyramidTop_Text_LookForwardToNextMeeting, MSGBOX_DEFAULT
goto BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon
BattleFrontier_BattlePyramidTop_EventScript_BrandonIntroGold::
frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH
goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech
special SpawnCameraObject
applymovement OBJ_EVENT_ID_CAMERA, BattleFrontier_BattlePyramidTop_Movement_CameraPanUp
waitmovement 0
msgbox BattleFrontier_BattlePyramidTop_Text_BrandonYouveReturned, MSGBOX_DEFAULT
closemessage
frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH
applymovement LOCALID_BRANDON, BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer
waitmovement 0
msgbox BattleFrontier_BattlePyramidTop_Text_MyCourageIsOffMeter, MSGBOX_DEFAULT
goto BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold
end
BattleFrontier_BattlePyramidTop_EventScript_BrandonHeardGoldSpeech::
applymovement LOCALID_BRANDON, BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer
waitmovement 0
BattleFrontier_BattlePyramidTop_EventScript_BattleBrandonGold::
msgbox BattleFrontier_BattlePyramidTop_Text_EverythingYouHave, MSGBOX_DEFAULT
call BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle
playbgm MUS_B_PYRAMID_TOP, FALSE
goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold
goto BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
BattleFrontier_BattlePyramidTop_EventScript_DefeatedBrandonGold::
frontier_getsymbols
goto_if_eq VAR_RESULT, 2, BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon
msgbox BattleFrontier_BattlePyramidTop_Text_BrandonRemarkableHaveThis, MSGBOX_DEFAULT
playfanfare MUS_OBTAIN_SYMBOL
message BattleFrontier_BattlePyramidTop_Text_BraveSymbolTookGoldenShine
waitmessage
waitfanfare
frontier_givesymbol
msgbox BattleFrontier_BattlePyramidTop_Text_FarewellForNow, MSGBOX_DEFAULT
goto BattleFrontier_BattlePyramidTop_EventScript_WarpToLobbyWon
BattleFrontier_BattlePyramidTop_EventScript_DoBrandonBattle::
closemessage
setvar VAR_0x8004, SPECIAL_BATTLE_PYRAMID
setvar VAR_0x8005, 0
special DoSpecialTrainerBattle
waitstate
return
BattleFrontier_BattlePyramidTop_Movement_AttendantMoveAside:
walk_right
walk_in_place_faster_left
step_end
BattleFrontier_BattlePyramidTop_Movement_AttendantBlockPath:
walk_left
walk_in_place_faster_up
step_end
BattleFrontier_BattlePyramidTop_Movement_PlayerClimbToTop:
walk_up
walk_up
walk_up
walk_up
walk_up
walk_in_place_faster_down
step_end
BattleFrontier_BattlePyramidTop_Movement_BrandonApproachPlayer:
walk_fast_down
step_end
BattleFrontier_BattlePyramidTop_Movement_CameraPanUp:
walk_slow_up
walk_slow_up
delay_16
step_end
BattleFrontier_BattlePyramidTop_Text_ReachedSummitUpYouGo:
.string "很高兴能在这里见到你!\n你已经来到了对战金字塔\l最顶层。\p这就是金字塔的\n观测点。\p这个地方只为征服了\n金字塔 的人开放。\p进来吧\n随便你到处逛!$"
BattleFrontier_BattlePyramidTop_Text_PlayerConqueredPyramid:
.string "金字塔的新征服者。\n让众人记住{PLAYER}这个名字吧!$"
BattleFrontier_BattlePyramidTop_Text_ChiefBeatYouHere:
.string "很高兴能在这里见到你!\p很可惜\n你来晚了一点,是第二位。\p我们的法老已经被先到金字塔的\n训练家打败。\p不过呢年轻的探险家\n你是一位训练家!\p我们的法老说\n你的实力和荣誉都是最高的!\p这边请\n请带上多一分的能力!$"
BattleFrontier_BattlePyramidTop_Text_ExplorationsAreGrandestAdventure:
.string "年轻的冒险家……\p你是否认为探索\n是冒险的原动力呢?\p你的才智\p你的实力\p你的宝可梦\p最重要的是还是你的勇气\n指引你走向未知的世界……$"
BattleFrontier_BattlePyramidTop_Text_ImPyramidKingBrandon:
.string "嗯,生命的伟大的!\n真的很伟大!\p我是神代\p我是金字塔法老\n也就是说这里归我所管。\p人们都称我为法老\p你能来到这里\n说明了你对自己很有信心,\l我说得对吗\p哈哈哈\n真是令人兴奋啊!$"
BattleFrontier_BattlePyramidTop_Text_BringCourageToOurBattle:
.string "现在呢,\n带上你的能力来一起对战吧!$"
BattleFrontier_BattlePyramidTop_Text_BrandonFrontierPassPlease:
.string "神代:哈哈哈!真棒!\n你真的很棒!\p这个你获得的荣誉\n开拓通行证!$"
BattleFrontier_BattlePyramidTop_Text_ReceivedBraveSymbol:
.string "英勇象征浮现在\n开拓通行证上。$"
BattleFrontier_BattlePyramidTop_Text_LookForwardToNextMeeting:
.string "年轻的冒险者!\n我期待我们的下一次见面!$"
BattleFrontier_BattlePyramidTop_Text_BrandonYouveReturned:
.string "神代:……你终于回来了,\n年轻的冒险者……\p你对冒险的热情像源于\n你的内心深处……\p对……你简直就像是\n年轻时期的我自己\p…… ……啊……\p热情\p险恶\p不顾一切\p对死亡毫不畏惧的那些日子\n及一生矢志不渝的冒险者\p都成了过去……$"
BattleFrontier_BattlePyramidTop_Text_MyCourageIsOffMeter:
.string "然而,现在\p我知道我的勇气已经\n衰退了!$"
BattleFrontier_BattlePyramidTop_Text_EverythingYouHave:
.string "你拥有一切!\n我会全力支持你!$"
BattleFrontier_BattlePyramidTop_Text_BrandonRemarkableHaveThis:
.string "神代:哈哈哈!\n非常出色!\l对无须置疑\p年轻的冒险者\p你完全胜了我\n给!这是我想要让你得到的!$"
BattleFrontier_BattlePyramidTop_Text_BraveSymbolTookGoldenShine:
.string "英勇象征闪耀着\n金色的光芒!$"
BattleFrontier_BattlePyramidTop_Text_FarewellForNow:
.string "不错!这就表示\n我仍然有很多需要去学!\p我们还会见面的\n现在让我们告别吧,年轻的冒险者!$"
BattleFrontier_BattlePyramidTop_Text_StepForwardWhenReady:
.string "现在起,当你做好了准备,就\n勇往直前吧!$"