mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-11-17 12:07:38 +01:00
Fix 1 vs 2 battles with eggs
This commit is contained in:
parent
ff088752e7
commit
8c257bde99
@ -557,6 +557,9 @@ static void BattleLoadMonSpriteGfx(struct Pokemon *mon, u32 battlerId, bool32 op
|
|||||||
if (illusionMon != NULL)
|
if (illusionMon != NULL)
|
||||||
mon = illusionMon;
|
mon = illusionMon;
|
||||||
|
|
||||||
|
if (GetMonData(mon, MON_DATA_IS_EGG)) // Don't load GFX of egg pokemon.
|
||||||
|
return;
|
||||||
|
|
||||||
monsPersonality = GetMonData(mon, MON_DATA_PERSONALITY);
|
monsPersonality = GetMonData(mon, MON_DATA_PERSONALITY);
|
||||||
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
|
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
|
||||||
{
|
{
|
||||||
|
@ -3655,7 +3655,7 @@ static void TryDoEventsBeforeFirstTurn(void)
|
|||||||
{
|
{
|
||||||
for (i = 0; i < gBattlersCount; i++)
|
for (i = 0; i < gBattlersCount; i++)
|
||||||
{
|
{
|
||||||
if (gBattleMons[i].hp == 0 || gBattleMons[i].species == SPECIES_NONE)
|
if (gBattleMons[i].hp == 0 || gBattleMons[i].species == SPECIES_NONE || GetMonData(GetBattlerPartyData(i), MON_DATA_IS_EGG))
|
||||||
gAbsentBattlerFlags |= gBitTable[i];
|
gAbsentBattlerFlags |= gBitTable[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4036,6 +4036,8 @@ static void Cmd_getexp(void)
|
|||||||
{
|
{
|
||||||
if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) == SPECIES_NONE || GetMonData(&gPlayerParty[i], MON_DATA_HP) == 0)
|
if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) == SPECIES_NONE || GetMonData(&gPlayerParty[i], MON_DATA_HP) == 0)
|
||||||
continue;
|
continue;
|
||||||
|
if (GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG))
|
||||||
|
continue;
|
||||||
if (gBitTable[i] & sentIn)
|
if (gBitTable[i] & sentIn)
|
||||||
viaSentIn++;
|
viaSentIn++;
|
||||||
|
|
||||||
@ -4125,7 +4127,8 @@ static void Cmd_getexp(void)
|
|||||||
gBattleStruct->wildVictorySong++;
|
gBattleStruct->wildVictorySong++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_HP))
|
if (GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_HP)
|
||||||
|
&& !GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_IS_EGG))
|
||||||
{
|
{
|
||||||
if (gBattleStruct->sentInPokes & 1)
|
if (gBattleStruct->sentInPokes & 1)
|
||||||
gBattleMoveDamage = *exp;
|
gBattleMoveDamage = *exp;
|
||||||
|
@ -258,6 +258,8 @@ static void CreateBattlerSprite(u8 battler)
|
|||||||
{
|
{
|
||||||
if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_HP) == 0)
|
if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_HP) == 0)
|
||||||
return;
|
return;
|
||||||
|
if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_IS_EGG))
|
||||||
|
return;
|
||||||
|
|
||||||
SetMultiuseSpriteTemplateToPokemon(GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES), GetBattlerPosition(battler));
|
SetMultiuseSpriteTemplateToPokemon(GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES), GetBattlerPosition(battler));
|
||||||
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2), posY, GetBattlerSpriteSubpriority(battler));
|
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2), posY, GetBattlerSpriteSubpriority(battler));
|
||||||
@ -311,7 +313,7 @@ static void CreateHealthboxSprite(u8 battler)
|
|||||||
}
|
}
|
||||||
else if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
|
else if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
|
||||||
{
|
{
|
||||||
if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_HP) == 0)
|
if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_HP) == 0 || GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler]], MON_DATA_IS_EGG))
|
||||||
SetHealthboxSpriteInvisible(healthboxSpriteId);
|
SetHealthboxSpriteInvisible(healthboxSpriteId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user