mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-01-13 07:03:40 +01:00
port Cmd_forcerandomswitch fakematch fix
This commit is contained in:
parent
af0a1cb7bf
commit
9ca406b15d
@ -7131,17 +7131,12 @@ static void Cmd_forcerandomswitch(void)
|
||||
s32 battler1PartyId = 0;
|
||||
s32 battler2PartyId = 0;
|
||||
|
||||
#ifdef NONMATCHING
|
||||
s32 lastMonId = 0; // + 1
|
||||
#else
|
||||
register s32 lastMonId asm("r8") = 0; // + 1
|
||||
#endif // NONMATCHING
|
||||
|
||||
s32 firstMonId = 0;
|
||||
s32 monsCount = 0;
|
||||
s32 firstMonId;
|
||||
s32 lastMonId = 0; // + 1
|
||||
s32 monsCount;
|
||||
struct Pokemon* party = NULL;
|
||||
s32 validMons = 0;
|
||||
s32 minNeeded = 0;
|
||||
s32 minNeeded;
|
||||
|
||||
if ((gBattleTypeFlags & BATTLE_TYPE_TRAINER))
|
||||
{
|
||||
@ -7253,14 +7248,15 @@ static void Cmd_forcerandomswitch(void)
|
||||
{
|
||||
do
|
||||
{
|
||||
i = Random() % monsCount;
|
||||
i += firstMonId;
|
||||
}
|
||||
while (i == battler2PartyId
|
||||
|| i == battler1PartyId
|
||||
|| GetMonData(&party[i], MON_DATA_SPECIES) == SPECIES_NONE
|
||||
do
|
||||
{
|
||||
i = Random() % monsCount;
|
||||
i += firstMonId;
|
||||
}
|
||||
while (i == battler2PartyId || i == battler1PartyId);
|
||||
} while (GetMonData(&party[i], MON_DATA_SPECIES) == SPECIES_NONE
|
||||
|| GetMonData(&party[i], MON_DATA_IS_EGG) == TRUE
|
||||
|| GetMonData(&party[i], MON_DATA_HP) == 0);
|
||||
|| GetMonData(&party[i], MON_DATA_HP) == 0); //should be one while loop, but that doesn't match.
|
||||
}
|
||||
*(gBattleStruct->monToSwitchIntoId + gBattlerTarget) = i;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user