summaryrefslogtreecommitdiff
path: root/src/battle_setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/battle_setup.c')
-rw-r--r--src/battle_setup.c104
1 files changed, 52 insertions, 52 deletions
diff --git a/src/battle_setup.c b/src/battle_setup.c
index 48a2ef257..46fc7349c 100644
--- a/src/battle_setup.c
+++ b/src/battle_setup.c
@@ -21,7 +21,7 @@
#include "constants/items.h"
#include "palette.h"
#include "window.h"
-#include "field_map_obj.h"
+#include "event_object_movement.h"
#include "event_scripts.h"
#include "trainer_see.h"
#include "field_message_box.h"
@@ -32,7 +32,7 @@
#include "overworld.h"
#include "field_weather.h"
#include "gym_leader_rematch.h"
-#include "field_map_obj_helpers.h"
+#include "constants/map_types.h"
enum
{
@@ -63,8 +63,8 @@ extern void sub_80EECC8(void);
extern void sub_80AF6F0(void);
extern u16 sub_81A9AA8(u8 localId);
extern u16 sub_81D6180(u8 localId);
-extern bool8 GetBattlePyramidTrainerFlag(u8 mapObjId);
-extern bool8 GetTrainerHillTrainerFlag(u8 mapObjId);
+extern bool8 GetBattlePyramidTrainerFlag(u8 eventObjId);
+extern bool8 GetTrainerHillTrainerFlag(u8 eventObjId);
extern bool8 sub_81D5C18(void);
extern void sub_816306C(u8 a0);
extern void sub_8163048(u8 a0);
@@ -102,7 +102,7 @@ EWRAM_DATA static u16 sTrainerBattleMode = 0;
EWRAM_DATA u16 gTrainerBattleOpponent_A = 0;
EWRAM_DATA u16 gTrainerBattleOpponent_B = 0;
EWRAM_DATA u16 gPartnerTrainerId = 0;
-EWRAM_DATA static u16 sTrainerMapObjectLocalId = 0;
+EWRAM_DATA static u16 sTrainerEventObjectLocalId = 0;
EWRAM_DATA static u8 *sTrainerAIntroSpeech = NULL;
EWRAM_DATA static u8 *sTrainerBIntroSpeech = NULL;
EWRAM_DATA static u8 *sTrainerADefeatSpeech = NULL;
@@ -156,7 +156,7 @@ static const struct TrainerBattleParameter sOrdinaryBattleParams[] =
{
{&sTrainerBattleMode, TRAINER_PARAM_LOAD_VAL_8BIT},
{&gTrainerBattleOpponent_A, TRAINER_PARAM_LOAD_VAL_16BIT},
- {&sTrainerMapObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
+ {&sTrainerEventObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
{&sTrainerAIntroSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerADefeatSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerVictorySpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
@@ -169,7 +169,7 @@ static const struct TrainerBattleParameter sContinueScriptBattleParams[] =
{
{&sTrainerBattleMode, TRAINER_PARAM_LOAD_VAL_8BIT},
{&gTrainerBattleOpponent_A, TRAINER_PARAM_LOAD_VAL_16BIT},
- {&sTrainerMapObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
+ {&sTrainerEventObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
{&sTrainerAIntroSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerADefeatSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerVictorySpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
@@ -182,7 +182,7 @@ static const struct TrainerBattleParameter sDoubleBattleParams[] =
{
{&sTrainerBattleMode, TRAINER_PARAM_LOAD_VAL_8BIT},
{&gTrainerBattleOpponent_A, TRAINER_PARAM_LOAD_VAL_16BIT},
- {&sTrainerMapObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
+ {&sTrainerEventObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
{&sTrainerAIntroSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerADefeatSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerVictorySpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
@@ -195,7 +195,7 @@ static const struct TrainerBattleParameter sOrdinaryNoIntroBattleParams[] =
{
{&sTrainerBattleMode, TRAINER_PARAM_LOAD_VAL_8BIT},
{&gTrainerBattleOpponent_A, TRAINER_PARAM_LOAD_VAL_16BIT},
- {&sTrainerMapObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
+ {&sTrainerEventObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
{&sTrainerAIntroSpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
{&sTrainerADefeatSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerVictorySpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
@@ -208,7 +208,7 @@ static const struct TrainerBattleParameter sContinueScriptDoubleBattleParams[] =
{
{&sTrainerBattleMode, TRAINER_PARAM_LOAD_VAL_8BIT},
{&gTrainerBattleOpponent_A, TRAINER_PARAM_LOAD_VAL_16BIT},
- {&sTrainerMapObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
+ {&sTrainerEventObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
{&sTrainerAIntroSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerADefeatSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerVictorySpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
@@ -221,7 +221,7 @@ static const struct TrainerBattleParameter sTrainerBOrdinaryBattleParams[] =
{
{&sTrainerBattleMode, TRAINER_PARAM_LOAD_VAL_8BIT},
{&gTrainerBattleOpponent_B, TRAINER_PARAM_LOAD_VAL_16BIT},
- {&sTrainerMapObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
+ {&sTrainerEventObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
{&sTrainerBIntroSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerBDefeatSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerVictorySpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
@@ -234,7 +234,7 @@ static const struct TrainerBattleParameter sTrainerBContinueScriptBattleParams[]
{
{&sTrainerBattleMode, TRAINER_PARAM_LOAD_VAL_8BIT},
{&gTrainerBattleOpponent_B, TRAINER_PARAM_LOAD_VAL_16BIT},
- {&sTrainerMapObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
+ {&sTrainerEventObjectLocalId, TRAINER_PARAM_LOAD_VAL_16BIT},
{&sTrainerBIntroSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerBDefeatSpeech, TRAINER_PARAM_LOAD_VAL_32BIT},
{&sTrainerVictorySpeech, TRAINER_PARAM_CLEAR_VAL_32BIT},
@@ -388,7 +388,7 @@ void BattleSetup_StartBattlePikeWildBattle(void)
static void DoStandardWildBattle(void)
{
ScriptContext2_Enable();
- FreezeMapObjects();
+ FreezeEventObjects();
sub_808BCF4();
gMain.savedCallback = CB2_EndWildBattle;
gBattleTypeFlags = 0;
@@ -407,7 +407,7 @@ static void DoStandardWildBattle(void)
void BattleSetup_StartRoamerBattle(void)
{
ScriptContext2_Enable();
- FreezeMapObjects();
+ FreezeEventObjects();
sub_808BCF4();
gMain.savedCallback = CB2_EndWildBattle;
gBattleTypeFlags = BATTLE_TYPE_ROAMER;
@@ -421,7 +421,7 @@ void BattleSetup_StartRoamerBattle(void)
static void DoSafariBattle(void)
{
ScriptContext2_Enable();
- FreezeMapObjects();
+ FreezeEventObjects();
sub_808BCF4();
gMain.savedCallback = CB2_EndSafariBattle;
gBattleTypeFlags = BATTLE_TYPE_SAFARI;
@@ -431,7 +431,7 @@ static void DoSafariBattle(void)
static void DoBattlePikeWildBattle(void)
{
ScriptContext2_Enable();
- FreezeMapObjects();
+ FreezeEventObjects();
sub_808BCF4();
gMain.savedCallback = CB2_EndWildBattle;
gBattleTypeFlags = BATTLE_TYPE_PIKE;
@@ -799,7 +799,7 @@ static u8 GetTrainerBattleTransition(void)
u8 enemyLevel;
u8 playerLevel;
- if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
+ if (gTrainerBattleOpponent_A == TRAINER_SECRET_BASE)
return B_TRANSITION_CHAMPION;
if (gTrainers[gTrainerBattleOpponent_A].trainerClass == TRAINER_CLASS_ELITE_FOUR)
@@ -884,8 +884,8 @@ u8 sub_80B100C(s32 arg0)
return sUnknown_0854FE98[Random() % ARRAY_COUNT(sUnknown_0854FE98)];
}
- var = gSaveBlock2Ptr->field_CB4[gSaveBlock2Ptr->battlePyramidWildHeaderId * 2 + 0]
- + gSaveBlock2Ptr->field_CB4[gSaveBlock2Ptr->battlePyramidWildHeaderId * 2 + 1];
+ var = gSaveBlock2Ptr->frontier.field_CB4[gSaveBlock2Ptr->frontier.field_CB2 * 2 + 0]
+ + gSaveBlock2Ptr->frontier.field_CB4[gSaveBlock2Ptr->frontier.field_CB2 * 2 + 1];
return sUnknown_0854FE98[var % ARRAY_COUNT(sUnknown_0854FE98)];
}
@@ -1012,7 +1012,7 @@ static void InitTrainerBattleVariables(void)
sTrainerBDefeatSpeech = NULL;
sTrainerBBattleScriptRetAddr = NULL;
}
- sTrainerMapObjectLocalId = 0;
+ sTrainerEventObjectLocalId = 0;
sTrainerVictorySpeech = NULL;
sTrainerCannotBattleSpeech = NULL;
sTrainerBattleEndScript = NULL;
@@ -1075,10 +1075,10 @@ static void TrainerBattleLoadArgs(const struct TrainerBattleParameter *specs, co
void SetMapVarsToTrainer(void)
{
- if (sTrainerMapObjectLocalId != 0)
+ if (sTrainerEventObjectLocalId != 0)
{
- gSpecialVar_LastTalked = sTrainerMapObjectLocalId;
- gSelectedMapObject = GetFieldObjectIdByLocalIdAndMap(sTrainerMapObjectLocalId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
+ gSpecialVar_LastTalked = sTrainerEventObjectLocalId;
+ gSelectedEventObject = GetEventObjectIdByLocalIdAndMap(sTrainerEventObjectLocalId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup);
}
}
@@ -1089,14 +1089,14 @@ const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data)
switch (sTrainerBattleMode)
{
- case 3:
+ case TRAINER_BATTLE_NORMAL_NO_INTRO_TEXT:
TrainerBattleLoadArgs(sOrdinaryNoIntroBattleParams, data);
return EventScript_2713C2;
- case 4:
+ case TRAINER_BATTLE_DOUBLE:
TrainerBattleLoadArgs(sDoubleBattleParams, data);
SetMapVarsToTrainer();
return EventScript_TryDoDoubleTrainerBattle;
- case 2:
+ case TRAINER_BATTLE_CONTINUE_SCRIPT:
if (gApproachingTrainerId == 0)
{
TrainerBattleLoadArgs(sContinueScriptBattleParams, data);
@@ -1107,26 +1107,26 @@ const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data)
TrainerBattleLoadArgs(sTrainerBContinueScriptBattleParams, data);
}
return EventScript_271362;
- case 1:
+ case TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC:
TrainerBattleLoadArgs(sContinueScriptBattleParams, data);
SetMapVarsToTrainer();
return EventScript_271362;
- case 6:
- case 8:
+ case TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE:
+ case TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC:
TrainerBattleLoadArgs(sContinueScriptDoubleBattleParams, data);
SetMapVarsToTrainer();
return EventScript_TryDoDoubleTrainerBattle;
- case 7:
+ case TRAINER_BATTLE_REMATCH_DOUBLE:
TrainerBattleLoadArgs(sDoubleBattleParams, data);
SetMapVarsToTrainer();
gTrainerBattleOpponent_A = GetRematchTrainerId(gTrainerBattleOpponent_A);
return EventScript_TryDoDoubleRematchBattle;
- case 5:
+ case TRAINER_BATTLE_REMATCH:
TrainerBattleLoadArgs(sOrdinaryBattleParams, data);
SetMapVarsToTrainer();
gTrainerBattleOpponent_A = GetRematchTrainerId(gTrainerBattleOpponent_A);
return EventScript_2713D1;
- case 9:
+ case TRAINER_BATTLE_9:
if (gApproachingTrainerId == 0)
{
TrainerBattleLoadArgs(sOrdinaryBattleParams, data);
@@ -1139,13 +1139,13 @@ const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data)
gTrainerBattleOpponent_B = sub_81A9AA8(gSpecialVar_LastTalked);
}
return EventScript_271362;
- case 10:
+ case TRAINER_BATTLE_SET_TRAINER_A:
TrainerBattleLoadArgs(sOrdinaryBattleParams, data);
return NULL;
- case 11:
+ case TRAINER_BATTLE_SET_TRAINER_B:
TrainerBattleLoadArgs(sTrainerBOrdinaryBattleParams, data);
return NULL;
- case 12:
+ case TRAINER_BATTLE_12:
if (gApproachingTrainerId == 0)
{
TrainerBattleLoadArgs(sOrdinaryBattleParams, data);
@@ -1172,19 +1172,19 @@ const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data)
}
}
-void ConfigureAndSetUpOneTrainerBattle(u8 trainerMapObjId, const u8 *trainerScript)
+void ConfigureAndSetUpOneTrainerBattle(u8 trainerEventObjId, const u8 *trainerScript)
{
- gSelectedMapObject = trainerMapObjId;
- gSpecialVar_LastTalked = gMapObjects[trainerMapObjId].localId;
+ gSelectedEventObject = trainerEventObjId;
+ gSpecialVar_LastTalked = gEventObjects[trainerEventObjId].localId;
BattleSetup_ConfigureTrainerBattle(trainerScript + 1);
ScriptContext1_SetupScript(EventScript_271354);
ScriptContext2_Enable();
}
-void ConfigureTwoTrainersBattle(u8 trainerMapObjId, const u8 *trainerScript)
+void ConfigureTwoTrainersBattle(u8 trainerEventObjId, const u8 *trainerScript)
{
- gSelectedMapObject = trainerMapObjId;
- gSpecialVar_LastTalked = gMapObjects[trainerMapObjId].localId;
+ gSelectedEventObject = trainerEventObjId;
+ gSpecialVar_LastTalked = gEventObjects[trainerEventObjId].localId;
BattleSetup_ConfigureTrainerBattle(trainerScript + 1);
}
@@ -1202,9 +1202,9 @@ bool32 GetTrainerFlagFromScriptPointer(const u8 *data)
void sub_80B16D8(void)
{
- struct MapObject *mapObject = &gMapObjects[gSelectedMapObject];
+ struct EventObject *eventObject = &gEventObjects[gSelectedEventObject];
- npc_set_running_behaviour_etc(mapObject, npc_running_behaviour_by_direction(mapObject->mapobj_unk_18));
+ SetTrainerMovementType(eventObject, GetTrainerFacingDirectionMovementType(eventObject->facingDirection));
}
u8 GetTrainerBattleMode(void)
@@ -1215,9 +1215,9 @@ u8 GetTrainerBattleMode(void)
bool8 GetTrainerFlag(void)
{
if (InBattlePyramid())
- return GetBattlePyramidTrainerFlag(gSelectedMapObject);
+ return GetBattlePyramidTrainerFlag(gSelectedEventObject);
else if (InTrainerHill())
- return GetTrainerHillTrainerFlag(gSelectedMapObject);
+ return GetTrainerHillTrainerFlag(gSelectedEventObject);
else
return FlagGet(GetTrainerAFlag());
}
@@ -1306,7 +1306,7 @@ void BattleSetup_StartTrainerBattle(void)
static void CB2_EndTrainerBattle(void)
{
- if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
+ if (gTrainerBattleOpponent_A == TRAINER_SECRET_BASE)
{
SetMainCallback2(CB2_ReturnToFieldContinueScript);
}
@@ -1330,7 +1330,7 @@ static void CB2_EndTrainerBattle(void)
static void CB2_EndRematchBattle(void)
{
- if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
+ if (gTrainerBattleOpponent_A == TRAINER_SECRET_BASE)
{
SetMainCallback2(CB2_ReturnToFieldContinueScript);
}
@@ -1362,7 +1362,7 @@ void ShowTrainerIntroSpeech(void)
if (gNoOfApproachingTrainers == 0 || gNoOfApproachingTrainers == 1)
sub_81A9EDC(sub_81A9AA8(gSpecialVar_LastTalked));
else
- sub_81A9EDC(sub_81A9AA8(gMapObjects[gApproachingTrainers[gApproachingTrainerId].mapObjectId].localId));
+ sub_81A9EDC(sub_81A9AA8(gEventObjects[gApproachingTrainers[gApproachingTrainerId].eventObjectId].localId));
sub_80982B8();
}
@@ -1371,7 +1371,7 @@ void ShowTrainerIntroSpeech(void)
if (gNoOfApproachingTrainers == 0 || gNoOfApproachingTrainers == 1)
sub_81D572C(2, sub_81D6180(gSpecialVar_LastTalked));
else
- sub_81D572C(2, sub_81D6180(gMapObjects[gApproachingTrainers[gApproachingTrainerId].mapObjectId].localId));
+ sub_81D572C(2, sub_81D6180(gEventObjects[gApproachingTrainers[gApproachingTrainerId].eventObjectId].localId));
sub_80982B8();
}
@@ -1498,7 +1498,7 @@ const u8 *GetTrainerALoseText(void)
{
const u8 *string;
- if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
+ if (gTrainerBattleOpponent_A == TRAINER_SECRET_BASE)
string = GetSecretBaseTrainerLoseText();
else
string = sTrainerADefeatSpeech;
@@ -1592,11 +1592,11 @@ static bool32 UpdateRandomTrainerRematches(const struct RematchTrainer *table, u
{
if (gSaveBlock1Ptr->trainerRematches[i] != 0)
{
- // Trainer already wants a rematch. Don't bother updating it
+ // Trainer already wants a rematch. Don't bother updating it.
ret = TRUE;
}
else if (FlagGet(FLAG_MATCH_CALL_REGISTERED + i)
- && (Random() % 100) <= 30) // 31% chance of getting a rematch
+ && (Random() % 100) <= 30) // 31% chance of getting a rematch.
{
SetRematchIdForTrainer(table, i);
ret = TRUE;