mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-01-13 15:13:42 +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 battler1PartyId = 0;
|
||||||
s32 battler2PartyId = 0;
|
s32 battler2PartyId = 0;
|
||||||
|
|
||||||
#ifdef NONMATCHING
|
s32 firstMonId;
|
||||||
s32 lastMonId = 0; // + 1
|
s32 lastMonId = 0; // + 1
|
||||||
#else
|
s32 monsCount;
|
||||||
register s32 lastMonId asm("r8") = 0; // + 1
|
|
||||||
#endif // NONMATCHING
|
|
||||||
|
|
||||||
s32 firstMonId = 0;
|
|
||||||
s32 monsCount = 0;
|
|
||||||
struct Pokemon* party = NULL;
|
struct Pokemon* party = NULL;
|
||||||
s32 validMons = 0;
|
s32 validMons = 0;
|
||||||
s32 minNeeded = 0;
|
s32 minNeeded;
|
||||||
|
|
||||||
if ((gBattleTypeFlags & BATTLE_TYPE_TRAINER))
|
if ((gBattleTypeFlags & BATTLE_TYPE_TRAINER))
|
||||||
{
|
{
|
||||||
@ -7253,14 +7248,15 @@ static void Cmd_forcerandomswitch(void)
|
|||||||
{
|
{
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
i = Random() % monsCount;
|
do
|
||||||
i += firstMonId;
|
{
|
||||||
}
|
i = Random() % monsCount;
|
||||||
while (i == battler2PartyId
|
i += firstMonId;
|
||||||
|| i == battler1PartyId
|
}
|
||||||
|| GetMonData(&party[i], MON_DATA_SPECIES) == SPECIES_NONE
|
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_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;
|
*(gBattleStruct->monToSwitchIntoId + gBattlerTarget) = i;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user