Merge branch 'master' of https://github.com/pret/pokeemerald into decompile_party_menu
This commit is contained in:
+2380
File diff suppressed because it is too large
Load Diff
@@ -2191,7 +2191,7 @@ static void BattleAICmd_if_level_cond(void)
|
||||
|
||||
static void BattleAICmd_if_target_taunted(void)
|
||||
{
|
||||
if (gDisableStructs[gBattlerTarget].tauntTimer1 != 0)
|
||||
if (gDisableStructs[gBattlerTarget].tauntTimer != 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
else
|
||||
gAIScriptPtr += 5;
|
||||
@@ -2199,7 +2199,7 @@ static void BattleAICmd_if_target_taunted(void)
|
||||
|
||||
static void BattleAICmd_if_target_not_taunted(void)
|
||||
{
|
||||
if (gDisableStructs[gBattlerTarget].tauntTimer1 == 0)
|
||||
if (gDisableStructs[gBattlerTarget].tauntTimer == 0)
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 1);
|
||||
else
|
||||
gAIScriptPtr += 5;
|
||||
|
||||
@@ -17,7 +17,7 @@ static bool8 ShouldUseItem(void);
|
||||
static bool8 ShouldSwitchIfPerishSong(void)
|
||||
{
|
||||
if (gStatuses3[gActiveBattler] & STATUS3_PERISH_SONG
|
||||
&& gDisableStructs[gActiveBattler].perishSongTimer1 == 0)
|
||||
&& gDisableStructs[gActiveBattler].perishSongTimer == 0)
|
||||
{
|
||||
*(gBattleStruct->AI_monToSwitchIntoId + gActiveBattler) = PARTY_SIZE;
|
||||
BtlController_EmitTwoReturnValues(1, B_ACTION_SWITCH, 0);
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
#include "constants/species.h"
|
||||
#include "battle.h"
|
||||
#include "battle_anim.h"
|
||||
#include "blend_palette.h"
|
||||
#include "contest.h"
|
||||
#include "data2.h"
|
||||
#include "decompress.h"
|
||||
@@ -861,7 +860,7 @@ bool8 IsBattlerSpritePresent(u8 battlerId)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 IsDoubleBattle()
|
||||
bool8 IsDoubleBattle(void)
|
||||
{
|
||||
return IS_DOUBLE_BATTLE();
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#include "battle_anim.h"
|
||||
#include "constants/battle_anim.h"
|
||||
#include "constants/rgb.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "decompress.h"
|
||||
#include "palette.h"
|
||||
#include "sprite.h"
|
||||
|
||||
@@ -2710,7 +2710,7 @@ static void PlayerHandleExpUpdate(void)
|
||||
{
|
||||
u8 monId = gBattleBufferA[gActiveBattler][1];
|
||||
|
||||
if (GetMonData(&gPlayerParty[monId], MON_DATA_LEVEL) >= MAX_MON_LEVEL)
|
||||
if (GetMonData(&gPlayerParty[monId], MON_DATA_LEVEL) >= MAX_LEVEL)
|
||||
{
|
||||
PlayerBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -1597,7 +1597,7 @@ static void PlayerPartnerHandleExpUpdate(void)
|
||||
{
|
||||
u8 monId = gBattleBufferA[gActiveBattler][1];
|
||||
|
||||
if (GetMonData(&gPlayerParty[monId], MON_DATA_LEVEL) >= MAX_MON_LEVEL)
|
||||
if (GetMonData(&gPlayerParty[monId], MON_DATA_LEVEL) >= MAX_LEVEL)
|
||||
{
|
||||
PlayerPartnerBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "battle.h"
|
||||
#include "battle_controllers.h"
|
||||
#include "cable_club.h"
|
||||
#include "link.h"
|
||||
#include "task.h"
|
||||
#include "battle_ai_script_commands.h"
|
||||
@@ -18,7 +19,6 @@ extern u8 gUnknown_02022D0A;
|
||||
|
||||
static EWRAM_DATA u8 sBattleBuffersTransferData[0x100] = {};
|
||||
|
||||
extern void task00_08081A90(u8 taskId); // cable_club
|
||||
extern void sub_81B8D64(u8 battlerId, u8 arg1); // party_menu
|
||||
|
||||
// this file's funcionts
|
||||
|
||||
+2
-2
@@ -68,7 +68,7 @@ extern bool8 sub_81A3610(void);
|
||||
extern u16 sub_81A4FF0(u8);
|
||||
extern u8 GetFrontierTrainerFrontSpriteId(u16);
|
||||
extern u8 GetFrontierOpponentClass(u16);
|
||||
extern void sub_80F94E8(void);
|
||||
extern void ReducePlayerPartyToThree(void);
|
||||
|
||||
extern u8 gUnknown_0203CEF8[];
|
||||
extern u16 gBattle_BG0_X;
|
||||
@@ -6132,7 +6132,7 @@ static void sub_8194E44(void)
|
||||
|
||||
static void sub_8194EB4(void)
|
||||
{
|
||||
sub_80F94E8();
|
||||
ReducePlayerPartyToThree();
|
||||
}
|
||||
|
||||
static void sub_8194EC0(void)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
#include "pokemon_summary_screen.h"
|
||||
#include "sound.h"
|
||||
#include "pokedex.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "trainer_pokemon_sprites.h"
|
||||
#include "constants/battle_frontier.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
#include "decompress.h"
|
||||
#include "data2.h"
|
||||
#include "palette.h"
|
||||
#include "blend_palette.h"
|
||||
#include "contest.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/rgb.h"
|
||||
|
||||
@@ -2341,7 +2341,7 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
|
||||
&gBattleSpritesDataPtr->battleBars[battlerId].currValue,
|
||||
array, B_EXPBAR_PIXELS / 8);
|
||||
level = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_LEVEL);
|
||||
if (level == MAX_MON_LEVEL)
|
||||
if (level == MAX_LEVEL)
|
||||
{
|
||||
for (i = 0; i < 8; i++)
|
||||
array[i] = 0;
|
||||
|
||||
+39
-39
@@ -3061,14 +3061,14 @@ static void BattleStartClearSetData(void)
|
||||
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
*((u8 *)gBattleStruct->mirrorMoves + i) = 0;
|
||||
*((u8 *)gBattleStruct->lastTakenMove + i) = 0;
|
||||
*((u8 *)gBattleStruct->usedHeldItems + i) = 0;
|
||||
*((u8 *)gBattleStruct->choicedMove + i) = 0;
|
||||
*((u8 *)gBattleStruct->changedItems + i) = 0;
|
||||
*(i + 0 * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(i + 1 * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(i + 2 * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(i + 3 * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(i + 0 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(i + 1 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(i + 2 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(i + 3 * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
}
|
||||
|
||||
for (i = 0; i < MAX_BATTLERS_COUNT; i++)
|
||||
@@ -3153,8 +3153,8 @@ void SwitchInClearSetData(void)
|
||||
{
|
||||
gDisableStructs[gActiveBattler].substituteHP = disableStructCopy.substituteHP;
|
||||
gDisableStructs[gActiveBattler].battlerWithSureHit = disableStructCopy.battlerWithSureHit;
|
||||
gDisableStructs[gActiveBattler].perishSongTimer1 = disableStructCopy.perishSongTimer1;
|
||||
gDisableStructs[gActiveBattler].perishSongTimer2 = disableStructCopy.perishSongTimer2;
|
||||
gDisableStructs[gActiveBattler].perishSongTimer = disableStructCopy.perishSongTimer;
|
||||
gDisableStructs[gActiveBattler].perishSongTimerStartValue = disableStructCopy.perishSongTimerStartValue;
|
||||
gDisableStructs[gActiveBattler].battlerPreventingEscape = disableStructCopy.battlerPreventingEscape;
|
||||
}
|
||||
|
||||
@@ -3168,16 +3168,16 @@ void SwitchInClearSetData(void)
|
||||
gLastPrintedMoves[gActiveBattler] = 0;
|
||||
gLastHitBy[gActiveBattler] = 0xFF;
|
||||
|
||||
*(gBattleStruct->mirrorMoves + gActiveBattler * 2 + 0) = 0;
|
||||
*(gBattleStruct->mirrorMoves + gActiveBattler * 2 + 1) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = 0;
|
||||
*(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
|
||||
gBattleStruct->field_92 &= ~(gBitTable[gActiveBattler]);
|
||||
|
||||
@@ -3185,11 +3185,11 @@ void SwitchInClearSetData(void)
|
||||
{
|
||||
if (i != gActiveBattler && GetBattlerSide(i) != GetBattlerSide(gActiveBattler))
|
||||
{
|
||||
*(gBattleStruct->mirrorMoves + i * 2 + 0) = 0;
|
||||
*(gBattleStruct->mirrorMoves + i * 2 + 1) = 0;
|
||||
*(gBattleStruct->lastTakenMove + i * 2 + 0) = 0;
|
||||
*(gBattleStruct->lastTakenMove + i * 2 + 1) = 0;
|
||||
}
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
}
|
||||
|
||||
*(u8*)((u8*)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0;
|
||||
@@ -3263,16 +3263,16 @@ void FaintClearSetData(void)
|
||||
*(u8*)((u8*)(&gBattleStruct->choicedMove[gActiveBattler]) + 0) = 0;
|
||||
*(u8*)((u8*)(&gBattleStruct->choicedMove[gActiveBattler]) + 1) = 0;
|
||||
|
||||
*(gBattleStruct->mirrorMoves + gActiveBattler * 2 + 0) = 0;
|
||||
*(gBattleStruct->mirrorMoves + gActiveBattler * 2 + 1) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 0) = 0;
|
||||
*(gBattleStruct->lastTakenMove + gActiveBattler * 2 + 1) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(0 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(1 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(2 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(3 * 2 + gActiveBattler * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
|
||||
gBattleStruct->field_92 &= ~(gBitTable[gActiveBattler]);
|
||||
|
||||
@@ -3280,11 +3280,11 @@ void FaintClearSetData(void)
|
||||
{
|
||||
if (i != gActiveBattler && GetBattlerSide(i) != GetBattlerSide(gActiveBattler))
|
||||
{
|
||||
*(gBattleStruct->mirrorMoves + i * 2 + 0) = 0;
|
||||
*(gBattleStruct->mirrorMoves + i * 2 + 1) = 0;
|
||||
*(gBattleStruct->lastTakenMove + i * 2 + 0) = 0;
|
||||
*(gBattleStruct->lastTakenMove + i * 2 + 1) = 0;
|
||||
}
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = 0;
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = 0;
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = 0;
|
||||
*(i * 8 + gActiveBattler * 2 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = 0;
|
||||
}
|
||||
|
||||
gBattleResources->flags->flags[gActiveBattler] = 0;
|
||||
@@ -4879,10 +4879,10 @@ static void TurnValuesCleanUp(bool8 var0)
|
||||
if (gDisableStructs[gActiveBattler].isFirstTurn)
|
||||
gDisableStructs[gActiveBattler].isFirstTurn--;
|
||||
|
||||
if (gDisableStructs[gActiveBattler].rechargeCounter)
|
||||
if (gDisableStructs[gActiveBattler].rechargeTimer)
|
||||
{
|
||||
gDisableStructs[gActiveBattler].rechargeCounter--;
|
||||
if (gDisableStructs[gActiveBattler].rechargeCounter == 0)
|
||||
gDisableStructs[gActiveBattler].rechargeTimer--;
|
||||
if (gDisableStructs[gActiveBattler].rechargeTimer == 0)
|
||||
gBattleMons[gActiveBattler].status2 &= ~(STATUS2_RECHARGE);
|
||||
}
|
||||
}
|
||||
@@ -5318,7 +5318,7 @@ static void HandleAction_UseMove(void)
|
||||
gCurrentMove = gChosenMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos];
|
||||
gDisableStructs[gBattlerAttacker].encoredMove = MOVE_NONE;
|
||||
gDisableStructs[gBattlerAttacker].encoredMovePos = 0;
|
||||
gDisableStructs[gBattlerAttacker].encoreTimer1 = 0;
|
||||
gDisableStructs[gBattlerAttacker].encoreTimer = 0;
|
||||
*(gBattleStruct->moveTarget + gBattlerAttacker) = GetMoveTarget(gCurrentMove, 0);
|
||||
}
|
||||
else if (gBattleMons[gBattlerAttacker].moves[gCurrMovePos] != gChosenMoveByBattler[gBattlerAttacker])
|
||||
|
||||
@@ -396,7 +396,7 @@ void sub_81C4F98(u8 a0, void (*callback)(void))
|
||||
|
||||
gPyramidBagResources->callback2 = NULL;
|
||||
gPyramidBagResources->unk814 = 0xFF;
|
||||
gPyramidBagResources->scrollArrowSpriteId = 0xFF;
|
||||
gPyramidBagResources->scrollIndicatorsTaskId = 0xFF;
|
||||
|
||||
memset(gPyramidBagResources->itemsSpriteIds, 0xFF, sizeof(gPyramidBagResources->itemsSpriteIds));
|
||||
memset(gPyramidBagResources->windowIds, 0xFF, sizeof(gPyramidBagResources->windowIds));
|
||||
@@ -664,16 +664,16 @@ static void PrintItemDescription(s32 listMenuId)
|
||||
|
||||
static void AddScrollArrow(void)
|
||||
{
|
||||
if (gPyramidBagResources->scrollArrowSpriteId == 0xFF)
|
||||
gPyramidBagResources->scrollArrowSpriteId = AddScrollIndicatorArrowPairParameterized(2, 172, 12, 148, gPyramidBagResources->listMenuCount - gPyramidBagResources->listMenuMaxShown, 0xB5E, 0xB5E, &gPyramidBagCursorData.scrollPosition);
|
||||
if (gPyramidBagResources->scrollIndicatorsTaskId == 0xFF)
|
||||
gPyramidBagResources->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized(2, 172, 12, 148, gPyramidBagResources->listMenuCount - gPyramidBagResources->listMenuMaxShown, 0xB5E, 0xB5E, &gPyramidBagCursorData.scrollPosition);
|
||||
}
|
||||
|
||||
static void RemoveScrollArrow(void)
|
||||
{
|
||||
if (gPyramidBagResources->scrollArrowSpriteId != 0xFF)
|
||||
if (gPyramidBagResources->scrollIndicatorsTaskId != 0xFF)
|
||||
{
|
||||
RemoveScrollIndicatorArrowPair(gPyramidBagResources->scrollArrowSpriteId);
|
||||
gPyramidBagResources->scrollArrowSpriteId = 0xFF;
|
||||
RemoveScrollIndicatorArrowPair(gPyramidBagResources->scrollIndicatorsTaskId);
|
||||
gPyramidBagResources->scrollIndicatorsTaskId = 0xFF;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1229,7 +1229,7 @@ static void atk03_ppreduce(void)
|
||||
if (gBattleControllerExecFlags)
|
||||
return;
|
||||
|
||||
if (!gSpecialStatuses[gBattlerAttacker].flag20)
|
||||
if (!gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure)
|
||||
{
|
||||
switch (gBattleMoves[gCurrentMove].target)
|
||||
{
|
||||
@@ -1858,7 +1858,7 @@ static void atk0B_healthbarupdate(void)
|
||||
MarkBattlerForControllerExec(gActiveBattler);
|
||||
|
||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER && gBattleMoveDamage > 0)
|
||||
gBattleResults.unk5_0 = 1;
|
||||
gBattleResults.playerMonWasDamaged = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2730,7 +2730,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
|
||||
break;
|
||||
case MOVE_EFFECT_RECHARGE:
|
||||
gBattleMons[gEffectBattler].status2 |= STATUS2_RECHARGE;
|
||||
gDisableStructs[gEffectBattler].rechargeCounter = 2;
|
||||
gDisableStructs[gEffectBattler].rechargeTimer = 2;
|
||||
gLockedMoves[gEffectBattler] = gCurrentMove;
|
||||
gBattlescriptCurrInstr++;
|
||||
break;
|
||||
@@ -2763,7 +2763,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
|
||||
| BATTLE_TYPE_LINK
|
||||
| BATTLE_TYPE_x2000000
|
||||
| BATTLE_TYPE_SECRET_BASE))
|
||||
&& (gWishFutureKnock.knockedOffPokes[side] & gBitTable[gBattlerPartyIndexes[gBattlerAttacker]]))
|
||||
&& (gWishFutureKnock.knockedOffMons[side] & gBitTable[gBattlerPartyIndexes[gBattlerAttacker]]))
|
||||
{
|
||||
gBattlescriptCurrInstr++;
|
||||
}
|
||||
@@ -2885,7 +2885,7 @@ void SetMoveEffect(bool8 primary, u8 certain)
|
||||
|
||||
gLastUsedItem = gBattleMons[gEffectBattler].item;
|
||||
gBattleMons[gEffectBattler].item = 0;
|
||||
gWishFutureKnock.knockedOffPokes[side] |= gBitTable[gBattlerPartyIndexes[gEffectBattler]];
|
||||
gWishFutureKnock.knockedOffMons[side] |= gBitTable[gBattlerPartyIndexes[gEffectBattler]];
|
||||
|
||||
BattleScriptPush(gBattlescriptCurrInstr + 1);
|
||||
gBattlescriptCurrInstr = BattleScript_KnockedOff;
|
||||
@@ -3347,7 +3347,7 @@ static void atk23_getexp(void)
|
||||
gBattleScripting.atk23_state = 5;
|
||||
gBattleMoveDamage = 0; // used for exp
|
||||
}
|
||||
else if (GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_LEVEL) == MAX_MON_LEVEL)
|
||||
else if (GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_LEVEL) == MAX_LEVEL)
|
||||
{
|
||||
*(&gBattleStruct->sentInPokes) >>= 1;
|
||||
gBattleScripting.atk23_state = 5;
|
||||
@@ -3382,17 +3382,17 @@ static void atk23_getexp(void)
|
||||
// check if the pokemon doesn't belong to the player
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && gBattleStruct->expGetterMonId >= 3)
|
||||
{
|
||||
i = 0x149;
|
||||
i = STRINGID_EMPTYSTRING4;
|
||||
}
|
||||
else
|
||||
{
|
||||
gBattleMoveDamage = (gBattleMoveDamage * 150) / 100;
|
||||
i = 0x14A;
|
||||
i = STRINGID_ABOOSTED;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
i = 0x149;
|
||||
i = STRINGID_EMPTYSTRING4;
|
||||
}
|
||||
|
||||
// get exp getter battlerId
|
||||
@@ -3430,7 +3430,7 @@ static void atk23_getexp(void)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gBattleBufferB[gBattleStruct->expGetterBattlerId][0] = 0;
|
||||
if (GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_HP) && GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_LEVEL) != MAX_MON_LEVEL)
|
||||
if (GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_HP) && GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_LEVEL) != MAX_LEVEL)
|
||||
{
|
||||
gBattleResources->statsBeforeLvlUp->hp = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_MAX_HP);
|
||||
gBattleResources->statsBeforeLvlUp->atk = GetMonData(&gPlayerParty[gBattleStruct->expGetterMonId], MON_DATA_ATK);
|
||||
@@ -4752,16 +4752,16 @@ static void atk49_moveend(void)
|
||||
{
|
||||
u8 target, attacker;
|
||||
|
||||
*(gBattleStruct->mirrorMoves + gBattlerTarget * 2 + 0) = gChosenMove;
|
||||
*(gBattleStruct->mirrorMoves + gBattlerTarget * 2 + 1) = gChosenMove >> 8;
|
||||
*(gBattleStruct->lastTakenMove + gBattlerTarget * 2 + 0) = gChosenMove;
|
||||
*(gBattleStruct->lastTakenMove + gBattlerTarget * 2 + 1) = gChosenMove >> 8;
|
||||
|
||||
target = gBattlerTarget;
|
||||
attacker = gBattlerAttacker;
|
||||
*(attacker * 2 + target * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0) = gChosenMove;
|
||||
*(attacker * 2 + target * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0) = gChosenMove;
|
||||
|
||||
target = gBattlerTarget;
|
||||
attacker = gBattlerAttacker;
|
||||
*(attacker * 2 + target * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) = gChosenMove >> 8;
|
||||
*(attacker * 2 + target * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) = gChosenMove >> 8;
|
||||
}
|
||||
gBattleScripting.atk49_state++;
|
||||
break;
|
||||
@@ -4948,7 +4948,7 @@ static void atk4D_switchindataupdate(void)
|
||||
|
||||
// check knocked off item
|
||||
i = GetBattlerSide(gActiveBattler);
|
||||
if (gWishFutureKnock.knockedOffPokes[i] & gBitTable[gBattlerPartyIndexes[gActiveBattler]])
|
||||
if (gWishFutureKnock.knockedOffMons[i] & gBitTable[gBattlerPartyIndexes[gActiveBattler]])
|
||||
{
|
||||
gBattleMons[gActiveBattler].item = 0;
|
||||
}
|
||||
@@ -6937,8 +6937,8 @@ static void atk7C_trymirrormove(void)
|
||||
{
|
||||
if (i != gBattlerAttacker)
|
||||
{
|
||||
move = *(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 0)
|
||||
| (*(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->mirrorMoveArrays) + 1) << 8);
|
||||
move = *(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 0)
|
||||
| (*(i * 2 + gBattlerAttacker * 8 + (u8*)(gBattleStruct->lastTakenMoveFrom) + 1) << 8);
|
||||
|
||||
if (move != 0 && move != 0xFFFF)
|
||||
{
|
||||
@@ -6948,8 +6948,8 @@ static void atk7C_trymirrormove(void)
|
||||
}
|
||||
}
|
||||
|
||||
move = *(gBattleStruct->mirrorMoves + gBattlerAttacker * 2 + 0)
|
||||
| (*(gBattleStruct->mirrorMoves + gBattlerAttacker * 2 + 1) << 8);
|
||||
move = *(gBattleStruct->lastTakenMove + gBattlerAttacker * 2 + 0)
|
||||
| (*(gBattleStruct->lastTakenMove + gBattlerAttacker * 2 + 1) << 8);
|
||||
|
||||
if (move != 0 && move != 0xFFFF)
|
||||
{
|
||||
@@ -6968,7 +6968,7 @@ static void atk7C_trymirrormove(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
gSpecialStatuses[gBattlerAttacker].flag20 = 1;
|
||||
gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1;
|
||||
gBattlescriptCurrInstr++;
|
||||
}
|
||||
}
|
||||
@@ -8033,7 +8033,7 @@ static void atk9B_transformdataexecution(void)
|
||||
|
||||
gBattleMons[gBattlerAttacker].status2 |= STATUS2_TRANSFORMED;
|
||||
gDisableStructs[gBattlerAttacker].disabledMove = 0;
|
||||
gDisableStructs[gBattlerAttacker].disableTimer1 = 0;
|
||||
gDisableStructs[gBattlerAttacker].disableTimer = 0;
|
||||
gDisableStructs[gBattlerAttacker].transformedMonPersonality = gBattleMons[gBattlerTarget].personality;
|
||||
gDisableStructs[gBattlerAttacker].unk18_b = 0;
|
||||
|
||||
@@ -8207,7 +8207,7 @@ static void atkA1_counterdamagecalculator(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
gSpecialStatuses[gBattlerAttacker].flag20 = 1;
|
||||
gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1;
|
||||
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
|
||||
}
|
||||
}
|
||||
@@ -8230,7 +8230,7 @@ static void atkA2_mirrorcoatdamagecalculator(void) // a copy of atkA1 with the p
|
||||
}
|
||||
else
|
||||
{
|
||||
gSpecialStatuses[gBattlerAttacker].flag20 = 1;
|
||||
gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1;
|
||||
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
|
||||
}
|
||||
}
|
||||
@@ -8250,8 +8250,8 @@ static void atkA3_disablelastusedattack(void)
|
||||
PREPARE_MOVE_BUFFER(gBattleTextBuff1, gBattleMons[gBattlerTarget].moves[i])
|
||||
|
||||
gDisableStructs[gBattlerTarget].disabledMove = gBattleMons[gBattlerTarget].moves[i];
|
||||
gDisableStructs[gBattlerTarget].disableTimer1 = (Random() & 3) + 2;
|
||||
gDisableStructs[gBattlerTarget].disableTimer2 = gDisableStructs[gBattlerTarget].disableTimer1; // used to save the random amount of turns?
|
||||
gDisableStructs[gBattlerTarget].disableTimer = (Random() & 3) + 2;
|
||||
gDisableStructs[gBattlerTarget].disableTimerStartValue = gDisableStructs[gBattlerTarget].disableTimer; // used to save the random amount of turns?
|
||||
gBattlescriptCurrInstr += 5;
|
||||
}
|
||||
else
|
||||
@@ -8282,8 +8282,8 @@ static void atkA4_trysetencore(void)
|
||||
{
|
||||
gDisableStructs[gBattlerTarget].encoredMove = gBattleMons[gBattlerTarget].moves[i];
|
||||
gDisableStructs[gBattlerTarget].encoredMovePos = i;
|
||||
gDisableStructs[gBattlerTarget].encoreTimer1 = (Random() & 3) + 3;
|
||||
gDisableStructs[gBattlerTarget].encoreTimer2 = gDisableStructs[gBattlerTarget].encoreTimer1;
|
||||
gDisableStructs[gBattlerTarget].encoreTimer = (Random() & 3) + 3;
|
||||
gDisableStructs[gBattlerTarget].encoreTimerStartValue = gDisableStructs[gBattlerTarget].encoreTimer;
|
||||
gBattlescriptCurrInstr += 5;
|
||||
}
|
||||
else
|
||||
@@ -8727,7 +8727,7 @@ static void atkB0_trysetspikes(void)
|
||||
|
||||
if (gSideTimers[targetSide].spikesAmount == 3)
|
||||
{
|
||||
gSpecialStatuses[gBattlerAttacker].flag20 = 1;
|
||||
gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1;
|
||||
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
|
||||
}
|
||||
else
|
||||
@@ -8759,8 +8759,8 @@ static void atkB2_trysetperishsong(void)
|
||||
else
|
||||
{
|
||||
gStatuses3[i] |= STATUS3_PERISH_SONG;
|
||||
gDisableStructs[i].perishSongTimer1 = 3;
|
||||
gDisableStructs[i].perishSongTimer2 = 3;
|
||||
gDisableStructs[i].perishSongTimer = 3;
|
||||
gDisableStructs[i].perishSongTimerStartValue = 3;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8785,19 +8785,19 @@ static void atkB3_rolloutdamagecalculation(void)
|
||||
|
||||
if (!(gBattleMons[gBattlerAttacker].status2 & STATUS2_MULTIPLETURNS)) // first hit
|
||||
{
|
||||
gDisableStructs[gBattlerAttacker].rolloutCounter1 = 5;
|
||||
gDisableStructs[gBattlerAttacker].rolloutCounter2 = 5;
|
||||
gDisableStructs[gBattlerAttacker].rolloutTimer = 5;
|
||||
gDisableStructs[gBattlerAttacker].rolloutTimerStartValue = 5;
|
||||
gBattleMons[gBattlerAttacker].status2 |= STATUS2_MULTIPLETURNS;
|
||||
gLockedMoves[gBattlerAttacker] = gCurrentMove;
|
||||
}
|
||||
if (--gDisableStructs[gBattlerAttacker].rolloutCounter1 == 0) // last hit
|
||||
if (--gDisableStructs[gBattlerAttacker].rolloutTimer == 0) // last hit
|
||||
{
|
||||
gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_MULTIPLETURNS);
|
||||
}
|
||||
|
||||
gDynamicBasePower = gBattleMoves[gCurrentMove].power;
|
||||
|
||||
for (i = 1; i < (5 - gDisableStructs[gBattlerAttacker].rolloutCounter1); i++)
|
||||
for (i = 1; i < (5 - gDisableStructs[gBattlerAttacker].rolloutTimer); i++)
|
||||
gDynamicBasePower *= 2;
|
||||
|
||||
if (gBattleMons[gBattlerAttacker].status2 & STATUS2_DEFENSE_CURL)
|
||||
@@ -9320,8 +9320,8 @@ static void atkCA_setforcedtarget(void) // follow me
|
||||
static void atkCB_setcharge(void)
|
||||
{
|
||||
gStatuses3[gBattlerAttacker] |= STATUS3_CHARGED_UP;
|
||||
gDisableStructs[gBattlerAttacker].chargeTimer1 = 2;
|
||||
gDisableStructs[gBattlerAttacker].chargeTimer2 = 2;
|
||||
gDisableStructs[gBattlerAttacker].chargeTimer = 2;
|
||||
gDisableStructs[gBattlerAttacker].chargeTimerStartValue = 2;
|
||||
gBattlescriptCurrInstr++;
|
||||
}
|
||||
|
||||
@@ -9373,9 +9373,9 @@ static void atkCF_jumpifnodamage(void)
|
||||
|
||||
static void atkD0_settaunt(void)
|
||||
{
|
||||
if (gDisableStructs[gBattlerTarget].tauntTimer1 == 0)
|
||||
if (gDisableStructs[gBattlerTarget].tauntTimer == 0)
|
||||
{
|
||||
gDisableStructs[gBattlerTarget].tauntTimer1 = 2;
|
||||
gDisableStructs[gBattlerTarget].tauntTimer = 2;
|
||||
gDisableStructs[gBattlerTarget].tauntTimer2 = 2;
|
||||
gBattlescriptCurrInstr += 5;
|
||||
}
|
||||
@@ -9427,8 +9427,8 @@ static void atkD2_tryswapitems(void) // trick
|
||||
| BATTLE_TYPE_FRONTIER
|
||||
| BATTLE_TYPE_SECRET_BASE
|
||||
| BATTLE_TYPE_x2000000))
|
||||
&& (gWishFutureKnock.knockedOffPokes[sideAttacker] & gBitTable[gBattlerPartyIndexes[gBattlerAttacker]]
|
||||
|| gWishFutureKnock.knockedOffPokes[sideTarget] & gBitTable[gBattlerPartyIndexes[gBattlerTarget]]))
|
||||
&& (gWishFutureKnock.knockedOffMons[sideAttacker] & gBitTable[gBattlerPartyIndexes[gBattlerAttacker]]
|
||||
|| gWishFutureKnock.knockedOffMons[sideTarget] & gBitTable[gBattlerPartyIndexes[gBattlerTarget]]))
|
||||
{
|
||||
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
|
||||
}
|
||||
@@ -9751,7 +9751,7 @@ static void atkDE_asistattackselect(void)
|
||||
static void atkDF_trysetmagiccoat(void)
|
||||
{
|
||||
gBattlerTarget = gBattlerAttacker;
|
||||
gSpecialStatuses[gBattlerAttacker].flag20 = 1;
|
||||
gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1;
|
||||
if (gCurrentTurnActionNumber == gBattlersCount - 1) // moves last turn
|
||||
{
|
||||
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
|
||||
@@ -9765,7 +9765,7 @@ static void atkDF_trysetmagiccoat(void)
|
||||
|
||||
static void atkE0_trysetsnatch(void) // snatch
|
||||
{
|
||||
gSpecialStatuses[gBattlerAttacker].flag20 = 1;
|
||||
gSpecialStatuses[gBattlerAttacker].ppNotAffectedByPressure = 1;
|
||||
if (gCurrentTurnActionNumber == gBattlersCount - 1) // moves last turn
|
||||
{
|
||||
gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1);
|
||||
|
||||
+6
-6
@@ -56,8 +56,8 @@ extern bool8 InBattlePyramid(void);
|
||||
extern bool8 InBattlePike(void);
|
||||
extern bool32 InTrainerHill(void);
|
||||
extern bool32 FieldPoisonEffectIsRunning(void);
|
||||
extern void prev_quest_postbuffer_cursor_backup_reset(void);
|
||||
extern void ResetPoisonStepCounter(void);
|
||||
extern void RestartWildEncounterImmunitySteps(void);
|
||||
extern void ClearPoisonStepCounter(void);
|
||||
extern void sub_81BE72C(void);
|
||||
extern void sub_808BCF4(void);
|
||||
extern void sub_80EECC8(void);
|
||||
@@ -354,8 +354,8 @@ static void Task_BattleStart(u8 taskId)
|
||||
{
|
||||
overworld_free_bg_tilemaps();
|
||||
SetMainCallback2(CB2_InitBattle);
|
||||
prev_quest_postbuffer_cursor_backup_reset();
|
||||
ResetPoisonStepCounter();
|
||||
RestartWildEncounterImmunitySteps();
|
||||
ClearPoisonStepCounter();
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
break;
|
||||
@@ -921,8 +921,8 @@ static void CB2_StartFirstBattle(void)
|
||||
gMain.savedCallback = CB2_EndFirstBattle;
|
||||
FreeAllWindowBuffers();
|
||||
SetMainCallback2(CB2_InitBattle);
|
||||
prev_quest_postbuffer_cursor_backup_reset();
|
||||
ResetPoisonStepCounter();
|
||||
RestartWildEncounterImmunitySteps();
|
||||
ClearPoisonStepCounter();
|
||||
IncrementGameStat(GAME_STAT_TOTAL_BATTLES);
|
||||
IncrementGameStat(GAME_STAT_WILD_BATTLES);
|
||||
sub_80EECC8();
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "decompress.h"
|
||||
#include "bg.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
|
||||
struct TransitionData
|
||||
{
|
||||
|
||||
+1
-1
@@ -659,7 +659,7 @@ void BattleTv_SetDataBasedOnMove(u16 move, u16 weatherFlags, struct DisableStruc
|
||||
tvPtr->side[atkSide].usedMoveSlot = moveSlot;
|
||||
AddMovePoints(0, moveSlot, gBattleMoves[move].effect, 0);
|
||||
AddPointsBasedOnWeather(weatherFlags, move, moveSlot);
|
||||
if (disableStructPtr->chargeTimer1 != 0)
|
||||
if (disableStructPtr->chargeTimer != 0)
|
||||
AddMovePoints(7, move, moveSlot, 0);
|
||||
|
||||
if (move == MOVE_WISH)
|
||||
|
||||
+19
-19
@@ -216,7 +216,7 @@ void CancelMultiTurnMoves(u8 battler)
|
||||
|
||||
gStatuses3[battler] &= ~(STATUS3_SEMI_INVULNERABLE);
|
||||
|
||||
gDisableStructs[battler].rolloutCounter1 = 0;
|
||||
gDisableStructs[battler].rolloutTimer = 0;
|
||||
gDisableStructs[battler].furyCutterCounter = 0;
|
||||
}
|
||||
|
||||
@@ -345,7 +345,7 @@ u8 TrySetCantSelectMoveBattleScript(void)
|
||||
}
|
||||
}
|
||||
|
||||
if (gDisableStructs[gActiveBattler].tauntTimer1 != 0 && gBattleMoves[move].power == 0)
|
||||
if (gDisableStructs[gActiveBattler].tauntTimer != 0 && gBattleMoves[move].power == 0)
|
||||
{
|
||||
gCurrentMove = move;
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
|
||||
@@ -436,11 +436,11 @@ u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check)
|
||||
unusableMoves |= gBitTable[i];
|
||||
if (gBattleMons[battlerId].moves[i] == gLastMoves[battlerId] && check & MOVE_LIMITATION_TORMENTED && gBattleMons[battlerId].status2 & STATUS2_TORMENT)
|
||||
unusableMoves |= gBitTable[i];
|
||||
if (gDisableStructs[battlerId].tauntTimer1 && check & MOVE_LIMITATION_TAUNT && gBattleMoves[gBattleMons[battlerId].moves[i]].power == 0)
|
||||
if (gDisableStructs[battlerId].tauntTimer && check & MOVE_LIMITATION_TAUNT && gBattleMoves[gBattleMons[battlerId].moves[i]].power == 0)
|
||||
unusableMoves |= gBitTable[i];
|
||||
if (GetImprisonedMovesCount(battlerId, gBattleMons[battlerId].moves[i]) && check & MOVE_LIMITATION_IMPRISION)
|
||||
unusableMoves |= gBitTable[i];
|
||||
if (gDisableStructs[battlerId].encoreTimer1 && gDisableStructs[battlerId].encoredMove != gBattleMons[battlerId].moves[i])
|
||||
if (gDisableStructs[battlerId].encoreTimer && gDisableStructs[battlerId].encoredMove != gBattleMons[battlerId].moves[i])
|
||||
unusableMoves |= gBitTable[i];
|
||||
if (holdEffect == HOLD_EFFECT_CHOICE_BAND && *choicedMove != 0 && *choicedMove != 0xFFFF && *choicedMove != gBattleMons[battlerId].moves[i])
|
||||
unusableMoves |= gBitTable[i];
|
||||
@@ -1018,7 +1018,7 @@ u8 DoBattlerEndTurnEffects(void)
|
||||
gBattleStruct->turnEffectsTracker++;
|
||||
break;
|
||||
case ENDTURN_DISABLE: // disable
|
||||
if (gDisableStructs[gActiveBattler].disableTimer1 != 0)
|
||||
if (gDisableStructs[gActiveBattler].disableTimer != 0)
|
||||
{
|
||||
s32 i;
|
||||
for (i = 0; i < 4; i++)
|
||||
@@ -1029,9 +1029,9 @@ u8 DoBattlerEndTurnEffects(void)
|
||||
if (i == 4) // pokemon does not have the disabled move anymore
|
||||
{
|
||||
gDisableStructs[gActiveBattler].disabledMove = 0;
|
||||
gDisableStructs[gActiveBattler].disableTimer1 = 0;
|
||||
gDisableStructs[gActiveBattler].disableTimer = 0;
|
||||
}
|
||||
else if (--gDisableStructs[gActiveBattler].disableTimer1 == 0) // disable ends
|
||||
else if (--gDisableStructs[gActiveBattler].disableTimer == 0) // disable ends
|
||||
{
|
||||
gDisableStructs[gActiveBattler].disabledMove = 0;
|
||||
BattleScriptExecute(BattleScript_DisabledNoMore);
|
||||
@@ -1041,18 +1041,18 @@ u8 DoBattlerEndTurnEffects(void)
|
||||
gBattleStruct->turnEffectsTracker++;
|
||||
break;
|
||||
case ENDTURN_ENCORE: // encore
|
||||
if (gDisableStructs[gActiveBattler].encoreTimer1 != 0)
|
||||
if (gDisableStructs[gActiveBattler].encoreTimer != 0)
|
||||
{
|
||||
if (gBattleMons[gActiveBattler].moves[gDisableStructs[gActiveBattler].encoredMovePos] != gDisableStructs[gActiveBattler].encoredMove) // pokemon does not have the encored move anymore
|
||||
{
|
||||
gDisableStructs[gActiveBattler].encoredMove = 0;
|
||||
gDisableStructs[gActiveBattler].encoreTimer1 = 0;
|
||||
gDisableStructs[gActiveBattler].encoreTimer = 0;
|
||||
}
|
||||
else if (--gDisableStructs[gActiveBattler].encoreTimer1 == 0
|
||||
else if (--gDisableStructs[gActiveBattler].encoreTimer == 0
|
||||
|| gBattleMons[gActiveBattler].pp[gDisableStructs[gActiveBattler].encoredMovePos] == 0)
|
||||
{
|
||||
gDisableStructs[gActiveBattler].encoredMove = 0;
|
||||
gDisableStructs[gActiveBattler].encoreTimer1 = 0;
|
||||
gDisableStructs[gActiveBattler].encoreTimer = 0;
|
||||
BattleScriptExecute(BattleScript_EncoredNoMore);
|
||||
effect++;
|
||||
}
|
||||
@@ -1065,13 +1065,13 @@ u8 DoBattlerEndTurnEffects(void)
|
||||
gBattleStruct->turnEffectsTracker++;
|
||||
break;
|
||||
case ENDTURN_CHARGE: // charge
|
||||
if (gDisableStructs[gActiveBattler].chargeTimer1 && --gDisableStructs[gActiveBattler].chargeTimer1 == 0)
|
||||
if (gDisableStructs[gActiveBattler].chargeTimer && --gDisableStructs[gActiveBattler].chargeTimer == 0)
|
||||
gStatuses3[gActiveBattler] &= ~STATUS3_CHARGED_UP;
|
||||
gBattleStruct->turnEffectsTracker++;
|
||||
break;
|
||||
case ENDTURN_TAUNT: // taunt
|
||||
if (gDisableStructs[gActiveBattler].tauntTimer1)
|
||||
gDisableStructs[gActiveBattler].tauntTimer1--;
|
||||
if (gDisableStructs[gActiveBattler].tauntTimer)
|
||||
gDisableStructs[gActiveBattler].tauntTimer--;
|
||||
gBattleStruct->turnEffectsTracker++;
|
||||
break;
|
||||
case ENDTURN_YAWN: // yawn
|
||||
@@ -1167,8 +1167,8 @@ bool8 HandleWishPerishSongOnTurnEnd(void)
|
||||
gBattleStruct->wishPerishSongBattlerId++;
|
||||
if (gStatuses3[gActiveBattler] & STATUS3_PERISH_SONG)
|
||||
{
|
||||
PREPARE_BYTE_NUMBER_BUFFER(gBattleTextBuff1, 1, gDisableStructs[gActiveBattler].perishSongTimer1);
|
||||
if (gDisableStructs[gActiveBattler].perishSongTimer1 == 0)
|
||||
PREPARE_BYTE_NUMBER_BUFFER(gBattleTextBuff1, 1, gDisableStructs[gActiveBattler].perishSongTimer);
|
||||
if (gDisableStructs[gActiveBattler].perishSongTimer == 0)
|
||||
{
|
||||
gStatuses3[gActiveBattler] &= ~STATUS3_PERISH_SONG;
|
||||
gBattleMoveDamage = gBattleMons[gActiveBattler].hp;
|
||||
@@ -1176,7 +1176,7 @@ bool8 HandleWishPerishSongOnTurnEnd(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
gDisableStructs[gActiveBattler].perishSongTimer1--;
|
||||
gDisableStructs[gActiveBattler].perishSongTimer--;
|
||||
gBattlescriptCurrInstr = BattleScript_PerishSongCountGoesDown;
|
||||
}
|
||||
BattleScriptExecute(gBattlescriptCurrInstr);
|
||||
@@ -1420,7 +1420,7 @@ u8 AtkCanceller_UnableToUseMove(void)
|
||||
if (gBattleMons[gBattlerAttacker].status2 & STATUS2_RECHARGE)
|
||||
{
|
||||
gBattleMons[gBattlerAttacker].status2 &= ~(STATUS2_RECHARGE);
|
||||
gDisableStructs[gBattlerAttacker].rechargeCounter = 0;
|
||||
gDisableStructs[gBattlerAttacker].rechargeTimer = 0;
|
||||
CancelMultiTurnMoves(gBattlerAttacker);
|
||||
gBattlescriptCurrInstr = BattleScript_MoveUsedMustRecharge;
|
||||
gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE;
|
||||
@@ -1453,7 +1453,7 @@ u8 AtkCanceller_UnableToUseMove(void)
|
||||
gBattleStruct->atkCancellerTracker++;
|
||||
break;
|
||||
case CANCELLER_TAUNTED: // taunt
|
||||
if (gDisableStructs[gBattlerAttacker].tauntTimer1 && gBattleMoves[gCurrentMove].power == 0)
|
||||
if (gDisableStructs[gBattlerAttacker].tauntTimer && gBattleMoves[gCurrentMove].power == 0)
|
||||
{
|
||||
gProtectStructs[gBattlerAttacker].usedTauntedMove = 1;
|
||||
CancelMultiTurnMoves(gBattlerAttacker);
|
||||
|
||||
+3
-3
@@ -11,7 +11,7 @@
|
||||
extern u8 EventObjectGetBerryTreeId(u8 eventObjectId);
|
||||
extern void sub_8092EF0(u8 mapId, u8 mapNumber, u8 mapGroup);
|
||||
extern void CB2_ChooseBerry(void);
|
||||
extern const u8* GetEventObjectScriptPointerForComparison(void);
|
||||
extern const u8* GetEventObjectScriptPointerPlayerFacing(void);
|
||||
extern bool8 IsBerryTreeSparkling(u8, u8, u8);
|
||||
|
||||
extern u16 gSpecialVar_ItemId;
|
||||
@@ -930,7 +930,7 @@ bool32 EventObjectInteractionWaterBerryTree(void)
|
||||
|
||||
bool8 IsPlayerFacingPlantedBerryTree(void)
|
||||
{
|
||||
if (GetEventObjectScriptPointerForComparison() == BerryTreeScript
|
||||
if (GetEventObjectScriptPointerPlayerFacing() == BerryTreeScript
|
||||
&& GetStageByBerryTreeId(EventObjectGetBerryTreeId(gSelectedEventObject)) == 0)
|
||||
return TRUE;
|
||||
else
|
||||
@@ -939,7 +939,7 @@ bool8 IsPlayerFacingPlantedBerryTree(void)
|
||||
|
||||
bool8 TryToWaterBerryTree(void)
|
||||
{
|
||||
if (GetEventObjectScriptPointerForComparison() != BerryTreeScript)
|
||||
if (GetEventObjectScriptPointerPlayerFacing() != BerryTreeScript)
|
||||
return FALSE;
|
||||
else
|
||||
return EventObjectInteractionWaterBerryTree();
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
#include "global.h"
|
||||
#include "palette.h"
|
||||
|
||||
void BlendPalette(u16 palOffset, u16 numEntries, u8 coeff, u16 blendColor)
|
||||
{
|
||||
u16 i;
|
||||
for (i = 0; i < numEntries; i++)
|
||||
{
|
||||
u16 index = i + palOffset;
|
||||
struct PlttData *data1 = (struct PlttData *)&gPlttBufferUnfaded[index];
|
||||
s8 r = data1->r;
|
||||
s8 g = data1->g;
|
||||
s8 b = data1->b;
|
||||
struct PlttData *data2 = (struct PlttData *)&blendColor;
|
||||
gPlttBufferFaded[index] = ((r + (((data2->r - r) * coeff) >> 4)) << 0)
|
||||
| ((g + (((data2->g - g) * coeff) >> 4)) << 5)
|
||||
| ((b + (((data2->b - b) * coeff) >> 4)) << 10);
|
||||
}
|
||||
}
|
||||
+1299
File diff suppressed because it is too large
Load Diff
@@ -10,7 +10,6 @@
|
||||
#include "constants/flags.h"
|
||||
#include "battle.h"
|
||||
#include "battle_anim.h"
|
||||
#include "blend_palette.h"
|
||||
#include "contest.h"
|
||||
#include "data2.h"
|
||||
#include "decompress.h"
|
||||
|
||||
@@ -71,36 +71,36 @@ const u16 gEventObjectPalette4[] = INCBIN_U16("graphics/event_objects/palettes/f
|
||||
const u16 gEventObjectPalette5[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_05.gbapal");
|
||||
const u16 gEventObjectPalette6[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_06.gbapal");
|
||||
const u16 gEventObjectPalette7[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_07.gbapal");
|
||||
const u32 gEventObjectPic_LittleBoy1[] = INCBIN_U32("graphics/event_objects/pics/people/little_boy_1.4bpp");
|
||||
const u32 gEventObjectPic_LittleGirl1[] = INCBIN_U32("graphics/event_objects/pics/people/little_girl_1.4bpp");
|
||||
const u32 gEventObjectPic_NinjaBoy[] = INCBIN_U32("graphics/event_objects/pics/people/ninja_boy.4bpp");
|
||||
const u32 gEventObjectPic_Twin[] = INCBIN_U32("graphics/event_objects/pics/people/twin.4bpp");
|
||||
const u32 gEventObjectPic_Boy1[] = INCBIN_U32("graphics/event_objects/pics/people/boy_1.4bpp");
|
||||
const u32 gEventObjectPic_Girl1[] = INCBIN_U32("graphics/event_objects/pics/people/girl_1.4bpp");
|
||||
const u32 gEventObjectPic_Boy2[] = INCBIN_U32("graphics/event_objects/pics/people/boy_2.4bpp");
|
||||
const u32 gEventObjectPic_Girl2[] = INCBIN_U32("graphics/event_objects/pics/people/girl_2.4bpp");
|
||||
const u32 gEventObjectPic_LittleBoy2[] = INCBIN_U32("graphics/event_objects/pics/people/little_boy_2.4bpp");
|
||||
const u32 gEventObjectPic_LittleGirl2[] = INCBIN_U32("graphics/event_objects/pics/people/little_girl_2.4bpp");
|
||||
const u32 gEventObjectPic_LittleBoy[] = INCBIN_U32("graphics/event_objects/pics/people/little_boy.4bpp");
|
||||
const u32 gEventObjectPic_LittleGirl[] = INCBIN_U32("graphics/event_objects/pics/people/little_girl.4bpp");
|
||||
const u32 gEventObjectPic_Boy3[] = INCBIN_U32("graphics/event_objects/pics/people/boy_3.4bpp");
|
||||
const u32 gEventObjectPic_Girl3[] = INCBIN_U32("graphics/event_objects/pics/people/girl_3.4bpp");
|
||||
const u32 gEventObjectPic_Boy4[] = INCBIN_U32("graphics/event_objects/pics/people/boy_4.4bpp");
|
||||
const u32 gEventObjectPic_RichBoy[] = INCBIN_U32("graphics/event_objects/pics/people/rich_boy.4bpp");
|
||||
const u32 gEventObjectPic_Woman1[] = INCBIN_U32("graphics/event_objects/pics/people/woman_1.4bpp");
|
||||
const u32 gEventObjectPic_FatMan[] = INCBIN_U32("graphics/event_objects/pics/people/fat_man.4bpp");
|
||||
const u32 gEventObjectPic_Woman2[] = INCBIN_U32("graphics/event_objects/pics/people/woman_2.4bpp");
|
||||
const u32 gEventObjectPic_PokefanF[] = INCBIN_U32("graphics/event_objects/pics/people/pokefan_f.4bpp");
|
||||
const u32 gEventObjectPic_Man1[] = INCBIN_U32("graphics/event_objects/pics/people/man_1.4bpp");
|
||||
const u32 gEventObjectPic_Woman3[] = INCBIN_U32("graphics/event_objects/pics/people/woman_3.4bpp");
|
||||
const u32 gEventObjectPic_OldMan1[] = INCBIN_U32("graphics/event_objects/pics/people/old_man_1.4bpp");
|
||||
const u32 gEventObjectPic_OldWoman1[] = INCBIN_U32("graphics/event_objects/pics/people/old_woman_1.4bpp");
|
||||
const u32 gEventObjectPic_Woman2[] = INCBIN_U32("graphics/event_objects/pics/people/woman_2.4bpp");
|
||||
const u32 gEventObjectPic_ExpertM[] = INCBIN_U32("graphics/event_objects/pics/people/expert_m.4bpp");
|
||||
const u32 gEventObjectPic_ExpertF[] = INCBIN_U32("graphics/event_objects/pics/people/expert_f.4bpp");
|
||||
const u32 gEventObjectPic_Man2[] = INCBIN_U32("graphics/event_objects/pics/people/man_2.4bpp");
|
||||
const u32 gEventObjectPic_Woman3[] = INCBIN_U32("graphics/event_objects/pics/people/woman_3.4bpp");
|
||||
const u32 gEventObjectPic_PokefanM[] = INCBIN_U32("graphics/event_objects/pics/people/pokefan_m.4bpp");
|
||||
const u32 gEventObjectPic_Woman4[] = INCBIN_U32("graphics/event_objects/pics/people/woman_4.4bpp");
|
||||
const u32 gEventObjectPic_Man3[] = INCBIN_U32("graphics/event_objects/pics/people/man_3.4bpp");
|
||||
const u32 gEventObjectPic_Woman5[] = INCBIN_U32("graphics/event_objects/pics/people/woman_5.4bpp");
|
||||
const u32 gEventObjectPic_Cook[] = INCBIN_U32("graphics/event_objects/pics/people/cook.4bpp");
|
||||
const u32 gEventObjectPic_Woman6[] = INCBIN_U32("graphics/event_objects/pics/people/woman_6.4bpp");
|
||||
const u32 gEventObjectPic_OldMan2[] = INCBIN_U32("graphics/event_objects/pics/people/old_man_2.4bpp");
|
||||
const u32 gEventObjectPic_OldWoman2[] = INCBIN_U32("graphics/event_objects/pics/people/old_woman_2.4bpp");
|
||||
const u32 gEventObjectPic_LinkReceptionist[] = INCBIN_U32("graphics/event_objects/pics/people/link_receptionist.4bpp");
|
||||
const u32 gEventObjectPic_OldMan[] = INCBIN_U32("graphics/event_objects/pics/people/old_man.4bpp");
|
||||
const u32 gEventObjectPic_OldWoman[] = INCBIN_U32("graphics/event_objects/pics/people/old_woman.4bpp");
|
||||
const u32 gEventObjectPic_Camper[] = INCBIN_U32("graphics/event_objects/pics/people/camper.4bpp");
|
||||
const u32 gEventObjectPic_Picnicker[] = INCBIN_U32("graphics/event_objects/pics/people/picnicker.4bpp");
|
||||
const u32 gEventObjectPic_Man4[] = INCBIN_U32("graphics/event_objects/pics/people/man_4.4bpp");
|
||||
const u32 gEventObjectPic_Woman7[] = INCBIN_U32("graphics/event_objects/pics/people/woman_7.4bpp");
|
||||
const u32 gEventObjectPic_Man3[] = INCBIN_U32("graphics/event_objects/pics/people/man_3.4bpp");
|
||||
const u32 gEventObjectPic_Woman5[] = INCBIN_U32("graphics/event_objects/pics/people/woman_5.4bpp");
|
||||
const u32 gEventObjectPic_Youngster[] = INCBIN_U32("graphics/event_objects/pics/people/youngster.4bpp");
|
||||
const u32 gEventObjectPic_BugCatcher[] = INCBIN_U32("graphics/event_objects/pics/people/bug_catcher.4bpp");
|
||||
const u32 gEventObjectPic_PsychicM[] = INCBIN_U32("graphics/event_objects/pics/people/psychic_m.4bpp");
|
||||
@@ -124,8 +124,8 @@ const u32 gEventObjectPic_TuberM[] = INCBIN_U32("graphics/event_objects/pics/peo
|
||||
const u32 gEventObjectPic_Hiker[] = INCBIN_U32("graphics/event_objects/pics/people/hiker.4bpp");
|
||||
const u32 gEventObjectPic_CyclingTriathleteM[] = INCBIN_U32("graphics/event_objects/pics/people/cycling_triathlete_m.4bpp");
|
||||
const u32 gEventObjectPic_CyclingTriathleteF[] = INCBIN_U32("graphics/event_objects/pics/people/cycling_triathlete_f.4bpp");
|
||||
const u32 gEventObjectPic_Man4[] = INCBIN_U32("graphics/event_objects/pics/people/man_4.4bpp");
|
||||
const u32 gEventObjectPic_Man5[] = INCBIN_U32("graphics/event_objects/pics/people/man_5.4bpp");
|
||||
const u32 gEventObjectPic_Man6[] = INCBIN_U32("graphics/event_objects/pics/people/man_6.4bpp");
|
||||
const u32 gEventObjectPic_Nurse[] = INCBIN_U32("graphics/event_objects/pics/people/nurse.4bpp");
|
||||
const u32 gEventObjectPic_ItemBall[] = INCBIN_U32("graphics/event_objects/pics/misc/item_ball.4bpp");
|
||||
const u32 gEventObjectPic_ProfBirch[] = INCBIN_U32("graphics/event_objects/pics/people/prof_birch.4bpp");
|
||||
@@ -139,7 +139,7 @@ const u32 gEventObjectPic_Teala[] = INCBIN_U32("graphics/event_objects/pics/peop
|
||||
const u32 gEventObjectPic_Artist[] = INCBIN_U32("graphics/event_objects/pics/people/artist.4bpp");
|
||||
const u32 gEventObjectPic_Cameraman[] = INCBIN_U32("graphics/event_objects/pics/people/cameraman.4bpp");
|
||||
const u32 gEventObjectPic_Scientist2[] = INCBIN_U32("graphics/event_objects/pics/people/scientist_2.4bpp");
|
||||
const u32 gEventObjectPic_Man7[] = INCBIN_U32("graphics/event_objects/pics/people/man_7.4bpp");
|
||||
const u32 gEventObjectPic_DevonEmployee[] = INCBIN_U32("graphics/event_objects/pics/people/devon_employee.4bpp");
|
||||
const u32 gEventObjectPic_AquaMemberM[] = INCBIN_U32("graphics/event_objects/pics/people/team_aqua/aqua_member_m.4bpp");
|
||||
const u32 gEventObjectPic_AquaMemberF[] = INCBIN_U32("graphics/event_objects/pics/people/team_aqua/aqua_member_f.4bpp");
|
||||
const u32 gEventObjectPic_MagmaMemberM[] = INCBIN_U32("graphics/event_objects/pics/people/team_magma/magma_member_m.4bpp");
|
||||
@@ -162,8 +162,8 @@ const u32 gEventObjectPic_Wally[] = INCBIN_U32("graphics/event_objects/pics/peop
|
||||
const u32 gEventObjectPic_RubySapphireLittleBoy[] = INCBIN_U32("graphics/event_objects/pics/people/rs_little_boy.4bpp");
|
||||
const u32 gEventObjectPic_HotSpringsOldWoman[] = INCBIN_U32("graphics/event_objects/pics/people/hot_springs_old_woman.4bpp");
|
||||
const u32 gEventObjectPic_LatiasLatios[] = INCBIN_U32("graphics/event_objects/pics/pokemon/latias_latios.4bpp");
|
||||
const u32 gEventObjectPic_Boy5[] = INCBIN_U32("graphics/event_objects/pics/people/boy_5.4bpp");
|
||||
const u32 gEventObjectPic_ContestOldMan[] = INCBIN_U32("graphics/event_objects/pics/people/contest_old_man.4bpp");
|
||||
const u32 gEventObjectPic_GameboyKid[] = INCBIN_U32("graphics/event_objects/pics/people/gameboy_kid.4bpp");
|
||||
const u32 gEventObjectPic_ContestJudge[] = INCBIN_U32("graphics/event_objects/pics/people/contest_judge.4bpp");
|
||||
const u32 gEventObjectPic_Archie[] = INCBIN_U32("graphics/event_objects/pics/people/team_aqua/archie.4bpp");
|
||||
const u32 gEventObjectPic_Maxie[] = INCBIN_U32("graphics/event_objects/pics/people/team_magma/maxie.4bpp");
|
||||
const u32 gEventObjectPic_Kyogre[] = INCBIN_U32("graphics/event_objects/pics/pokemon/kyogre.4bpp");
|
||||
|
||||
@@ -7,36 +7,36 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanAcroBike =
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanSurfing = {0xFFFF, EVENT_OBJ_PAL_TAG_8, EVENT_OBJ_PAL_TAG_NONE, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, TRUE, TRACKS_FOOT, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_Surfing, gEventObjectPicTable_BrendanSurfing, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanFieldMove = {0xFFFF, EVENT_OBJ_PAL_TAG_8, EVENT_OBJ_PAL_TAG_10, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_FieldMove, gEventObjectPicTable_BrendanFieldMove, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_QuintyPlump = {0xFFFF, EVENT_OBJ_PAL_TAG_12, EVENT_OBJ_PAL_TAG_NONE, 512, 32, 32, 10, SHADOW_SIZE_L, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_QuintyPlump, gEventObjectPicTable_QuintyPlump, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleBoy1 = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LittleBoy1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleGirl1 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LittleGirl1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_NinjaBoy = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 128, 16, 16, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_NinjaBoy, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Twin = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Twin, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy1 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Boy1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Girl1 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Girl1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy2 = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Boy2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Girl2 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Girl2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleBoy2 = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LittleBoy2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleGirl2 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LittleGirl2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleBoy = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 128, 16, 16, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LittleBoy, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleGirl = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 128, 16, 16, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LittleGirl, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy3 = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Boy3, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Girl3 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Girl3, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy4 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Boy4, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_RichBoy = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_RichBoy, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman1 = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_FatMan = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_FatMan, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman2 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_PokefanF = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_PokefanF, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man1 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman3 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman3, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldMan1 = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_OldMan1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldWoman1 = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_OldWoman1, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman2 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ExpertM = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_ExpertM, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ExpertF = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_ExpertF, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man2 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman4 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman4, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man3 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man3, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman5 = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman5, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman3 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman3, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_PokefanM = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_PokefanM, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman4 = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman4, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Cook = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Cook, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman6 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman6, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldMan2 = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_OldMan2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldWoman2 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_OldWoman2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LinkReceptionist = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LinkReceptionist, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldMan = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_OldMan, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldWoman = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_OldWoman, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Camper = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Camper, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Picnicker = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Picnicker, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man4 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man4, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman7 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman7, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man3 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man3, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman5 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Woman5, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Youngster = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Youngster, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BugCatcher = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_BugCatcher, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_PsychicM = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_PsychicM, gDummySpriteAffineAnimTable};
|
||||
@@ -66,8 +66,8 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BerryTree = {0xFFF
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BerryTreeEarlyStages = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 16, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_BerryTree, gEventObjectPicTable_PechaBerryTree, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BerryTreeLateStages = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_BerryTree, gEventObjectPicTable_PechaBerryTree, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ProfBirch = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_ProfBirch, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man5 = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man5, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man6 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man6, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man4 = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man4, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man5 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man5, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ReporterM = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_ReporterM, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ReporterF = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_ReporterF, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Bard = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_MauvilleOldMan1, gDummySpriteAffineAnimTable};
|
||||
@@ -118,7 +118,7 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MayUnderwater = {0
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MovingBox = {0xFFFF, EVENT_OBJ_PAL_TAG_19, EVENT_OBJ_PAL_TAG_NONE, 128, 16, 16, 10, SHADOW_SIZE_S, TRUE, FALSE, TRACKS_NONE, &gEventObjectBaseOam_16x16, gEventObjectSpriteOamTables_16x16, gEventObjectImageAnimTable_Inanimate, gEventObjectPicTable_MovingBox, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_CableCar = {0xFFFF, EVENT_OBJ_PAL_TAG_20, EVENT_OBJ_PAL_TAG_NONE, 2048, 64, 64, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gEventObjectBaseOam_64x64, gEventObjectSpriteOamTables_64x64, gEventObjectImageAnimTable_Inanimate, gEventObjectPicTable_CableCar, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Scientist2 = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Scientist2, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man7 = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Man7, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_DevonEmployee = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_DevonEmployee, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_AquaMemberM = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_AquaMemberM, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_AquaMemberF = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 5, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_AquaMemberF, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MagmaMemberM = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_MagmaMemberM, gDummySpriteAffineAnimTable};
|
||||
@@ -191,8 +191,8 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BigRegiceDoll = {0
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BigRegisteelDoll = {0xFFFF, EVENT_OBJ_PAL_TAG_3, EVENT_OBJ_PAL_TAG_NONE, 512, 32, 32, 5, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_NONE, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_Inanimate, gEventObjectPicTable_BigRegisteelDoll, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Latias = {0xFFFF, EVENT_OBJ_PAL_TAG_1, EVENT_OBJ_PAL_TAG_NONE, 512, 32, 32, 3, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LatiasLatios, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Latios = {0xFFFF, EVENT_OBJ_PAL_TAG_0, EVENT_OBJ_PAL_TAG_NONE, 512, 32, 32, 2, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_NONE, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_LatiasLatios, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy5 = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_Boy5, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ContestOldMan = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_ContestOldMan, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_GameboyKid = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_GameboyKid, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ContestJudge = {0xFFFF, EVENT_OBJ_PAL_TAG_2, EVENT_OBJ_PAL_TAG_NONE, 256, 16, 32, 4, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_ContestJudge, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanWatering = {0xFFFF, EVENT_OBJ_PAL_TAG_8, EVENT_OBJ_PAL_TAG_10, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_BrendanWatering, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MayWatering = {0xFFFF, EVENT_OBJ_PAL_TAG_17, EVENT_OBJ_PAL_TAG_10, 512, 32, 32, 0, SHADOW_SIZE_M, FALSE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_32x32, gEventObjectSpriteOamTables_32x32, gEventObjectImageAnimTable_Standard, gEventObjectPicTable_MayWatering, gDummySpriteAffineAnimTable};
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanDecorating = {0xFFFF, EVENT_OBJ_PAL_TAG_8, EVENT_OBJ_PAL_TAG_10, 256, 16, 32, 10, SHADOW_SIZE_M, TRUE, FALSE, TRACKS_FOOT, &gEventObjectBaseOam_16x32, gEventObjectSpriteOamTables_16x32, gEventObjectImageAnimTable_Inanimate, gEventObjectPicTable_BrendanDecorating, gDummySpriteAffineAnimTable};
|
||||
|
||||
@@ -6,36 +6,36 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanMachBike;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanSurfing;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanFieldMove;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_QuintyPlump;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleBoy1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleGirl1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_NinjaBoy;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Twin;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Girl1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Girl2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleBoy2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleGirl2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleBoy;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LittleGirl;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy3;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Girl3;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy4;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_RichBoy;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_FatMan;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_PokefanF;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman3;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldMan1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldWoman1;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ExpertM;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ExpertF;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman3;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_PokefanM;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman4;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man3;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman5;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Cook;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman6;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldMan2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldWoman2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_LinkReceptionist;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldMan;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_OldWoman;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Camper;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Picnicker;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man4;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman7;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man3;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Woman5;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Youngster;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BugCatcher;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_PsychicM;
|
||||
@@ -66,8 +66,8 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BerryTreeEarlyStag
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BerryTreeLateStages;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanAcroBike;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ProfBirch;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man4;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man5;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man6;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ReporterM;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ReporterF;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Bard;
|
||||
@@ -117,7 +117,7 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MayUnderwater;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MovingBox;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_CableCar;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Scientist2;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Man7;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_DevonEmployee;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_AquaMemberM;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_AquaMemberF;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MagmaMemberM;
|
||||
@@ -190,8 +190,8 @@ const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BigRegiceDoll;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BigRegisteelDoll;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Latias;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Latios;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_Boy5;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ContestOldMan;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_GameboyKid;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_ContestJudge;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanWatering;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_MayWatering;
|
||||
const struct EventObjectGraphicsInfo gEventObjectGraphicsInfo_BrendanDecorating;
|
||||
@@ -255,36 +255,36 @@ const struct EventObjectGraphicsInfo *const gEventObjectGraphicsInfoPointers[] =
|
||||
&gEventObjectGraphicsInfo_BrendanSurfing,
|
||||
&gEventObjectGraphicsInfo_BrendanFieldMove,
|
||||
&gEventObjectGraphicsInfo_QuintyPlump,
|
||||
&gEventObjectGraphicsInfo_LittleBoy1,
|
||||
&gEventObjectGraphicsInfo_LittleGirl1,
|
||||
&gEventObjectGraphicsInfo_NinjaBoy,
|
||||
&gEventObjectGraphicsInfo_Twin,
|
||||
&gEventObjectGraphicsInfo_Boy1,
|
||||
&gEventObjectGraphicsInfo_Girl1,
|
||||
&gEventObjectGraphicsInfo_Boy2,
|
||||
&gEventObjectGraphicsInfo_Girl2,
|
||||
&gEventObjectGraphicsInfo_LittleBoy2,
|
||||
&gEventObjectGraphicsInfo_LittleGirl2,
|
||||
&gEventObjectGraphicsInfo_LittleBoy,
|
||||
&gEventObjectGraphicsInfo_LittleGirl,
|
||||
&gEventObjectGraphicsInfo_Boy3,
|
||||
&gEventObjectGraphicsInfo_Girl3,
|
||||
&gEventObjectGraphicsInfo_Boy4,
|
||||
&gEventObjectGraphicsInfo_RichBoy,
|
||||
&gEventObjectGraphicsInfo_Woman1,
|
||||
&gEventObjectGraphicsInfo_FatMan,
|
||||
&gEventObjectGraphicsInfo_Woman2,
|
||||
&gEventObjectGraphicsInfo_PokefanF,
|
||||
&gEventObjectGraphicsInfo_Man1,
|
||||
&gEventObjectGraphicsInfo_Woman3,
|
||||
&gEventObjectGraphicsInfo_OldMan1,
|
||||
&gEventObjectGraphicsInfo_OldWoman1,
|
||||
&gEventObjectGraphicsInfo_Woman2,
|
||||
&gEventObjectGraphicsInfo_ExpertM,
|
||||
&gEventObjectGraphicsInfo_ExpertF,
|
||||
&gEventObjectGraphicsInfo_Man2,
|
||||
&gEventObjectGraphicsInfo_Woman3,
|
||||
&gEventObjectGraphicsInfo_PokefanM,
|
||||
&gEventObjectGraphicsInfo_Woman4,
|
||||
&gEventObjectGraphicsInfo_Man3,
|
||||
&gEventObjectGraphicsInfo_Woman5,
|
||||
&gEventObjectGraphicsInfo_Cook,
|
||||
&gEventObjectGraphicsInfo_Woman6,
|
||||
&gEventObjectGraphicsInfo_OldMan2,
|
||||
&gEventObjectGraphicsInfo_OldWoman2,
|
||||
&gEventObjectGraphicsInfo_LinkReceptionist,
|
||||
&gEventObjectGraphicsInfo_OldMan,
|
||||
&gEventObjectGraphicsInfo_OldWoman,
|
||||
&gEventObjectGraphicsInfo_Camper,
|
||||
&gEventObjectGraphicsInfo_Picnicker,
|
||||
&gEventObjectGraphicsInfo_Man4,
|
||||
&gEventObjectGraphicsInfo_Woman7,
|
||||
&gEventObjectGraphicsInfo_Man3,
|
||||
&gEventObjectGraphicsInfo_Woman5,
|
||||
&gEventObjectGraphicsInfo_Youngster,
|
||||
&gEventObjectGraphicsInfo_BugCatcher,
|
||||
&gEventObjectGraphicsInfo_PsychicM,
|
||||
@@ -315,8 +315,8 @@ const struct EventObjectGraphicsInfo *const gEventObjectGraphicsInfoPointers[] =
|
||||
&gEventObjectGraphicsInfo_BerryTreeLateStages,
|
||||
&gEventObjectGraphicsInfo_BrendanAcroBike,
|
||||
&gEventObjectGraphicsInfo_ProfBirch,
|
||||
&gEventObjectGraphicsInfo_Man4,
|
||||
&gEventObjectGraphicsInfo_Man5,
|
||||
&gEventObjectGraphicsInfo_Man6,
|
||||
&gEventObjectGraphicsInfo_ReporterM,
|
||||
&gEventObjectGraphicsInfo_ReporterF,
|
||||
&gEventObjectGraphicsInfo_Bard,
|
||||
@@ -366,7 +366,7 @@ const struct EventObjectGraphicsInfo *const gEventObjectGraphicsInfoPointers[] =
|
||||
&gEventObjectGraphicsInfo_MovingBox,
|
||||
&gEventObjectGraphicsInfo_CableCar,
|
||||
&gEventObjectGraphicsInfo_Scientist2,
|
||||
&gEventObjectGraphicsInfo_Man7,
|
||||
&gEventObjectGraphicsInfo_DevonEmployee,
|
||||
&gEventObjectGraphicsInfo_AquaMemberM,
|
||||
&gEventObjectGraphicsInfo_AquaMemberF,
|
||||
&gEventObjectGraphicsInfo_MagmaMemberM,
|
||||
@@ -439,8 +439,8 @@ const struct EventObjectGraphicsInfo *const gEventObjectGraphicsInfoPointers[] =
|
||||
&gEventObjectGraphicsInfo_BigRegisteelDoll,
|
||||
&gEventObjectGraphicsInfo_Latias,
|
||||
&gEventObjectGraphicsInfo_Latios,
|
||||
&gEventObjectGraphicsInfo_Boy5,
|
||||
&gEventObjectGraphicsInfo_ContestOldMan,
|
||||
&gEventObjectGraphicsInfo_GameboyKid,
|
||||
&gEventObjectGraphicsInfo_ContestJudge,
|
||||
&gEventObjectGraphicsInfo_BrendanWatering,
|
||||
&gEventObjectGraphicsInfo_MayWatering,
|
||||
&gEventObjectGraphicsInfo_BrendanDecorating,
|
||||
|
||||
@@ -109,28 +109,28 @@ const struct SpriteFrameImage gEventObjectPicTable_QuintyPlump[] = {
|
||||
overworld_frame(gEventObjectPic_QuintyPlump, 4, 4, 6),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_LittleBoy1[] = {
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 0),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 1),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 2),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 3),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 4),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 5),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 6),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 7),
|
||||
overworld_frame(gEventObjectPic_LittleBoy1, 2, 2, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_NinjaBoy[] = {
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 0),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 1),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 2),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 3),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 4),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 5),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 6),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 7),
|
||||
overworld_frame(gEventObjectPic_NinjaBoy, 2, 2, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_LittleGirl1[] = {
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_LittleGirl1, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Twin[] = {
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Twin, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Boy1[] = {
|
||||
@@ -181,28 +181,28 @@ const struct SpriteFrameImage gEventObjectPicTable_Girl2[] = {
|
||||
overworld_frame(gEventObjectPic_Girl2, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_LittleBoy2[] = {
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 0),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 1),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 2),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 3),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 4),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 5),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 6),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 7),
|
||||
overworld_frame(gEventObjectPic_LittleBoy2, 2, 2, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_LittleBoy[] = {
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 0),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 1),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 2),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 3),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 4),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 5),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 6),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 7),
|
||||
overworld_frame(gEventObjectPic_LittleBoy, 2, 2, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_LittleGirl2[] = {
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 0),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 1),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 2),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 3),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 4),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 5),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 6),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 7),
|
||||
overworld_frame(gEventObjectPic_LittleGirl2, 2, 2, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_LittleGirl[] = {
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 0),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 1),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 2),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 3),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 4),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 5),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 6),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 7),
|
||||
overworld_frame(gEventObjectPic_LittleGirl, 2, 2, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Boy3[] = {
|
||||
@@ -229,16 +229,16 @@ const struct SpriteFrameImage gEventObjectPicTable_Girl3[] = {
|
||||
overworld_frame(gEventObjectPic_Girl3, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Boy4[] = {
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Boy4, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_RichBoy[] = {
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_RichBoy, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman1[] = {
|
||||
@@ -265,16 +265,16 @@ const struct SpriteFrameImage gEventObjectPicTable_FatMan[] = {
|
||||
overworld_frame(gEventObjectPic_FatMan, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman2[] = {
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_PokefanF[] = {
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_PokefanF, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man1[] = {
|
||||
@@ -289,40 +289,40 @@ const struct SpriteFrameImage gEventObjectPicTable_Man1[] = {
|
||||
overworld_frame(gEventObjectPic_Man1, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman3[] = {
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman2[] = {
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman2, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_OldMan1[] = {
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_OldMan1, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_ExpertM[] = {
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_ExpertM, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_OldWoman1[] = {
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_OldWoman1, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_ExpertF[] = {
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_ExpertF, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man2[] = {
|
||||
@@ -337,6 +337,30 @@ const struct SpriteFrameImage gEventObjectPicTable_Man2[] = {
|
||||
overworld_frame(gEventObjectPic_Man2, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman3[] = {
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman3, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_PokefanM[] = {
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_PokefanM, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman4[] = {
|
||||
overworld_frame(gEventObjectPic_Woman4, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman4, 2, 4, 1),
|
||||
@@ -349,30 +373,6 @@ const struct SpriteFrameImage gEventObjectPicTable_Woman4[] = {
|
||||
overworld_frame(gEventObjectPic_Woman4, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man3[] = {
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman5[] = {
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Cook[] = {
|
||||
overworld_frame(gEventObjectPic_Cook, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Cook, 2, 4, 1),
|
||||
@@ -385,40 +385,40 @@ const struct SpriteFrameImage gEventObjectPicTable_Cook[] = {
|
||||
overworld_frame(gEventObjectPic_Cook, 2, 4, 2),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman6[] = {
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman6, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_LinkReceptionist[] = {
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_LinkReceptionist, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_OldMan2[] = {
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldMan2, 2, 4, 2),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_OldMan[] = {
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldMan, 2, 4, 2),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_OldWoman2[] = {
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_OldWoman2, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_OldWoman[] = {
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_OldWoman, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Camper[] = {
|
||||
@@ -445,28 +445,28 @@ const struct SpriteFrameImage gEventObjectPicTable_Picnicker[] = {
|
||||
overworld_frame(gEventObjectPic_Picnicker, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man4[] = {
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man3[] = {
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Man3, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman7[] = {
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman7, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Woman5[] = {
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Woman5, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Youngster[] = {
|
||||
@@ -762,6 +762,18 @@ const struct SpriteFrameImage gEventObjectPicTable_ProfBirch[] = {
|
||||
overworld_frame(gEventObjectPic_ProfBirch, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man4[] = {
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Man4, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man5[] = {
|
||||
overworld_frame(gEventObjectPic_Man5, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Man5, 2, 4, 1),
|
||||
@@ -774,18 +786,6 @@ const struct SpriteFrameImage gEventObjectPicTable_Man5[] = {
|
||||
overworld_frame(gEventObjectPic_Man5, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man6[] = {
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Man6, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_ReporterM[] = {
|
||||
overworld_frame(gEventObjectPic_ReporterM, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_ReporterM, 2, 4, 1),
|
||||
@@ -1122,16 +1122,16 @@ const struct SpriteFrameImage gEventObjectPicTable_Scientist2[] = {
|
||||
overworld_frame(gEventObjectPic_Scientist2, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Man7[] = {
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_Man7, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_DevonEmployee[] = {
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_DevonEmployee, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_AquaMemberM[] = {
|
||||
@@ -1632,28 +1632,28 @@ const struct SpriteFrameImage gEventObjectPicTable_LatiasLatios[] = {
|
||||
overworld_frame(gEventObjectPic_LatiasLatios, 4, 4, 2),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_Boy5[] = {
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_Boy5, 2, 4, 2),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_GameboyKid[] = {
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_GameboyKid, 2, 4, 2),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_ContestOldMan[] = {
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_ContestOldMan, 2, 4, 8),
|
||||
const struct SpriteFrameImage gEventObjectPicTable_ContestJudge[] = {
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 0),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 1),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 2),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 3),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 4),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 5),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 6),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 7),
|
||||
overworld_frame(gEventObjectPic_ContestJudge, 2, 4, 8),
|
||||
};
|
||||
|
||||
const struct SpriteFrameImage gEventObjectPicTable_BrendanWatering[] = {
|
||||
|
||||
@@ -32,13 +32,13 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_ShadowExtraLarge[] = {
|
||||
obj_frame_tiles(gFieldEffectObjectPic_ShadowExtraLarge),
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_8x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowSmall, gDummySpriteAffineAnimTable, oamc_shadow};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_8x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowSmall, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowMedium, gDummySpriteAffineAnimTable, oamc_shadow};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowMedium, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_32x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowLarge, gDummySpriteAffineAnimTable, oamc_shadow};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_32x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_64x32, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowExtraLarge, gDummySpriteAffineAnimTable, oamc_shadow};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_64x32, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowExtraLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_TallGrass[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_TallGrass, 2, 2, 0),
|
||||
@@ -63,7 +63,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_TallGrass[] =
|
||||
gFieldEffectObjectImageAnim_850CA84,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_TallGrass, gFieldEffectObjectPicTable_TallGrass, gDummySpriteAffineAnimTable, unc_grass_normal};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_TallGrass, gFieldEffectObjectPicTable_TallGrass, gDummySpriteAffineAnimTable, UpdateTallGrassFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_Ripple[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_Ripple, 2, 2, 0),
|
||||
@@ -116,7 +116,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_Ash[] =
|
||||
gFieldEffectObjectImageAnim_850CB48,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Ash = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_Ash, gFieldEffectObjectPicTable_Ash, gDummySpriteAffineAnimTable, sub_8155460};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Ash = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_Ash, gFieldEffectObjectPicTable_Ash, gDummySpriteAffineAnimTable, UpdateAshFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_SurfBlob[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_SurfBlob, 4, 4, 0),
|
||||
@@ -156,7 +156,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_SurfBlob[] =
|
||||
gFieldEffectObjectImageAnim_850CBAC,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_32x32, gFieldEffectObjectImageAnimTable_SurfBlob, gFieldEffectObjectPicTable_SurfBlob, gDummySpriteAffineAnimTable, sub_8155658};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_32x32, gFieldEffectObjectImageAnimTable_SurfBlob, gFieldEffectObjectPicTable_SurfBlob, gDummySpriteAffineAnimTable, UpdateSurfBlobFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_Arrow[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_Arrow, 2, 2, 0),
|
||||
@@ -289,7 +289,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_SandFootprints[] =
|
||||
gFieldEffectObjectImageAnim_850CD30,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_SandFootprints, gFieldEffectObjectPicTable_SandFootprints, gDummySpriteAffineAnimTable, sub_8154C60};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_SandFootprints, gFieldEffectObjectPicTable_SandFootprints, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_DeepSandFootprints[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_DeepSandFootprints, 2, 2, 0),
|
||||
@@ -329,7 +329,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_DeepSandFootprints[]
|
||||
gFieldEffectObjectImageAnim_850CD8C,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_DeepSandFootprints, gFieldEffectObjectPicTable_DeepSandFootprints, gDummySpriteAffineAnimTable, sub_8154C60};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_DeepSandFootprints, gFieldEffectObjectPicTable_DeepSandFootprints, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_BikeTireTracks[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_BikeTireTracks, 2, 2, 0),
|
||||
@@ -399,7 +399,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_BikeTireTracks[] =
|
||||
gFieldEffectObjectImageAnim_850CE18,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_BikeTireTracks, gFieldEffectObjectPicTable_BikeTireTracks, gDummySpriteAffineAnimTable, sub_8154C60};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_BikeTireTracks, gFieldEffectObjectPicTable_BikeTireTracks, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_BikeHopBigSplash[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_BikeHopBigSplash, 2, 2, 0),
|
||||
@@ -455,7 +455,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_Splash[] =
|
||||
gFieldEffectObjectImageAnim_850CEC8,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Splash = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x8, gFieldEffectObjectImageAnimTable_Splash, gFieldEffectObjectPicTable_Splash, gDummySpriteAffineAnimTable, sub_8154D90};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Splash = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x8, gFieldEffectObjectImageAnimTable_Splash, gFieldEffectObjectPicTable_Splash, gDummySpriteAffineAnimTable, UpdateSplashFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_BikeHopSmallSplash[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_BikeHopSmallSplash, 2, 1, 0),
|
||||
@@ -502,7 +502,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_LongGrass[] =
|
||||
gFieldEffectObjectImageAnim_850CF70,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_LongGrass, gFieldEffectObjectPicTable_LongGrass, gDummySpriteAffineAnimTable, unc_grass_tall};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_LongGrass, gFieldEffectObjectPicTable_LongGrass, gDummySpriteAffineAnimTable, UpdateLongGrassFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown16[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 0),
|
||||
@@ -631,7 +631,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown29[] =
|
||||
gFieldEffectObjectImageAnim_850D160,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown29 = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x8, gFieldEffectObjectImageAnimTable_Unknown29, gFieldEffectObjectPicTable_Unknown29, gDummySpriteAffineAnimTable, sub_81559BC};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown29 = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x8, gFieldEffectObjectImageAnimTable_Unknown29, gFieldEffectObjectPicTable_Unknown29, gDummySpriteAffineAnimTable, UpdateSandPileFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown20[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_Unknown20, 2, 2, 0),
|
||||
@@ -769,7 +769,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_TreeDisguise[] =
|
||||
gFieldEffectObjectImageAnim_850D384,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_TreeDisguise, gFieldEffectObjectPicTable_TreeDisguise, gDummySpriteAffineAnimTable, sub_8155C88};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_TreeDisguise, gFieldEffectObjectPicTable_TreeDisguise, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_MountainDisguise[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_MountainDisguise, 2, 4, 0),
|
||||
@@ -805,7 +805,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_MountainDisguise[] =
|
||||
gFieldEffectObjectImageAnim_850D404,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_MountainDisguise, gFieldEffectObjectPicTable_MountainDisguise, gDummySpriteAffineAnimTable, sub_8155C88};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_MountainDisguise, gFieldEffectObjectPicTable_MountainDisguise, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_SandDisguisePlaceholder[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_SandDisguisePlaceholder, 2, 4, 0),
|
||||
@@ -817,7 +817,7 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_SandDisguisePlaceholder
|
||||
overworld_frame(gFieldEffectObjectPic_SandDisguisePlaceholder, 2, 4, 6),
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_TreeDisguise, gFieldEffectObjectPicTable_SandDisguisePlaceholder, gDummySpriteAffineAnimTable, sub_8155C88};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder = {0xFFFF, 0xFFFF, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_TreeDisguise, gFieldEffectObjectPicTable_SandDisguisePlaceholder, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_Bird[] = {
|
||||
obj_frame_tiles(gFieldEffectObjectPic_Bird),
|
||||
@@ -853,7 +853,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_ShortGrass[] =
|
||||
gFieldEffectObjectImageAnim_850D4D0,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_ShortGrass, gFieldEffectObjectPicTable_ShortGrass, gDummySpriteAffineAnimTable, sub_8154A10};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_ShortGrass, gFieldEffectObjectPicTable_ShortGrass, gDummySpriteAffineAnimTable, UpdateShortGrassFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_HotSpringsWater[] = {
|
||||
obj_frame_tiles(gFieldEffectObjectPic_HotSpringsWater),
|
||||
@@ -870,7 +870,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_HotSpringsWater[] =
|
||||
gFieldEffectObjectImageAnim_850D500,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_HotSpringsWater, gFieldEffectObjectPicTable_HotSpringsWater, gDummySpriteAffineAnimTable, sub_8155158};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater = {0xFFFF, 0x1005, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_HotSpringsWater, gFieldEffectObjectPicTable_HotSpringsWater, gDummySpriteAffineAnimTable, UpdateHotSpringsWaterFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_JumpOutOfAsh[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_JumpOutOfAsh, 2, 2, 0),
|
||||
@@ -953,7 +953,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_Bubbles[] =
|
||||
gFieldEffectObjectImageAnim_850D624,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_Bubbles, gFieldEffectObjectPicTable_Bubbles, gDummySpriteAffineAnimTable, sub_8155AEC};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles = {0xFFFF, 0x1004, &gEventObjectBaseOam_16x32, gFieldEffectObjectImageAnimTable_Bubbles, gFieldEffectObjectPicTable_Bubbles, gDummySpriteAffineAnimTable, UpdateBubblesFieldEffect};
|
||||
|
||||
const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown35[] = {
|
||||
overworld_frame(gFieldEffectObjectPic_Unknown35, 2, 2, 0),
|
||||
@@ -973,7 +973,7 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown35[] =
|
||||
gFieldEffectObjectImageAnim_850D674,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown35 = {0xFFFF, 0x100F, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown35, gFieldEffectObjectPicTable_Unknown35, gDummySpriteAffineAnimTable, sub_8155E50};
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown35 = {0xFFFF, 0x100F, &gEventObjectBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown35, gFieldEffectObjectPicTable_Unknown35, gDummySpriteAffineAnimTable, UpdateSparkleFieldEffect};
|
||||
|
||||
const struct SpritePalette gFieldEffectObjectPaletteInfo3 = {gFieldEffectObjectPalette3, 0x100F};
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
:(n <= 36) ? ((n + 14) * CUBE(n) / 50) \
|
||||
: (((n / 2) + 32) * CUBE(n) / 50)
|
||||
|
||||
const u32 gExperienceTables[][MAX_MON_LEVEL + 1] =
|
||||
const u32 gExperienceTables[][MAX_LEVEL + 1] =
|
||||
{
|
||||
{ // Medium Fast
|
||||
0, // 0
|
||||
|
||||
+3
-3
@@ -241,7 +241,7 @@ static void ApplyDaycareExperience(struct Pokemon *mon)
|
||||
bool8 firstMove;
|
||||
u16 learnedMove;
|
||||
|
||||
for (i = 0; i < MAX_MON_LEVEL; i++)
|
||||
for (i = 0; i < MAX_LEVEL; i++)
|
||||
{
|
||||
// Add the mon's gained daycare experience level by level until it can't level up anymore.
|
||||
if (TryIncrementMonLevel(mon))
|
||||
@@ -278,7 +278,7 @@ static u16 TakeSelectedPokemonFromDaycare(struct DaycareMon *daycareMon)
|
||||
species = GetBoxMonData(&daycareMon->mon, MON_DATA_SPECIES);
|
||||
BoxMonToMon(&daycareMon->mon, &pokemon);
|
||||
|
||||
if (GetMonData(&pokemon, MON_DATA_LEVEL) != MAX_MON_LEVEL)
|
||||
if (GetMonData(&pokemon, MON_DATA_LEVEL) != MAX_LEVEL)
|
||||
{
|
||||
experience = GetMonData(&pokemon, MON_DATA_EXP) + daycareMon->steps;
|
||||
SetMonData(&pokemon, MON_DATA_EXP, &experience);
|
||||
@@ -949,7 +949,7 @@ static bool8 _DoEggActions_CheckHatch(struct DayCare *daycare)
|
||||
return FALSE; // no hatching
|
||||
}
|
||||
|
||||
bool8 DoEggActions_CheckHatch(void)
|
||||
bool8 ShouldEggHatch(void)
|
||||
{
|
||||
return _DoEggActions_CheckHatch(&gSaveBlock1Ptr->daycare);
|
||||
}
|
||||
|
||||
+1
-1
@@ -352,7 +352,7 @@ void easy_chat_input_maybe(void)
|
||||
words = &gSaveBlock1Ptr->lilycoveLady.quiz.unk_014;
|
||||
break;
|
||||
case 19:
|
||||
words = (u16 *)&gSaveBlock2Ptr->field_DC[0].field_0[0x28];
|
||||
words = gSaveBlock2Ptr->apprentices[0].easyChatWords;
|
||||
break;
|
||||
case 20:
|
||||
words = sub_801B058();
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
#include "pokenav.h"
|
||||
#include "random.h"
|
||||
#include "rom_818CFC8.h"
|
||||
#include "rom_81BE66C.h"
|
||||
#include "sprite.h"
|
||||
#include "trainer_see.h"
|
||||
#include "util.h"
|
||||
@@ -1868,7 +1867,7 @@ static void sub_808E1B8(u8 eventObjectId, s16 x, s16 y)
|
||||
if (eventObject->movementType == 0x0b)
|
||||
{
|
||||
SetPlayerAvatarEventObjectIdAndObjectId(eventObjectId, spriteId);
|
||||
eventObject->warpArrowSpriteId = sub_8154228();
|
||||
eventObject->warpArrowSpriteId = CreateWarpArrowSprite();
|
||||
}
|
||||
if (subspriteTables != NULL)
|
||||
{
|
||||
@@ -2024,7 +2023,7 @@ const struct EventObjectGraphicsInfo *GetEventObjectGraphicsInfo(u8 graphicsId)
|
||||
}
|
||||
if (graphicsId >= NUM_OBJECT_GRAPHICS_INFO)
|
||||
{
|
||||
graphicsId = EVENT_OBJ_GFX_LITTLE_BOY_1;
|
||||
graphicsId = EVENT_OBJ_GFX_NINJA_BOY;
|
||||
}
|
||||
return gEventObjectGraphicsInfoPointers[graphicsId];
|
||||
}
|
||||
@@ -2638,10 +2637,10 @@ void sub_808F28C(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat)
|
||||
switch (decorCat)
|
||||
{
|
||||
case DECORCAT_DOLL:
|
||||
OverrideMovementTypeForEventObject(&gEventObjects[eventObjectId], EventScript_2766A2);
|
||||
OverrideMovementTypeForEventObject(&gEventObjects[eventObjectId], EventScript_SecretPower1);
|
||||
break;
|
||||
case DECORCAT_CUSHION:
|
||||
OverrideMovementTypeForEventObject(&gEventObjects[eventObjectId], EventScript_2766A6);
|
||||
OverrideMovementTypeForEventObject(&gEventObjects[eventObjectId], EventScript_SecretPower2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -8206,7 +8205,7 @@ void GroundEffect_JumpOnTallGrass(struct EventObject *eventObj, struct Sprite *s
|
||||
gFieldEffectArguments[3] = 2;
|
||||
FieldEffectStart(FLDEFF_JUMP_TALL_GRASS);
|
||||
|
||||
spriteId = sub_81546C8(
|
||||
spriteId = FindTallGrassFieldEffectSpriteId(
|
||||
eventObj->localId, eventObj->mapNum, eventObj->mapGroup, eventObj->currentCoords.x, eventObj->currentCoords.y);
|
||||
|
||||
if (spriteId == MAX_SPRITES)
|
||||
@@ -8843,14 +8842,14 @@ void sub_8097B78(u8 var1, u8 var2)
|
||||
StartSpriteAnim(&gSprites[spriteId], GetFaceDirectionAnimNum(var2));
|
||||
}
|
||||
|
||||
void sub_8097BB4(u8 var1, u8 var2)
|
||||
void sub_8097BB4(u8 var1, u8 graphicsId)
|
||||
{
|
||||
int spriteId = sub_8097B2C(var1);
|
||||
|
||||
if(spriteId != MAX_SPRITES)
|
||||
{
|
||||
struct Sprite *sprite = &gSprites[spriteId];
|
||||
const struct EventObjectGraphicsInfo *gfxInfo = GetEventObjectGraphicsInfo(var2);
|
||||
const struct EventObjectGraphicsInfo *gfxInfo = GetEventObjectGraphicsInfo(graphicsId);
|
||||
u16 tileNum = sprite->oam.tileNum;
|
||||
|
||||
sprite->oam = *gfxInfo->oam;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "bg.h"
|
||||
#include "link.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "trig.h"
|
||||
|
||||
struct EvoInfo
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Executable
+1776
File diff suppressed because it is too large
Load Diff
@@ -131,7 +131,7 @@ void HideFieldMessageBox(void)
|
||||
gUnknown_020375BC = 0;
|
||||
}
|
||||
|
||||
u8 textbox_any_visible(void)
|
||||
u8 GetFieldMessageBoxMode(void)
|
||||
{
|
||||
return gUnknown_020375BC;
|
||||
}
|
||||
|
||||
@@ -285,7 +285,7 @@ void MovementType_Player(struct Sprite *sprite)
|
||||
UpdateEventObjectCurrentMovement(&gEventObjects[sprite->data[0]], sprite, EventObjectCB2_NoMovement2);
|
||||
}
|
||||
|
||||
static u8 EventObjectCB2_NoMovement2()
|
||||
static u8 EventObjectCB2_NoMovement2(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
@@ -375,7 +375,7 @@ static void PlayerAllowForcedMovementIfMovingSameDirection(void)
|
||||
gPlayerAvatar.flags &= ~PLAYER_AVATAR_FLAG_5;
|
||||
}
|
||||
|
||||
static bool8 TryDoMetatileBehaviorForcedMovement()
|
||||
static bool8 TryDoMetatileBehaviorForcedMovement(void)
|
||||
{
|
||||
return gUnknown_08497444[GetForcedMovementByMetatileBehavior()]();
|
||||
}
|
||||
|
||||
+1
-1
@@ -111,7 +111,7 @@ void sub_80F972C(void)
|
||||
ScriptContext1_Stop();
|
||||
}
|
||||
|
||||
unsigned int overworld_poison(void)
|
||||
int DoPoisonFieldEffect(void)
|
||||
{
|
||||
int i;
|
||||
unsigned int hp;
|
||||
|
||||
@@ -3668,7 +3668,7 @@ bool32 sub_813B374(void)
|
||||
}
|
||||
}
|
||||
|
||||
bool32 sub_813B3B0(void)
|
||||
bool8 sub_813B3B0(void)
|
||||
{
|
||||
static const u8 gUnknown_085B3410[] = { 0x1d, 0x1d, 0x1e, 0x1e, 0x1f, 0x1f, 0x21, 0x21, 0x14, 0x14, 0x28, 0x28, 0x2a, 0x2a, 0x2c, 0x2c };
|
||||
|
||||
|
||||
+2
-2
@@ -627,11 +627,11 @@ static void PerStepCallback_8069F64(u8 taskId)
|
||||
{
|
||||
if (MapGridGetMetatileIdAt(x, y) == 0x20a)
|
||||
{
|
||||
ash(x, y, 0x212, 4);
|
||||
StartAshFieldEffect(x, y, 0x212, 4);
|
||||
}
|
||||
else
|
||||
{
|
||||
ash(x, y, 0x206, 4);
|
||||
StartAshFieldEffect(x, y, 0x206, 4);
|
||||
}
|
||||
if (CheckBagHasItem(ITEM_SOOT_SACK, 1))
|
||||
{
|
||||
|
||||
+7
-8
@@ -1,26 +1,25 @@
|
||||
#include "global.h"
|
||||
#include "fldeff_cut.h"
|
||||
#include "event_obj_lock.h"
|
||||
#include "event_object_movement.h"
|
||||
#include "field_camera.h"
|
||||
#include "field_effect.h"
|
||||
#include "event_object_movement.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "fieldmap.h"
|
||||
#include "event_obj_lock.h"
|
||||
#include "fldeff_cut.h"
|
||||
#include "malloc.h"
|
||||
#include "metatile_behavior.h"
|
||||
#include "party_menu.h"
|
||||
#include "overworld.h"
|
||||
#include "party_menu.h"
|
||||
#include "rom6.h"
|
||||
#include "script.h"
|
||||
#include "sound.h"
|
||||
#include "sprite.h"
|
||||
#include "task.h"
|
||||
#include "trig.h"
|
||||
#include "malloc.h"
|
||||
#include "constants/abilities.h"
|
||||
#include "constants/event_objects.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/abilities.h"
|
||||
|
||||
extern bool8 CheckObjectGraphicsInFrontOfPlayer(u8);
|
||||
extern u8 oei_task_add(void);
|
||||
extern void ScriptUnfreezeEventObjects(void);
|
||||
extern bool8 IsMewPlayingHideAndSeek(void);
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ void hm2_sweet_scent(void)
|
||||
gFieldEffectArguments[0] = GetCursorSelectionMonId();
|
||||
}
|
||||
|
||||
bool8 FldEff_SweetScent()
|
||||
bool8 FldEff_SweetScent(void)
|
||||
{
|
||||
u8 taskId;
|
||||
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@
|
||||
#include "bg.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/game_stat.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "string_util.h"
|
||||
#include "m4a.h"
|
||||
#include "international_string_util.h"
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@
|
||||
#include "graphics.h"
|
||||
#include "sound.h"
|
||||
#include "constants/species.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "title_screen.h"
|
||||
#include "constants/rgb.h"
|
||||
#include "constants/battle_anim.h"
|
||||
|
||||
+2
-1
@@ -46,6 +46,7 @@
|
||||
#include "text_window.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "window.h"
|
||||
#include "apprentice.h"
|
||||
|
||||
void GoToBagMenu(u8 bagMenuType, u8 pocketId, void ( *postExitMenuMainCallback2)());
|
||||
void CB2_Bag(void);
|
||||
@@ -2203,7 +2204,7 @@ void unknown_ItemMenu_Show(u8 taskId)
|
||||
|
||||
void bag_menu_leave_maybe_3(void)
|
||||
{
|
||||
gFieldCallback = sub_819FA50;
|
||||
gFieldCallback = Apprentice_EnableBothScriptContexts;
|
||||
SetMainCallback2(CB2_ReturnToField);
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -203,7 +203,7 @@ u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void sub_80FD254()
|
||||
void sub_80FD254(void)
|
||||
{
|
||||
struct MailStruct mail;
|
||||
mail.itemId = gSpecialVar_ItemId;
|
||||
@@ -249,7 +249,7 @@ void ItemUseOnFieldCB_Bike(u8 taskId)
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
bool32 CanFish()
|
||||
bool32 CanFish(void)
|
||||
{
|
||||
s16 x, y;
|
||||
u16 tileBehavior;
|
||||
|
||||
@@ -679,7 +679,7 @@ bool8 MetatileBehavior_IsSecretBasePC(u8 metatileBehavior)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 MetatileBehavior_IsSecretBaseRegisterPC(u8 metatileBehavior)
|
||||
bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8 metatileBehavior)
|
||||
{
|
||||
if (metatileBehavior == MB_SECRET_BASE_REGISTER_PC)
|
||||
return TRUE;
|
||||
@@ -815,7 +815,7 @@ bool8 MetatileBehavior_IsSecretBaseSandOrnament(u8 metatileBehavior)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 MetatileBehavior_IsSecretBaseTvOrShield(u8 metatileBehavior)
|
||||
bool8 MetatileBehavior_IsSecretBaseShieldOrToyTV(u8 metatileBehavior)
|
||||
{
|
||||
if (metatileBehavior == MB_SECRET_BASE_TV_SHIELD)
|
||||
return TRUE;
|
||||
@@ -1164,7 +1164,7 @@ bool8 MetatileBehavior_IsRegionMap(u8 metatileBehavior)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 MetatileBehavior_IsClosedSootopolisGymDoor(u8 metatileBehavior)
|
||||
bool8 MetatileBehavior_IsClosedSootopolisDoor(u8 metatileBehavior)
|
||||
{
|
||||
if (metatileBehavior == MB_CLOSED_SOOTOPOLIS_DOOR)
|
||||
return TRUE;
|
||||
@@ -1365,7 +1365,7 @@ bool8 MetatileBehavior_IsCuttableGrass(u8 metatileBehavior)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 MetatileBehavior_IsRunningShoesInstruction(u8 metatileBehavior)
|
||||
bool8 MetatileBehavior_IsRunningShoesManual(u8 metatileBehavior)
|
||||
{
|
||||
if (metatileBehavior == MB_RUNNING_SHOES_INSTRUCTION)
|
||||
return TRUE;
|
||||
|
||||
+1
-2
@@ -6,10 +6,9 @@
|
||||
#include "menu.h"
|
||||
#include "window.h"
|
||||
#include "sprite.h"
|
||||
#include "strings.h"
|
||||
#include "decompress.h"
|
||||
|
||||
extern const u8 gText_PokedollarVar1[];
|
||||
|
||||
extern const u8 gMenuMoneyGfx[];
|
||||
extern const u8 gMenuMoneyPal[];
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@ static void CB2_MysteryEventMenu(void)
|
||||
if (!IsTextPrinterActive(0))
|
||||
{
|
||||
gMain.state++;
|
||||
gLinkType = 21761;
|
||||
gLinkType = 0x5501;
|
||||
OpenLink();
|
||||
}
|
||||
break;
|
||||
|
||||
+2
-2
@@ -25,6 +25,7 @@
|
||||
#include "battle_records.h"
|
||||
#include "item.h"
|
||||
#include "pokedex.h"
|
||||
#include "apprentice.h"
|
||||
|
||||
extern u8 gDifferentSaveFile;
|
||||
extern u16 gSaveFileStatus;
|
||||
@@ -44,7 +45,6 @@ extern void NewGameInitPCItems(void);
|
||||
extern void ClearDecorationInventories(void);
|
||||
extern void ResetFanClub(void);
|
||||
extern void copy_strings_to_sav1(void);
|
||||
extern void sub_819FAA0(void);
|
||||
extern void sub_81A4B14(void);
|
||||
extern void sub_8195E10(void);
|
||||
extern void sub_801AFD8(void);
|
||||
@@ -203,7 +203,7 @@ void NewGameInitData(void)
|
||||
ResetMiniGamesResults();
|
||||
copy_strings_to_sav1();
|
||||
SetLilycoveLady();
|
||||
sub_819FAA0();
|
||||
ResetAllApprenticeData();
|
||||
sub_81A4B14();
|
||||
sub_8195E10();
|
||||
sub_801AFD8();
|
||||
|
||||
+7
-7
@@ -107,7 +107,7 @@ extern void sub_80A0A2C(void);
|
||||
extern void not_trainer_hill_battle_pyramid(void);
|
||||
extern void apply_map_tileset2_palette(const struct MapLayout *);
|
||||
extern void copy_map_tileset2_to_vram_2(const struct MapLayout *);
|
||||
extern void prev_quest_postbuffer_cursor_backup_reset(void);
|
||||
extern void RestartWildEncounterImmunitySteps(void);
|
||||
extern void ShowMapNamePopup(void);
|
||||
extern bool32 InTrainerHill(void);
|
||||
extern bool32 sub_808651C(void);
|
||||
@@ -164,8 +164,8 @@ extern bool32 sub_8009F3C(void);
|
||||
extern void sub_8010198(void);
|
||||
extern u32 sub_800B4DC(void);
|
||||
extern bool32 sub_80B39D4(u8);
|
||||
extern const u8* sub_809C2C8(struct MapPosition *a1, u8, u8);
|
||||
extern u8 *sub_809D0F4(void*);
|
||||
extern const u8* GetInteractedLinkPlayerScript(struct MapPosition *a1, u8, u8);
|
||||
extern u8 *GetCoordEventScriptAtMapPosition(void*);
|
||||
extern u8 sub_808BD6C(u8);
|
||||
extern u8 sub_808BD7C(u8);
|
||||
extern void UpdateEventObjectSpriteVisibility(struct Sprite*, u8);
|
||||
@@ -827,7 +827,7 @@ void mliX_load_map(u8 mapGroup, u8 mapNum)
|
||||
TrySetMapSaveWarpStatus();
|
||||
ClearTempFieldEventData();
|
||||
ResetCyclingRoadChallengeData();
|
||||
prev_quest_postbuffer_cursor_backup_reset();
|
||||
RestartWildEncounterImmunitySteps();
|
||||
TryUpdateRandomTrainerRematches(mapGroup, mapNum);
|
||||
DoTimeBasedEvents();
|
||||
SetSav1WeatherFromCurrMapHeader();
|
||||
@@ -876,7 +876,7 @@ static void mli0_load_map(u32 a1)
|
||||
TrySetMapSaveWarpStatus();
|
||||
ClearTempFieldEventData();
|
||||
ResetCyclingRoadChallengeData();
|
||||
prev_quest_postbuffer_cursor_backup_reset();
|
||||
RestartWildEncounterImmunitySteps();
|
||||
TryUpdateRandomTrainerRematches(gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum);
|
||||
if (a1 != 1)
|
||||
DoTimeBasedEvents();
|
||||
@@ -2706,7 +2706,7 @@ static u8 *sub_8087370(struct UnkStruct_8054FF8 *a1)
|
||||
{
|
||||
if (a1->c != 2)
|
||||
return 0;
|
||||
return sub_809D0F4(&a1->sub);
|
||||
return GetCoordEventScriptAtMapPosition(&a1->sub);
|
||||
}
|
||||
|
||||
static bool32 sub_8087388(struct UnkStruct_8054FF8 *a1)
|
||||
@@ -2747,7 +2747,7 @@ static const u8 *sub_80873B4(struct UnkStruct_8054FF8 *a1)
|
||||
return EventScript_TradeRoom_ReadTrainerCard2;
|
||||
}
|
||||
|
||||
return sub_809C2C8(&unkStruct, a1->field_C, a1->d);
|
||||
return GetInteractedLinkPlayerScript(&unkStruct, a1->field_C, a1->d);
|
||||
}
|
||||
|
||||
static u16 sub_8087480(const u8 *script)
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
#include "global.h"
|
||||
#include "blend_palette.h"
|
||||
#include "palette.h"
|
||||
#include "util.h"
|
||||
#include "decompress.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "task.h"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#include "menu.h"
|
||||
#include "malloc.h"
|
||||
#include "pokemon.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "main.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "bg.h"
|
||||
|
||||
+16
-17
@@ -35,6 +35,7 @@
|
||||
#include "pokenav.h"
|
||||
#include "pokemon_storage_system.h"
|
||||
#include "recorded_battle.h"
|
||||
#include "apprentice.h"
|
||||
|
||||
struct SpeciesItem
|
||||
{
|
||||
@@ -69,7 +70,6 @@ extern const union AnimCmd *const *const gMonAnimationsSpriteAnimsPtrTable[];
|
||||
extern const union AnimCmd *const *const gTrainerBackAnimsPtrTable[];
|
||||
extern const union AnimCmd *const *const gTrainerFrontAnimsPtrTable[];
|
||||
extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1];
|
||||
extern const struct UnknownPokemonStruct3 gUnknown_08610970[];
|
||||
extern const struct CompressedSpritePalette gMonPaletteTable[];
|
||||
extern const struct CompressedSpritePalette gMonShinyPaletteTable[];
|
||||
extern const u8 gTrainerClassNames[][13];
|
||||
@@ -80,7 +80,6 @@ extern u8 StorageGetCurrentBox(void);
|
||||
extern void set_unknown_box_id(u8);
|
||||
extern void sub_803FA70(u8 battlerId);
|
||||
extern u8 sav1_map_get_name(void);
|
||||
extern const u8 *sub_81A1650(u8, u8 language);
|
||||
extern u8 GetFrontierEnemyMonLevel(u8);
|
||||
extern bool8 InBattlePyramid(void);
|
||||
extern bool8 InBattlePike(void);
|
||||
@@ -2873,27 +2872,27 @@ void sub_8068338(struct Pokemon *mon, struct UnknownPokemonStruct *src, bool8 lv
|
||||
CalculateMonStats(mon);
|
||||
}
|
||||
|
||||
void sub_8068528(struct Pokemon *mon, const struct UnknownPokemonStruct2 *src, u8 monId)
|
||||
void CreateApprenticeMon(struct Pokemon *mon, const struct Apprentice *src, u8 monId)
|
||||
{
|
||||
s32 i;
|
||||
u16 evAmount;
|
||||
u8 language;
|
||||
u32 otId = gUnknown_08610970[src->field_0_0].field_30;
|
||||
u32 personality = ((gUnknown_08610970[src->field_0_0].field_30 >> 8) | ((gUnknown_08610970[src->field_0_0].field_30 & 0xFF) << 8))
|
||||
+ src->mons[monId].species + src->field_2;
|
||||
u32 otId = gApprentices[src->id].otId;
|
||||
u32 personality = ((gApprentices[src->id].otId >> 8) | ((gApprentices[src->id].otId & 0xFF) << 8))
|
||||
+ src->monData[monId].species + src->number;
|
||||
|
||||
CreateMon(mon,
|
||||
src->mons[monId].species,
|
||||
GetFrontierEnemyMonLevel(src->field_0_1 - 1),
|
||||
src->monData[monId].species,
|
||||
GetFrontierEnemyMonLevel(src->lvlMode - 1),
|
||||
0x1F,
|
||||
TRUE,
|
||||
personality,
|
||||
TRUE,
|
||||
otId);
|
||||
|
||||
SetMonData(mon, MON_DATA_HELD_ITEM, &src->mons[monId].item);
|
||||
SetMonData(mon, MON_DATA_HELD_ITEM, &src->monData[monId].item);
|
||||
for (i = 0; i < 4; i++)
|
||||
SetMonMoveSlot(mon, src->mons[monId].moves[i], i);
|
||||
SetMonMoveSlot(mon, src->monData[monId].moves[i], i);
|
||||
|
||||
evAmount = MAX_TOTAL_EVS / NUM_STATS;
|
||||
for (i = 0; i < NUM_STATS; i++)
|
||||
@@ -2901,7 +2900,7 @@ void sub_8068528(struct Pokemon *mon, const struct UnknownPokemonStruct2 *src, u
|
||||
|
||||
language = src->language;
|
||||
SetMonData(mon, MON_DATA_LANGUAGE, &language);
|
||||
SetMonData(mon, MON_DATA_OT_NAME, sub_81A1650(src->field_0_0, language));
|
||||
SetMonData(mon, MON_DATA_OT_NAME, GetApprenticeNameInLanguage(src->id, language));
|
||||
CalculateMonStats(mon);
|
||||
}
|
||||
|
||||
@@ -3252,7 +3251,7 @@ u8 GetLevelFromMonExp(struct Pokemon *mon)
|
||||
u32 exp = GetMonData(mon, MON_DATA_EXP, NULL);
|
||||
s32 level = 1;
|
||||
|
||||
while (level <= MAX_MON_LEVEL && gExperienceTables[gBaseStats[species].growthRate][level] <= exp)
|
||||
while (level <= MAX_LEVEL && gExperienceTables[gBaseStats[species].growthRate][level] <= exp)
|
||||
level++;
|
||||
|
||||
return level - 1;
|
||||
@@ -3264,7 +3263,7 @@ u8 GetLevelFromBoxMonExp(struct BoxPokemon *boxMon)
|
||||
u32 exp = GetBoxMonData(boxMon, MON_DATA_EXP, NULL);
|
||||
s32 level = 1;
|
||||
|
||||
while (level <= MAX_MON_LEVEL && gExperienceTables[gBaseStats[species].growthRate][level] <= exp)
|
||||
while (level <= MAX_LEVEL && gExperienceTables[gBaseStats[species].growthRate][level] <= exp)
|
||||
level++;
|
||||
|
||||
return level - 1;
|
||||
@@ -5146,7 +5145,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
|
||||
retVal = FALSE;
|
||||
}
|
||||
if ((itemEffect[cmdIndex] & 0x40) // raise level
|
||||
&& GetMonData(mon, MON_DATA_LEVEL, NULL) != MAX_MON_LEVEL)
|
||||
&& GetMonData(mon, MON_DATA_LEVEL, NULL) != MAX_LEVEL)
|
||||
{
|
||||
dataUnsigned = gExperienceTables[gBaseStats[GetMonData(mon, MON_DATA_SPECIES, NULL)].growthRate][GetMonData(mon, MON_DATA_LEVEL, NULL) + 1];
|
||||
SetMonData(mon, MON_DATA_EXP, &dataUnsigned);
|
||||
@@ -6431,12 +6430,12 @@ bool8 TryIncrementMonLevel(struct Pokemon *mon)
|
||||
u16 species = GetMonData(mon, MON_DATA_SPECIES, 0);
|
||||
u8 nextLevel = GetMonData(mon, MON_DATA_LEVEL, 0) + 1;
|
||||
u32 expPoints = GetMonData(mon, MON_DATA_EXP, 0);
|
||||
if (expPoints > gExperienceTables[gBaseStats[species].growthRate][MAX_MON_LEVEL])
|
||||
if (expPoints > gExperienceTables[gBaseStats[species].growthRate][MAX_LEVEL])
|
||||
{
|
||||
expPoints = gExperienceTables[gBaseStats[species].growthRate][MAX_MON_LEVEL];
|
||||
expPoints = gExperienceTables[gBaseStats[species].growthRate][MAX_LEVEL];
|
||||
SetMonData(mon, MON_DATA_EXP, &expPoints);
|
||||
}
|
||||
if (nextLevel > MAX_MON_LEVEL || expPoints < gExperienceTables[gBaseStats[species].growthRate][nextLevel])
|
||||
if (nextLevel > MAX_LEVEL || expPoints < gExperienceTables[gBaseStats[species].growthRate][nextLevel])
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include "pokemon_animation.h"
|
||||
#include "trig.h"
|
||||
#include "task.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "constants/rgb.h"
|
||||
|
||||
struct UnkAnimStruct
|
||||
|
||||
@@ -2533,7 +2533,7 @@ static void DrawExperienceProgressBar(struct Pokemon *unused)
|
||||
u16 *r9;
|
||||
u8 i;
|
||||
|
||||
if (summary->level < MAX_MON_LEVEL)
|
||||
if (summary->level < MAX_LEVEL)
|
||||
{
|
||||
u32 expBetweenLevels = gExperienceTables[gBaseStats[summary->species].growthRate][summary->level + 1] - gExperienceTables[gBaseStats[summary->species].growthRate][summary->level];
|
||||
u32 expSinceLastLevel = summary->exp - gExperienceTables[gBaseStats[summary->species].growthRate][summary->level];
|
||||
@@ -3349,7 +3349,7 @@ static void PrintExpPointsNextLevel(void)
|
||||
offset = GetStringRightAlignXOffset(1, gStringVar1, 42) + 2;
|
||||
SummaryScreen_PrintTextOnWindow(windowId, gStringVar1, offset, 1, 0, 0);
|
||||
|
||||
if (sum->level < MAX_MON_LEVEL)
|
||||
if (sum->level < MAX_LEVEL)
|
||||
expToNextLevel = gExperienceTables[gBaseStats[sum->species].growthRate][sum->level + 1] - sum->exp;
|
||||
else
|
||||
expToNextLevel = 0;
|
||||
|
||||
+24
-24
@@ -83,7 +83,7 @@ struct PlayerRecordsEmerald
|
||||
/* 0x1124 */ struct EmeraldBattleTowerRecord battleTowerRecord;
|
||||
/* 0x1210 */ u16 unk_1210;
|
||||
/* 0x1214 */ LilycoveLady lilycoveLady;
|
||||
/* 0x1254 */ struct UnkRecordMixingStruct unk_1254[2];
|
||||
/* 0x1254 */ struct Apprentice apprentice[2];
|
||||
/* 0x12dc */ struct UnkRecordMixingStruct2 unk_12dc;
|
||||
/* 0x1434 */ u8 field_1434[0x10];
|
||||
}; // 0x1444
|
||||
@@ -134,8 +134,8 @@ static void sub_80E7B2C(const u8 *);
|
||||
static void ReceiveDaycareMailData(struct RecordMixingDayCareMail *, size_t, u8, TVShow *);
|
||||
static void sub_80E7F68(u16 *item, u8 which);
|
||||
static void sub_80E7FF8(u8 taskId);
|
||||
static void sub_80E8110(struct UnkRecordMixingStruct *arg0, struct UnkRecordMixingStruct *arg1);
|
||||
static void sub_80E8468(struct UnkRecordMixingStruct *arg0, size_t arg1, u32 arg2);
|
||||
static void sub_80E8110(struct Apprentice *arg0, struct Apprentice *arg1);
|
||||
static void ReceiveApprenticeData(struct Apprentice *arg0, size_t arg1, u32 arg2);
|
||||
static void sub_80E89AC(struct UnkRecordMixingStruct2 *arg0, size_t arg1, u32 arg2);
|
||||
static void sub_80E89F8(struct RecordMixingDayCareMail *dst);
|
||||
static void SanitizeDayCareMailForRuby(struct RecordMixingDayCareMail *src);
|
||||
@@ -199,7 +199,7 @@ static void SetSrcLookupPointers(void)
|
||||
gUnknown_03001148 = &gUnknown_02039F9C;
|
||||
sBattleTowerSave = &gSaveBlock2Ptr->frontier.battleTower;
|
||||
sLilycoveLadySave = &gSaveBlock1Ptr->lilycoveLady;
|
||||
gUnknown_03001154 = gSaveBlock2Ptr->field_DC;
|
||||
gUnknown_03001154 = gSaveBlock2Ptr->apprentices;
|
||||
sBattleTowerSave_Duplicate = &gSaveBlock2Ptr->frontier.battleTower;
|
||||
}
|
||||
|
||||
@@ -265,7 +265,7 @@ static void PrepareExchangePacket(void)
|
||||
if (GetMultiplayerId() == 0)
|
||||
sSentRecord->emerald.unk_1210 = GetRecordMixingGift();
|
||||
|
||||
sub_80E8110(sSentRecord->emerald.unk_1254, gUnknown_03001154);
|
||||
sub_80E8110(sSentRecord->emerald.apprentice, gUnknown_03001154);
|
||||
sub_80E8260(&sSentRecord->emerald.unk_12dc);
|
||||
}
|
||||
}
|
||||
@@ -298,7 +298,7 @@ static void ReceiveExchangePacket(u32 which)
|
||||
ReceiveBattleTowerData(&sReceivedRecords->emerald.battleTowerRecord, sizeof(struct PlayerRecordsEmerald), which);
|
||||
sub_80E7F68(&sReceivedRecords->emerald.unk_1210, which);
|
||||
ReceiveLilycoveLadyData(&sReceivedRecords->emerald.lilycoveLady, sizeof(struct PlayerRecordsEmerald), which);
|
||||
sub_80E8468(sReceivedRecords->emerald.unk_1254, sizeof(struct PlayerRecordsEmerald), (u8) which);
|
||||
ReceiveApprenticeData(sReceivedRecords->emerald.apprentice, sizeof(struct PlayerRecordsEmerald), (u8) which);
|
||||
sub_80E89AC(&sReceivedRecords->emerald.unk_12dc, sizeof(struct PlayerRecordsEmerald), (u8) which);
|
||||
}
|
||||
}
|
||||
@@ -1551,13 +1551,13 @@ static void sub_80E7FF8(u8 taskId)
|
||||
|
||||
// New Emerald functions
|
||||
|
||||
static void sub_80E8110(struct UnkRecordMixingStruct *dst, struct UnkRecordMixingStruct *src)
|
||||
static void sub_80E8110(struct Apprentice *dst, struct Apprentice *src)
|
||||
{
|
||||
s32 i, id;
|
||||
s32 var_2C, var_28, var_24, r8;
|
||||
|
||||
dst[0].field_38[0] = 0xFF;
|
||||
dst[1].field_38[0] = 0xFF;
|
||||
dst[0].playerName[0] = EOS;
|
||||
dst[1].playerName[0] = EOS;
|
||||
|
||||
dst[0] = src[0];
|
||||
|
||||
@@ -1567,8 +1567,8 @@ static void sub_80E8110(struct UnkRecordMixingStruct *dst, struct UnkRecordMixin
|
||||
r8 = 0;
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
id = ((i + gSaveBlock2Ptr->field_B2_1) % 3) + 1;
|
||||
if (src[id].field_38[0] != 0xFF)
|
||||
id = ((i + gSaveBlock2Ptr->playerApprentice.field_B2_1) % 3) + 1;
|
||||
if (src[id].playerName[0] != EOS)
|
||||
{
|
||||
if (ReadUnalignedWord(src[id].playerId) != ReadUnalignedWord(gSaveBlock2Ptr->playerTrainerId))
|
||||
{
|
||||
@@ -1597,11 +1597,11 @@ static void sub_80E8110(struct UnkRecordMixingStruct *dst, struct UnkRecordMixin
|
||||
case 2:
|
||||
if (Random2() > 0x3333)
|
||||
{
|
||||
dst[1] = src[gSaveBlock2Ptr->field_B2_1 + 1];
|
||||
dst[1] = src[gSaveBlock2Ptr->playerApprentice.field_B2_1 + 1];
|
||||
}
|
||||
else
|
||||
{
|
||||
dst[1] = src[((gSaveBlock2Ptr->field_B2_1 + 1) % 3 + 1)];
|
||||
dst[1] = src[((gSaveBlock2Ptr->playerApprentice.field_B2_1 + 1) % 3 + 1)];
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1646,14 +1646,14 @@ void sub_80E8260(struct UnkRecordMixingStruct2 *dst)
|
||||
}
|
||||
}
|
||||
|
||||
static bool32 sub_80E841C(struct UnkRecordMixingStruct *arg0, struct UnkRecordMixingStruct *arg1)
|
||||
static bool32 sub_80E841C(struct Apprentice *arg0, struct Apprentice *arg1)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
if (ReadUnalignedWord(arg0->playerId) == ReadUnalignedWord(arg1[i].playerId)
|
||||
&& arg0->field_0[2] == arg1[i].field_0[2])
|
||||
&& arg0->number == arg1[i].number)
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
@@ -1662,10 +1662,10 @@ static bool32 sub_80E841C(struct UnkRecordMixingStruct *arg0, struct UnkRecordMi
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void sub_80E8468(struct UnkRecordMixingStruct *arg0, size_t arg1, u32 arg2)
|
||||
static void ReceiveApprenticeData(struct Apprentice *arg0, size_t arg1, u32 arg2)
|
||||
{
|
||||
s32 i, r7, r8;
|
||||
struct UnkRecordMixingStruct *structPtr;
|
||||
struct Apprentice *structPtr;
|
||||
u32 mixIndices[4];
|
||||
u32 structId;
|
||||
|
||||
@@ -1675,7 +1675,7 @@ static void sub_80E8468(struct UnkRecordMixingStruct *arg0, size_t arg1, u32 arg
|
||||
r8 = 0;
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
if (structPtr[i].field_38[0] != 0xFF && !sub_80E841C(&structPtr[i], gSaveBlock2Ptr->field_DC))
|
||||
if (structPtr[i].playerName[0] != EOS && !sub_80E841C(&structPtr[i], &gSaveBlock2Ptr->apprentices[0]))
|
||||
{
|
||||
r7++;
|
||||
r8 = i;
|
||||
@@ -1685,17 +1685,17 @@ static void sub_80E8468(struct UnkRecordMixingStruct *arg0, size_t arg1, u32 arg
|
||||
switch (r7)
|
||||
{
|
||||
case 1:
|
||||
structId = gSaveBlock2Ptr->field_B2_1 + 1;
|
||||
gSaveBlock2Ptr->field_DC[structId] = structPtr[r8];
|
||||
gSaveBlock2Ptr->field_B2_1 = (gSaveBlock2Ptr->field_B2_1 + 1) % 3;
|
||||
structId = gSaveBlock2Ptr->playerApprentice.field_B2_1 + 1;
|
||||
gSaveBlock2Ptr->apprentices[structId] = structPtr[r8];
|
||||
gSaveBlock2Ptr->playerApprentice.field_B2_1 = (gSaveBlock2Ptr->playerApprentice.field_B2_1 + 1) % 3;
|
||||
break;
|
||||
case 2:
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
structId = ((i ^ 1) + gSaveBlock2Ptr->field_B2_1) % 3 + 1;
|
||||
gSaveBlock2Ptr->field_DC[structId] = structPtr[i];
|
||||
structId = ((i ^ 1) + gSaveBlock2Ptr->playerApprentice.field_B2_1) % 3 + 1;
|
||||
gSaveBlock2Ptr->apprentices[structId] = structPtr[i];
|
||||
}
|
||||
gSaveBlock2Ptr->field_B2_1 = (gSaveBlock2Ptr->field_B2_1 + 2) % 3;
|
||||
gSaveBlock2Ptr->playerApprentice.field_B2_1 = (gSaveBlock2Ptr->playerApprentice.field_B2_1 + 2) % 3;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -1609,7 +1609,7 @@ void sub_80141A4(void)
|
||||
break;
|
||||
case 1:
|
||||
if (!FuncIsActiveTask(sub_80140E0))
|
||||
sub_80C4E74(GetMultiplayerId() ^ 1, CB2_ReturnToField);
|
||||
TrainerCard_ShowLinkCard(GetMultiplayerId() ^ 1, CB2_ReturnToField);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1646,7 +1646,7 @@ void sub_8014304(s8 mapGroup, s8 mapNum, s32 x, s32 y, u16 arg4)
|
||||
VarSet(VAR_0x4087, arg4);
|
||||
gFieldLinkPlayerCount = GetLinkPlayerCount();
|
||||
gUnknown_03005DB4 = GetMultiplayerId();
|
||||
sub_809D2BC();
|
||||
SetCableClubWarp();
|
||||
Overworld_SetWarpDestination(mapGroup, mapNum, -1, x, y);
|
||||
WarpIntoMap();
|
||||
}
|
||||
@@ -1675,7 +1675,7 @@ void sub_80143E4(void *arg0, bool32 arg1)
|
||||
{
|
||||
u16 *argAsU16Ptr = arg0;
|
||||
|
||||
sub_80C30A4(argAsU16Ptr);
|
||||
TrainerCard_GenerateCardForPlayer((struct TrainerCard *)argAsU16Ptr);
|
||||
if (arg1)
|
||||
argAsU16Ptr[48] = sub_801B39C();
|
||||
else
|
||||
|
||||
+3
-3
@@ -52,7 +52,7 @@
|
||||
typedef u16 (*SpecialFunc)(void);
|
||||
typedef void (*NativeFunc)(void);
|
||||
|
||||
extern u32 gUnknown_020375C0;
|
||||
extern const u8 *gUnknown_020375C0;
|
||||
|
||||
static EWRAM_DATA u32 gUnknown_020375C4 = 0;
|
||||
static EWRAM_DATA u16 sPauseCounter = 0;
|
||||
@@ -284,7 +284,7 @@ bool8 ScrCmd_callstd_if(struct ScriptContext *ctx)
|
||||
|
||||
bool8 ScrCmd_gotoram(struct ScriptContext *ctx)
|
||||
{
|
||||
ScriptJump(ctx, (const u8 *)gUnknown_020375C0);
|
||||
ScriptJump(ctx, gUnknown_020375C0);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -2223,7 +2223,7 @@ bool8 ScrCmd_cmdCF(struct ScriptContext *ctx)
|
||||
|
||||
if (v1)
|
||||
{
|
||||
((u8*)gUnknown_020375C0) = ctx->scriptPtr;
|
||||
gUnknown_020375C0 = ctx->scriptPtr;
|
||||
ScriptJump(ctx, v1);
|
||||
}
|
||||
return FALSE;
|
||||
|
||||
+3
-3
@@ -5,7 +5,7 @@
|
||||
|
||||
#define RAM_SCRIPT_MAGIC 51
|
||||
|
||||
extern u8* gUnknown_020375C0;
|
||||
extern const u8* gUnknown_020375C0;
|
||||
|
||||
extern bool32 sub_801B27C(void);
|
||||
|
||||
@@ -344,7 +344,7 @@ void ClearRamScript(void)
|
||||
CpuFill32(0, &gSaveBlock1Ptr->ramScript, sizeof(struct RamScript));
|
||||
}
|
||||
|
||||
bool8 InitRamScript(u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objectId)
|
||||
bool8 InitRamScript(const u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objectId)
|
||||
{
|
||||
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
|
||||
|
||||
@@ -362,7 +362,7 @@ bool8 InitRamScript(u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objec
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u8 *GetRamScript(u8 objectId, u8 *script)
|
||||
const u8 *GetRamScript(u8 objectId, const u8 *script)
|
||||
{
|
||||
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
|
||||
gUnknown_020375C0 = NULL;
|
||||
|
||||
+4
-4
@@ -596,13 +596,13 @@ void sub_80E95D4(void)
|
||||
VarSet(VAR_OBJ_GFX_ID_F, gUnknown_0858D060[sub_80EA20C(VarGet(VAR_0x4054))]);
|
||||
}
|
||||
|
||||
void sub_80E9608(struct Coords16 *coords, struct MapEvents *events)
|
||||
void sub_80E9608(const struct MapPosition *position, const struct MapEvents *events)
|
||||
{
|
||||
s16 bgEventIdx;
|
||||
|
||||
for (bgEventIdx = 0; bgEventIdx < events->bgEventCount; bgEventIdx ++)
|
||||
{
|
||||
if (events->bgEvents[bgEventIdx].kind == BG_EVENT_SECRET_BASE && coords->x == events->bgEvents[bgEventIdx].x + 7 && coords->y == events->bgEvents[bgEventIdx].y + 7)
|
||||
if (events->bgEvents[bgEventIdx].kind == BG_EVENT_SECRET_BASE && position->x == events->bgEvents[bgEventIdx].x + 7 && position->y == events->bgEvents[bgEventIdx].y + 7)
|
||||
{
|
||||
sCurSecretBaseId = events->bgEvents[bgEventIdx].bgUnion.secretBaseId;
|
||||
break;
|
||||
@@ -610,9 +610,9 @@ void sub_80E9608(struct Coords16 *coords, struct MapEvents *events)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80E9668(struct Coords16 *coords, struct MapEvents *events)
|
||||
void sub_80E9668(const struct MapPosition *position, const struct MapEvents *events)
|
||||
{
|
||||
sub_80E9608(coords, events);
|
||||
sub_80E9608(position, events);
|
||||
sub_80E8B6C();
|
||||
ScriptContext1_SetupScript(EventScript_275BB7);
|
||||
}
|
||||
|
||||
Executable
+679
@@ -0,0 +1,679 @@
|
||||
#include "global.h"
|
||||
#include "bg.h"
|
||||
#include "decompress.h"
|
||||
#include "decoration.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "field_screen.h"
|
||||
#include "field_weather.h"
|
||||
#include "fieldmap.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "international_string_util.h"
|
||||
#include "item.h"
|
||||
#include "item_icon.h"
|
||||
#include "list_menu.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
#include "money.h"
|
||||
#include "overworld.h"
|
||||
#include "palette.h"
|
||||
#include "scanline_effect.h"
|
||||
#include "script.h"
|
||||
#include "shop.h"
|
||||
#include "sound.h"
|
||||
#include "sprite.h"
|
||||
#include "string_util.h"
|
||||
#include "strings.h"
|
||||
#include "text_window.h"
|
||||
#include "tv.h"
|
||||
#include "constants/rgb.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
extern struct ShopData *gShopDataPtr;
|
||||
extern struct ListMenuItem *gUnknown_02039F74;
|
||||
extern u8 (*gUnknown_02039F78)[16];
|
||||
extern struct MartInfo gMartInfo;
|
||||
|
||||
extern const struct WindowTemplate gUnknown_08589A38[2];
|
||||
extern const struct MenuAction gUnknown_08589A10[3];
|
||||
extern const struct MenuAction gUnknown_08589A28[2];
|
||||
extern const struct ListMenuTemplate gUnknown_08589A48;
|
||||
extern const struct BgTemplate gUnknown_08589A60[4];
|
||||
extern const u8 gBuyMenuFrame_Gfx[];
|
||||
extern const u8 gBuyMenuFrame_Tilemap[];
|
||||
extern const u16 gMenuMoneyPal[];
|
||||
extern const struct WindowTemplate gUnknown_08589A70[];
|
||||
extern u8 gUnknown_08589AB0[][3];
|
||||
|
||||
static void Task_ShopMenu(u8 taskId);
|
||||
void HandleShopMenuQuit(u8 taskId);
|
||||
void CB2_InitBuyMenu(void);
|
||||
static void Task_GoToBuyOrSellMenu(u8 taskId);
|
||||
void CB2_GoToSellMenu(void);
|
||||
void MapPostLoadHook_ExitBuyOrSellMenu(void);
|
||||
void Task_ExitSellMenu(u8 taskId);
|
||||
void ReturnToShopMenuAfterExitingSellMenu(u8 taskId);
|
||||
void BuyMenuDrawGraphics(void);
|
||||
void BuyMenuAddScrollIndicatorArrows(void);
|
||||
void Task_BuyMenu(u8 taskId);
|
||||
void BuyMenuBuildListMenuTemplate(void);
|
||||
void BuyMenuInitBgs(void);
|
||||
void BuyMenuInitWindows(void);
|
||||
void BuyMenuDecompressBgGraphics(void);
|
||||
void BuyMenuSetListEntry(struct ListMenuItem*, u16, u8*);
|
||||
void BuyMenuAddItemIcon(u16, u8);
|
||||
void BuyMenuRemoveItemIcon(u16, u8);
|
||||
void BuyMenuPrint(u8 windowId, const u8 *text, u8 x, u8 y, s8 speed, u8 colorSet);
|
||||
void BuyMenuDrawMapGraphics(void);
|
||||
void BuyMenuCopyMenuBgToBg1TilemapBuffer(void);
|
||||
void BuyMenuCollectEventObjectData(void);
|
||||
void BuyMenuDrawEventObjects(void);
|
||||
void BuyMenuDrawMapBg(void);
|
||||
bool8 BuyMenuCheckForOverlapWithMenuBg(u16, u16);
|
||||
void BuyMenuDrawMapMetatile(s16, s16, u16*, u8);
|
||||
|
||||
|
||||
/*static*/ u8 CreateShopMenu(u8 martType)
|
||||
{
|
||||
int numMenuItems;
|
||||
|
||||
ScriptContext2_Enable();
|
||||
gMartInfo.martType = martType;
|
||||
|
||||
if (martType == MART_TYPE_0)
|
||||
{
|
||||
struct WindowTemplate winTemplate;
|
||||
winTemplate = gUnknown_08589A38[0];
|
||||
winTemplate.width = GetMaxWidthInMenuTable(gUnknown_08589A10, ARRAY_COUNT(gUnknown_08589A10));
|
||||
gMartInfo.windowId = AddWindow(&winTemplate);
|
||||
gMartInfo.menuActions = gUnknown_08589A10;
|
||||
numMenuItems = ARRAY_COUNT(gUnknown_08589A10);
|
||||
}
|
||||
else
|
||||
{
|
||||
struct WindowTemplate winTemplate;
|
||||
winTemplate = gUnknown_08589A38[1];
|
||||
winTemplate.width = GetMaxWidthInMenuTable(gUnknown_08589A28, ARRAY_COUNT(gUnknown_08589A28));
|
||||
gMartInfo.windowId = AddWindow(&winTemplate);
|
||||
gMartInfo.menuActions = gUnknown_08589A28;
|
||||
numMenuItems = ARRAY_COUNT(gUnknown_08589A28);
|
||||
}
|
||||
|
||||
SetStandardWindowBorderStyle(gMartInfo.windowId, 0);
|
||||
PrintMenuTable(gMartInfo.windowId, numMenuItems, gMartInfo.menuActions);
|
||||
InitMenuInUpperLeftCornerPlaySoundWhenAPressed(gMartInfo.windowId, numMenuItems, 0);
|
||||
PutWindowTilemap(gMartInfo.windowId);
|
||||
CopyWindowToVram(gMartInfo.windowId, 1);
|
||||
|
||||
return CreateTask(Task_ShopMenu, 8);
|
||||
}
|
||||
|
||||
/*static*/ void SetShopMenuCallback(void (* callback)(void))
|
||||
{
|
||||
gMartInfo.callback = callback;
|
||||
}
|
||||
|
||||
/*static*/ void SetShopItemsForSale(const u16 *items)
|
||||
{
|
||||
u16 i = 0;
|
||||
|
||||
gMartInfo.itemList = items;
|
||||
gMartInfo.itemCount = 0;
|
||||
|
||||
while (gMartInfo.itemList[i])
|
||||
{
|
||||
gMartInfo.itemCount++;
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
static void Task_ShopMenu(u8 taskId)
|
||||
{
|
||||
s8 inputCode = Menu_ProcessInputNoWrapAround();
|
||||
switch (inputCode)
|
||||
{
|
||||
case -2:
|
||||
break;
|
||||
case -1:
|
||||
PlaySE(SE_SELECT);
|
||||
HandleShopMenuQuit(taskId);
|
||||
break;
|
||||
default:
|
||||
gMartInfo.menuActions[inputCode].func.void_u8(taskId);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void HandleShopMenuBuy(u8 taskId)
|
||||
{
|
||||
s16 *taskData = gTasks[taskId].data;
|
||||
taskData[8] = (u32)CB2_InitBuyMenu >> 16;
|
||||
taskData[9] = (u32)CB2_InitBuyMenu;
|
||||
gTasks[taskId].func = Task_GoToBuyOrSellMenu;
|
||||
FadeScreen(1, 0);
|
||||
}
|
||||
|
||||
void HandleShopMenuSell(u8 taskId)
|
||||
{
|
||||
s16 *taskData = gTasks[taskId].data;
|
||||
taskData[8] = (u32)CB2_GoToSellMenu >> 16;
|
||||
taskData[9] = (u32)CB2_GoToSellMenu;
|
||||
gTasks[taskId].func = Task_GoToBuyOrSellMenu;
|
||||
FadeScreen(1, 0);
|
||||
}
|
||||
|
||||
void CB2_ExitSellMenu(void)
|
||||
{
|
||||
gFieldCallback = MapPostLoadHook_ExitBuyOrSellMenu;
|
||||
SetMainCallback2(CB2_ReturnToField);
|
||||
}
|
||||
|
||||
/*static*/ void HandleShopMenuQuit(u8 taskId)
|
||||
{
|
||||
sub_8198070(gMartInfo.windowId, 2);
|
||||
RemoveWindow(gMartInfo.windowId);
|
||||
SaveRecordedItemPurchasesForTVShow();
|
||||
ScriptContext2_Disable();
|
||||
DestroyTask(taskId);
|
||||
|
||||
if (gMartInfo.callback)
|
||||
gMartInfo.callback();
|
||||
}
|
||||
|
||||
static void Task_GoToBuyOrSellMenu(u8 taskId)
|
||||
{
|
||||
s16 *taskData = gTasks[taskId].data;
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
DestroyTask(taskId);
|
||||
SetMainCallback2((void *)((u16)taskData[8] << 16 | (u16)taskData[9]));
|
||||
}
|
||||
}
|
||||
|
||||
void MapPostLoadHook_ExitBuyOrSellMenu(void)
|
||||
{
|
||||
pal_fill_black();
|
||||
CreateTask(Task_ExitSellMenu, 8);
|
||||
}
|
||||
|
||||
void Task_ExitSellMenu(u8 taskId)
|
||||
{
|
||||
if (IsWeatherNotFadingIn() == TRUE)
|
||||
{
|
||||
if (gMartInfo.martType == MART_TYPE_2)
|
||||
DisplayItemMessageOnField(taskId, gText_CanIHelpWithAnythingElse, ReturnToShopMenuAfterExitingSellMenu);
|
||||
else
|
||||
DisplayItemMessageOnField(taskId, gText_AnythingElseICanHelp, ReturnToShopMenuAfterExitingSellMenu);
|
||||
}
|
||||
}
|
||||
|
||||
void ReturnToShopMenuAfterExitingSellMenu(u8 taskId)
|
||||
{
|
||||
CreateShopMenu(gMartInfo.martType);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
void CB2_BuyMenu(void)
|
||||
{
|
||||
RunTasks();
|
||||
AnimateSprites();
|
||||
BuildOamBuffer();
|
||||
do_scheduled_bg_tilemap_copies_to_vram();
|
||||
UpdatePaletteFade();
|
||||
}
|
||||
|
||||
void VBlankCB_BuyMenu(void)
|
||||
{
|
||||
LoadOam();
|
||||
ProcessSpriteCopyRequests();
|
||||
TransferPlttBuffer();
|
||||
}
|
||||
|
||||
void CB2_InitBuyMenu(void)
|
||||
{
|
||||
u8 taskId;
|
||||
|
||||
switch (gMain.state)
|
||||
{
|
||||
case 0:
|
||||
SetVBlankHBlankCallbacksToNull();
|
||||
CpuFastFill(0, (void *)OAM, 0x400);
|
||||
ScanlineEffect_Stop();
|
||||
reset_temp_tile_data_buffers();
|
||||
FreeAllSpritePalettes();
|
||||
ResetPaletteFade();
|
||||
ResetSpriteData();
|
||||
ResetTasks();
|
||||
clear_scheduled_bg_copies_to_vram();
|
||||
gShopDataPtr = AllocZeroed(sizeof(struct ShopData));
|
||||
gShopDataPtr->scrollIndicatorsTaskId = 0xFF;
|
||||
gShopDataPtr->unk200D[0] = -1;
|
||||
gShopDataPtr->unk200D[1] = -1;
|
||||
BuyMenuBuildListMenuTemplate();
|
||||
BuyMenuInitBgs();
|
||||
FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20);
|
||||
FillBgTilemapBufferRect_Palette0(1, 0, 0, 0, 0x20, 0x20);
|
||||
FillBgTilemapBufferRect_Palette0(2, 0, 0, 0, 0x20, 0x20);
|
||||
FillBgTilemapBufferRect_Palette0(3, 0, 0, 0, 0x20, 0x20);
|
||||
BuyMenuInitWindows();
|
||||
BuyMenuDecompressBgGraphics();
|
||||
gMain.state++;
|
||||
break;
|
||||
case 1:
|
||||
if (!free_temp_tile_data_buffers_if_possible())
|
||||
gMain.state++;
|
||||
break;
|
||||
default:
|
||||
BuyMenuDrawGraphics();
|
||||
BuyMenuAddScrollIndicatorArrows();
|
||||
taskId = CreateTask(Task_BuyMenu, 8);
|
||||
gTasks[taskId].data[7] = ListMenuInit(&gMultiuseListMenuTemplate, 0, 0);
|
||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
|
||||
SetVBlankCallback(VBlankCB_BuyMenu);
|
||||
SetMainCallback2(CB2_BuyMenu);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void BuyMenuFreeMemory(void)
|
||||
{
|
||||
Free(gShopDataPtr);
|
||||
Free(gUnknown_02039F74);
|
||||
Free(gUnknown_02039F78);
|
||||
FreeAllWindowBuffers();
|
||||
}
|
||||
|
||||
void BuyMenuBuildListMenuTemplate(void)
|
||||
{
|
||||
u16 i;
|
||||
u16 itemCount;
|
||||
|
||||
gUnknown_02039F74 = Alloc((gMartInfo.itemCount + 1) * sizeof(*gUnknown_02039F74));
|
||||
gUnknown_02039F78 = Alloc((gMartInfo.itemCount + 1) * sizeof(*gUnknown_02039F78));
|
||||
for (i = 0; i < gMartInfo.itemCount; i++)
|
||||
BuyMenuSetListEntry(&gUnknown_02039F74[i], gMartInfo.itemList[i], gUnknown_02039F78[i]);
|
||||
|
||||
StringCopy(gUnknown_02039F78[i], gText_Cancel2);
|
||||
gUnknown_02039F74[i].name = gUnknown_02039F78[i];
|
||||
gUnknown_02039F74[i].id = -2;
|
||||
|
||||
gMultiuseListMenuTemplate = gUnknown_08589A48;
|
||||
gMultiuseListMenuTemplate.items = gUnknown_02039F74;
|
||||
gMultiuseListMenuTemplate.totalItems = gMartInfo.itemCount + 1;
|
||||
if (gMultiuseListMenuTemplate.totalItems > 8)
|
||||
gMultiuseListMenuTemplate.maxShowed = 8;
|
||||
else
|
||||
gMultiuseListMenuTemplate.maxShowed = gMultiuseListMenuTemplate.totalItems;
|
||||
|
||||
gShopDataPtr->unk2004 = gMultiuseListMenuTemplate.maxShowed;
|
||||
}
|
||||
|
||||
void BuyMenuSetListEntry(struct ListMenuItem *menuItem, u16 item, u8 *name)
|
||||
{
|
||||
if (gMartInfo.martType == MART_TYPE_0)
|
||||
CopyItemName(item, name);
|
||||
else
|
||||
StringCopy(name, gDecorations[item].name);
|
||||
|
||||
menuItem->name = name;
|
||||
menuItem->id = item;
|
||||
}
|
||||
|
||||
void BuyMenuPrintItemDescriptionAndShowItemIcon(int item, bool8 onInit, struct ListMenu *list)
|
||||
{
|
||||
const u8 *description;
|
||||
if (onInit != TRUE)
|
||||
PlaySE(SE_SELECT);
|
||||
|
||||
if (item != -2)
|
||||
BuyMenuAddItemIcon(item, gShopDataPtr->unk200C);
|
||||
else
|
||||
BuyMenuAddItemIcon(-1, gShopDataPtr->unk200C);
|
||||
|
||||
BuyMenuRemoveItemIcon(item, gShopDataPtr->unk200C ^ 1);
|
||||
gShopDataPtr->unk200C ^= 1;
|
||||
if (item != -2)
|
||||
{
|
||||
if (gMartInfo.martType == MART_TYPE_0)
|
||||
description = ItemId_GetDescription(item);
|
||||
else
|
||||
description = gDecorations[item].description;
|
||||
}
|
||||
else
|
||||
{
|
||||
description = gText_QuitShopping;
|
||||
}
|
||||
|
||||
FillWindowPixelBuffer(2, 0);
|
||||
BuyMenuPrint(2, description, 3, 1, 0, 0);
|
||||
}
|
||||
|
||||
void BuyMenuPrintPriceInList(u8 windowId, int item, u8 y)
|
||||
{
|
||||
u8 x;
|
||||
|
||||
if (item != -2)
|
||||
{
|
||||
if (gMartInfo.martType == MART_TYPE_0)
|
||||
{
|
||||
ConvertIntToDecimalStringN(
|
||||
gStringVar1,
|
||||
ItemId_GetPrice(item) >> GetPriceReduction(1),
|
||||
STR_CONV_MODE_LEFT_ALIGN,
|
||||
5);
|
||||
}
|
||||
else
|
||||
{
|
||||
ConvertIntToDecimalStringN(
|
||||
gStringVar1,
|
||||
gDecorations[item].price,
|
||||
STR_CONV_MODE_LEFT_ALIGN,
|
||||
5);
|
||||
}
|
||||
|
||||
StringExpandPlaceholders(gStringVar4, gText_PokedollarVar1);
|
||||
x = GetStringRightAlignXOffset(7, gStringVar4, 0x78);
|
||||
AddTextPrinterParameterized4(windowId, 7, x, y, 0, 0, gUnknown_08589AB0[1], -1, gStringVar4);
|
||||
}
|
||||
}
|
||||
|
||||
void BuyMenuAddScrollIndicatorArrows(void)
|
||||
{
|
||||
if (gShopDataPtr->scrollIndicatorsTaskId == 0xFF && gMartInfo.itemCount + 1 > 8)
|
||||
{
|
||||
gShopDataPtr->scrollIndicatorsTaskId = AddScrollIndicatorArrowPairParameterized(
|
||||
SCROLL_ARROW_UP,
|
||||
0xAC,
|
||||
0xC,
|
||||
0x94,
|
||||
gMartInfo.itemCount - 7,
|
||||
0x834,
|
||||
0x834,
|
||||
&gShopDataPtr->unk2008);
|
||||
}
|
||||
}
|
||||
|
||||
void BuyMenuRemoveScrollIndicatorArrows(void)
|
||||
{
|
||||
if (gShopDataPtr->scrollIndicatorsTaskId != 0xFF)
|
||||
{
|
||||
RemoveScrollIndicatorArrowPair(gShopDataPtr->scrollIndicatorsTaskId);
|
||||
gShopDataPtr->scrollIndicatorsTaskId = 0xFF;
|
||||
}
|
||||
}
|
||||
|
||||
void BuyMenuPrintCursor(u8 scrollIndicatorsTaskId, u8 colorSet)
|
||||
{
|
||||
u8 y = ListMenuGetYCoordForPrintingArrowCursor(scrollIndicatorsTaskId);
|
||||
BuyMenuPrint(1, gText_SelectorArrow2, 0, y, 0, colorSet);
|
||||
}
|
||||
|
||||
void BuyMenuAddItemIcon(u16 item, u8 iconSlot)
|
||||
{
|
||||
u8 spriteId;
|
||||
u8 *spriteIdPtr = &gShopDataPtr->unk200D[iconSlot];
|
||||
if (*spriteIdPtr != 0xFF)
|
||||
return;
|
||||
|
||||
if (gMartInfo.martType == MART_TYPE_0 || item == 0xFFFF)
|
||||
{
|
||||
spriteId = AddItemIconSprite(iconSlot + 0x83E, iconSlot + 0x83E, item);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
*spriteIdPtr = spriteId;
|
||||
gSprites[spriteId].pos2.x = 24;
|
||||
gSprites[spriteId].pos2.y = 88;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
spriteId = AddDecorationIconObject(item, 20, 84, 1, iconSlot + 0x83E, iconSlot + 0x83E);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
*spriteIdPtr = spriteId;
|
||||
}
|
||||
}
|
||||
|
||||
void BuyMenuRemoveItemIcon(u16 item, u8 iconSlot)
|
||||
{
|
||||
u8 *spriteIdPtr = &gShopDataPtr->unk200D[iconSlot];
|
||||
if (*spriteIdPtr == 0xFF)
|
||||
return;
|
||||
|
||||
FreeSpriteTilesByTag(iconSlot + 0x83E);
|
||||
FreeSpritePaletteByTag(iconSlot + 0x83E);
|
||||
DestroySprite(&gSprites[*spriteIdPtr]);
|
||||
*spriteIdPtr = 0xFF;
|
||||
}
|
||||
|
||||
void BuyMenuInitBgs(void)
|
||||
{
|
||||
ResetBgsAndClearDma3BusyFlags(0);
|
||||
InitBgsFromTemplates(0, gUnknown_08589A60, ARRAY_COUNT(gUnknown_08589A60));
|
||||
SetBgTilemapBuffer(1, gShopDataPtr->tilemapBuffers[1]);
|
||||
SetBgTilemapBuffer(2, gShopDataPtr->tilemapBuffers[3]);
|
||||
SetBgTilemapBuffer(3, gShopDataPtr->tilemapBuffers[2]);
|
||||
SetGpuReg(REG_OFFSET_BG0HOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG0VOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG1HOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG1VOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG2HOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG2VOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG3HOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG3VOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, 0);
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP);
|
||||
ShowBg(0);
|
||||
ShowBg(1);
|
||||
ShowBg(2);
|
||||
ShowBg(3);
|
||||
}
|
||||
|
||||
void BuyMenuDecompressBgGraphics(void)
|
||||
{
|
||||
decompress_and_copy_tile_data_to_vram(1, gBuyMenuFrame_Gfx, 0x3A0, 0x3E3, 0);
|
||||
LZDecompressWram(gBuyMenuFrame_Tilemap, gShopDataPtr->tilemapBuffers[0]);
|
||||
LoadCompressedPalette(gMenuMoneyPal, 0xC0, 0x20);
|
||||
}
|
||||
|
||||
void BuyMenuInitWindows(void)
|
||||
{
|
||||
InitWindows(gUnknown_08589A70);
|
||||
DeactivateAllTextPrinters();
|
||||
LoadUserWindowBorderGfx(0, 1, 0xD0);
|
||||
LoadMessageBoxGfx(0, 0xA, 0xE0);
|
||||
PutWindowTilemap(0);
|
||||
PutWindowTilemap(1);
|
||||
PutWindowTilemap(2);
|
||||
}
|
||||
|
||||
void BuyMenuPrint(u8 windowId, const u8 *text, u8 x, u8 y, s8 speed, u8 colorSet)
|
||||
{
|
||||
AddTextPrinterParameterized4(windowId, 1, x, y, 0, 0, gUnknown_08589AB0[colorSet], speed, text);
|
||||
}
|
||||
|
||||
void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback)
|
||||
{
|
||||
DisplayMessageAndContinueTask(taskId, 5, 10, 14, 1, GetPlayerTextSpeed(), text, callback);
|
||||
schedule_bg_copy_tilemap_to_vram(0);
|
||||
}
|
||||
|
||||
void BuyMenuDrawGraphics(void)
|
||||
{
|
||||
BuyMenuDrawMapGraphics();
|
||||
BuyMenuCopyMenuBgToBg1TilemapBuffer();
|
||||
AddMoneyLabelObject(19, 11);
|
||||
PrintMoneyAmountInMoneyBoxWithBorder(0, 1, 13, GetMoney(&gSaveBlock1Ptr->money));
|
||||
schedule_bg_copy_tilemap_to_vram(0);
|
||||
schedule_bg_copy_tilemap_to_vram(1);
|
||||
schedule_bg_copy_tilemap_to_vram(2);
|
||||
schedule_bg_copy_tilemap_to_vram(3);
|
||||
}
|
||||
|
||||
void BuyMenuDrawMapGraphics(void)
|
||||
{
|
||||
BuyMenuCollectEventObjectData();
|
||||
BuyMenuDrawEventObjects();
|
||||
BuyMenuDrawMapBg();
|
||||
}
|
||||
|
||||
#ifdef NONMATCHING
|
||||
// functionally equivalent, but couldn't get the loop variables using the
|
||||
// stack correctly. Might be related to the tileset metatiles type.
|
||||
void BuyMenuDrawMapBg(void)
|
||||
{
|
||||
s16 i;
|
||||
s16 j;
|
||||
s16 x;
|
||||
s16 y;
|
||||
const struct MapLayout *mapLayout;
|
||||
u16 metatile, metatileLayerType;
|
||||
|
||||
mapLayout = gMapHeader.mapLayout;
|
||||
GetXYCoordsOneStepInFrontOfPlayer(&x, &y);
|
||||
x -= 4;
|
||||
y -= 4;
|
||||
|
||||
for (j = 0; j < 10; j++)
|
||||
{
|
||||
for (i = 0; i < 15; i++)
|
||||
{
|
||||
metatile = MapGridGetMetatileIdAt(x + i, y + j);
|
||||
if (BuyMenuCheckForOverlapWithMenuBg(i, j) == TRUE)
|
||||
metatileLayerType = MapGridGetMetatileLayerTypeAt(x + i, y + j);
|
||||
else
|
||||
metatileLayerType = 1;
|
||||
|
||||
if (metatile < 0x200)
|
||||
{
|
||||
BuyMenuDrawMapMetatile(i, j, (u16*)mapLayout->primaryTileset->metatiles + metatile * 8, metatileLayerType);
|
||||
}
|
||||
else
|
||||
{
|
||||
BuyMenuDrawMapMetatile(i, j, (u16*)mapLayout->secondaryTileset->metatiles + ((metatile - 0x200) * 8), metatileLayerType);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
NAKED
|
||||
void BuyMenuDrawMapBg(void)
|
||||
{
|
||||
asm_unified("\n\
|
||||
push {r4-r7,lr}\n\
|
||||
mov r7, r10\n\
|
||||
mov r6, r9\n\
|
||||
mov r5, r8\n\
|
||||
push {r5-r7}\n\
|
||||
sub sp, 0x4\n\
|
||||
ldr r0, =gMapHeader\n\
|
||||
ldr r0, [r0]\n\
|
||||
mov r9, r0\n\
|
||||
mov r4, sp\n\
|
||||
adds r4, 0x2\n\
|
||||
mov r0, sp\n\
|
||||
adds r1, r4, 0\n\
|
||||
bl GetXYCoordsOneStepInFrontOfPlayer\n\
|
||||
mov r1, sp\n\
|
||||
mov r0, sp\n\
|
||||
ldrh r0, [r0]\n\
|
||||
subs r0, 0x4\n\
|
||||
strh r0, [r1]\n\
|
||||
ldrh r0, [r4]\n\
|
||||
subs r0, 0x4\n\
|
||||
strh r0, [r4]\n\
|
||||
movs r1, 0\n\
|
||||
mov r10, r4\n\
|
||||
_080E05B6:\n\
|
||||
movs r4, 0\n\
|
||||
lsls r7, r1, 16\n\
|
||||
asrs r0, r7, 16\n\
|
||||
mov r8, r0\n\
|
||||
_080E05BE:\n\
|
||||
mov r0, sp\n\
|
||||
movs r1, 0\n\
|
||||
ldrsh r0, [r0, r1]\n\
|
||||
lsls r4, 16\n\
|
||||
asrs r5, r4, 16\n\
|
||||
adds r0, r5\n\
|
||||
mov r2, r10\n\
|
||||
movs r3, 0\n\
|
||||
ldrsh r1, [r2, r3]\n\
|
||||
add r1, r8\n\
|
||||
bl MapGridGetMetatileIdAt\n\
|
||||
lsls r0, 16\n\
|
||||
lsrs r6, r0, 16\n\
|
||||
adds r0, r5, 0\n\
|
||||
mov r1, r8\n\
|
||||
bl BuyMenuCheckForOverlapWithMenuBg\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r0, 24\n\
|
||||
cmp r0, 0x1\n\
|
||||
bne _080E0608\n\
|
||||
mov r0, sp\n\
|
||||
movs r1, 0\n\
|
||||
ldrsh r0, [r0, r1]\n\
|
||||
adds r0, r5\n\
|
||||
mov r2, r10\n\
|
||||
movs r3, 0\n\
|
||||
ldrsh r1, [r2, r3]\n\
|
||||
add r1, r8\n\
|
||||
bl MapGridGetMetatileLayerTypeAt\n\
|
||||
lsls r0, 24\n\
|
||||
lsrs r5, r0, 24\n\
|
||||
b _080E060A\n\
|
||||
.pool\n\
|
||||
_080E0608:\n\
|
||||
movs r5, 0x1\n\
|
||||
_080E060A:\n\
|
||||
ldr r0, =0x000001ff\n\
|
||||
cmp r6, r0\n\
|
||||
bhi _080E062C\n\
|
||||
asrs r0, r4, 16\n\
|
||||
mov r2, r9\n\
|
||||
ldr r1, [r2, 0x10]\n\
|
||||
lsls r3, r6, 4\n\
|
||||
ldr r2, [r1, 0xC]\n\
|
||||
adds r2, r3\n\
|
||||
asrs r1, r7, 16\n\
|
||||
adds r3, r5, 0\n\
|
||||
bl BuyMenuDrawMapMetatile\n\
|
||||
b _080E0644\n\
|
||||
.pool\n\
|
||||
_080E062C:\n\
|
||||
asrs r0, r4, 16\n\
|
||||
mov r3, r9\n\
|
||||
ldr r2, [r3, 0x14]\n\
|
||||
ldr r3, =0xfffffe00\n\
|
||||
adds r1, r6, r3\n\
|
||||
lsls r1, 4\n\
|
||||
ldr r2, [r2, 0xC]\n\
|
||||
adds r2, r1\n\
|
||||
asrs r1, r7, 16\n\
|
||||
adds r3, r5, 0\n\
|
||||
bl BuyMenuDrawMapMetatile\n\
|
||||
_080E0644:\n\
|
||||
movs r1, 0x80\n\
|
||||
lsls r1, 9\n\
|
||||
adds r0, r4, r1\n\
|
||||
lsrs r4, r0, 16\n\
|
||||
asrs r0, 16\n\
|
||||
cmp r0, 0xE\n\
|
||||
ble _080E05BE\n\
|
||||
adds r0, r7, r1\n\
|
||||
lsrs r1, r0, 16\n\
|
||||
asrs r0, 16\n\
|
||||
cmp r0, 0x9\n\
|
||||
ble _080E05B6\n\
|
||||
add sp, 0x4\n\
|
||||
pop {r3-r5}\n\
|
||||
mov r8, r3\n\
|
||||
mov r9, r4\n\
|
||||
mov r10, r5\n\
|
||||
pop {r4-r7}\n\
|
||||
pop {r0}\n\
|
||||
bx r0\n\
|
||||
.pool");
|
||||
}
|
||||
#endif // NONMATCHING
|
||||
+2
-2
@@ -88,7 +88,7 @@ extern void CB2_PartyMenuFromStartMenu(void);
|
||||
extern void CB2_PokeNav(void);
|
||||
extern void sub_80C4DDC(void (*)(void));
|
||||
extern void sub_80C51C4(void (*)(void));
|
||||
extern void sub_80C4E74(u8, void (*)(void));
|
||||
extern void TrainerCard_ShowLinkCard(u8, void (*)(void));
|
||||
extern void ScriptUnfreezeEventObjects(void);
|
||||
extern void sub_81A9EC8(void);
|
||||
extern void save_serialize_map(void);
|
||||
@@ -750,7 +750,7 @@ static bool8 StartMenuLinkModePlayerNameCallback(void)
|
||||
{
|
||||
play_some_sound();
|
||||
overworld_free_bg_tilemaps();
|
||||
sub_80C4E74(gUnknown_03005DB4, CB2_ReturnToFieldWithOpenMenu);
|
||||
TrainerCard_ShowLinkCard(gUnknown_03005DB4, CB2_ReturnToFieldWithOpenMenu);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
+52
-52
@@ -20,20 +20,20 @@ static const s32 sPowersOfTen[] =
|
||||
1000000000,
|
||||
};
|
||||
|
||||
extern u8 gExpandedPlaceholder_Empty[];
|
||||
extern u8 gExpandedPlaceholder_Kun[];
|
||||
extern u8 gExpandedPlaceholder_Chan[];
|
||||
extern u8 gExpandedPlaceholder_Sapphire[];
|
||||
extern u8 gExpandedPlaceholder_Ruby[];
|
||||
extern u8 gExpandedPlaceholder_Emerald[];
|
||||
extern u8 gExpandedPlaceholder_Aqua[];
|
||||
extern u8 gExpandedPlaceholder_Magma[];
|
||||
extern u8 gExpandedPlaceholder_Archie[];
|
||||
extern u8 gExpandedPlaceholder_Maxie[];
|
||||
extern u8 gExpandedPlaceholder_Kyogre[];
|
||||
extern u8 gExpandedPlaceholder_Groudon[];
|
||||
extern u8 gExpandedPlaceholder_Brendan[];
|
||||
extern u8 gExpandedPlaceholder_May[];
|
||||
extern const u8 gExpandedPlaceholder_Empty[];
|
||||
extern const u8 gExpandedPlaceholder_Kun[];
|
||||
extern const u8 gExpandedPlaceholder_Chan[];
|
||||
extern const u8 gExpandedPlaceholder_Sapphire[];
|
||||
extern const u8 gExpandedPlaceholder_Ruby[];
|
||||
extern const u8 gExpandedPlaceholder_Emerald[];
|
||||
extern const u8 gExpandedPlaceholder_Aqua[];
|
||||
extern const u8 gExpandedPlaceholder_Magma[];
|
||||
extern const u8 gExpandedPlaceholder_Archie[];
|
||||
extern const u8 gExpandedPlaceholder_Maxie[];
|
||||
extern const u8 gExpandedPlaceholder_Kyogre[];
|
||||
extern const u8 gExpandedPlaceholder_Groudon[];
|
||||
extern const u8 gExpandedPlaceholder_Brendan[];
|
||||
extern const u8 gExpandedPlaceholder_May[];
|
||||
|
||||
u8 *StringCopy10(u8 *dest, const u8 *src)
|
||||
{
|
||||
@@ -348,7 +348,7 @@ u8 *StringExpandPlaceholders(u8 *dest, const u8 *src)
|
||||
{
|
||||
u8 c = *src++;
|
||||
u8 placeholderId;
|
||||
u8 *expandedString;
|
||||
const u8 *expandedString;
|
||||
|
||||
switch (c)
|
||||
{
|
||||
@@ -383,9 +383,9 @@ u8 *StringExpandPlaceholders(u8 *dest, const u8 *src)
|
||||
case EOS:
|
||||
*dest = EOS;
|
||||
return dest;
|
||||
case 0xFA:
|
||||
case 0xFB:
|
||||
case 0xFE:
|
||||
case CHAR_PROMPT_SCROLL:
|
||||
case CHAR_PROMPT_CLEAR:
|
||||
case CHAR_NEWLINE:
|
||||
default:
|
||||
*dest++ = c;
|
||||
}
|
||||
@@ -394,8 +394,8 @@ u8 *StringExpandPlaceholders(u8 *dest, const u8 *src)
|
||||
|
||||
u8 *StringBraille(u8 *dest, const u8 *src)
|
||||
{
|
||||
u8 setBrailleFont[] = { 0xFC, 0x06, 0x06, 0xFF };
|
||||
u8 gotoLine2[] = { 0xFE, 0xFC, 0x0E, 0x02, 0xFF };
|
||||
u8 setBrailleFont[] = { EXT_CTRL_CODE_BEGIN, 0x06, 0x06, EOS };
|
||||
u8 gotoLine2[] = { CHAR_NEWLINE, EXT_CTRL_CODE_BEGIN, 0x0E, 0x02, EOS };
|
||||
|
||||
dest = StringCopy(dest, setBrailleFont);
|
||||
|
||||
@@ -408,7 +408,7 @@ u8 *StringBraille(u8 *dest, const u8 *src)
|
||||
case EOS:
|
||||
*dest = c;
|
||||
return dest;
|
||||
case 0xFE:
|
||||
case CHAR_NEWLINE:
|
||||
dest = StringCopy(dest, gotoLine2);
|
||||
break;
|
||||
default:
|
||||
@@ -419,32 +419,32 @@ u8 *StringBraille(u8 *dest, const u8 *src)
|
||||
}
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_UnknownStringVar(void)
|
||||
static const u8 *ExpandPlaceholder_UnknownStringVar(void)
|
||||
{
|
||||
return gUnknownStringVar;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_PlayerName(void)
|
||||
static const u8 *ExpandPlaceholder_PlayerName(void)
|
||||
{
|
||||
return gSaveBlock2Ptr->playerName;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_StringVar1(void)
|
||||
static const u8 *ExpandPlaceholder_StringVar1(void)
|
||||
{
|
||||
return gStringVar1;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_StringVar2(void)
|
||||
static const u8 *ExpandPlaceholder_StringVar2(void)
|
||||
{
|
||||
return gStringVar2;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_StringVar3(void)
|
||||
static const u8 *ExpandPlaceholder_StringVar3(void)
|
||||
{
|
||||
return gStringVar3;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_KunChan(void)
|
||||
static const u8 *ExpandPlaceholder_KunChan(void)
|
||||
{
|
||||
if (gSaveBlock2Ptr->playerGender == MALE)
|
||||
return gExpandedPlaceholder_Kun;
|
||||
@@ -452,7 +452,7 @@ static u8 *ExpandPlaceholder_KunChan(void)
|
||||
return gExpandedPlaceholder_Chan;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_RivalName(void)
|
||||
static const u8 *ExpandPlaceholder_RivalName(void)
|
||||
{
|
||||
if (gSaveBlock2Ptr->playerGender == MALE)
|
||||
return gExpandedPlaceholder_May;
|
||||
@@ -460,44 +460,44 @@ static u8 *ExpandPlaceholder_RivalName(void)
|
||||
return gExpandedPlaceholder_Brendan;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_Version(void)
|
||||
static const u8 *ExpandPlaceholder_Version(void)
|
||||
{
|
||||
return gExpandedPlaceholder_Emerald;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_Aqua(void)
|
||||
static const u8 *ExpandPlaceholder_Aqua(void)
|
||||
{
|
||||
return gExpandedPlaceholder_Aqua;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_Magma(void)
|
||||
static const u8 *ExpandPlaceholder_Magma(void)
|
||||
{
|
||||
return gExpandedPlaceholder_Magma;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_Archie(void)
|
||||
static const u8 *ExpandPlaceholder_Archie(void)
|
||||
{
|
||||
return gExpandedPlaceholder_Archie;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_Maxie(void)
|
||||
static const u8 *ExpandPlaceholder_Maxie(void)
|
||||
{
|
||||
return gExpandedPlaceholder_Maxie;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_Kyogre(void)
|
||||
static const u8 *ExpandPlaceholder_Kyogre(void)
|
||||
{
|
||||
return gExpandedPlaceholder_Kyogre;
|
||||
}
|
||||
|
||||
static u8 *ExpandPlaceholder_Groudon(void)
|
||||
static const u8 *ExpandPlaceholder_Groudon(void)
|
||||
{
|
||||
return gExpandedPlaceholder_Groudon;
|
||||
}
|
||||
|
||||
u8 *GetExpandedPlaceholder(u32 id)
|
||||
const u8 *GetExpandedPlaceholder(u32 id)
|
||||
{
|
||||
typedef u8 *(*ExpandPlaceholderFunc)(void);
|
||||
typedef const u8 *(*ExpandPlaceholderFunc)(void);
|
||||
|
||||
static const ExpandPlaceholderFunc funcs[] =
|
||||
{
|
||||
@@ -574,7 +574,7 @@ u8 *StringCopyN_Multibyte(u8 *dest, u8 *src, u32 n)
|
||||
else
|
||||
{
|
||||
*dest++ = *src++;
|
||||
if (*(src - 1) == 0xF9)
|
||||
if (*(src - 1) == CHAR_SPECIAL_F9)
|
||||
*dest++ = *src++;
|
||||
}
|
||||
}
|
||||
@@ -589,7 +589,7 @@ u32 StringLength_Multibyte(u8 *str)
|
||||
|
||||
while (*str != EOS)
|
||||
{
|
||||
if (*str == 0xF9)
|
||||
if (*str == CHAR_SPECIAL_F9)
|
||||
str++;
|
||||
str++;
|
||||
length++;
|
||||
@@ -600,7 +600,7 @@ u32 StringLength_Multibyte(u8 *str)
|
||||
|
||||
u8 *WriteColorChangeControlCode(u8 *dest, u32 colorType, u8 color)
|
||||
{
|
||||
*dest = 0xFC;
|
||||
*dest = EXT_CTRL_CODE_BEGIN;
|
||||
dest++;
|
||||
|
||||
switch (colorType)
|
||||
@@ -630,7 +630,7 @@ bool32 IsStringJapanese(u8 *str)
|
||||
while (*str != EOS)
|
||||
{
|
||||
if (*str <= 0xA0)
|
||||
if (*str != 0)
|
||||
if (*str != CHAR_SPACE)
|
||||
return TRUE;
|
||||
str++;
|
||||
}
|
||||
@@ -645,7 +645,7 @@ bool32 sub_800924C(u8 *str, s32 n)
|
||||
for (i = 0; *str != EOS && i < n; i++)
|
||||
{
|
||||
if (*str <= 0xA0)
|
||||
if (*str != 0)
|
||||
if (*str != CHAR_SPACE)
|
||||
return TRUE;
|
||||
str++;
|
||||
}
|
||||
@@ -692,7 +692,7 @@ u8 GetExtCtrlCodeLength(u8 code)
|
||||
|
||||
static const u8 *SkipExtCtrlCode(const u8 *s)
|
||||
{
|
||||
while (*s == 0xFC)
|
||||
while (*s == EXT_CTRL_CODE_BEGIN)
|
||||
{
|
||||
s++;
|
||||
s += GetExtCtrlCodeLength(*s);
|
||||
@@ -716,11 +716,11 @@ s32 StringCompareWithoutExtCtrlCodes(const u8 *str1, const u8 *str2)
|
||||
if (*str1 < *str2)
|
||||
{
|
||||
retVal = -1;
|
||||
if (*str2 == 0xFF)
|
||||
if (*str2 == EOS)
|
||||
retVal = 1;
|
||||
}
|
||||
|
||||
if (*str1 == 0xFF)
|
||||
if (*str1 == EOS)
|
||||
return retVal;
|
||||
|
||||
str1++;
|
||||
@@ -729,7 +729,7 @@ s32 StringCompareWithoutExtCtrlCodes(const u8 *str1, const u8 *str2)
|
||||
|
||||
retVal = 1;
|
||||
|
||||
if (*str1 == 0xFF)
|
||||
if (*str1 == EOS)
|
||||
retVal = -1;
|
||||
|
||||
return retVal;
|
||||
@@ -743,9 +743,9 @@ void ConvertInternationalString(u8 *s, u8 language)
|
||||
|
||||
StripExtCtrlCodes(s);
|
||||
i = StringLength(s);
|
||||
s[i++] = 0xFC;
|
||||
s[i++] = EXT_CTRL_CODE_BEGIN;
|
||||
s[i++] = 22;
|
||||
s[i++] = 0xFF;
|
||||
s[i++] = EOS;
|
||||
|
||||
i--;
|
||||
|
||||
@@ -755,7 +755,7 @@ void ConvertInternationalString(u8 *s, u8 language)
|
||||
i--;
|
||||
}
|
||||
|
||||
s[0] = 0xFC;
|
||||
s[0] = EXT_CTRL_CODE_BEGIN;
|
||||
s[1] = 21;
|
||||
}
|
||||
}
|
||||
@@ -764,9 +764,9 @@ void StripExtCtrlCodes(u8 *str)
|
||||
{
|
||||
u16 srcIndex = 0;
|
||||
u16 destIndex = 0;
|
||||
while (str[srcIndex] != 0xFF)
|
||||
while (str[srcIndex] != EOS)
|
||||
{
|
||||
if (str[srcIndex] == 0xFC)
|
||||
if (str[srcIndex] == EXT_CTRL_CODE_BEGIN)
|
||||
{
|
||||
srcIndex++;
|
||||
srcIndex += GetExtCtrlCodeLength(str[srcIndex]);
|
||||
@@ -776,5 +776,5 @@ void StripExtCtrlCodes(u8 *str)
|
||||
str[destIndex++] = str[srcIndex++];
|
||||
}
|
||||
}
|
||||
str[destIndex] = 0xFF;
|
||||
str[destIndex] = EOS;
|
||||
}
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@
|
||||
struct Task gTasks[NUM_TASKS];
|
||||
|
||||
static void InsertTask(u8 newTaskId);
|
||||
static u8 FindFirstActiveTask();
|
||||
static u8 FindFirstActiveTask(void);
|
||||
|
||||
void ResetTasks(void)
|
||||
{
|
||||
@@ -124,7 +124,7 @@ void RunTasks(void)
|
||||
}
|
||||
}
|
||||
|
||||
static u8 FindFirstActiveTask()
|
||||
static u8 FindFirstActiveTask(void)
|
||||
{
|
||||
u8 taskId;
|
||||
|
||||
|
||||
+34
-34
@@ -3095,13 +3095,13 @@ u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing)
|
||||
temp = strLocal[strPos++];
|
||||
switch (temp)
|
||||
{
|
||||
case 0xFE:
|
||||
case 0xFF:
|
||||
case CHAR_NEWLINE:
|
||||
case EOS:
|
||||
lineWidths[line] = width;
|
||||
width = 0;
|
||||
line++;
|
||||
break;
|
||||
case 0xFC:
|
||||
case EXT_CTRL_CODE_BEGIN:
|
||||
temp2 = strLocal[strPos++];
|
||||
switch (temp2)
|
||||
{
|
||||
@@ -3135,21 +3135,21 @@ u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing)
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case 0xF7:
|
||||
case 0xFD:
|
||||
case CHAR_SPECIAL_F7:
|
||||
case PLACEHOLDER_BEGIN:
|
||||
++strPos;
|
||||
break;
|
||||
case 0xFA:
|
||||
case 0xFB:
|
||||
case CHAR_PROMPT_SCROLL:
|
||||
case CHAR_PROMPT_CLEAR:
|
||||
break;
|
||||
case 0xF8:
|
||||
case 0xF9:
|
||||
case CHAR_SPECIAL_F8:
|
||||
case CHAR_SPECIAL_F9:
|
||||
++strPos;
|
||||
default:
|
||||
++width;
|
||||
break;
|
||||
}
|
||||
} while (temp != 0xFF);
|
||||
} while (temp != EOS);
|
||||
|
||||
for (width = 0, strPos = 0; strPos < 8; ++strPos)
|
||||
{
|
||||
@@ -3201,16 +3201,16 @@ u32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing)
|
||||
lineWidth = 0;
|
||||
bufferPointer = 0;
|
||||
|
||||
while (*str != 0xFF)
|
||||
while (*str != EOS)
|
||||
{
|
||||
switch (*str)
|
||||
{
|
||||
case 0xFE:
|
||||
case CHAR_NEWLINE:
|
||||
if (lineWidth > width)
|
||||
width = lineWidth;
|
||||
lineWidth = 0;
|
||||
break;
|
||||
case 0xFD:
|
||||
case PLACEHOLDER_BEGIN:
|
||||
switch (*++str)
|
||||
{
|
||||
case 0x2:
|
||||
@@ -3225,10 +3225,10 @@ u32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing)
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
case 0xF7:
|
||||
case CHAR_SPECIAL_F7:
|
||||
if (bufferPointer == NULL)
|
||||
bufferPointer = DynamicPlaceholderTextUtil_GetPlaceholderPtr(*++str);
|
||||
while (*bufferPointer != 0xFF)
|
||||
while (*bufferPointer != EOS)
|
||||
{
|
||||
glyphWidth = func(*bufferPointer++, isJapanese);
|
||||
if (minGlyphWidth > 0)
|
||||
@@ -3240,13 +3240,13 @@ u32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing)
|
||||
else
|
||||
{
|
||||
lineWidth += glyphWidth;
|
||||
if (isJapanese && str[1] != 0xFF)
|
||||
if (isJapanese && str[1] != EOS)
|
||||
lineWidth += localLetterSpacing;
|
||||
}
|
||||
}
|
||||
bufferPointer = 0;
|
||||
break;
|
||||
case 0xFC:
|
||||
case EXT_CTRL_CODE_BEGIN:
|
||||
switch (*++str)
|
||||
{
|
||||
case 0x4:
|
||||
@@ -3299,9 +3299,9 @@ u32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing)
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case 0xF8:
|
||||
case 0xF9:
|
||||
if (*str == 0xF9)
|
||||
case CHAR_SPECIAL_F8:
|
||||
case CHAR_SPECIAL_F9:
|
||||
if (*str == CHAR_SPECIAL_F9)
|
||||
glyphWidth = func(*++str | 0x100, isJapanese);
|
||||
else
|
||||
glyphWidth = GetKeypadIconWidth(*++str);
|
||||
@@ -3315,12 +3315,12 @@ u32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing)
|
||||
else
|
||||
{
|
||||
lineWidth += glyphWidth;
|
||||
if (isJapanese && str[1] != 0xFF)
|
||||
if (isJapanese && str[1] != EOS)
|
||||
lineWidth += localLetterSpacing;
|
||||
}
|
||||
break;
|
||||
case 0xFA:
|
||||
case 0xFB:
|
||||
case CHAR_PROMPT_SCROLL:
|
||||
case CHAR_PROMPT_CLEAR:
|
||||
break;
|
||||
default:
|
||||
glyphWidth = func(*str, isJapanese);
|
||||
@@ -3333,7 +3333,7 @@ u32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing)
|
||||
else
|
||||
{
|
||||
lineWidth += glyphWidth;
|
||||
if (isJapanese && str[1] != 0xFF)
|
||||
if (isJapanese && str[1] != EOS)
|
||||
lineWidth += localLetterSpacing;
|
||||
}
|
||||
break;
|
||||
@@ -3372,7 +3372,7 @@ u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str)
|
||||
temp = strLocal[strPos++];
|
||||
switch (temp)
|
||||
{
|
||||
case 0xFC:
|
||||
case EXT_CTRL_CODE_BEGIN:
|
||||
temp2 = strLocal[strPos++];
|
||||
switch (temp2)
|
||||
{
|
||||
@@ -3421,16 +3421,16 @@ u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str)
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
case 0xF7:
|
||||
case 0xF8:
|
||||
case 0xF9:
|
||||
case 0xFD:
|
||||
case CHAR_SPECIAL_F7:
|
||||
case CHAR_SPECIAL_F8:
|
||||
case CHAR_SPECIAL_F9:
|
||||
case PLACEHOLDER_BEGIN:
|
||||
++strPos;
|
||||
break;
|
||||
case 0xFA:
|
||||
case 0xFB:
|
||||
case 0xFE:
|
||||
case 0xFF:
|
||||
case CHAR_PROMPT_SCROLL:
|
||||
case CHAR_PROMPT_CLEAR:
|
||||
case CHAR_NEWLINE:
|
||||
case EOS:
|
||||
break;
|
||||
default:
|
||||
switch (fontId)
|
||||
@@ -3450,7 +3450,7 @@ u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str)
|
||||
break;
|
||||
}
|
||||
}
|
||||
while (temp != 0xFF);
|
||||
while (temp != EOS);
|
||||
|
||||
RestoreTextColors(&colorBackup[0], &colorBackup[1], &colorBackup[2]);
|
||||
return 1;
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
// Includes
|
||||
#include "global.h"
|
||||
#include "palette.h"
|
||||
#include "blend_palette.h"
|
||||
#include "util.h"
|
||||
#include "battle_transition.h"
|
||||
#include "task.h"
|
||||
#include "battle_transition.h"
|
||||
|
||||
@@ -936,7 +936,7 @@ void GabbyAndTyBeforeInterview(void)
|
||||
{
|
||||
gSaveBlock1Ptr->gabbyAndTyData.battleNum ++;
|
||||
}
|
||||
gSaveBlock1Ptr->gabbyAndTyData.battleTookMoreThanOneTurn = gBattleResults.unk5_0;
|
||||
gSaveBlock1Ptr->gabbyAndTyData.battleTookMoreThanOneTurn = gBattleResults.playerMonWasDamaged;
|
||||
if (gBattleResults.playerFaintCounter != 0)
|
||||
{
|
||||
gSaveBlock1Ptr->gabbyAndTyData.playerLostAMon = TRUE;
|
||||
|
||||
+18
@@ -1,6 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "util.h"
|
||||
#include "sprite.h"
|
||||
#include "palette.h"
|
||||
|
||||
const u32 gBitTable[] =
|
||||
{
|
||||
@@ -258,3 +259,20 @@ u32 CalcByteArraySum(const u8* data, u32 length)
|
||||
sum += data[i];
|
||||
return sum;
|
||||
}
|
||||
|
||||
void BlendPalette(u16 palOffset, u16 numEntries, u8 coeff, u16 blendColor)
|
||||
{
|
||||
u16 i;
|
||||
for (i = 0; i < numEntries; i++)
|
||||
{
|
||||
u16 index = i + palOffset;
|
||||
struct PlttData *data1 = (struct PlttData *)&gPlttBufferUnfaded[index];
|
||||
s8 r = data1->r;
|
||||
s8 g = data1->g;
|
||||
s8 b = data1->b;
|
||||
struct PlttData *data2 = (struct PlttData *)&blendColor;
|
||||
gPlttBufferFaded[index] = ((r + (((data2->r - r) * coeff) >> 4)) << 0)
|
||||
| ((g + (((data2->g - g) * coeff) >> 4)) << 5)
|
||||
| ((b + (((data2->b - b) * coeff) >> 4)) << 10);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user