mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-26 03:34:15 +01:00
Document battle factory functions
This commit is contained in:
parent
b52871433a
commit
4785a07acd
@ -2,10 +2,10 @@
|
|||||||
#define GUARD_BATTLE_FACTORY_H
|
#define GUARD_BATTLE_FACTORY_H
|
||||||
|
|
||||||
void CallBattleFactoryFunction(void);
|
void CallBattleFactoryFunction(void);
|
||||||
bool8 sub_81A6BF4(void);
|
bool8 InBattleFactory(void);
|
||||||
u8 GetFactoryMonFixedIV(u8 arg0, u8 arg1);
|
u8 GetFactoryMonFixedIV(u8 arg0, u8 arg1);
|
||||||
void FillFactoryBrainParty(void);
|
void FillFactoryBrainParty(void);
|
||||||
u8 sub_81A6F70(u8 battleMode, u8 lvlMode);
|
u8 GetNumPastRentalsRank(u8 battleMode, u8 lvlMode);
|
||||||
u32 GetAiScriptsInBattleFactory(void);
|
u32 GetAiScriptsInBattleFactory(void);
|
||||||
void SetMonMoveAvoidReturn(struct Pokemon *mon, u16 moveArg, u8 moveSlot);
|
void SetMonMoveAvoidReturn(struct Pokemon *mon, u16 moveArg, u8 moveSlot);
|
||||||
|
|
||||||
|
@ -277,7 +277,7 @@ struct FrontierMonData
|
|||||||
u8 nature;
|
u8 nature;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Struct_field_E70
|
struct RentalMon
|
||||||
{
|
{
|
||||||
u16 monId;
|
u16 monId;
|
||||||
u32 personality;
|
u32 personality;
|
||||||
@ -370,7 +370,7 @@ struct BattleFrontier
|
|||||||
/*0xE6A*/ u16 field_E6A;
|
/*0xE6A*/ u16 field_E6A;
|
||||||
/*0xE6C*/ u16 field_E6C;
|
/*0xE6C*/ u16 field_E6C;
|
||||||
/*0xE6E*/ u16 field_E6E;
|
/*0xE6E*/ u16 field_E6E;
|
||||||
/*0xE70*/ struct Struct_field_E70 field_E70[6];
|
/*0xE70*/ struct RentalMon rentalMons[6];
|
||||||
/*0xEB8*/ u16 battlePoints;
|
/*0xEB8*/ u16 battlePoints;
|
||||||
/*0xEBA*/ u16 field_EBA;
|
/*0xEBA*/ u16 field_EBA;
|
||||||
/*0xEBC*/ u32 battlesCount;
|
/*0xEBC*/ u32 battlesCount;
|
||||||
|
@ -16,28 +16,28 @@
|
|||||||
#include "constants/moves.h"
|
#include "constants/moves.h"
|
||||||
|
|
||||||
// IWRAM bss
|
// IWRAM bss
|
||||||
static IWRAM_DATA bool8 gUnknown_03001288;
|
static IWRAM_DATA bool8 sPerformedRentalSwap;
|
||||||
|
|
||||||
// This file's functions.
|
// This file's functions.
|
||||||
static void sub_81A5E94(void);
|
static void InitFactoryChallenge(void);
|
||||||
static void sub_81A5FA8(void);
|
static void GetBattleFactoryData(void);
|
||||||
static void sub_81A6054(void);
|
static void SetBattleFactoryData(void);
|
||||||
static void sub_81A613C(void);
|
static void sub_81A613C(void);
|
||||||
static void nullsub_75(void);
|
static void nullsub_75(void);
|
||||||
static void nullsub_123(void);
|
static void nullsub_123(void);
|
||||||
static void sub_81A6188(void);
|
static void SelectInitialRentalMons(void);
|
||||||
static void sub_81A6198(void);
|
static void SwapRentalMons(void);
|
||||||
static void sub_81A61A4(void);
|
static void SetPerformedRentalSwap(void);
|
||||||
static void sub_81A63CC(void);
|
static void SetRentalsToOpponentParty(void);
|
||||||
static void sub_81A64C4(void);
|
static void SetPlayerAndOpponentParties(void);
|
||||||
static void sub_81A63B8(void);
|
static void SetOpponentGfxVar(void);
|
||||||
static void sub_81A61B0(void);
|
static void GenerateOpponentMons(void);
|
||||||
static void sub_81A67EC(void);
|
static void GenerateInitialRentalMons(void);
|
||||||
static void sub_81A6A08(void);
|
static void GetOpponentMostCommonMonType(void);
|
||||||
static void sub_81A6AEC(void);
|
static void GetOpponentBattleStyle(void);
|
||||||
static void sub_81A6C1C(void);
|
static void RestorePlayerPartyHeldItems(void);
|
||||||
static u16 GetMonSetId(u8 lvlMode, u8 challengeNum, bool8 arg2);
|
static u16 GetMonSetId(u8 lvlMode, u8 challengeNum, bool8 arg2);
|
||||||
static u8 GetStyleForMove(u16 move);
|
static u8 GetMoveBattleStyle(u16 move);
|
||||||
|
|
||||||
// Const rom data.
|
// Const rom data.
|
||||||
static const u8 sRequiredMoveCounts[] = {3, 3, 3, 2, 2, 2, 2};
|
static const u8 sRequiredMoveCounts[] = {3, 3, 3, 2, 2, 2, 2};
|
||||||
@ -110,25 +110,25 @@ static const u16 *const sMoveStyles[] =
|
|||||||
sMoves_DependsOnTheBattlesFlow,
|
sMoves_DependsOnTheBattlesFlow,
|
||||||
};
|
};
|
||||||
|
|
||||||
static void (* const gUnknown_08612120[])(void) =
|
static void (* const sBattleFactoryFunctions[])(void) =
|
||||||
{
|
{
|
||||||
sub_81A5E94,
|
InitFactoryChallenge,
|
||||||
sub_81A5FA8,
|
GetBattleFactoryData,
|
||||||
sub_81A6054,
|
SetBattleFactoryData,
|
||||||
sub_81A613C,
|
sub_81A613C,
|
||||||
nullsub_75,
|
nullsub_75,
|
||||||
nullsub_123,
|
nullsub_123,
|
||||||
sub_81A6188,
|
SelectInitialRentalMons,
|
||||||
sub_81A6198,
|
SwapRentalMons,
|
||||||
sub_81A61A4,
|
SetPerformedRentalSwap,
|
||||||
sub_81A63CC,
|
SetRentalsToOpponentParty,
|
||||||
sub_81A64C4,
|
SetPlayerAndOpponentParties,
|
||||||
sub_81A63B8,
|
SetOpponentGfxVar,
|
||||||
sub_81A61B0,
|
GenerateOpponentMons,
|
||||||
sub_81A67EC,
|
GenerateInitialRentalMons,
|
||||||
sub_81A6A08,
|
GetOpponentMostCommonMonType,
|
||||||
sub_81A6AEC,
|
GetOpponentBattleStyle,
|
||||||
sub_81A6C1C,
|
RestorePlayerPartyHeldItems,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const u32 gUnknown_08612164[][2] =
|
static const u32 gUnknown_08612164[][2] =
|
||||||
@ -178,10 +178,10 @@ static const u16 sMonsToChooseFrom[][2] =
|
|||||||
// code
|
// code
|
||||||
void CallBattleFactoryFunction(void)
|
void CallBattleFactoryFunction(void)
|
||||||
{
|
{
|
||||||
gUnknown_08612120[gSpecialVar_0x8004]();
|
sBattleFactoryFunctions[gSpecialVar_0x8004]();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A5E94(void)
|
static void InitFactoryChallenge(void)
|
||||||
{
|
{
|
||||||
u8 i;
|
u8 i;
|
||||||
u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
||||||
@ -197,9 +197,9 @@ static void sub_81A5E94(void)
|
|||||||
gSaveBlock2Ptr->frontier.factoryRentsCount[battleMode][lvlMode] = 0;
|
gSaveBlock2Ptr->frontier.factoryRentsCount[battleMode][lvlMode] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
gUnknown_03001288 = FALSE;
|
sPerformedRentalSwap = FALSE;
|
||||||
for (i = 0; i < 6; i++)
|
for (i = 0; i < 6; i++)
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i].monId = 0xFFFF;
|
gSaveBlock2Ptr->frontier.rentalMons[i].monId = 0xFFFF;
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
gUnknown_03006298[i] = 0xFFFF;
|
gUnknown_03006298[i] = 0xFFFF;
|
||||||
|
|
||||||
@ -207,10 +207,10 @@ static void sub_81A5E94(void)
|
|||||||
gTrainerBattleOpponent_A = 0;
|
gTrainerBattleOpponent_A = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A5FA8(void)
|
static void GetBattleFactoryData(void)
|
||||||
{
|
{
|
||||||
u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
int lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
||||||
u32 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
int battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
||||||
|
|
||||||
switch (gSpecialVar_0x8005)
|
switch (gSpecialVar_0x8005)
|
||||||
{
|
{
|
||||||
@ -226,10 +226,10 @@ static void sub_81A5FA8(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A6054(void)
|
static void SetBattleFactoryData(void)
|
||||||
{
|
{
|
||||||
u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
int lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
||||||
u32 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
int battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
||||||
|
|
||||||
switch (gSpecialVar_0x8005)
|
switch (gSpecialVar_0x8005)
|
||||||
{
|
{
|
||||||
@ -243,10 +243,10 @@ static void sub_81A6054(void)
|
|||||||
gSaveBlock2Ptr->frontier.field_CDC &= gUnknown_08612174[battleMode][lvlMode];
|
gSaveBlock2Ptr->frontier.field_CDC &= gUnknown_08612174[battleMode][lvlMode];
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
if (gUnknown_03001288 == TRUE)
|
if (sPerformedRentalSwap == TRUE)
|
||||||
{
|
{
|
||||||
gSaveBlock2Ptr->frontier.factoryRentsCount[battleMode][lvlMode] = gSpecialVar_0x8006;
|
gSaveBlock2Ptr->frontier.factoryRentsCount[battleMode][lvlMode] = gSpecialVar_0x8006;
|
||||||
gUnknown_03001288 = FALSE;
|
sPerformedRentalSwap = FALSE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -270,28 +270,28 @@ static void nullsub_123(void)
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A6188(void)
|
static void SelectInitialRentalMons(void)
|
||||||
{
|
{
|
||||||
ZeroPlayerPartyMons();
|
ZeroPlayerPartyMons();
|
||||||
DoBattleFactorySelectScreen();
|
DoBattleFactorySelectScreen();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A6198(void)
|
static void SwapRentalMons(void)
|
||||||
{
|
{
|
||||||
DoBattleFactorySwapScreen();
|
DoBattleFactorySwapScreen();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A61A4(void)
|
static void SetPerformedRentalSwap(void)
|
||||||
{
|
{
|
||||||
gUnknown_03001288 = TRUE;
|
sPerformedRentalSwap = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A61B0(void)
|
static void GenerateOpponentMons(void)
|
||||||
{
|
{
|
||||||
s32 i, j, k;
|
int i, j, k;
|
||||||
u16 species[3];
|
u16 species[3];
|
||||||
u16 heldItems[3];
|
u16 heldItems[3];
|
||||||
s32 firstMonId = 0;
|
int firstMonId = 0;
|
||||||
u16 trainerId = 0;
|
u16 trainerId = 0;
|
||||||
u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
u32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
||||||
u32 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
u32 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
||||||
@ -322,7 +322,7 @@ static void sub_81A61B0(void)
|
|||||||
|
|
||||||
for (j = 0; j < 6; j++)
|
for (j = 0; j < 6; j++)
|
||||||
{
|
{
|
||||||
if (gFacilityTrainerMons[monSetId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.field_E70[j].monId].species)
|
if (gFacilityTrainerMons[monSetId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.rentalMons[j].monId].species)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (j != 6)
|
if (j != 6)
|
||||||
@ -333,6 +333,7 @@ static void sub_81A61B0(void)
|
|||||||
|
|
||||||
for (k = firstMonId; k < firstMonId + i; k++)
|
for (k = firstMonId; k < firstMonId + i; k++)
|
||||||
{
|
{
|
||||||
|
// BUG: Small undefined behavior bug, since species array values were not initialized.
|
||||||
if (species[k] == gFacilityTrainerMons[monSetId].species)
|
if (species[k] == gFacilityTrainerMons[monSetId].species)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -341,6 +342,7 @@ static void sub_81A61B0(void)
|
|||||||
|
|
||||||
for (k = firstMonId; k < firstMonId + i; k++)
|
for (k = firstMonId; k < firstMonId + i; k++)
|
||||||
{
|
{
|
||||||
|
// BUG: Small undefined behavior bug, since heldItems array values were not initialized.
|
||||||
if (heldItems[k] != 0 && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId])
|
if (heldItems[k] != 0 && heldItems[k] == gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId])
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -354,12 +356,12 @@ static void sub_81A61B0(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A63B8(void)
|
static void SetOpponentGfxVar(void)
|
||||||
{
|
{
|
||||||
SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0);
|
SetBattleFacilityTrainerGfxId(gTrainerBattleOpponent_A, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A63CC(void)
|
static void SetRentalsToOpponentParty(void)
|
||||||
{
|
{
|
||||||
u8 i;
|
u8 i;
|
||||||
|
|
||||||
@ -370,18 +372,18 @@ static void sub_81A63CC(void)
|
|||||||
|
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i + 3].monId = gUnknown_03006298[i];
|
gSaveBlock2Ptr->frontier.rentalMons[i + 3].monId = gUnknown_03006298[i];
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i + 3].ivs = GetBoxMonData(&gEnemyParty[i].box, MON_DATA_ATK_IV, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[i + 3].ivs = GetBoxMonData(&gEnemyParty[i].box, MON_DATA_ATK_IV, NULL);
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i + 3].personality = GetMonData(&gEnemyParty[i], MON_DATA_PERSONALITY, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[i + 3].personality = GetMonData(&gEnemyParty[i], MON_DATA_PERSONALITY, NULL);
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i + 3].abilityBit = GetBoxMonData(&gEnemyParty[i].box, MON_DATA_ALT_ABILITY, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[i + 3].abilityBit = GetBoxMonData(&gEnemyParty[i].box, MON_DATA_ALT_ABILITY, NULL);
|
||||||
SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[gUnknown_03006298[i]].itemTableId]);
|
SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[gUnknown_03006298[i]].itemTableId]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A64C4(void)
|
static void SetPlayerAndOpponentParties(void)
|
||||||
{
|
{
|
||||||
s32 i, j, k;
|
int i, j, k;
|
||||||
s32 count = 0;
|
int count = 0;
|
||||||
u8 bits = 0;
|
u8 bits = 0;
|
||||||
u8 monLevel;
|
u8 monLevel;
|
||||||
u16 monSetId;
|
u16 monSetId;
|
||||||
@ -408,13 +410,13 @@ static void sub_81A64C4(void)
|
|||||||
ZeroPlayerPartyMons();
|
ZeroPlayerPartyMons();
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
monSetId = gSaveBlock2Ptr->frontier.field_E70[i].monId;
|
monSetId = gSaveBlock2Ptr->frontier.rentalMons[i].monId;
|
||||||
ivs = gSaveBlock2Ptr->frontier.field_E70[i].ivs;
|
ivs = gSaveBlock2Ptr->frontier.rentalMons[i].ivs;
|
||||||
CreateMon(&gPlayerParty[i],
|
CreateMon(&gPlayerParty[i],
|
||||||
gFacilityTrainerMons[monSetId].species,
|
gFacilityTrainerMons[monSetId].species,
|
||||||
monLevel,
|
monLevel,
|
||||||
ivs,
|
ivs,
|
||||||
TRUE, gSaveBlock2Ptr->frontier.field_E70[i].personality,
|
TRUE, gSaveBlock2Ptr->frontier.rentalMons[i].personality,
|
||||||
0, 0);
|
0, 0);
|
||||||
|
|
||||||
count = 0;
|
count = 0;
|
||||||
@ -439,7 +441,7 @@ static void sub_81A64C4(void)
|
|||||||
SetMonMoveAvoidReturn(&gPlayerParty[i], gFacilityTrainerMons[monSetId].moves[k], k);
|
SetMonMoveAvoidReturn(&gPlayerParty[i], gFacilityTrainerMons[monSetId].moves[k], k);
|
||||||
SetMonData(&gPlayerParty[i], MON_DATA_FRIENDSHIP, &friendship);
|
SetMonData(&gPlayerParty[i], MON_DATA_FRIENDSHIP, &friendship);
|
||||||
SetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId]);
|
SetMonData(&gPlayerParty[i], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId]);
|
||||||
SetMonData(&gPlayerParty[i], MON_DATA_ALT_ABILITY, &gSaveBlock2Ptr->frontier.field_E70[i].abilityBit);
|
SetMonData(&gPlayerParty[i], MON_DATA_ALT_ABILITY, &gSaveBlock2Ptr->frontier.rentalMons[i].abilityBit);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -449,13 +451,13 @@ static void sub_81A64C4(void)
|
|||||||
case 2:
|
case 2:
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
monSetId = gSaveBlock2Ptr->frontier.field_E70[i + 3].monId;
|
monSetId = gSaveBlock2Ptr->frontier.rentalMons[i + 3].monId;
|
||||||
ivs = gSaveBlock2Ptr->frontier.field_E70[i + 3].ivs;
|
ivs = gSaveBlock2Ptr->frontier.rentalMons[i + 3].ivs;
|
||||||
CreateMon(&gEnemyParty[i],
|
CreateMon(&gEnemyParty[i],
|
||||||
gFacilityTrainerMons[monSetId].species,
|
gFacilityTrainerMons[monSetId].species,
|
||||||
monLevel,
|
monLevel,
|
||||||
ivs,
|
ivs,
|
||||||
TRUE, gSaveBlock2Ptr->frontier.field_E70[i + 3].personality,
|
TRUE, gSaveBlock2Ptr->frontier.rentalMons[i + 3].personality,
|
||||||
0, 0);
|
0, 0);
|
||||||
|
|
||||||
count = 0;
|
count = 0;
|
||||||
@ -478,15 +480,15 @@ static void sub_81A64C4(void)
|
|||||||
for (k = 0; k < MAX_MON_MOVES; k++)
|
for (k = 0; k < MAX_MON_MOVES; k++)
|
||||||
SetMonMoveAvoidReturn(&gEnemyParty[i], gFacilityTrainerMons[monSetId].moves[k], k);
|
SetMonMoveAvoidReturn(&gEnemyParty[i], gFacilityTrainerMons[monSetId].moves[k], k);
|
||||||
SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId]);
|
SetMonData(&gEnemyParty[i], MON_DATA_HELD_ITEM, &gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId]);
|
||||||
SetMonData(&gEnemyParty[i], MON_DATA_ALT_ABILITY, &gSaveBlock2Ptr->frontier.field_E70[i + 3].abilityBit);
|
SetMonData(&gEnemyParty[i], MON_DATA_ALT_ABILITY, &gSaveBlock2Ptr->frontier.rentalMons[i + 3].abilityBit);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A67EC(void)
|
static void GenerateInitialRentalMons(void)
|
||||||
{
|
{
|
||||||
s32 i, j;
|
int i, j;
|
||||||
u8 firstMonId;
|
u8 firstMonId;
|
||||||
u8 battleMode;
|
u8 battleMode;
|
||||||
u8 lvlMode;
|
u8 lvlMode;
|
||||||
@ -526,7 +528,7 @@ static void sub_81A67EC(void)
|
|||||||
factoryLvlMode = FRONTIER_LVL_50;
|
factoryLvlMode = FRONTIER_LVL_50;
|
||||||
firstMonId = 0;
|
firstMonId = 0;
|
||||||
}
|
}
|
||||||
var_40 = sub_81A6F70(factoryBattleMode, factoryLvlMode);
|
var_40 = GetNumPastRentalsRank(factoryBattleMode, factoryLvlMode);
|
||||||
|
|
||||||
currSpecies = SPECIES_NONE;
|
currSpecies = SPECIES_NONE;
|
||||||
i = 0;
|
i = 0;
|
||||||
@ -570,7 +572,7 @@ static void sub_81A67EC(void)
|
|||||||
if (j != firstMonId + i)
|
if (j != firstMonId + i)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i].monId = monSetId;
|
gSaveBlock2Ptr->frontier.rentalMons[i].monId = monSetId;
|
||||||
species[i] = gFacilityTrainerMons[monSetId].species;
|
species[i] = gFacilityTrainerMons[monSetId].species;
|
||||||
heldItems[i] = gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId];
|
heldItems[i] = gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId];
|
||||||
monIds[i] = monSetId;
|
monIds[i] = monSetId;
|
||||||
@ -578,7 +580,7 @@ static void sub_81A67EC(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A6A08(void)
|
static void GetOpponentMostCommonMonType(void)
|
||||||
{
|
{
|
||||||
u8 i;
|
u8 i;
|
||||||
u8 typesCount[NUMBER_OF_MON_TYPES];
|
u8 typesCount[NUMBER_OF_MON_TYPES];
|
||||||
@ -613,7 +615,7 @@ static void sub_81A6A08(void)
|
|||||||
gSpecialVar_Result = NUMBER_OF_MON_TYPES;
|
gSpecialVar_Result = NUMBER_OF_MON_TYPES;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A6AEC(void)
|
static void GetOpponentBattleStyle(void)
|
||||||
{
|
{
|
||||||
u8 i, j, count;
|
u8 i, j, count;
|
||||||
u8 stylePoints[8];
|
u8 stylePoints[8];
|
||||||
@ -622,13 +624,14 @@ static void sub_81A6AEC(void)
|
|||||||
gFacilityTrainerMons = gBattleFrontierMons;
|
gFacilityTrainerMons = gBattleFrontierMons;
|
||||||
for (i = 0; i < 8; i++)
|
for (i = 0; i < 8; i++)
|
||||||
stylePoints[i] = 0;
|
stylePoints[i] = 0;
|
||||||
|
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
u16 monSetId = gUnknown_03006298[i];
|
u16 monSetId = gUnknown_03006298[i];
|
||||||
for (j = 0; j < MAX_MON_MOVES; j++)
|
for (j = 0; j < MAX_MON_MOVES; j++)
|
||||||
{
|
{
|
||||||
u8 id = GetStyleForMove(gFacilityTrainerMons[monSetId].moves[j]);
|
u8 battleStyle = GetMoveBattleStyle(gFacilityTrainerMons[monSetId].moves[j]);
|
||||||
stylePoints[id]++;
|
stylePoints[battleStyle]++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -641,11 +644,12 @@ static void sub_81A6AEC(void)
|
|||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (count > 2)
|
if (count > 2)
|
||||||
gSpecialVar_Result = 8;
|
gSpecialVar_Result = 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u8 GetStyleForMove(u16 move)
|
static u8 GetMoveBattleStyle(u16 move)
|
||||||
{
|
{
|
||||||
const u16 *moves;
|
const u16 *moves;
|
||||||
u8 i, j;
|
u8 i, j;
|
||||||
@ -661,13 +665,13 @@ static u8 GetStyleForMove(u16 move)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool8 sub_81A6BF4(void)
|
bool8 InBattleFactory(void)
|
||||||
{
|
{
|
||||||
return gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM
|
return gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM
|
||||||
|| gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM;
|
|| gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_81A6C1C(void)
|
static void RestorePlayerPartyHeldItems(void)
|
||||||
{
|
{
|
||||||
u8 i;
|
u8 i;
|
||||||
|
|
||||||
@ -680,7 +684,7 @@ static void sub_81A6C1C(void)
|
|||||||
{
|
{
|
||||||
SetMonData(&gPlayerParty[i],
|
SetMonData(&gPlayerParty[i],
|
||||||
MON_DATA_HELD_ITEM,
|
MON_DATA_HELD_ITEM,
|
||||||
&gBattleFrontierHeldItems[gFacilityTrainerMons[gSaveBlock2Ptr->frontier.field_E70[i].monId].itemTableId]);
|
&gBattleFrontierHeldItems[gFacilityTrainerMons[gSaveBlock2Ptr->frontier.rentalMons[i].monId].itemTableId]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -699,11 +703,11 @@ u8 GetFactoryMonFixedIV(u8 arg0, u8 arg1)
|
|||||||
|
|
||||||
void FillFactoryBrainParty(void)
|
void FillFactoryBrainParty(void)
|
||||||
{
|
{
|
||||||
s32 i, j, k;
|
int i, j, k;
|
||||||
u16 species[3];
|
u16 species[3];
|
||||||
u16 heldItems[3];
|
u16 heldItems[3];
|
||||||
u8 friendship;
|
u8 friendship;
|
||||||
s32 monLevel;
|
int monLevel;
|
||||||
u8 fixedIV;
|
u8 fixedIV;
|
||||||
u32 otId;
|
u32 otId;
|
||||||
|
|
||||||
@ -726,7 +730,7 @@ void FillFactoryBrainParty(void)
|
|||||||
|
|
||||||
for (j = 0; j < 6; j++)
|
for (j = 0; j < 6; j++)
|
||||||
{
|
{
|
||||||
if (monSetId == gSaveBlock2Ptr->frontier.field_E70[j].monId)
|
if (monSetId == gSaveBlock2Ptr->frontier.rentalMons[j].monId)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (j != 6)
|
if (j != 6)
|
||||||
@ -769,7 +773,7 @@ void FillFactoryBrainParty(void)
|
|||||||
|
|
||||||
static u16 GetMonSetId(u8 lvlMode, u8 challengeNum, bool8 arg2)
|
static u16 GetMonSetId(u8 lvlMode, u8 challengeNum, bool8 arg2)
|
||||||
{
|
{
|
||||||
u16 range, ret;
|
u16 range, monSetId;
|
||||||
u16 adder;
|
u16 adder;
|
||||||
|
|
||||||
if (lvlMode == FRONTIER_LVL_50)
|
if (lvlMode == FRONTIER_LVL_50)
|
||||||
@ -782,14 +786,14 @@ static u16 GetMonSetId(u8 lvlMode, u8 challengeNum, bool8 arg2)
|
|||||||
if (arg2)
|
if (arg2)
|
||||||
{
|
{
|
||||||
range = (sMonsToChooseFrom[adder + challengeNum + 1][1] - sMonsToChooseFrom[adder + challengeNum + 1][0]) + 1;
|
range = (sMonsToChooseFrom[adder + challengeNum + 1][1] - sMonsToChooseFrom[adder + challengeNum + 1][0]) + 1;
|
||||||
ret = Random() % range;
|
monSetId = Random() % range;
|
||||||
ret += sMonsToChooseFrom[adder + challengeNum + 1][0];
|
monSetId += sMonsToChooseFrom[adder + challengeNum + 1][0];
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
range = (sMonsToChooseFrom[adder + challengeNum][1] - sMonsToChooseFrom[adder + challengeNum][0]) + 1;
|
range = (sMonsToChooseFrom[adder + challengeNum][1] - sMonsToChooseFrom[adder + challengeNum][0]) + 1;
|
||||||
ret = Random() % range;
|
monSetId = Random() % range;
|
||||||
ret += sMonsToChooseFrom[adder + challengeNum][0];
|
monSetId += sMonsToChooseFrom[adder + challengeNum][0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -798,14 +802,14 @@ static u16 GetMonSetId(u8 lvlMode, u8 challengeNum, bool8 arg2)
|
|||||||
if (num != 7)
|
if (num != 7)
|
||||||
num = 7;
|
num = 7;
|
||||||
range = (sMonsToChooseFrom[adder + num][1] - sMonsToChooseFrom[adder + num][0]) + 1;
|
range = (sMonsToChooseFrom[adder + num][1] - sMonsToChooseFrom[adder + num][0]) + 1;
|
||||||
ret = Random() % range;
|
monSetId = Random() % range;
|
||||||
ret += sMonsToChooseFrom[adder + num][0];
|
monSetId += sMonsToChooseFrom[adder + num][0];
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return monSetId;
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 sub_81A6F70(u8 battleMode, u8 lvlMode)
|
u8 GetNumPastRentalsRank(u8 battleMode, u8 lvlMode)
|
||||||
{
|
{
|
||||||
u8 ret;
|
u8 ret;
|
||||||
u8 rents = gSaveBlock2Ptr->frontier.factoryRentsCount[battleMode][lvlMode];
|
u8 rents = gSaveBlock2Ptr->frontier.factoryRentsCount[battleMode][lvlMode];
|
||||||
@ -828,7 +832,7 @@ u8 sub_81A6F70(u8 battleMode, u8 lvlMode)
|
|||||||
|
|
||||||
u32 GetAiScriptsInBattleFactory(void)
|
u32 GetAiScriptsInBattleFactory(void)
|
||||||
{
|
{
|
||||||
s32 lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
int lvlMode = gSaveBlock2Ptr->frontier.lvlMode;
|
||||||
|
|
||||||
if (lvlMode == FRONTIER_LVL_TENT)
|
if (lvlMode == FRONTIER_LVL_TENT)
|
||||||
{
|
{
|
||||||
@ -836,8 +840,8 @@ u32 GetAiScriptsInBattleFactory(void)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
s32 battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
int battleMode = VarGet(VAR_FRONTIER_BATTLE_MODE);
|
||||||
s32 challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / 7;
|
int challengeNum = gSaveBlock2Ptr->frontier.factoryWinStreaks[battleMode][lvlMode] / 7;
|
||||||
|
|
||||||
if (gTrainerBattleOpponent_A == TRAINER_FRONTIER_BRAIN)
|
if (gTrainerBattleOpponent_A == TRAINER_FRONTIER_BRAIN)
|
||||||
return AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY;
|
return AI_SCRIPT_CHECK_BAD_MOVE | AI_SCRIPT_TRY_TO_FAINT | AI_SCRIPT_CHECK_VIABILITY;
|
||||||
|
@ -1673,12 +1673,12 @@ static void CreateFrontierFactorySelectableMons(u8 firstMonId)
|
|||||||
else
|
else
|
||||||
level = 50;
|
level = 50;
|
||||||
|
|
||||||
var_28 = sub_81A6F70(battleMode, lvlMode);
|
var_28 = GetNumPastRentalsRank(battleMode, lvlMode);
|
||||||
otId = T1_READ_32(gSaveBlock2Ptr->playerTrainerId);
|
otId = T1_READ_32(gSaveBlock2Ptr->playerTrainerId);
|
||||||
|
|
||||||
for (i = 0; i < SELECTABLE_MONS_COUNT; i++)
|
for (i = 0; i < SELECTABLE_MONS_COUNT; i++)
|
||||||
{
|
{
|
||||||
u16 monSetId = gSaveBlock2Ptr->frontier.field_E70[i].monId;
|
u16 monSetId = gSaveBlock2Ptr->frontier.rentalMons[i].monId;
|
||||||
sFactorySelectScreen->mons[i + firstMonId].monSetId = monSetId;
|
sFactorySelectScreen->mons[i + firstMonId].monSetId = monSetId;
|
||||||
if (i < var_28)
|
if (i < var_28)
|
||||||
ivs = GetFactoryMonFixedIV(challengeNum + 1, 0);
|
ivs = GetFactoryMonFixedIV(challengeNum + 1, 0);
|
||||||
@ -1712,7 +1712,7 @@ static void CreateTentFactorySelectableMons(u8 firstMonId)
|
|||||||
|
|
||||||
for (i = 0; i < SELECTABLE_MONS_COUNT; i++)
|
for (i = 0; i < SELECTABLE_MONS_COUNT; i++)
|
||||||
{
|
{
|
||||||
u16 monSetId = gSaveBlock2Ptr->frontier.field_E70[i].monId;
|
u16 monSetId = gSaveBlock2Ptr->frontier.rentalMons[i].monId;
|
||||||
sFactorySelectScreen->mons[i + firstMonId].monSetId = monSetId;
|
sFactorySelectScreen->mons[i + firstMonId].monSetId = monSetId;
|
||||||
CreateMonWithEVSpreadNatureOTID(&sFactorySelectScreen->mons[i + firstMonId].monData,
|
CreateMonWithEVSpreadNatureOTID(&sFactorySelectScreen->mons[i + firstMonId].monData,
|
||||||
gFacilityTrainerMons[monSetId].species,
|
gFacilityTrainerMons[monSetId].species,
|
||||||
@ -1740,10 +1740,10 @@ static void Select_CopyMonsToPlayerParty(void)
|
|||||||
if (sFactorySelectScreen->mons[j].selectedId == i + 1)
|
if (sFactorySelectScreen->mons[j].selectedId == i + 1)
|
||||||
{
|
{
|
||||||
gPlayerParty[i] = sFactorySelectScreen->mons[j].monData;
|
gPlayerParty[i] = sFactorySelectScreen->mons[j].monData;
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i].monId = sFactorySelectScreen->mons[j].monSetId;
|
gSaveBlock2Ptr->frontier.rentalMons[i].monId = sFactorySelectScreen->mons[j].monSetId;
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i].personality = GetMonData(&gPlayerParty[i].box, MON_DATA_PERSONALITY, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[i].personality = GetMonData(&gPlayerParty[i].box, MON_DATA_PERSONALITY, NULL);
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i].abilityBit = GetBoxMonData(&gPlayerParty[i].box, MON_DATA_ALT_ABILITY, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[i].abilityBit = GetBoxMonData(&gPlayerParty[i].box, MON_DATA_ALT_ABILITY, NULL);
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i].ivs = GetBoxMonData(&gPlayerParty[i].box, MON_DATA_ATK_IV, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[i].ivs = GetBoxMonData(&gPlayerParty[i].box, MON_DATA_ATK_IV, NULL);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2263,10 +2263,10 @@ static void CopySwappedMonData(void)
|
|||||||
gPlayerParty[sFactorySwapScreen->playerMonId] = gEnemyParty[sFactorySwapScreen->enemyMonId];
|
gPlayerParty[sFactorySwapScreen->playerMonId] = gEnemyParty[sFactorySwapScreen->enemyMonId];
|
||||||
happiness = 0;
|
happiness = 0;
|
||||||
SetMonData(&gPlayerParty[sFactorySwapScreen->playerMonId], MON_DATA_FRIENDSHIP, &happiness);
|
SetMonData(&gPlayerParty[sFactorySwapScreen->playerMonId], MON_DATA_FRIENDSHIP, &happiness);
|
||||||
gSaveBlock2Ptr->frontier.field_E70[sFactorySwapScreen->playerMonId].monId = gSaveBlock2Ptr->frontier.field_E70[sFactorySwapScreen->enemyMonId + 3].monId;
|
gSaveBlock2Ptr->frontier.rentalMons[sFactorySwapScreen->playerMonId].monId = gSaveBlock2Ptr->frontier.rentalMons[sFactorySwapScreen->enemyMonId + 3].monId;
|
||||||
gSaveBlock2Ptr->frontier.field_E70[sFactorySwapScreen->playerMonId].ivs = gSaveBlock2Ptr->frontier.field_E70[sFactorySwapScreen->enemyMonId + 3].ivs;
|
gSaveBlock2Ptr->frontier.rentalMons[sFactorySwapScreen->playerMonId].ivs = gSaveBlock2Ptr->frontier.rentalMons[sFactorySwapScreen->enemyMonId + 3].ivs;
|
||||||
gSaveBlock2Ptr->frontier.field_E70[sFactorySwapScreen->playerMonId].personality = GetMonData(&gEnemyParty[sFactorySwapScreen->enemyMonId], MON_DATA_PERSONALITY, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[sFactorySwapScreen->playerMonId].personality = GetMonData(&gEnemyParty[sFactorySwapScreen->enemyMonId], MON_DATA_PERSONALITY, NULL);
|
||||||
gSaveBlock2Ptr->frontier.field_E70[sFactorySwapScreen->playerMonId].abilityBit = GetBoxMonData(&gEnemyParty[sFactorySwapScreen->enemyMonId].box, MON_DATA_ALT_ABILITY, NULL);
|
gSaveBlock2Ptr->frontier.rentalMons[sFactorySwapScreen->playerMonId].abilityBit = GetBoxMonData(&gEnemyParty[sFactorySwapScreen->enemyMonId].box, MON_DATA_ALT_ABILITY, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Task_FromSwapScreenToSummaryScreen(u8 taskId)
|
static void Task_FromSwapScreenToSummaryScreen(u8 taskId)
|
||||||
|
@ -329,7 +329,7 @@ static void sub_81B9EC0(void)
|
|||||||
if (j != i + firstMonId)
|
if (j != i + firstMonId)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
gSaveBlock2Ptr->frontier.field_E70[i].monId = monSetId;
|
gSaveBlock2Ptr->frontier.rentalMons[i].monId = monSetId;
|
||||||
species[i] = gFacilityTrainerMons[monSetId].species;
|
species[i] = gFacilityTrainerMons[monSetId].species;
|
||||||
heldItems[i] = gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId];
|
heldItems[i] = gBattleFrontierHeldItems[gFacilityTrainerMons[monSetId].itemTableId];
|
||||||
monIds[i] = monSetId;
|
monIds[i] = monSetId;
|
||||||
@ -379,7 +379,7 @@ static void sub_81BA040(void)
|
|||||||
sRandMonSetId = monSets[Random() % setsCount];
|
sRandMonSetId = monSets[Random() % setsCount];
|
||||||
for (j = 0; j < 6; j++)
|
for (j = 0; j < 6; j++)
|
||||||
{
|
{
|
||||||
if (gFacilityTrainerMons[sRandMonSetId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.field_E70[j].monId].species)
|
if (gFacilityTrainerMons[sRandMonSetId].species == gFacilityTrainerMons[gSaveBlock2Ptr->frontier.rentalMons[j].monId].species)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (j != 6)
|
if (j != 6)
|
||||||
|
@ -2801,7 +2801,7 @@ static void CreatePageWindowTilemaps(u8 page)
|
|||||||
case PSS_PAGE_INFO:
|
case PSS_PAGE_INFO:
|
||||||
PutWindowTilemap(0);
|
PutWindowTilemap(0);
|
||||||
PutWindowTilemap(4);
|
PutWindowTilemap(4);
|
||||||
if (sub_81A6BF4() == TRUE || sub_81B9E94() == TRUE)
|
if (InBattleFactory() == TRUE || sub_81B9E94() == TRUE)
|
||||||
PutWindowTilemap(8);
|
PutWindowTilemap(8);
|
||||||
PutWindowTilemap(9);
|
PutWindowTilemap(9);
|
||||||
break;
|
break;
|
||||||
@ -2852,7 +2852,7 @@ static void ClearPageWindowTilemaps(u8 page)
|
|||||||
{
|
{
|
||||||
case PSS_PAGE_INFO:
|
case PSS_PAGE_INFO:
|
||||||
ClearWindowTilemap(4);
|
ClearWindowTilemap(4);
|
||||||
if (sub_81A6BF4() == TRUE || sub_81B9E94() == TRUE)
|
if (InBattleFactory() == TRUE || sub_81B9E94() == TRUE)
|
||||||
ClearWindowTilemap(8);
|
ClearWindowTilemap(8);
|
||||||
ClearWindowTilemap(9);
|
ClearWindowTilemap(9);
|
||||||
break;
|
break;
|
||||||
@ -2985,7 +2985,7 @@ static void PrintMonOTName(void)
|
|||||||
{
|
{
|
||||||
u8 windowId;
|
u8 windowId;
|
||||||
int x;
|
int x;
|
||||||
if (sub_81A6BF4() != TRUE && sub_81B9E94() != TRUE)
|
if (InBattleFactory() != TRUE && sub_81B9E94() != TRUE)
|
||||||
{
|
{
|
||||||
windowId = AddWindowFromTemplateList(gUnknown_0861CCCC, 0);
|
windowId = AddWindowFromTemplateList(gUnknown_0861CCCC, 0);
|
||||||
SummaryScreen_PrintTextOnWindow(windowId, gText_OTSlash, 0, 1, 0, 1);
|
SummaryScreen_PrintTextOnWindow(windowId, gText_OTSlash, 0, 1, 0, 1);
|
||||||
@ -3000,7 +3000,7 @@ static void PrintMonOTName(void)
|
|||||||
static void PrintMonOTID(void)
|
static void PrintMonOTID(void)
|
||||||
{
|
{
|
||||||
int xPos;
|
int xPos;
|
||||||
if (sub_81A6BF4() != TRUE && sub_81B9E94() != TRUE)
|
if (InBattleFactory() != TRUE && sub_81B9E94() != TRUE)
|
||||||
{
|
{
|
||||||
ConvertIntToDecimalStringN(StringCopy(gStringVar1, gText_UnkCtrlF907F908), (u16)pssData->summary.OTID, 2, 5);
|
ConvertIntToDecimalStringN(StringCopy(gStringVar1, gText_UnkCtrlF907F908), (u16)pssData->summary.OTID, 2, 5);
|
||||||
xPos = GetStringRightAlignXOffset(1, gStringVar1, 56);
|
xPos = GetStringRightAlignXOffset(1, gStringVar1, 56);
|
||||||
@ -3030,7 +3030,7 @@ static void BufferMonTrainerMemo(void)
|
|||||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, gUnknown_0861CE7B);
|
DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, gUnknown_0861CE7B);
|
||||||
BufferNatureString();
|
BufferNatureString();
|
||||||
|
|
||||||
if (sub_81A6BF4() == TRUE || sub_81B9E94() == TRUE || IsInGamePartnerMon() == TRUE)
|
if (InBattleFactory() == TRUE || sub_81B9E94() == TRUE || IsInGamePartnerMon() == TRUE)
|
||||||
{
|
{
|
||||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_XNature);
|
DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gText_XNature);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user