diff options
-rw-r--r-- | asm/macros/movement.inc | 2 | ||||
-rw-r--r-- | data/scripts/trainer_battle.inc | 119 | ||||
-rw-r--r-- | data/specials.inc | 12 | ||||
-rw-r--r-- | include/battle_setup.h | 9 | ||||
-rw-r--r-- | include/event_scripts.h | 4 | ||||
-rw-r--r-- | src/battle_main.c | 2 | ||||
-rw-r--r-- | src/battle_setup.c | 16 | ||||
-rw-r--r-- | src/trainer_see.c | 2 | ||||
-rw-r--r-- | src/vs_seeker.c | 2 |
9 files changed, 83 insertions, 85 deletions
diff --git a/asm/macros/movement.inc b/asm/macros/movement.inc index c4ca78010..9f11f4460 100644 --- a/asm/macros/movement.inc +++ b/asm/macros/movement.inc @@ -109,7 +109,7 @@ create_movement emote_x create_movement emote_double_exclamation_mark create_movement emote_smile - create_movement step_67 + create_movement reveal_trainer create_movement rock_smash_break create_movement cut_tree diff --git a/data/scripts/trainer_battle.inc b/data/scripts/trainer_battle.inc index ccb279300..a49700846 100644 --- a/data/scripts/trainer_battle.inc +++ b/data/scripts/trainer_battle.inc @@ -1,143 +1,142 @@ -gUnknown_81A4EB4:: @ 81A4EB4 +EventScript_DoTrainerBattleFromApproach:: @ 81A4EB4 lock special PlayTrainerEncounterMusic - special ScrSpecial_EndTrainerApproach + special EndTrainerApproach waitstate - goto EventScript_1A4FC7 + goto EventScript_DoTrainerBattle EventScript_TryDoNormalTrainerBattle:: @ 81A4EC1 lock faceplayer - applymovement VAR_LAST_TALKED, Movement_1A4FC5 + applymovement VAR_LAST_TALKED, Movement_RevealTrainer waitmovement 0 specialvar VAR_RESULT, ScrSpecial_HasTrainerBeenFought - compare VAR_RESULT, 0 - goto_if_ne EventScript_1A4EE8 + compare VAR_RESULT, FALSE + goto_if_ne EventScript_NoTrainerBattle special PlayTrainerEncounterMusic special SetUpTrainerMovement - goto EventScript_1A4FC7 + goto EventScript_DoTrainerBattle -EventScript_1A4EE8:: @ 81A4EE8 +EventScript_NoTrainerBattle:: @ 81A4EE8 ontrainerbattleend EventScript_TryDoDoubleTrainerBattle:: @ 81A4EE9 lock faceplayer - call EventScript_1A4FBA + call EventScript_RevealTrainer specialvar VAR_RESULT, ScrSpecial_HasTrainerBeenFought - compare VAR_RESULT, 0 - goto_if_ne EventScript_1A4F20 + compare VAR_RESULT, FALSE + goto_if_ne EventScript_NoDoubleTrainerBattle special HasEnoughMonsForDoubleBattle compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS - goto_if_ne EventScript_1A4F19 + goto_if_ne EventScript_NotEnoughMonsForDoubleBattle special PlayTrainerEncounterMusic special SetUpTrainerMovement - goto EventScript_1A4FC7 + goto EventScript_DoTrainerBattle -EventScript_1A4F19:: @ 81A4F19 - special ScrSpecial_ShowTrainerNonBattlingSpeech +EventScript_NotEnoughMonsForDoubleBattle:: @ 81A4F19 + special ShowTrainerCantBattleSpeech waitmessage waitbuttonpress release end -EventScript_1A4F20:: @ 81A4F20 +EventScript_NoDoubleTrainerBattle:: @ 81A4F20 ontrainerbattleend -EventScript_DoTrainerBattle:: @ 81A4F21 - applymovement VAR_LAST_TALKED, Movement_1A4FC5 +EventScript_DoNoIntroTrainerBattle:: @ 81A4F21 + applymovement VAR_LAST_TALKED, Movement_RevealTrainer waitmovement 0 special PlayTrainerEncounterMusic - goto_if_questlog EventScript_1A501A + goto_if_questlog EventScript_EndQuestLogBattle battlebegin ontrainerbattleend EventScript_TryDoRematchBattle:: @ 81A4F3E - call EventScript_1A4FBA - specialvar VAR_RESULT, ScrSpecial_GetTrainerEyeRematchFlag - compare VAR_RESULT, 0 - goto_if_eq EventScript_1A4F72 + call EventScript_RevealTrainer + specialvar VAR_RESULT, IsTrainerReadyForRematch + compare VAR_RESULT, FALSE + goto_if_eq EventScript_NoRematchBattle special PlayTrainerEncounterMusic special SetUpTrainerMovement - special ScrSpecial_ShowTrainerIntroSpeech + special ShowTrainerIntroSpeech waitmessage waitbuttonpress - goto_if_questlog EventScript_1A4FB8 - special ScrSpecial_StartTrainerEyeRematch + goto_if_questlog EventScript_EndQuestLogRematch + special BattleSetup_StartRematchBattle waitstate releaseall end -EventScript_1A4F72:: @ 81A4F72 +EventScript_NoRematchBattle:: @ 81A4F72 ontrainerbattleend EventScript_TryDoDoubleRematchBattle:: @ 81A4F73 - specialvar VAR_RESULT, ScrSpecial_GetTrainerEyeRematchFlag - compare VAR_RESULT, 0 - goto_if_eq EventScript_1A4FB0 + specialvar VAR_RESULT, IsTrainerReadyForRematch + compare VAR_RESULT, FALSE + goto_if_eq EventScript_NoDoubleRematchBattle special HasEnoughMonsForDoubleBattle compare VAR_RESULT, PLAYER_HAS_TWO_USABLE_MONS - goto_if_ne EventScript_1A4FB1 + goto_if_ne EventScript_NotEnoughMonsForDoubleRematchBattle special PlayTrainerEncounterMusic special SetUpTrainerMovement - special ScrSpecial_ShowTrainerIntroSpeech + special ShowTrainerIntroSpeech waitmessage waitbuttonpress - goto_if_questlog EventScript_1A4FB8 - special ScrSpecial_StartTrainerEyeRematch + goto_if_questlog EventScript_EndQuestLogRematch + special BattleSetup_StartRematchBattle waitstate releaseall end -EventScript_1A4FB0:: @ 81A4FB0 +EventScript_NoDoubleRematchBattle:: @ 81A4FB0 ontrainerbattleend -EventScript_1A4FB1:: @ 81A4FB1 - special ScrSpecial_ShowTrainerNonBattlingSpeech +EventScript_NotEnoughMonsForDoubleRematchBattle:: @ 81A4FB1 + special ShowTrainerCantBattleSpeech waitmessage waitbuttonpress release end -EventScript_1A4FB8:: @ 81A4FB8 +EventScript_EndQuestLogRematch:: @ 81A4FB8 releaseall end -EventScript_1A4FBA:: @ 81A4FBA - applymovement VAR_LAST_TALKED, Movement_1A4FC5 +EventScript_RevealTrainer:: @ 81A4FBA + applymovement VAR_LAST_TALKED, Movement_RevealTrainer waitmovement 0 return -Movement_1A4FC5:: @ 81A4FC5 - step_67 +Movement_RevealTrainer:: @ 81A4FC5 + reveal_trainer step_end -EventScript_1A4FC7:: @ 81A4FC7 - special ScrSpecial_ShowTrainerIntroSpeech +EventScript_DoTrainerBattle:: @ 81A4FC7 + special ShowTrainerIntroSpeech waitmessage waitbuttonpress - goto_if_questlog EventScript_1A501A + goto_if_questlog EventScript_EndQuestLogBattle battlebegin - specialvar VAR_RESULT, ScrSpecial_GetTrainerBattleMode - compare VAR_RESULT, 0 - goto_if_eq EventScript_1A5017 - compare VAR_RESULT, 2 - goto_if_eq EventScript_1A5019 - compare VAR_RESULT, 1 - goto_if_eq EventScript_1A5019 - compare VAR_RESULT, 6 - goto_if_eq EventScript_1A5019 - compare VAR_RESULT, 8 - goto_if_eq EventScript_1A5019 - -EventScript_1A5017:: @ 81A5017 + specialvar VAR_RESULT, GetTrainerBattleMode + compare VAR_RESULT, TRAINER_BATTLE_SINGLE + goto_if_eq EventScript_EndTrainerBattle + compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT + goto_if_eq EventScript_EndTrainerBattleContinueScript + compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC + goto_if_eq EventScript_EndTrainerBattleContinueScript + compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE + goto_if_eq EventScript_EndTrainerBattleContinueScript + compare VAR_RESULT, TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC + goto_if_eq EventScript_EndTrainerBattleContinueScript +EventScript_EndTrainerBattle:: @ 81A5017 releaseall end -EventScript_1A5019:: @ 81A5019 +EventScript_EndTrainerBattleContinueScript:: @ 81A5019 ontrainerbattleendgoto -EventScript_1A501A:: @ 81A501A +EventScript_EndQuestLogBattle:: @ 81A501A special SetBattledTrainerFlag releaseall end diff --git a/data/specials.inc b/data/specials.inc index c44e1f3b4..1440f7798 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -59,15 +59,15 @@ gSpecials:: @ 815FD60 def_special NullFieldSpecial def_special NullFieldSpecial def_special IsEnigmaBerryValid - def_special ScrSpecial_GetTrainerBattleMode - def_special ScrSpecial_ShowTrainerIntroSpeech - def_special ScrSpecial_ShowTrainerNonBattlingSpeech + def_special GetTrainerBattleMode + def_special ShowTrainerIntroSpeech + def_special ShowTrainerCantBattleSpeech def_special ScrSpecial_HasTrainerBeenFought - def_special ScrSpecial_EndTrainerApproach + def_special EndTrainerApproach def_special PlayTrainerEncounterMusic def_special ShouldTryRematchBattle - def_special ScrSpecial_GetTrainerEyeRematchFlag - def_special ScrSpecial_StartTrainerEyeRematch + def_special IsTrainerReadyForRematch + def_special BattleSetup_StartRematchBattle def_special ShowPokemonStorageSystem def_special HasEnoughMonsForDoubleBattle def_special NullFieldSpecial diff --git a/include/battle_setup.h b/include/battle_setup.h index 2aecbb0a4..e85ee2faf 100644 --- a/include/battle_setup.h +++ b/include/battle_setup.h @@ -18,19 +18,18 @@ const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data); void ConfigureAndSetUpOneTrainerBattle(u8 trainerEventObjId, const u8 *trainerScript); bool32 GetTrainerFlagFromScriptPointer(const u8 *data); void SetUpTrainerMovement(void); -u8 ScrSpecial_GetTrainerBattleMode(void); +u8 GetTrainerBattleMode(void); u16 GetRivalBattleFlags(void); -u16 ScrSpecial_HasTrainerBeenFought(void); void SetBattledTrainerFlag(void); bool8 HasTrainerBeenFought(u16 trainerId); void SetTrainerFlag(u16 trainerId); void ClearTrainerFlag(u16 trainerId); void BattleSetup_StartTrainerBattle(void); -void ScrSpecial_StartTrainerEyeRematch(void); -void ScrSpecial_ShowTrainerIntroSpeech(void); +void BattleSetup_StartRematchBattle(void); +void ShowTrainerIntroSpeech(void); const u8 *BattleSetup_GetScriptAddrAfterBattle(void); const u8 *BattleSetup_GetTrainerPostBattleScript(void); -void ScrSpecial_ShowTrainerNonBattlingSpeech(void); +void ShowTrainerCantBattleSpeech(void); void PlayTrainerEncounterMusic(void); const u8 *GetTrainerALoseText(void); const u8 *GetTrainerWonSpeech(void); diff --git a/include/event_scripts.h b/include/event_scripts.h index 9c1a2003d..3fda94a5f 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1155,12 +1155,12 @@ extern const u8 SafariZone_EventScript_OutOfBalls[]; extern const u8 EventScript_ItemfinderDigUpUnderfootItem[]; // battle_setup -extern const u8 EventScript_DoTrainerBattle[]; +extern const u8 EventScript_DoNoIntroTrainerBattle[]; extern const u8 EventScript_TryDoDoubleTrainerBattle[]; extern const u8 EventScript_TryDoNormalTrainerBattle[]; extern const u8 EventScript_TryDoDoubleRematchBattle[]; extern const u8 EventScript_TryDoRematchBattle[]; -extern const u8 gUnknown_81A4EB4[]; +extern const u8 EventScript_DoTrainerBattleFromApproach[]; extern const u8 Test_EventScript_Sign[]; // new_game diff --git a/src/battle_main.c b/src/battle_main.c index e7d02c673..9c573dcba 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3713,7 +3713,7 @@ static void HandleEndTurn_BattleLost(void) } else { - if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && ScrSpecial_GetTrainerBattleMode() == TRAINER_BATTLE_EARLY_RIVAL) + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && GetTrainerBattleMode() == TRAINER_BATTLE_EARLY_RIVAL) { if (GetRivalBattleFlags() & RIVAL_BATTLE_HEAL_AFTER) gBattleCommunication[MULTISTRING_CHOOSER] = 1; // Dont do white out text diff --git a/src/battle_setup.c b/src/battle_setup.c index 354487abd..202be1bd1 100644 --- a/src/battle_setup.c +++ b/src/battle_setup.c @@ -778,7 +778,7 @@ const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data) { case TRAINER_BATTLE_SINGLE_NO_INTRO_TEXT: TrainerBattleLoadArgs(sOrdinaryNoIntroBattleParams, data); - return EventScript_DoTrainerBattle; + return EventScript_DoNoIntroTrainerBattle; case TRAINER_BATTLE_DOUBLE: TrainerBattleLoadArgs(sDoubleBattleParams, data); SetMapVarsToTrainer(); @@ -807,7 +807,7 @@ const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data) return EventScript_TryDoRematchBattle; case TRAINER_BATTLE_EARLY_RIVAL: TrainerBattleLoadArgs(sEarlyRivalBattleParams, data); - return EventScript_DoTrainerBattle; + return EventScript_DoNoIntroTrainerBattle; default: TrainerBattleLoadArgs(sOrdinaryBattleParams, data); SetMapVarsToTrainer(); @@ -820,7 +820,7 @@ void ConfigureAndSetUpOneTrainerBattle(u8 trainerEventObjId, const u8 *trainerSc gSelectedObjectEvent = trainerEventObjId; gSpecialVar_LastTalked = gObjectEvents[trainerEventObjId].localId; BattleSetup_ConfigureTrainerBattle(trainerScript + 1); - ScriptContext1_SetupScript(gUnknown_81A4EB4); + ScriptContext1_SetupScript(EventScript_DoTrainerBattleFromApproach); ScriptContext2_Enable(); } @@ -838,7 +838,7 @@ void SetUpTrainerMovement(void) SetTrainerMovementType(objectEvent, GetTrainerFacingDirectionMovementType(objectEvent->facingDirection)); } -u8 ScrSpecial_GetTrainerBattleMode(void) +u8 GetTrainerBattleMode(void) { return sTrainerBattleMode; } @@ -882,7 +882,7 @@ void ClearTrainerFlag(u16 trainerId) void BattleSetup_StartTrainerBattle(void) { gBattleTypeFlags = BATTLE_TYPE_TRAINER; - if (ScrSpecial_GetTrainerBattleMode() == TRAINER_BATTLE_EARLY_RIVAL && GetRivalBattleFlags() & RIVAL_BATTLE_TUTORIAL) + if (GetTrainerBattleMode() == TRAINER_BATTLE_EARLY_RIVAL && GetRivalBattleFlags() & RIVAL_BATTLE_TUTORIAL) gBattleTypeFlags |= BATTLE_TYPE_FIRST_BATTLE; gMain.savedCallback = CB2_EndTrainerBattle; DoTrainerBattle(); @@ -956,7 +956,7 @@ static void CB2_EndRematchBattle(void) } } -void ScrSpecial_StartTrainerEyeRematch(void) +void BattleSetup_StartRematchBattle(void) { gBattleTypeFlags = BATTLE_TYPE_TRAINER; gMain.savedCallback = CB2_EndRematchBattle; @@ -964,7 +964,7 @@ void ScrSpecial_StartTrainerEyeRematch(void) ScriptContext1_Stop(); } -void ScrSpecial_ShowTrainerIntroSpeech(void) +void ShowTrainerIntroSpeech(void) { ShowFieldMessage(GetIntroSpeechOfApproachingTrainer()); } @@ -985,7 +985,7 @@ const u8 *BattleSetup_GetTrainerPostBattleScript(void) return Test_EventScript_Sign; } -void ScrSpecial_ShowTrainerNonBattlingSpeech(void) +void ShowTrainerCantBattleSpeech(void) { ShowFieldMessage(GetTrainerCantBattleSpeech()); } diff --git a/src/trainer_see.c b/src/trainer_see.c index 06fd60442..64e2f8e5a 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -544,7 +544,7 @@ void MovementAction_RevealTrainer_RunTrainerSeeFuncList(struct ObjectEvent *var) StoreWordInTwoHalfwords((u16 *)&gTasks[CreateTask(Task_RevealTrainer_RunTrainerSeeFuncList, 0)].data[1], (u32)var); } -void ScrSpecial_EndTrainerApproach(void) +void EndTrainerApproach(void) { StartTrainerApproachWithFollowupTask(Task_DestroyTrainerApproachTask); } diff --git a/src/vs_seeker.c b/src/vs_seeker.c index eac3a48a5..b44214ec0 100644 --- a/src/vs_seeker.c +++ b/src/vs_seeker.c @@ -1086,7 +1086,7 @@ s32 GetRematchTrainerId(u16 a0) return sVsSeekerData[i].trainerIdxs[j]; } -u8 ScrSpecial_GetTrainerEyeRematchFlag(void) // unreferenced, or reference not disassembled +u8 IsTrainerReadyForRematch(void) { return sub_810CED0(sVsSeekerData, gTrainerBattleOpponent_A); } |