322 lines
14 KiB
PHP
322 lines
14 KiB
PHP
.set LOCALID_SCIENTIST_1, 1
|
|
.set LOCALID_OPPONENT, 2
|
|
.set LOCALID_SCIENTIST_2, 3
|
|
.set LOCALID_SCIENTIST_3, 4
|
|
.set LOCALID_SCIENTIST_4, 5
|
|
.set LOCALID_SCIENTIST_5, 6
|
|
.set LOCALID_SCIENTIST_6, 7
|
|
.set LOCALID_PLAYER, 8
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_MapScripts::
|
|
map_script MAP_SCRIPT_ON_TRANSITION, BattleFrontier_BattleFactoryBattleRoom_OnTransition
|
|
map_script MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE, BattleFrontier_BattleFactoryBattleRoom_OnWarp
|
|
map_script MAP_SCRIPT_ON_FRAME_TABLE, BattleFrontier_BattleFactoryBattleRoom_OnFrame
|
|
.byte 0
|
|
|
|
@ On this map the player (OBJ_EVENT_ID_PLAYER) is hidden
|
|
@ The player is represented instead by LOCALID_PLAYER, which has the gfx id VAR_OBJ_GFX_ID_F
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_OnTransition:
|
|
frontier_settrainers
|
|
checkplayergender
|
|
call_if_eq VAR_RESULT, MALE, BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxMale
|
|
call_if_eq VAR_RESULT, FEMALE, BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxFemale
|
|
frontier_getbrainstatus
|
|
copyvar VAR_TEMP_F, VAR_RESULT
|
|
goto_if_ne VAR_RESULT, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj
|
|
end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_SetUpFactoryHeadObj::
|
|
call BattleFrontier_EventScript_SetBrainObjectGfx
|
|
setobjectxyperm LOCALID_OPPONENT, 7, 9
|
|
end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_OnWarp:
|
|
map_script_2 VAR_TEMP_1, 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_HideObjects
|
|
.2byte 0
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_HideObjects::
|
|
setvar VAR_TEMP_1, 1
|
|
hideobjectat OBJ_EVENT_ID_PLAYER, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM
|
|
goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects
|
|
hideobjectat LOCALID_OPPONENT, MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_EndHideObjects::
|
|
end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxMale::
|
|
setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_RIVAL_BRENDAN_NORMAL
|
|
return
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_SetPlayerGfxFemale::
|
|
setvar VAR_OBJ_GFX_ID_F, OBJ_EVENT_GFX_RIVAL_MAY_NORMAL
|
|
return
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_OnFrame:
|
|
map_script_2 VAR_TEMP_0, 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom
|
|
.2byte 0
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle::
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_GetAMoveOn, MSGBOX_DEFAULT
|
|
closemessage
|
|
applymovement LOCALID_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle
|
|
applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
|
|
applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
|
|
waitmovement 0
|
|
call BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent
|
|
end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoom::
|
|
goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_EnterRoomFactoryHeadBattle
|
|
applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
|
|
applymovement OBJ_EVENT_ID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom
|
|
waitmovement 0
|
|
call BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle
|
|
factory_setopponentgfx
|
|
removeobject LOCALID_OPPONENT
|
|
setobjectxyperm LOCALID_OPPONENT, 7, 1
|
|
addobject LOCALID_OPPONENT
|
|
applymovement LOCALID_OPPONENT, BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter
|
|
waitmovement 0
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleOpponent::
|
|
goto_if_ne VAR_TEMP_F, FRONTIER_BRAIN_NOT_READY, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland
|
|
palace_getopponentintro
|
|
lockall
|
|
msgbox gStringVar4, MSGBOX_DEFAULT
|
|
waitmessage
|
|
closemessage
|
|
frontier_set FRONTIER_DATA_RECORD_DISABLED, FALSE
|
|
special HealPlayerParty
|
|
setvar VAR_0x8004, SPECIAL_BATTLE_FACTORY
|
|
setvar VAR_0x8005, 0
|
|
special DoSpecialTrainerBattle
|
|
waitstate
|
|
switch VAR_RESULT
|
|
case 1, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedOpponent
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost::
|
|
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_LOST
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedOpponent::
|
|
factory_get FACTORY_DATA_WIN_STREAK_SWAPS
|
|
goto_if_eq VAR_RESULT, MAX_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak
|
|
addvar VAR_RESULT, 1
|
|
setorcopyvar VAR_0x8006, VAR_RESULT
|
|
factory_set FACTORY_DATA_WIN_STREAK_SWAPS @ uses VAR_0x8006 above
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak::
|
|
call BattleFrontier_EventScript_IncrementWinStreak
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum::
|
|
frontier_get FRONTIER_DATA_BATTLE_NUM
|
|
addvar VAR_RESULT, 1
|
|
frontier_set FRONTIER_DATA_BATTLE_NUM, VAR_RESULT
|
|
switch VAR_RESULT
|
|
case 7, BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon
|
|
setvar VAR_0x8006, 1
|
|
warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM, 8, 8
|
|
waitstate
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon::
|
|
frontier_set FRONTIER_DATA_CHALLENGE_STATUS, CHALLENGE_STATUS_WON
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNoland::
|
|
switch VAR_TEMP_F
|
|
case FRONTIER_BRAIN_GOLD, BattleFrontier_BattleFactoryBattleRoom_EventScript_IntroNolandGold
|
|
case FRONTIER_BRAIN_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver
|
|
case FRONTIER_BRAIN_STREAK_LONG, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold
|
|
frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH
|
|
goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_NolandImFactoryHead, MSGBOX_DEFAULT
|
|
frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandSilver::
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_ShakeOutKnowledgeBringItOn, MSGBOX_DEFAULT
|
|
call BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle
|
|
goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandSilver::
|
|
frontier_getsymbols
|
|
goto_if_ne VAR_RESULT, 0, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_NolandLetsSeeFrontierPass, MSGBOX_DEFAULT
|
|
closemessage
|
|
applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland
|
|
waitmovement 0
|
|
playfanfare MUS_OBTAIN_SYMBOL
|
|
message BattleFrontier_BattleFactoryBattleRoom_Text_ReceivedKnowledgeSymbol
|
|
waitmessage
|
|
waitfanfare
|
|
frontier_givesymbol
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_NextTimeNoHoldsBarred, MSGBOX_DEFAULT
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_IntroNolandGold::
|
|
frontier_get FRONTIER_DATA_HEARD_BRAIN_SPEECH
|
|
goto_if_ne VAR_RESULT, FALSE, BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_HarderLookThanLastTime, MSGBOX_DEFAULT
|
|
frontier_set FRONTIER_DATA_HEARD_BRAIN_SPEECH
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_BattleNolandGold::
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_AllRightBringItOn, MSGBOX_DEFAULT
|
|
call BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle
|
|
goto_if_eq VAR_RESULT, 1, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyLost
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNolandGold::
|
|
frontier_getsymbols
|
|
goto_if_eq VAR_RESULT, 2, BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_OutOfMyLeagueLetsSeePass, MSGBOX_DEFAULT
|
|
waitmessage
|
|
applymovement LOCALID_PLAYER, BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland
|
|
waitmovement 0
|
|
playfanfare MUS_OBTAIN_SYMBOL
|
|
message BattleFrontier_BattleFactoryBattleRoom_Text_KnowledgeSymbolTookGoldenShine
|
|
waitmessage
|
|
waitfanfare
|
|
frontier_givesymbol
|
|
msgbox BattleFrontier_BattleFactoryBattleRoom_Text_LastTimeILoseToYou, MSGBOX_DEFAULT
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_DoNolandBattle::
|
|
closemessage
|
|
frontier_set FRONTIER_DATA_RECORD_DISABLED, FALSE
|
|
special HealPlayerParty
|
|
setvar VAR_0x8004, SPECIAL_BATTLE_FACTORY
|
|
setvar VAR_0x8005, 0
|
|
special DoSpecialTrainerBattle
|
|
waitstate
|
|
return
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_DefeatedNoland::
|
|
factory_get FACTORY_DATA_WIN_STREAK_SWAPS
|
|
goto_if_eq VAR_RESULT, MAX_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementWinStreak
|
|
addvar VAR_RESULT, 1
|
|
setorcopyvar VAR_0x8006, VAR_RESULT
|
|
factory_set FACTORY_DATA_WIN_STREAK_SWAPS @ uses VAR_0x8006 above
|
|
factory_get FACTORY_DATA_WIN_STREAK
|
|
goto_if_eq VAR_RESULT, MAX_STREAK, BattleFrontier_BattleFactoryBattleRoom_EventScript_IncrementBattleNum
|
|
addvar VAR_RESULT, 1
|
|
factory_set FACTORY_DATA_WIN_STREAK, VAR_RESULT
|
|
frontier_get FRONTIER_DATA_BATTLE_NUM
|
|
addvar VAR_RESULT, 1
|
|
goto BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyWon
|
|
end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerEnterRoom:
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
face_right
|
|
step_end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Movement_PlayerApproachNoland:
|
|
walk_right
|
|
step_end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Movement_OpponentEnter:
|
|
walk_down
|
|
walk_down
|
|
walk_down
|
|
walk_down
|
|
walk_down
|
|
face_left
|
|
step_end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Movement_NolandMoveToBattle:
|
|
walk_up
|
|
walk_up
|
|
walk_up
|
|
face_left
|
|
step_end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobby::
|
|
copyvar VAR_RESULT, VAR_FRONTIER_BATTLE_MODE
|
|
goto_if_eq VAR_RESULT, FRONTIER_MODE_DOUBLES, BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles
|
|
warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 4, 8
|
|
waitstate
|
|
end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_WarpToLobbyDoubles::
|
|
warp MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY, 14, 8
|
|
waitstate
|
|
end
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_EventScript_ScientistsFaceBattle::
|
|
applymovement LOCALID_SCIENTIST_1, Common_Movement_WalkInPlaceFasterRight
|
|
applymovement LOCALID_SCIENTIST_2, Common_Movement_WalkInPlaceFasterRight
|
|
applymovement LOCALID_SCIENTIST_3, Common_Movement_WalkInPlaceFasterRight
|
|
applymovement LOCALID_SCIENTIST_4, Common_Movement_WalkInPlaceFasterLeft
|
|
applymovement LOCALID_SCIENTIST_5, Common_Movement_WalkInPlaceFasterLeft
|
|
applymovement LOCALID_SCIENTIST_6, Common_Movement_WalkInPlaceFasterLeft
|
|
waitmovement 0
|
|
return
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_GetAMoveOn:
|
|
.string "Hey, hey!\n"
|
|
.string "Get a move on!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_NolandImFactoryHead:
|
|
.string "Hey, my name's Noland!\n"
|
|
.string "I'm basically in charge of this place,\l"
|
|
.string "which is why I'm the Factory Head!\p"
|
|
.string "I had a look at your Battle Swap data.\p"
|
|
.string "You seem to have the right idea,\n"
|
|
.string "but you're still square in your head!\p"
|
|
.string "Listen up, okay? Knowledge isn't only\n"
|
|
.string "about reading books or doing desk work.\p"
|
|
.string "Just doing that sort of thing…\n"
|
|
.string "It may as well be useless!\p"
|
|
.string "You have to experience things with\n"
|
|
.string "your heart and your body, understand?\p"
|
|
.string "I'll take you on under the same\n"
|
|
.string "conditions as you.\p"
|
|
.string "I'll be using rental Pokémon, too!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_ShakeOutKnowledgeBringItOn:
|
|
.string "Shake out every last bit of your\n"
|
|
.string "knowledge and bring it on!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_NolandLetsSeeFrontierPass:
|
|
.string "Noland: Smart going!\n"
|
|
.string "Let's see your Frontier Pass.$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_ReceivedKnowledgeSymbol:
|
|
.string "The Knowledge Symbol was embossed\n"
|
|
.string "on the Frontier Pass!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_NextTimeNoHoldsBarred:
|
|
.string "Heh…\n"
|
|
.string "You're a pretty bright spark…\p"
|
|
.string "Next time, I'll come after you hard.\n"
|
|
.string "No holds barred, understand?\p"
|
|
.string "You keep up your studies!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_HarderLookThanLastTime:
|
|
.string "Noland: Hey, hey! How's it going?\n"
|
|
.string "You keeping up with your studies?\p"
|
|
.string "…Oh?\p"
|
|
.string "You've taken on a harder look than\n"
|
|
.string "the last time I saw you.\p"
|
|
.string "Now, this should be fun!\n"
|
|
.string "I'm getting excited, hey!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_AllRightBringItOn:
|
|
.string "All right!\n"
|
|
.string "Bring it on!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_OutOfMyLeagueLetsSeePass:
|
|
.string "Noland: What the…\n"
|
|
.string "You're getting out of my league!\p"
|
|
.string "Sheesh!\n"
|
|
.string "Let's see that Frontier Pass!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_KnowledgeSymbolTookGoldenShine:
|
|
.string "The Knowledge Symbol took on\n"
|
|
.string "a golden shine!$"
|
|
|
|
BattleFrontier_BattleFactoryBattleRoom_Text_LastTimeILoseToYou:
|
|
.string "Pfft, man!\p"
|
|
.string "That's absolutely the last time\n"
|
|
.string "I lose to you!\p"
|
|
.string "We have to do this again, hey?$"
|
|
|