Finish syncing pokemon.c with emerald
This commit is contained in:
+1
-1
@@ -449,7 +449,7 @@ u16 FacilityClassToPicIndex(u16 facilityClass);
|
|||||||
bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId);
|
bool8 ShouldIgnoreDeoxysForm(u8 caseId, u8 battlerId);
|
||||||
void SetDeoxysStats(void);
|
void SetDeoxysStats(void);
|
||||||
u16 GetUnionRoomTrainerPic(void);
|
u16 GetUnionRoomTrainerPic(void);
|
||||||
u16 sub_80447F0(void);
|
u16 GetUnionRoomTrainerClass(void);
|
||||||
void CreateEventLegalEnemyMon(void);
|
void CreateEventLegalEnemyMon(void);
|
||||||
void HandleSetPokedexFlag(u16 nationalNum, u8 caseId, u32 personality);
|
void HandleSetPokedexFlag(u16 nationalNum, u8 caseId, u32 personality);
|
||||||
bool8 CheckBattleTypeGhost(struct Pokemon *mon, u8 bank);
|
bool8 CheckBattleTypeGhost(struct Pokemon *mon, u8 bank);
|
||||||
|
|||||||
@@ -1983,7 +1983,7 @@ u32 BattleStringExpandPlaceholders(const u8 *src, u8 *dst)
|
|||||||
if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
|
if (gTrainerBattleOpponent_A == SECRET_BASE_OPPONENT)
|
||||||
toCpy = gTrainerClassNames[GetSecretBaseTrainerNameIndex()];
|
toCpy = gTrainerClassNames[GetSecretBaseTrainerNameIndex()];
|
||||||
else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00)
|
else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00)
|
||||||
toCpy = gTrainerClassNames[sub_80447F0()];
|
toCpy = gTrainerClassNames[GetUnionRoomTrainerClass()];
|
||||||
else if (gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER)
|
else if (gBattleTypeFlags & BATTLE_TYPE_BATTLE_TOWER)
|
||||||
toCpy = gTrainerClassNames[GetBattleTowerTrainerClassNameId()];
|
toCpy = gTrainerClassNames[GetBattleTowerTrainerClassNameId()];
|
||||||
else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER_TOWER)
|
else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER_TOWER)
|
||||||
|
|||||||
+19
-10
@@ -1587,7 +1587,7 @@ static const u8 sGetMonDataEVConstants[] =
|
|||||||
MON_DATA_SPATK_EV
|
MON_DATA_SPATK_EV
|
||||||
};
|
};
|
||||||
|
|
||||||
static const u8 gUnknown_825DFF0[] =
|
static const u8 sStatsToRaise[] =
|
||||||
{
|
{
|
||||||
STAT_ATK, STAT_ATK, STAT_SPEED, STAT_DEF, STAT_SPATK, STAT_ACC
|
STAT_ATK, STAT_ATK, STAT_SPEED, STAT_DEF, STAT_SPATK, STAT_ACC
|
||||||
};
|
};
|
||||||
@@ -4814,10 +4814,10 @@ u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit)
|
|||||||
return offset;
|
return offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_8042D50(int stat)
|
static void BufferStatRoseMessage(int stat)
|
||||||
{
|
{
|
||||||
gBattlerTarget = gBattlerInMenuId;
|
gBattlerTarget = gBattlerInMenuId;
|
||||||
StringCopy(gBattleTextBuff1, gStatNamesTable[gUnknown_825DFF0[stat]]);
|
StringCopy(gBattleTextBuff1, gStatNamesTable[sStatsToRaise[stat]]);
|
||||||
StringCopy(gBattleTextBuff2, gBattleText_Rose);
|
StringCopy(gBattleTextBuff2, gBattleText_Rose);
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_PkmnsStatChanged2);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_PkmnsStatChanged2);
|
||||||
}
|
}
|
||||||
@@ -4848,12 +4848,12 @@ const u8 *Battle_PrintStatBoosterEffectMessage(u16 itemId)
|
|||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
if (itemEffect[i] & 0xF)
|
if (itemEffect[i] & 0xF)
|
||||||
sub_8042D50(i * 2);
|
BufferStatRoseMessage(i * 2);
|
||||||
if (itemEffect[i] & 0xF0)
|
if (itemEffect[i] & 0xF0)
|
||||||
{
|
{
|
||||||
if (i)
|
if (i)
|
||||||
{
|
{
|
||||||
sub_8042D50(i * 2 + 1);
|
BufferStatRoseMessage(i * 2 + 1);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -5395,9 +5395,14 @@ u16 GetMonEVCount(struct Pokemon *mon)
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This function was stubbed from RS, but it is stubbed badly.
|
||||||
|
// This variable is likely the u8 passed to SetMonData in RSE.
|
||||||
|
// The pointer reference causes agbcc to reserve it on the stack before even checking
|
||||||
|
// whether it's used.
|
||||||
void RandomlyGivePartyPokerus(struct Pokemon *party)
|
void RandomlyGivePartyPokerus(struct Pokemon *party)
|
||||||
{
|
{
|
||||||
u8 foo[4]; // huh?
|
u8 foo;
|
||||||
|
&foo;
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 CheckPartyPokerus(struct Pokemon *party, u8 selection)
|
u8 CheckPartyPokerus(struct Pokemon *party, u8 selection)
|
||||||
@@ -5456,14 +5461,18 @@ u8 CheckPartyHasHadPokerus(struct Pokemon *party, u8 selection)
|
|||||||
return retVal;
|
return retVal;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_8043B38(void)
|
// These two functions are stubbed from RS, but they're stubbed badly.
|
||||||
|
// See note on RandomlyGivePartyPokerus above.
|
||||||
|
static void UpdatePartyPokerusTime(void)
|
||||||
{
|
{
|
||||||
u8 foo[4]; // huh?
|
u8 foo;
|
||||||
|
&foo;
|
||||||
}
|
}
|
||||||
|
|
||||||
void PartySpreadPokerus(struct Pokemon *party)
|
void PartySpreadPokerus(struct Pokemon *party)
|
||||||
{
|
{
|
||||||
u8 foo[4]; // huh?
|
u8 foo;
|
||||||
|
&foo;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void SetMonExpWithMaxLevelCheck(struct Pokemon *mon, int species, u8 unused, u32 data)
|
static void SetMonExpWithMaxLevelCheck(struct Pokemon *mon, int species, u8 unused, u32 data)
|
||||||
@@ -5986,7 +5995,7 @@ u16 GetUnionRoomTrainerPic(void)
|
|||||||
return FacilityClassToPicIndex(gLinkPlayerFacilityClasses[arrId]);
|
return FacilityClassToPicIndex(gLinkPlayerFacilityClasses[arrId]);
|
||||||
}
|
}
|
||||||
|
|
||||||
u16 sub_80447F0(void)
|
u16 GetUnionRoomTrainerClass(void)
|
||||||
{
|
{
|
||||||
u8 linkId = GetMultiplayerId() ^ 1;
|
u8 linkId = GetMultiplayerId() ^ 1;
|
||||||
u32 arrId = gLinkPlayers[linkId].trainerId & 7;
|
u32 arrId = gLinkPlayers[linkId].trainerId & 7;
|
||||||
|
|||||||
+1
-1
@@ -4689,7 +4689,7 @@ static void ViewURoomPartnerTrainerCard(u8 *unused, struct UnkStruct_URoom * uro
|
|||||||
|
|
||||||
DynamicPlaceholderTextUtil_Reset();
|
DynamicPlaceholderTextUtil_Reset();
|
||||||
|
|
||||||
StringCopy(uroom->trainerCardStrbufs[0], gTrainerClassNames[sub_80447F0()]);
|
StringCopy(uroom->trainerCardStrbufs[0], gTrainerClassNames[GetUnionRoomTrainerClass()]);
|
||||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, uroom->trainerCardStrbufs[0]);
|
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, uroom->trainerCardStrbufs[0]);
|
||||||
|
|
||||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, trainerCard->rse.playerName);
|
DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, trainerCard->rse.playerName);
|
||||||
|
|||||||
Reference in New Issue
Block a user