Merge branch 'master' into format-obj
This commit is contained in:
@@ -918,7 +918,7 @@ static void rfu_LMAN_REQ_callback(u16 reqCommandId, u16 reqResult)
|
||||
{
|
||||
lman.reserveDisconnectSlot_flag = 0;
|
||||
lman.acceptCount = 0;
|
||||
lman.acceptSlot_flag = 0;;
|
||||
lman.acceptSlot_flag = 0;
|
||||
lman.parent_child = MODE_NEUTRAL;
|
||||
rfu_LMAN_managerChangeAgbClockMaster();
|
||||
if (reqCommandId == ID_STOP_MODE_REQ)
|
||||
|
||||
@@ -225,16 +225,16 @@ void BagPrintTextOnWindow(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8
|
||||
|
||||
void BagPrintTextOnWin1CenteredColor0(const u8 * str, u8 unused)
|
||||
{
|
||||
u32 x = 0x48 - GetStringWidth(1, str, 0);
|
||||
AddTextPrinterParameterized3(2, 1, x / 2, 1, sTextColors[0], 0, str);
|
||||
u32 x = 0x48 - GetStringWidth(FONT_1, str, 0);
|
||||
AddTextPrinterParameterized3(2, FONT_1, x / 2, 1, sTextColors[0], 0, str);
|
||||
}
|
||||
|
||||
void BagDrawDepositItemTextBox(void)
|
||||
{
|
||||
u32 x;
|
||||
DrawStdFrameWithCustomTileAndPalette(2, FALSE, 0x081, 0x0C);
|
||||
x = 0x40 - GetStringWidth(0, gText_DepositItem, 0);
|
||||
AddTextPrinterParameterized(2, 0, gText_DepositItem, x / 2, 1, 0, NULL);
|
||||
x = 0x40 - GetStringWidth(FONT_0, gText_DepositItem, 0);
|
||||
AddTextPrinterParameterized(2, FONT_0, gText_DepositItem, x / 2, 1, 0, NULL);
|
||||
}
|
||||
|
||||
u8 ShowBagWindow(u8 whichWindow, u8 nItems)
|
||||
@@ -293,12 +293,12 @@ u8 GetBagWindow(u8 whichWindow)
|
||||
|
||||
void BagCreateYesNoMenuBottomRight(u8 taskId, const struct YesNoFuncTable * ptrs)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[3], 2, 0, 2, 0x064, 0x0E, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[3], FONT_2, 0, 2, 0x064, 0x0E, ptrs);
|
||||
}
|
||||
|
||||
void BagCreateYesNoMenuTopRight(u8 taskId, const struct YesNoFuncTable * ptrs)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[4], 2, 0, 2, 0x064, 0x0E, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[4], FONT_2, 0, 2, 0x064, 0x0E, ptrs);
|
||||
}
|
||||
|
||||
void BagPrintMoneyAmount(void)
|
||||
|
||||
@@ -250,7 +250,7 @@ static const u16 sDiscouragedPowerfulMoveEffects[] =
|
||||
EFFECT_SKY_ATTACK,
|
||||
EFFECT_RECHARGE,
|
||||
EFFECT_SKULL_BASH,
|
||||
EFFECT_SOLARBEAM,
|
||||
EFFECT_SOLAR_BEAM,
|
||||
EFFECT_SPIT_UP,
|
||||
EFFECT_FOCUS_PUNCH,
|
||||
EFFECT_SUPERPOWER,
|
||||
@@ -1384,13 +1384,13 @@ extern u16 gBattleWeather;
|
||||
|
||||
static void Cmd_get_weather(void)
|
||||
{
|
||||
if (gBattleWeather & WEATHER_RAIN_ANY)
|
||||
if (gBattleWeather & B_WEATHER_RAIN)
|
||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_RAIN;
|
||||
if (gBattleWeather & WEATHER_SANDSTORM_ANY)
|
||||
if (gBattleWeather & B_WEATHER_SANDSTORM)
|
||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_SANDSTORM;
|
||||
if (gBattleWeather & WEATHER_SUN_ANY)
|
||||
if (gBattleWeather & B_WEATHER_SUN)
|
||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_SUNNY;
|
||||
if (gBattleWeather & WEATHER_HAIL)
|
||||
if (gBattleWeather & B_WEATHER_HAIL_TEMPORARY)
|
||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_HAIL;
|
||||
|
||||
sAIScriptPtr += 1;
|
||||
|
||||
+11
-11
@@ -1723,9 +1723,9 @@ const struct BattleAnimBackground gBattleAnimBackgroundTable[] =
|
||||
[BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure},
|
||||
[BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent},
|
||||
[BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer},
|
||||
[BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent},
|
||||
[BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer},
|
||||
[BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests},
|
||||
[BG_SOLAR_BEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactOpponent},
|
||||
[BG_SOLAR_BEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactPlayer},
|
||||
[BG_SOLAR_BEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactContests},
|
||||
};
|
||||
|
||||
static void (*const sScriptCmdTable[])(void) =
|
||||
@@ -1857,7 +1857,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
|
||||
{
|
||||
if (tableId == gMovesWithQuietBGM[i])
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 128);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 128);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -2127,7 +2127,7 @@ static void ScriptCmd_end(void)
|
||||
|
||||
if (!continuousAnim)
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256);
|
||||
ResetSpritePriorityOfAllVisibleBattlers();
|
||||
UpdateOamPriorityInAllHealthboxes(1);
|
||||
gAnimScriptActive = FALSE;
|
||||
@@ -2257,8 +2257,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
|
||||
if (!toBG_2)
|
||||
{
|
||||
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(8)), 0x2000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(28)), 0x1000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(8)), 0x2000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(28)), 0x1000, DMA3_32BIT);
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
CpuFill16(toBG_2, animBg.bgTiles, 0x1000);
|
||||
CpuFill16(toBG_2, animBg.bgTilemap, 0x800);
|
||||
@@ -2276,15 +2276,15 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
|
||||
SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y);
|
||||
|
||||
LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], animBg.paletteId * 16, 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + animBg.paletteId * 32), 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + animBg.paletteId * 32), 0x20);
|
||||
|
||||
CopyBattlerSpriteToBg(1, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles,
|
||||
animBg.bgTilemap, animBg.tilesOffset);
|
||||
}
|
||||
else
|
||||
{
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(12)), 0x2000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(30)), 0x1000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(12)), 0x2000, DMA3_32BIT);
|
||||
RequestDma3Fill(0, (void *)(BG_SCREEN_ADDR(30)), 0x1000, DMA3_32BIT);
|
||||
GetBattleAnimBgData(&animBg, 2);
|
||||
CpuFill16(0, animBg.bgTiles + 0x1000, 0x1000);
|
||||
CpuFill16(0, animBg.bgTilemap + 0x400, 0x800);
|
||||
@@ -2301,7 +2301,7 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
|
||||
SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
|
||||
|
||||
LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + 0x120), 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + 0x120), 0x20);
|
||||
|
||||
CopyBattlerSpriteToBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000,
|
||||
animBg.bgTilemap + 0x400, animBg.tilesOffset);
|
||||
|
||||
+35
-35
@@ -12,7 +12,7 @@ EWRAM_DATA static s16 gUnknown_203999C[4] = {0};
|
||||
|
||||
// Function Declarations
|
||||
static void AnimMovePowderParticleStep(struct Sprite *);
|
||||
static void AnimSolarbeamSmallOrbStep(struct Sprite *);
|
||||
static void AnimSolarBeamSmallOrbStep(struct Sprite *);
|
||||
static void AnimAbsorptionOrbStep(struct Sprite *);
|
||||
static void AnimHyperBeamOrbStep(struct Sprite *);
|
||||
static void AnimLeechSeedStep(struct Sprite *);
|
||||
@@ -137,49 +137,49 @@ const struct SpriteTemplate gPoisonPowderParticleSpriteTemplate =
|
||||
.callback = AnimMovePowderParticle,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds1[] =
|
||||
static const union AnimCmd sSolarBeamBigOrbAnimCmds1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds2[] =
|
||||
static const union AnimCmd sSolarBeamBigOrbAnimCmds2[] =
|
||||
{
|
||||
ANIMCMD_FRAME(1, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds3[] =
|
||||
static const union AnimCmd sSolarBeamBigOrbAnimCmds3[] =
|
||||
{
|
||||
ANIMCMD_FRAME(2, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds4[] =
|
||||
static const union AnimCmd sSolarBeamBigOrbAnimCmds4[] =
|
||||
{
|
||||
ANIMCMD_FRAME(3, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds5[] =
|
||||
static const union AnimCmd sSolarBeamBigOrbAnimCmds5[] =
|
||||
{
|
||||
ANIMCMD_FRAME(4, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds6[] =
|
||||
static const union AnimCmd sSolarBeamBigOrbAnimCmds6[] =
|
||||
{
|
||||
ANIMCMD_FRAME(5, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds7[] =
|
||||
static const union AnimCmd sSolarBeamBigOrbAnimCmds7[] =
|
||||
{
|
||||
ANIMCMD_FRAME(6, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sSolarbeamSmallOrbAnimCms[] =
|
||||
static const union AnimCmd sSolarBeamSmallOrbAnimCms[] =
|
||||
{
|
||||
ANIMCMD_FRAME(7, 1),
|
||||
ANIMCMD_END,
|
||||
@@ -191,20 +191,20 @@ static const union AnimCmd sPowerAbsorptionOrbAnimCmds[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const sSolarbeamBigOrbAnimTable[] =
|
||||
static const union AnimCmd *const sSolarBeamBigOrbAnimTable[] =
|
||||
{
|
||||
sSolarbeamBigOrbAnimCmds1,
|
||||
sSolarbeamBigOrbAnimCmds2,
|
||||
sSolarbeamBigOrbAnimCmds3,
|
||||
sSolarbeamBigOrbAnimCmds4,
|
||||
sSolarbeamBigOrbAnimCmds5,
|
||||
sSolarbeamBigOrbAnimCmds6,
|
||||
sSolarbeamBigOrbAnimCmds7,
|
||||
sSolarBeamBigOrbAnimCmds1,
|
||||
sSolarBeamBigOrbAnimCmds2,
|
||||
sSolarBeamBigOrbAnimCmds3,
|
||||
sSolarBeamBigOrbAnimCmds4,
|
||||
sSolarBeamBigOrbAnimCmds5,
|
||||
sSolarBeamBigOrbAnimCmds6,
|
||||
sSolarBeamBigOrbAnimCmds7,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const sSolarbeamSmallOrbAnimTable[] =
|
||||
static const union AnimCmd *const sSolarBeamSmallOrbAnimTable[] =
|
||||
{
|
||||
sSolarbeamSmallOrbAnimCms,
|
||||
sSolarBeamSmallOrbAnimCms,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const sPowerAbsorptionOrbAnimTable[] =
|
||||
@@ -234,26 +234,26 @@ const struct SpriteTemplate gPowerAbsorptionOrbSpriteTemplate =
|
||||
.callback = AnimPowerAbsorptionOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSolarbeamBigOrbSpriteTemplate =
|
||||
const struct SpriteTemplate gSolarBeamBigOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ORBS,
|
||||
.paletteTag = ANIM_TAG_ORBS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||
.anims = sSolarbeamBigOrbAnimTable,
|
||||
.anims = sSolarBeamBigOrbAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimSolarbeamBigOrb,
|
||||
.callback = AnimSolarBeamBigOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSolarbeamSmallOrbSpriteTemplate =
|
||||
const struct SpriteTemplate gSolarBeamSmallOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ORBS,
|
||||
.paletteTag = ANIM_TAG_ORBS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||
.anims = sSolarbeamSmallOrbAnimTable,
|
||||
.anims = sSolarBeamSmallOrbAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimSolarbeamSmallOrb,
|
||||
.callback = AnimSolarBeamSmallOrb,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd sStockpileAbsorptionOrbAffineCmds[] =
|
||||
@@ -306,7 +306,7 @@ const struct SpriteTemplate gHyperBeamOrbSpriteTemplate =
|
||||
.tileTag = ANIM_TAG_ORBS,
|
||||
.paletteTag = ANIM_TAG_ORBS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||
.anims = sSolarbeamBigOrbAnimTable,
|
||||
.anims = sSolarBeamBigOrbAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimHyperBeamOrb,
|
||||
@@ -2219,7 +2219,7 @@ void AnimPowerAbsorptionOrb(struct Sprite* sprite)
|
||||
// arg 1: initial y pixel offset
|
||||
// arg 2: duration
|
||||
// arg 3: sprite anim number
|
||||
void AnimSolarbeamBigOrb(struct Sprite* sprite)
|
||||
void AnimSolarBeamBigOrb(struct Sprite* sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||
StartSpriteAnim(sprite, gBattleAnimArgs[3]);
|
||||
@@ -2231,12 +2231,12 @@ void AnimSolarbeamBigOrb(struct Sprite* sprite)
|
||||
}
|
||||
|
||||
// Moves a small orb in a wavy pattern towards the target mon.
|
||||
// The small orb "circles" the big orbs in AnimSolarbeamBigOrb.
|
||||
// The small orb "circles" the big orbs in AnimSolarBeamBigOrb.
|
||||
// arg 0: initial x pixel offset
|
||||
// arg 1: initial y pixel offset
|
||||
// arg 2: duration
|
||||
// arg 3: initial wave offset
|
||||
void AnimSolarbeamSmallOrb(struct Sprite* sprite)
|
||||
void AnimSolarBeamSmallOrb(struct Sprite* sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
@@ -2246,11 +2246,11 @@ void AnimSolarbeamSmallOrb(struct Sprite* sprite)
|
||||
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
|
||||
InitAnimLinearTranslation(sprite);
|
||||
sprite->data[5] = gBattleAnimArgs[3];
|
||||
sprite->callback = AnimSolarbeamSmallOrbStep;
|
||||
sprite->callback = AnimSolarBeamSmallOrbStep;
|
||||
sprite->callback(sprite);
|
||||
}
|
||||
|
||||
static void AnimSolarbeamSmallOrbStep(struct Sprite* sprite)
|
||||
static void AnimSolarBeamSmallOrbStep(struct Sprite* sprite)
|
||||
{
|
||||
if (AnimTranslateLinear(sprite))
|
||||
{
|
||||
@@ -2272,7 +2272,7 @@ static void AnimSolarbeamSmallOrbStep(struct Sprite* sprite)
|
||||
// Creates 15 small secondary orbs used in the solarbeam anim effect.
|
||||
// There is a 7-frame delay between each of them.
|
||||
// No args.
|
||||
void AnimTask_CreateSmallSolarbeamOrbs(u8 taskId)
|
||||
void AnimTask_CreateSmallSolarBeamOrbs(u8 taskId)
|
||||
{
|
||||
if (--gTasks[taskId].data[0] == -1)
|
||||
{
|
||||
@@ -2282,7 +2282,7 @@ void AnimTask_CreateSmallSolarbeamOrbs(u8 taskId)
|
||||
gBattleAnimArgs[1] = 0;
|
||||
gBattleAnimArgs[2] = 80;
|
||||
gBattleAnimArgs[3] = 0;
|
||||
CreateSpriteAndAnimate(&gSolarbeamSmallOrbSpriteTemplate, 0, 0, GetBattlerSpriteSubpriority(gBattleAnimTarget) + 1);
|
||||
CreateSpriteAndAnimate(&gSolarBeamSmallOrbSpriteTemplate, 0, 0, GetBattlerSpriteSubpriority(gBattleAnimTarget) + 1);
|
||||
}
|
||||
|
||||
if (gTasks[taskId].data[1] == 15)
|
||||
@@ -4995,7 +4995,7 @@ void AnimTask_FadeScreenBlue(u8 taskId)
|
||||
gTasks[taskId].data[9] = 15;
|
||||
b = SelectBattlerSpritePalettes(1, 1, 1, 1);
|
||||
c = a | b;
|
||||
StorePointerInVars(&gTasks[taskId].data[14], &gTasks[taskId].data[15], (void*)c);
|
||||
StorePointerInVars(&gTasks[taskId].data[14], &gTasks[taskId].data[15], (void *)c);
|
||||
b = b | (0x10000 << IndexOfSpritePaletteTag(ANIM_TAG_MOON));
|
||||
d = IndexOfSpritePaletteTag(ANIM_TAG_GREEN_SPARKLE);
|
||||
BeginNormalPaletteFade((0x10000 << d) | b, 0, 0, 16, RGB(27, 29, 31));
|
||||
@@ -5294,7 +5294,7 @@ void AnimWavyMusicNotes(struct Sprite* sprite)
|
||||
sprite->callback = AnimWavyMusicNotesStep;
|
||||
}
|
||||
|
||||
static void AnimWavyMusicNotesGetNextPos(s16 a, s16 b, s16* c, s16* d, s8 e)
|
||||
static void AnimWavyMusicNotesGetNextPos(s16 a, s16 b, s16 *c, s16 *d, s8 e)
|
||||
{
|
||||
int f;
|
||||
int g;
|
||||
|
||||
@@ -1780,7 +1780,7 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite)
|
||||
{
|
||||
int i;
|
||||
u16 rand;
|
||||
s16* ptr;
|
||||
s16 *ptr;
|
||||
|
||||
PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(SOUND_PAN_TARGET));
|
||||
sprite->x += sprite->x2;
|
||||
|
||||
@@ -5262,13 +5262,13 @@ static void AnimRecycleStep(struct Sprite *sprite)
|
||||
void AnimTask_GetWeather(u8 taskId)
|
||||
{
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_NONE;
|
||||
if (gWeatherMoveAnim & WEATHER_SUN_ANY)
|
||||
if (gWeatherMoveAnim & B_WEATHER_SUN)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_SUN;
|
||||
else if (gWeatherMoveAnim & WEATHER_RAIN_ANY)
|
||||
else if (gWeatherMoveAnim & B_WEATHER_RAIN)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_RAIN;
|
||||
else if (gWeatherMoveAnim & WEATHER_SANDSTORM_ANY)
|
||||
else if (gWeatherMoveAnim & B_WEATHER_SANDSTORM)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_SANDSTORM;
|
||||
else if (gWeatherMoveAnim & WEATHER_HAIL_ANY)
|
||||
else if (gWeatherMoveAnim & B_WEATHER_HAIL)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_HAIL;
|
||||
|
||||
DestroyAnimVisualTask(taskId);
|
||||
|
||||
@@ -12,15 +12,15 @@ static void AnimTask_ShakeMon2Step(u8 taskId);
|
||||
static void AnimTask_ShakeMonInPlaceStep(u8 taskId);
|
||||
static void AnimTask_ShakeAndSinkMonStep(u8 taskId);
|
||||
static void AnimTask_TranslateMonEllipticalStep(u8 taskId);
|
||||
static void DoHorizontalLunge(struct Sprite * sprite);
|
||||
static void ReverseHorizontalLungeDirection(struct Sprite * sprite);
|
||||
static void DoVerticalDip(struct Sprite * sprite);
|
||||
static void ReverseVerticalDipDirection(struct Sprite * sprite);
|
||||
static void SlideMonToOriginalPos(struct Sprite * sprite);
|
||||
static void SlideMonToOriginalPosStep(struct Sprite * sprite);
|
||||
static void SlideMonToOffset(struct Sprite * sprite);
|
||||
static void sub_8099394(struct Sprite * sprite);
|
||||
static void sub_809946C(struct Sprite * sprite);
|
||||
static void DoHorizontalLunge(struct Sprite *sprite);
|
||||
static void ReverseHorizontalLungeDirection(struct Sprite *sprite);
|
||||
static void DoVerticalDip(struct Sprite *sprite);
|
||||
static void ReverseVerticalDipDirection(struct Sprite *sprite);
|
||||
static void SlideMonToOriginalPos(struct Sprite *sprite);
|
||||
static void SlideMonToOriginalPosStep(struct Sprite *sprite);
|
||||
static void SlideMonToOffset(struct Sprite *sprite);
|
||||
static void sub_8099394(struct Sprite *sprite);
|
||||
static void sub_809946C(struct Sprite *sprite);
|
||||
static void AnimTask_WindUpLungePart1(u8 taskId);
|
||||
static void AnimTask_WindUpLungePart2(u8 taskId);
|
||||
static void sub_80996B8(u8 taskId);
|
||||
@@ -383,7 +383,7 @@ void AnimTask_TranslateMonEllipticalRespectSide(u8 taskId)
|
||||
// horizontally, and then moves back in the opposite direction.
|
||||
// arg 0: duration of single lunge direction
|
||||
// arg 1: x pixel delta that is applied each frame
|
||||
static void DoHorizontalLunge(struct Sprite * sprite)
|
||||
static void DoHorizontalLunge(struct Sprite *sprite)
|
||||
{
|
||||
sprite->invisible = TRUE;
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
@@ -398,7 +398,7 @@ static void DoHorizontalLunge(struct Sprite * sprite)
|
||||
sprite->callback = TranslateMonSpriteLinear;
|
||||
}
|
||||
|
||||
static void ReverseHorizontalLungeDirection(struct Sprite * sprite)
|
||||
static void ReverseHorizontalLungeDirection(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = sprite->data[4];
|
||||
sprite->data[1] = -sprite->data[1];
|
||||
@@ -411,7 +411,7 @@ static void ReverseHorizontalLungeDirection(struct Sprite * sprite)
|
||||
// arg 0: duration of single dip direction
|
||||
// arg 1: y pixel delta that is applied each frame
|
||||
// arg 2: battler
|
||||
static void DoVerticalDip(struct Sprite * sprite)
|
||||
static void DoVerticalDip(struct Sprite *sprite)
|
||||
{
|
||||
u8 spriteId;
|
||||
sprite->invisible = TRUE;
|
||||
@@ -425,7 +425,7 @@ static void DoVerticalDip(struct Sprite * sprite)
|
||||
sprite->callback = TranslateMonSpriteLinear;
|
||||
}
|
||||
|
||||
static void ReverseVerticalDipDirection(struct Sprite * sprite)
|
||||
static void ReverseVerticalDipDirection(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = sprite->data[4];
|
||||
sprite->data[2] = -sprite->data[2];
|
||||
@@ -438,7 +438,7 @@ static void ReverseVerticalDipDirection(struct Sprite * sprite)
|
||||
// arg 0: 1 = target or 0 = attacker
|
||||
// arg 1: direction (0 = horizontal and vertical, 1 = horizontal only, 2 = vertical only)
|
||||
// arg 2: duration
|
||||
static void SlideMonToOriginalPos(struct Sprite * sprite)
|
||||
static void SlideMonToOriginalPos(struct Sprite *sprite)
|
||||
{
|
||||
u8 spriteId;
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
@@ -465,7 +465,7 @@ static void SlideMonToOriginalPos(struct Sprite * sprite)
|
||||
sprite->callback = SlideMonToOriginalPosStep;
|
||||
}
|
||||
|
||||
static void SlideMonToOriginalPosStep(struct Sprite * sprite)
|
||||
static void SlideMonToOriginalPosStep(struct Sprite *sprite)
|
||||
{
|
||||
u8 data7 = sprite->data[7];
|
||||
struct Sprite *otherSprite = &gSprites[sprite->data[7] >> 8];
|
||||
@@ -495,7 +495,7 @@ static void SlideMonToOriginalPosStep(struct Sprite * sprite)
|
||||
// arg 2: target y pixel offset
|
||||
// arg 3: mirror vertical translation for opposite battle side
|
||||
// arg 4: duration
|
||||
static void SlideMonToOffset(struct Sprite * sprite)
|
||||
static void SlideMonToOffset(struct Sprite *sprite)
|
||||
{
|
||||
u8 battlerId;
|
||||
u8 spriteId;
|
||||
@@ -524,7 +524,7 @@ static void SlideMonToOffset(struct Sprite * sprite)
|
||||
sprite->callback = TranslateMonSpriteLinearFixedPoint;
|
||||
}
|
||||
|
||||
static void sub_8099394(struct Sprite * sprite)
|
||||
static void sub_8099394(struct Sprite *sprite)
|
||||
{
|
||||
u8 battlerId;
|
||||
u8 spriteId;
|
||||
@@ -557,7 +557,7 @@ static void sub_8099394(struct Sprite * sprite)
|
||||
sprite->callback = TranslateMonSpriteLinearFixedPoint;
|
||||
}
|
||||
|
||||
static void sub_809946C(struct Sprite * sprite)
|
||||
static void sub_809946C(struct Sprite *sprite)
|
||||
{
|
||||
gSprites[sprite->data[5]].x2 = 0;
|
||||
gSprites[sprite->data[5]].y2 = 0;
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "battle_anim.h"
|
||||
#include "task.h"
|
||||
#include "constants/battle_anim.h"
|
||||
#include "constants/sound.h"
|
||||
|
||||
static void sub_80DCE78(u8 taskId);
|
||||
static void sub_80DCEE4(u8 taskId);
|
||||
@@ -142,7 +143,7 @@ void SoundTask_PlayCryHighPitch(u8 taskId)
|
||||
else
|
||||
species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
|
||||
if (species != SPECIES_NONE)
|
||||
PlayCry3(species, pan, 3);
|
||||
PlayCry_ByMode(species, pan, CRY_MODE_HIGH_PITCH);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
@@ -177,10 +178,10 @@ void SoundTask_PlayDoubleCry(u8 taskId)
|
||||
gTasks[taskId].data[2] = pan;
|
||||
if (species != SPECIES_NONE)
|
||||
{
|
||||
if (gBattleAnimArgs[1] == TAIL_SENTINEL)
|
||||
PlayCry3(species, pan, 9);
|
||||
else
|
||||
PlayCry3(species, pan, 7);
|
||||
if (gBattleAnimArgs[1] == DOUBLE_CRY_GROWL)
|
||||
PlayCry_ByMode(species, pan, CRY_MODE_GROWL_1);
|
||||
else // DOUBLE_CRY_ROAR
|
||||
PlayCry_ByMode(species, pan, CRY_MODE_ROAR_1);
|
||||
gTasks[taskId].func = sub_80DD270;
|
||||
}
|
||||
else
|
||||
@@ -202,13 +203,13 @@ static void sub_80DD270(u8 taskId)
|
||||
{
|
||||
if (!IsCryPlaying())
|
||||
{
|
||||
PlayCry3(species, pan, 10);
|
||||
PlayCry_ByMode(species, pan, CRY_MODE_GROWL_2);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
}
|
||||
else if (!IsCryPlaying())
|
||||
{
|
||||
PlayCry3(species, pan, 8);
|
||||
PlayCry_ByMode(species, pan, CRY_MODE_ROAR_2);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
}
|
||||
@@ -232,7 +233,7 @@ void sub_80DD334(u8 taskId)
|
||||
gTasks[taskId].data[2] = pan;
|
||||
if (species != SPECIES_NONE)
|
||||
{
|
||||
PlayCry3(species, pan, 4);
|
||||
PlayCry_ByMode(species, pan, CRY_MODE_ECHO_START);
|
||||
gTasks[taskId].func = sub_80DD390;
|
||||
}
|
||||
else
|
||||
@@ -253,7 +254,7 @@ static void sub_80DD390(u8 taskId)
|
||||
u16 species = gTasks[taskId].data[1];
|
||||
s8 pan = gTasks[taskId].data[2];
|
||||
|
||||
PlayCry3(species, pan, 6);
|
||||
PlayCry_ByMode(species, pan, CRY_MODE_ECHO_END);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
+23
-23
@@ -659,7 +659,7 @@ void AnimTask_SwitchOutBallEffect(u8 taskId)
|
||||
y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y);
|
||||
priority = gSprites[spriteId].oam.priority;
|
||||
subpriority = gSprites[spriteId].subpriority;
|
||||
gTasks[taskId].data[10] = LaunchBallStarsTask(x, y + 32, priority, subpriority, ballId);
|
||||
gTasks[taskId].data[10] = AnimateBallOpenParticles(x, y + 32, priority, subpriority, ballId);
|
||||
selectedPalettes = SelectBattleAnimSpriteAndBgPalettes(1, 0, 0, 0, 0, 0, 0);
|
||||
gTasks[taskId].data[11] = LaunchBallFadeMonTask(0, gBattleAnimAttacker, selectedPalettes, ballId);
|
||||
gTasks[taskId].data[0]++;
|
||||
@@ -748,7 +748,7 @@ void AnimTask_ThrowBall(u8 taskId)
|
||||
gSprites[spriteId].data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X);
|
||||
gSprites[spriteId].data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) - 16;
|
||||
gSprites[spriteId].callback = SpriteCB_ThrowBall_Init;
|
||||
gBattleSpritesDataPtr->animationData->field_9_x2 = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible;
|
||||
gBattleSpritesDataPtr->animationData->wildMonInvisible = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible;
|
||||
gTasks[taskId].data[0] = spriteId;
|
||||
gTasks[taskId].func = AnimTask_ThrowBall_WaitAnimObjComplete;
|
||||
}
|
||||
@@ -860,7 +860,7 @@ static void SpriteCB_ThrowBall_ArcFlight(struct Sprite *sprite)
|
||||
switch (ballId)
|
||||
{
|
||||
case 0 ... POKEBALL_COUNT - 1:
|
||||
LaunchBallStarsTask(sprite->x, sprite->y - 5, 1, 28, ballId);
|
||||
AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId);
|
||||
LaunchBallFadeMonTask(0, gBattleAnimTarget, 14, ballId);
|
||||
break;
|
||||
}
|
||||
@@ -1015,7 +1015,7 @@ static void SpriteCB_ThrowBall_InitShake(struct Sprite *sprite)
|
||||
sprite->data[3] = 0;
|
||||
sprite->affineAnimPaused = TRUE;
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
gBattleSpritesDataPtr->animationData->field_C = 0;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx = 0;
|
||||
sprite->callback = SpriteCB_ThrowBall_DoShake;
|
||||
PlaySE(SE_BALL);
|
||||
}
|
||||
@@ -1029,14 +1029,14 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
|
||||
switch (sprite->data[3] & 0xFF)
|
||||
{
|
||||
case 0:
|
||||
if (gBattleSpritesDataPtr->animationData->field_C > 0xFF)
|
||||
if (gBattleSpritesDataPtr->animationData->ballSubpx > 0xFF)
|
||||
{
|
||||
sprite->x2 += sprite->data[4];
|
||||
gBattleSpritesDataPtr->animationData->field_C &= 0xFF;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
|
||||
}
|
||||
else
|
||||
{
|
||||
gBattleSpritesDataPtr->animationData->field_C += 0xB0;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx += 0xB0;
|
||||
}
|
||||
|
||||
sprite->data[5]++;
|
||||
@@ -1044,7 +1044,7 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
|
||||
var0 = sprite->data[5] + 7;
|
||||
if (var0 > 14)
|
||||
{
|
||||
gBattleSpritesDataPtr->animationData->field_C = 0;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx = 0;
|
||||
sprite->data[3]++;
|
||||
sprite->data[5] = 0;
|
||||
}
|
||||
@@ -1067,14 +1067,14 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (gBattleSpritesDataPtr->animationData->field_C > 0xFF)
|
||||
if (gBattleSpritesDataPtr->animationData->ballSubpx > 0xFF)
|
||||
{
|
||||
sprite->x2 += sprite->data[4];
|
||||
gBattleSpritesDataPtr->animationData->field_C &= 0xFF;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
|
||||
}
|
||||
else
|
||||
{
|
||||
gBattleSpritesDataPtr->animationData->field_C += 0xB0;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx += 0xB0;
|
||||
}
|
||||
|
||||
sprite->data[5]++;
|
||||
@@ -1082,7 +1082,7 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
|
||||
var0 = sprite->data[5] + 12;
|
||||
if (var0 > 24)
|
||||
{
|
||||
gBattleSpritesDataPtr->animationData->field_C = 0;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx = 0;
|
||||
sprite->data[3]++;
|
||||
sprite->data[5] = 0;
|
||||
}
|
||||
@@ -1104,14 +1104,14 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
|
||||
ChangeSpriteAffineAnim(sprite, 1);
|
||||
// fall through
|
||||
case 4:
|
||||
if (gBattleSpritesDataPtr->animationData->field_C > 0xFF)
|
||||
if (gBattleSpritesDataPtr->animationData->ballSubpx > 0xFF)
|
||||
{
|
||||
sprite->x2 += sprite->data[4];
|
||||
gBattleSpritesDataPtr->animationData->field_C &= 0xFF;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
|
||||
}
|
||||
else
|
||||
{
|
||||
gBattleSpritesDataPtr->animationData->field_C += 0xB0;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx += 0xB0;
|
||||
}
|
||||
|
||||
sprite->data[5]++;
|
||||
@@ -1119,7 +1119,7 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
|
||||
var0 = sprite->data[5] + 4;
|
||||
if (var0 > 8)
|
||||
{
|
||||
gBattleSpritesDataPtr->animationData->field_C = 0;
|
||||
gBattleSpritesDataPtr->animationData->ballSubpx = 0;
|
||||
sprite->data[3]++;
|
||||
sprite->data[5] = 0;
|
||||
sprite->data[4] = -sprite->data[4];
|
||||
@@ -1319,7 +1319,7 @@ static void SpriteCB_ThrowBall_BeginBreakOut(struct Sprite *sprite)
|
||||
switch (ballId)
|
||||
{
|
||||
case 0 ... POKEBALL_COUNT - 1:
|
||||
LaunchBallStarsTask(sprite->x, sprite->y - 5, 1, 28, ballId);
|
||||
AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId);
|
||||
LaunchBallFadeMonTask(1, gBattleAnimTarget, 14, ballId);
|
||||
break;
|
||||
}
|
||||
@@ -1351,7 +1351,7 @@ static void SpriteCB_ThrowBall_RunBreakOut(struct Sprite *sprite)
|
||||
if (sprite->animEnded && next)
|
||||
{
|
||||
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].y2 = 0;
|
||||
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible = gBattleSpritesDataPtr->animationData->field_9_x2;
|
||||
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible = gBattleSpritesDataPtr->animationData->wildMonInvisible;
|
||||
sprite->data[0] = 0;
|
||||
sprite->callback = BattleAnimObj_SignalEnd;
|
||||
gDoingBattleAnim = FALSE;
|
||||
@@ -1430,7 +1430,7 @@ static void LoadBallParticleGfx(u8 ballId)
|
||||
}
|
||||
}
|
||||
|
||||
u8 LaunchBallStarsTask(u8 x, u8 y, u8 priority, u8 subpriority, u8 ballId)
|
||||
u8 AnimateBallOpenParticles(u8 x, u8 y, u8 priority, u8 subpriority, u8 ballId)
|
||||
{
|
||||
u8 taskId;
|
||||
|
||||
@@ -1448,7 +1448,7 @@ u8 LaunchBallStarsTask(u8 x, u8 y, u8 priority, u8 subpriority, u8 ballId)
|
||||
static void IncrementBattleParticleCounter(void)
|
||||
{
|
||||
if (gMain.inBattle)
|
||||
gBattleSpritesDataPtr->animationData->field_A++;
|
||||
gBattleSpritesDataPtr->animationData->numBallParticles++;
|
||||
}
|
||||
|
||||
static void PokeBallOpenParticleAnimation(u8 taskId)
|
||||
@@ -1850,8 +1850,8 @@ static void DestroyBallOpenAnimationParticle(struct Sprite *sprite)
|
||||
}
|
||||
else
|
||||
{
|
||||
gBattleSpritesDataPtr->animationData->field_A--;
|
||||
if (gBattleSpritesDataPtr->animationData->field_A == 0)
|
||||
gBattleSpritesDataPtr->animationData->numBallParticles--;
|
||||
if (gBattleSpritesDataPtr->animationData->numBallParticles == 0)
|
||||
{
|
||||
for (j = 0; j < POKEBALL_COUNT; j++)
|
||||
{
|
||||
@@ -2097,7 +2097,7 @@ static void AnimTask_ShinySparkles(u8 taskId)
|
||||
return;
|
||||
}
|
||||
|
||||
if (gBattleSpritesDataPtr->animationData->field_A)
|
||||
if (gBattleSpritesDataPtr->animationData->numBallParticles)
|
||||
return;
|
||||
|
||||
counter = gTasks[taskId].data[10]++;
|
||||
|
||||
@@ -355,7 +355,7 @@ void AnimTask_FrozenIceCube(u8 taskId)
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16));
|
||||
spriteId = CreateSprite(&sUnknown_83BF55C, x, y, 4);
|
||||
if (GetSpriteTileStartByTag(ANIM_TAG_ICE_CUBE) == SPRITE_INVALID_TAG)
|
||||
if (GetSpriteTileStartByTag(ANIM_TAG_ICE_CUBE) == TAG_NONE)
|
||||
gSprites[spriteId].invisible = TRUE;
|
||||
|
||||
SetSubspriteTables(&gSprites[spriteId], sUnknown_83BF554);
|
||||
|
||||
+33
-33
@@ -764,7 +764,7 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
||||
{
|
||||
if (gBattleOutcome == B_OUTCOME_DREW)
|
||||
{
|
||||
BattlePutTextOnWindow(gText_Draw, 0x15);
|
||||
BattlePutTextOnWindow(gText_Draw, B_WIN_VS_OUTCOME_DRAW);
|
||||
}
|
||||
else if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
{
|
||||
@@ -773,20 +773,20 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
||||
switch (gLinkPlayers[gBattleStruct->multiplayerId].id)
|
||||
{
|
||||
case 0:
|
||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||
break;
|
||||
case 1:
|
||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||
break;
|
||||
case 2:
|
||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||
break;
|
||||
case 3:
|
||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -795,20 +795,20 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
||||
switch (gLinkPlayers[gBattleStruct->multiplayerId].id)
|
||||
{
|
||||
case 0:
|
||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||
break;
|
||||
case 1:
|
||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||
break;
|
||||
case 2:
|
||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||
break;
|
||||
case 3:
|
||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -817,26 +817,26 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
||||
{
|
||||
if (gLinkPlayers[gBattleStruct->multiplayerId].id != 0)
|
||||
{
|
||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||
}
|
||||
else
|
||||
{
|
||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (gLinkPlayers[gBattleStruct->multiplayerId].id != 0)
|
||||
{
|
||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||
}
|
||||
else
|
||||
{
|
||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
||||
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -860,19 +860,19 @@ void InitLinkBattleVsScreen(u8 taskId)
|
||||
switch (linkPlayer->id)
|
||||
{
|
||||
case 0:
|
||||
BattlePutTextOnWindow(name, 0x11);
|
||||
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_1);
|
||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 4);
|
||||
break;
|
||||
case 1:
|
||||
BattlePutTextOnWindow(name, 0x12);
|
||||
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_2);
|
||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 4);
|
||||
break;
|
||||
case 2:
|
||||
BattlePutTextOnWindow(name, 0x13);
|
||||
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_3);
|
||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 8);
|
||||
break;
|
||||
case 3:
|
||||
BattlePutTextOnWindow(name, 0x14);
|
||||
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_4);
|
||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 8);
|
||||
break;
|
||||
}
|
||||
@@ -888,10 +888,10 @@ void InitLinkBattleVsScreen(u8 taskId)
|
||||
opponentId = playerId, playerId = opponentId_copy;
|
||||
|
||||
name = gLinkPlayers[playerId].name;
|
||||
BattlePutTextOnWindow(name, 0xF);
|
||||
BattlePutTextOnWindow(name, B_WIN_VS_PLAYER);
|
||||
|
||||
name = gLinkPlayers[opponentId].name;
|
||||
BattlePutTextOnWindow(name, 0x10);
|
||||
BattlePutTextOnWindow(name, B_WIN_VS_OPPONENT);
|
||||
|
||||
DrawLinkBattleParticipantPokeballs(taskId, playerId, 1, 2, 7);
|
||||
DrawLinkBattleParticipantPokeballs(taskId, opponentId, 2, 2, 7);
|
||||
@@ -953,8 +953,8 @@ void DrawBattleEntryBackground(void)
|
||||
{
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
{
|
||||
LZDecompressVram(gFile_graphics_battle_transitions_vs_frame_sheet, (void*)(BG_CHAR_ADDR(1)));
|
||||
LZDecompressVram(gVsLettersGfx, (void*)(VRAM + 0x10000));
|
||||
LZDecompressVram(gFile_graphics_battle_transitions_vs_frame_sheet, (void *)(BG_CHAR_ADDR(1)));
|
||||
LZDecompressVram(gVsLettersGfx, (void *)(VRAM + 0x10000));
|
||||
LoadCompressedPalette(gFile_graphics_battle_transitions_vs_frame_palette, 0x60, 0x20);
|
||||
SetBgAttribute(1, BG_ATTR_SCREENSIZE, 1);
|
||||
SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(28) | BGCNT_TXT512x256);
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
#include "battle_message.h"
|
||||
#include "constants/battle_anim.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/sound.h"
|
||||
#include "constants/trainers.h"
|
||||
|
||||
static void LinkOpponentHandleGetMonData(void);
|
||||
@@ -231,7 +232,7 @@ static void Intro_WaitForShinyAnimAndHealthbox(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256);
|
||||
}
|
||||
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay = 3;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_DelayAndEnd;
|
||||
@@ -270,7 +271,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
|
||||
StartHealthboxSlideIn(gActiveBattler);
|
||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
|
||||
SetBattlerShadowSpriteCallback(gActiveBattler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES));
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 0;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_WaitForShinyAnimAndHealthbox;
|
||||
}
|
||||
}
|
||||
@@ -366,7 +367,7 @@ static void SwitchIn_HandleSoundAndEnd(void)
|
||||
{
|
||||
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].specialAnimActive && !IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
|
||||
LinkOpponentBufferExecCompleted();
|
||||
}
|
||||
}
|
||||
@@ -499,7 +500,7 @@ static u32 CopyLinkOpponentMonData(u8 monId, u8 *dst)
|
||||
battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM);
|
||||
battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID);
|
||||
GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname);
|
||||
StringCopy10(battleMon.nickname, nickname);
|
||||
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||
GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||
src = (u8 *)&battleMon;
|
||||
for (size = 0; size < sizeof(battleMon); ++size)
|
||||
@@ -1310,9 +1311,9 @@ static void LinkOpponentHandlePrintString(void)
|
||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||
BufferStringBattle(*stringId);
|
||||
if (BattleStringShouldBeColored(*stringId))
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||
else
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||
}
|
||||
|
||||
@@ -1512,7 +1513,7 @@ static void LinkOpponentHandleFaintingCry(void)
|
||||
{
|
||||
u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
||||
|
||||
PlayCry3(species, 25, 5);
|
||||
PlayCry_ByMode(species, 25, CRY_MODE_FAINT);
|
||||
LinkOpponentBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -1537,7 +1538,7 @@ static void LinkOpponentHandleIntroTrainerBallThrow(void)
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown)
|
||||
gTasks[gBattlerStatusSummaryTaskId[gActiveBattler]].func = Task_HidePartyStatusSummary;
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 1;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = TRUE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = LinkOpponentDummy;
|
||||
}
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include "battle_message.h"
|
||||
#include "constants/battle_anim.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/sound.h"
|
||||
|
||||
static void LinkPartnerHandleGetMonData(void);
|
||||
static void LinkPartnerHandleGetRawMonData(void);
|
||||
@@ -235,7 +236,7 @@ static void Intro_ShowHealthbox(void)
|
||||
HEALTHBOX_ALL);
|
||||
StartHealthboxSlideIn(gActiveBattler);
|
||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 0;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_WaitForHealthbox;
|
||||
}
|
||||
}
|
||||
@@ -454,7 +455,7 @@ static u32 CopyLinkPartnerMonData(u8 monId, u8 *dst)
|
||||
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
||||
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
||||
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
||||
StringCopy10(battleMon.nickname, nickname);
|
||||
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||
src = (u8 *)&battleMon;
|
||||
for (size = 0; size < sizeof(battleMon); ++size)
|
||||
@@ -1223,9 +1224,9 @@ static void LinkPartnerHandlePrintString(void)
|
||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||
BufferStringBattle(*stringId);
|
||||
if (BattleStringShouldBeColored(*stringId))
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||
else
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||
}
|
||||
|
||||
@@ -1425,7 +1426,7 @@ static void LinkPartnerHandleFaintingCry(void)
|
||||
{
|
||||
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
||||
|
||||
PlayCry3(species, -25, 5);
|
||||
PlayCry_ByMode(species, -25, CRY_MODE_FAINT);
|
||||
LinkPartnerBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -1463,7 +1464,7 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void)
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown)
|
||||
gTasks[gBattlerStatusSummaryTaskId[gActiveBattler]].func = Task_HidePartyStatusSummary;
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 1;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = TRUE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = LinkPartnerDummy;
|
||||
}
|
||||
|
||||
|
||||
@@ -427,7 +427,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
|
||||
HEALTHBOX_ALL);
|
||||
StartHealthboxSlideIn(gActiveBattler);
|
||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 0;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_WaitForShinyAnimAndHealthbox;
|
||||
}
|
||||
}
|
||||
@@ -651,7 +651,7 @@ static void PrintOakText_ForPetesSake(void)
|
||||
break;
|
||||
case 2:
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_ForPetesSake);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||
++gBattleStruct->simulatedInputState[0];
|
||||
break;
|
||||
case 3:
|
||||
@@ -670,7 +670,7 @@ static void PrintOakText_ForPetesSake(void)
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_TheTrainerThat);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||
++gBattleStruct->simulatedInputState[0];
|
||||
}
|
||||
break;
|
||||
@@ -690,7 +690,7 @@ static void PrintOakText_ForPetesSake(void)
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_TryBattling);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||
++gBattleStruct->simulatedInputState[0];
|
||||
}
|
||||
break;
|
||||
@@ -774,7 +774,7 @@ static void PrintOakTextWithMainBgDarkened(const u8 *text, u8 delay)
|
||||
break;
|
||||
case 3:
|
||||
BattleStringExpandPlaceholdersToDisplayedString(text);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||
++gBattleStruct->simulatedInputState[0];
|
||||
break;
|
||||
case 4:
|
||||
@@ -842,7 +842,7 @@ static void PrintOakText_KeepAnEyeOnHP(void)
|
||||
break;
|
||||
case 3:
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_KeepAnEyeOnHP);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||
++gBattleStruct->simulatedInputState[0];
|
||||
break;
|
||||
case 4:
|
||||
@@ -1034,7 +1034,7 @@ static u32 CopyOakOldManMonData(u8 monId, u8 *dst)
|
||||
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
||||
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
||||
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
||||
StringCopy10(battleMon.nickname, nickname);
|
||||
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||
src = (u8 *)&battleMon;
|
||||
for (size = 0; size < sizeof(battleMon); ++size)
|
||||
@@ -1759,14 +1759,14 @@ static void OakOldManHandlePrintString(void)
|
||||
{
|
||||
BufferStringBattle(*stringId);
|
||||
if (BattleStringShouldBeColored(*stringId))
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||
else
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE)
|
||||
{
|
||||
switch (*stringId)
|
||||
{
|
||||
case STRINGID_PKMNSSTATCHANGED4:
|
||||
case STRINGID_DEFENDERSSTATFELL:
|
||||
if (!BtlCtrl_OakOldMan_TestState2Flag(FIRST_BATTLE_MSG_FLAG_STAT_CHG))
|
||||
{
|
||||
BtlCtrl_OakOldMan_SetState2Flag(FIRST_BATTLE_MSG_FLAG_STAT_CHG);
|
||||
@@ -1815,8 +1815,8 @@ static void OakOldManHandleChooseAction(void)
|
||||
s32 i;
|
||||
|
||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
||||
BattlePutTextOnWindow(gText_BattleMenu, 2);
|
||||
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||
BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU);
|
||||
for (i = 0; i < MAX_MON_MOVES; ++i)
|
||||
ActionSelectionDestroyCursorAt((u8)i);
|
||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||
@@ -1824,7 +1824,7 @@ static void OakOldManHandleChooseAction(void)
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
||||
else
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillOldManDo);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||
}
|
||||
|
||||
static void OakOldManHandleUnknownYesNoBox(void)
|
||||
@@ -1874,7 +1874,7 @@ static void OakOldManHandleChooseItem(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
||||
gBattlerInMenuId = gActiveBattler;
|
||||
for (i = 0; i < 3; ++i)
|
||||
@@ -1892,7 +1892,7 @@ static void OakOldManHandleChoosePokemon(void)
|
||||
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
||||
for (i = 0; i < 3; ++i)
|
||||
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
||||
gBattlerInMenuId = gActiveBattler;
|
||||
}
|
||||
@@ -2060,7 +2060,7 @@ static void OakOldManHandleFaintingCry(void)
|
||||
{
|
||||
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
||||
|
||||
PlayCry1(species, 25);
|
||||
PlayCry_Normal(species, 25);
|
||||
OakOldManBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -2093,7 +2093,7 @@ static void OakOldManHandleIntroTrainerBallThrow(void)
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown)
|
||||
gTasks[gBattlerStatusSummaryTaskId[gActiveBattler]].func = Task_HidePartyStatusSummary;
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 1;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = TRUE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = PlayerDummy;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "constants/battle_anim.h"
|
||||
#include "constants/moves.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/sound.h"
|
||||
|
||||
static void OpponentHandleGetMonData(void);
|
||||
static void OpponentHandleGetRawMonData(void);
|
||||
@@ -233,7 +234,7 @@ static void Intro_WaitForShinyAnimAndHealthbox(void)
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
else
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256);
|
||||
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay = 3;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_DelayAndEnd;
|
||||
}
|
||||
@@ -264,7 +265,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
|
||||
StartHealthboxSlideIn(gActiveBattler);
|
||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
|
||||
SetBattlerShadowSpriteCallback(gActiveBattler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES));
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = FALSE;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_WaitForShinyAnimAndHealthbox;
|
||||
}
|
||||
}
|
||||
@@ -372,7 +373,7 @@ static void SwitchIn_HandleSoundAndEnd(void)
|
||||
{
|
||||
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].specialAnimActive && !IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
|
||||
OpponentBufferExecCompleted();
|
||||
}
|
||||
}
|
||||
@@ -493,7 +494,7 @@ static u32 GetOpponentMonData(u8 monId, u8 *dst)
|
||||
battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM);
|
||||
battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID);
|
||||
GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname);
|
||||
StringCopy10(battleMon.nickname, nickname);
|
||||
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||
GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||
src = (u8 *)&battleMon;
|
||||
for (size = 0; size < sizeof(battleMon); ++size)
|
||||
@@ -1312,9 +1313,9 @@ static void OpponentHandlePrintString(void)
|
||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||
BufferStringBattle(*stringId);
|
||||
if (BattleStringShouldBeColored(*stringId))
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||
else
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE)
|
||||
{
|
||||
switch (*stringId)
|
||||
@@ -1611,7 +1612,7 @@ static void OpponentHandleFaintingCry(void)
|
||||
{
|
||||
u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
||||
|
||||
PlayCry3(species, 25, 5);
|
||||
PlayCry_ByMode(species, 25, CRY_MODE_FAINT);
|
||||
OpponentBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -1637,7 +1638,7 @@ static void OpponentHandleIntroTrainerBallThrow(void)
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown)
|
||||
gTasks[gBattlerStatusSummaryTaskId[gActiveBattler]].func = Task_HidePartyStatusSummary;
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = TRUE;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = TRUE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = OpponentDummy;
|
||||
}
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
#include "constants/items.h"
|
||||
#include "constants/moves.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/sound.h"
|
||||
|
||||
static void PlayerHandleGetMonData(void);
|
||||
static void PlayerHandleSetMonData(void);
|
||||
@@ -570,7 +571,7 @@ void HandleInputChooseMove(void)
|
||||
else
|
||||
gMultiUsePlayerCursor = gMoveSelectionCursor[gActiveBattler] + 1;
|
||||
MoveSelectionCreateCursorAt(gMultiUsePlayerCursor, 27);
|
||||
BattlePutTextOnWindow(gText_BattleSwitchWhich, 0xB);
|
||||
BattlePutTextOnWindow(gText_BattleSwitchWhich, B_WIN_SWITCH_PROMPT);
|
||||
gBattlerControllerFuncs[gActiveBattler] = HandleMoveSwitching;
|
||||
}
|
||||
}
|
||||
@@ -898,7 +899,7 @@ static void Intro_WaitForShinyAnimAndHealthbox(void)
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
else
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 256);
|
||||
HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], gActiveBattler);
|
||||
if (IsDoubleBattle())
|
||||
HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], gActiveBattler ^ BIT_FLANK);
|
||||
@@ -930,7 +931,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
|
||||
HEALTHBOX_ALL);
|
||||
StartHealthboxSlideIn(gActiveBattler);
|
||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 0;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_WaitForShinyAnimAndHealthbox;
|
||||
}
|
||||
}
|
||||
@@ -955,7 +956,7 @@ static void SwitchIn_HandleSoundAndEnd(void)
|
||||
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].specialAnimActive
|
||||
&& !IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
|
||||
HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], gActiveBattler);
|
||||
PlayerBufferExecCompleted();
|
||||
}
|
||||
@@ -984,7 +985,7 @@ void Task_PlayerController_RestoreBgmAfterCry(u8 taskId)
|
||||
{
|
||||
if (!IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
@@ -1379,7 +1380,7 @@ static void MoveSelectionDisplayMoveNames(void)
|
||||
static void MoveSelectionDisplayPpString(void)
|
||||
{
|
||||
StringCopy(gDisplayedStringBattle, gText_MoveInterfacePP);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 7);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_PP);
|
||||
}
|
||||
|
||||
static void MoveSelectionDisplayPpNumber(void)
|
||||
@@ -1394,7 +1395,7 @@ static void MoveSelectionDisplayPpNumber(void)
|
||||
txtPtr = ConvertIntToDecimalStringN(gDisplayedStringBattle, moveInfo->currentPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2);
|
||||
*txtPtr = CHAR_SLASH;
|
||||
ConvertIntToDecimalStringN(++txtPtr, moveInfo->maxPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 9);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_PP_REMAINING);
|
||||
}
|
||||
|
||||
static void MoveSelectionDisplayMoveType(void)
|
||||
@@ -1408,7 +1409,7 @@ static void MoveSelectionDisplayMoveType(void)
|
||||
*txtPtr++ = 1;
|
||||
txtPtr = StringCopy(txtPtr, gUnknown_83FE770);
|
||||
StringCopy(txtPtr, gTypeNames[gBattleMoves[moveInfo->moves[gMoveSelectionCursor[gActiveBattler]]].type]);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 8);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MOVE_TYPE);
|
||||
}
|
||||
|
||||
void MoveSelectionCreateCursorAt(u8 cursorPosition, u8 arg1)
|
||||
@@ -1479,7 +1480,7 @@ static void PrintLinkStandbyMsg(void)
|
||||
{
|
||||
gBattle_BG0_X = 0;
|
||||
gBattle_BG0_Y = 0;
|
||||
BattlePutTextOnWindow(gText_LinkStandby, 0);
|
||||
BattlePutTextOnWindow(gText_LinkStandby, B_WIN_MSG);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1551,7 +1552,7 @@ static u32 CopyPlayerMonData(u8 monId, u8 *dst)
|
||||
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
||||
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
||||
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
||||
StringCopy10(battleMon.nickname, nickname);
|
||||
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||
src = (u8 *)&battleMon;
|
||||
for (size = 0; size < sizeof(battleMon); ++size)
|
||||
@@ -2263,7 +2264,7 @@ static void PlayerHandleFaintAnimation(void)
|
||||
|
||||
static void PlayerHandlePaletteFade(void)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 2, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 2, 0, 16, RGB_BLACK);
|
||||
PlayerBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -2377,9 +2378,9 @@ static void PlayerHandlePrintString(void)
|
||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||
BufferStringBattle(*stringId);
|
||||
if (BattleStringShouldBeColored(*stringId))
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||
else
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2;
|
||||
}
|
||||
|
||||
@@ -2406,13 +2407,13 @@ static void PlayerHandleChooseAction(void)
|
||||
s32 i;
|
||||
|
||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
||||
BattlePutTextOnWindow(gText_BattleMenu, 2);
|
||||
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||
BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU);
|
||||
for (i = 0; i < 4; ++i)
|
||||
ActionSelectionDestroyCursorAt(i);
|
||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||
}
|
||||
|
||||
static void PlayerHandleUnknownYesNoBox(void)
|
||||
@@ -2449,7 +2450,7 @@ static void PlayerHandleChooseItem(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
||||
gBattlerInMenuId = gActiveBattler;
|
||||
for (i = 0; i < 3; ++i)
|
||||
@@ -2467,7 +2468,7 @@ static void PlayerHandleChoosePokemon(void)
|
||||
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
||||
for (i = 0; i < 3; ++i)
|
||||
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
||||
gBattlerInMenuId = gActiveBattler;
|
||||
}
|
||||
@@ -2475,7 +2476,7 @@ static void PlayerHandleChoosePokemon(void)
|
||||
static void PlayerHandleCmd23(void)
|
||||
{
|
||||
BattleStopLowHpSound();
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 2, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 2, 0, 16, RGB_BLACK);
|
||||
PlayerBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -2687,7 +2688,7 @@ static void PlayerHandlePlayFanfare(void)
|
||||
|
||||
static void PlayerHandleFaintingCry(void)
|
||||
{
|
||||
PlayCry3(GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES), -25, 5);
|
||||
PlayCry_ByMode(GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES), -25, CRY_MODE_FAINT);
|
||||
PlayerBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -2718,7 +2719,7 @@ static void PlayerHandleIntroTrainerBallThrow(void)
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown)
|
||||
gTasks[gBattlerStatusSummaryTaskId[gActiveBattler]].func = Task_HidePartyStatusSummary;
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 1;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = TRUE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = PlayerDummy;
|
||||
}
|
||||
|
||||
@@ -2911,8 +2912,8 @@ static void PreviewDeterminativeMoveTargets(void)
|
||||
break;
|
||||
case MOVE_TARGET_BOTH:
|
||||
case MOVE_TARGET_OPPONENTS_FIELD:
|
||||
bitMask = (gBitTable[GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT)]
|
||||
| gBitTable[GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT)]) << 16;
|
||||
bitMask = (gBitTable[GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT)]
|
||||
| gBitTable[GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT)]) << 16;
|
||||
startY = 8;
|
||||
break;
|
||||
case MOVE_TARGET_USER:
|
||||
@@ -2934,8 +2935,8 @@ static void PreviewDeterminativeMoveTargets(void)
|
||||
case MOVE_MIST:
|
||||
case MOVE_HEAL_BELL:
|
||||
case MOVE_AROMATHERAPY:
|
||||
bitMask = (gBitTable[GetBattlerAtPosition(B_POSITION_PLAYER_LEFT)]
|
||||
| gBitTable[GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT)]) << 16;
|
||||
bitMask = (gBitTable[GetBattlerAtPosition(B_POSITION_PLAYER_LEFT)]
|
||||
| gBitTable[GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT)]) << 16;
|
||||
break;
|
||||
case MOVE_HELPING_HAND:
|
||||
bitMask = (gBitTable[GetBattlerAtPosition(GetBattlerPosition(gActiveBattler) ^ BIT_FLANK)]) << 16;
|
||||
@@ -2947,8 +2948,8 @@ static void PreviewDeterminativeMoveTargets(void)
|
||||
startY = 8;
|
||||
break;
|
||||
case MOVE_TARGET_FOES_AND_ALLY:
|
||||
bitMask = (gBitTable[GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT)]
|
||||
| gBitTable[GetBattlerAtPosition(GetBattlerPosition(gActiveBattler) ^ BIT_FLANK)]
|
||||
bitMask = (gBitTable[GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT)]
|
||||
| gBitTable[GetBattlerAtPosition(GetBattlerPosition(gActiveBattler) ^ BIT_FLANK)]
|
||||
| gBitTable[GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT)]) << 16;
|
||||
startY = 8;
|
||||
break;
|
||||
|
||||
@@ -408,7 +408,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
|
||||
HEALTHBOX_ALL);
|
||||
StartHealthboxSlideIn(gActiveBattler);
|
||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 0;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = Intro_WaitForShinyAnimAndHealthbox;
|
||||
}
|
||||
}
|
||||
@@ -782,7 +782,7 @@ static u32 CopyPokedudeMonData(u8 monId, u8 *dst)
|
||||
battleMon.abilityNum = GetMonData(mon, MON_DATA_ABILITY_NUM);
|
||||
battleMon.otId = GetMonData(mon, MON_DATA_OT_ID);
|
||||
GetMonData(mon, MON_DATA_NICKNAME, nickname);
|
||||
StringCopy10(battleMon.nickname, nickname);
|
||||
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||
GetMonData(mon, MON_DATA_OT_NAME, battleMon.otName);
|
||||
src = (u8 *)&battleMon;
|
||||
for (size = 0; size < sizeof(battleMon); ++size)
|
||||
@@ -1533,9 +1533,9 @@ static void PokedudeHandlePrintString(void)
|
||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||
BufferStringBattle(*stringId);
|
||||
if (BattleStringShouldBeColored(*stringId))
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||
else
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||
}
|
||||
|
||||
@@ -1564,13 +1564,13 @@ static void PokedudeHandleChooseAction(void)
|
||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
|
||||
{
|
||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
||||
BattlePutTextOnWindow(gText_BattleMenu, 2);
|
||||
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||
BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU);
|
||||
for (i = 0; i < MAX_MON_MOVES; ++i)
|
||||
ActionSelectionDestroyCursorAt((u8)i);
|
||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1610,7 +1610,7 @@ static void PokedudeHandleChooseItem(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
||||
gBattlerInMenuId = gActiveBattler;
|
||||
for (i = 0; i < 3; ++i)
|
||||
@@ -1628,7 +1628,7 @@ static void PokedudeHandleChoosePokemon(void)
|
||||
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
||||
for (i = 0; i < 3; ++i)
|
||||
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
||||
gBattlerInMenuId = gActiveBattler;
|
||||
}
|
||||
@@ -1834,7 +1834,7 @@ static void PokedudeHandleFaintingCry(void)
|
||||
else
|
||||
mon = &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]];
|
||||
species = GetMonData(mon, MON_DATA_SPECIES);
|
||||
PlayCry1(species, 25);
|
||||
PlayCry_Normal(species, 25);
|
||||
PokedudeBufferExecCompleted();
|
||||
}
|
||||
|
||||
@@ -1865,7 +1865,7 @@ static void PokedudeHandleIntroTrainerBallThrow(void)
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown)
|
||||
gTasks[gBattlerStatusSummaryTaskId[gActiveBattler]].func = Task_HidePartyStatusSummary;
|
||||
gBattleSpritesDataPtr->animationData->healthboxSlideInStarted = 1;
|
||||
gBattleSpritesDataPtr->animationData->introAnimActive = TRUE;
|
||||
gBattlerControllerFuncs[gActiveBattler] = PokedudeDummy;
|
||||
}
|
||||
|
||||
@@ -2272,7 +2272,7 @@ static const struct PokedudeTextScriptHeader sPokedudeTextScripts_Catching[] =
|
||||
.callback = PokedudeAction_PrintVoiceoverMessage,
|
||||
},
|
||||
{
|
||||
.btlcmd = CONTROLLER_55,
|
||||
.btlcmd = CONTROLLER_ENDLINKBATTLE,
|
||||
.side = B_SIDE_PLAYER,
|
||||
.callback = PokedudeAction_PrintVoiceoverMessage,
|
||||
},
|
||||
@@ -2557,7 +2557,7 @@ static void PokedudeAction_PrintVoiceoverMessage(void)
|
||||
case 2:
|
||||
gBattle_BG0_Y = 0;
|
||||
BattleStringExpandPlaceholdersToDisplayedString(GetPokedudeText());
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||
++gPokedudeBattlerStates[gActiveBattler]->timer;
|
||||
break;
|
||||
case 3:
|
||||
@@ -2618,7 +2618,7 @@ static void PokedudeAction_PrintMessageWithHealthboxPals(void)
|
||||
break;
|
||||
case 3:
|
||||
BattleStringExpandPlaceholdersToDisplayedString(GetPokedudeText());
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||
++gPokedudeBattlerStates[gActiveBattler]->timer;
|
||||
break;
|
||||
case 4:
|
||||
|
||||
@@ -409,9 +409,9 @@ static void SafariHandlePrintString(void)
|
||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||
BufferStringBattle(*stringId);
|
||||
if (BattleStringShouldBeColored(*stringId))
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||
else
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||
}
|
||||
|
||||
@@ -438,13 +438,13 @@ static void SafariHandleChooseAction(void)
|
||||
s32 i;
|
||||
|
||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
||||
BattlePutTextOnWindow(gUnknown_83FE747, 2);
|
||||
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||
BattlePutTextOnWindow(gUnknown_83FE747, B_WIN_ACTION_MENU);
|
||||
for (i = 0; i < 4; ++i)
|
||||
ActionSelectionDestroyCursorAt(i);
|
||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPlayerThrow);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
||||
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||
}
|
||||
|
||||
static void SafariHandleUnknownYesNoBox(void)
|
||||
@@ -461,7 +461,7 @@ static void SafariHandleChooseItem(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
gBattlerControllerFuncs[gActiveBattler] = SafariOpenPokeblockCase;
|
||||
gBattlerInMenuId = gActiveBattler;
|
||||
}
|
||||
@@ -594,7 +594,7 @@ static void SafariHandleFaintingCry(void)
|
||||
{
|
||||
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
||||
|
||||
PlayCry1(species, 25);
|
||||
PlayCry_Normal(species, 25);
|
||||
SafariBufferExecCompleted();
|
||||
}
|
||||
|
||||
|
||||
+17
-13
@@ -487,7 +487,7 @@ void TryReceiveLinkBattleData(void)
|
||||
s32 j;
|
||||
u8 *recvBuffer;
|
||||
|
||||
if (gReceivedRemoteLinkPlayers && (gBattleTypeFlags & BATTLE_TYPE_LINK_ESTABLISHED) && (gLinkPlayers[0].linkType == 0x2211))
|
||||
if (gReceivedRemoteLinkPlayers && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE) && (gLinkPlayers[0].linkType == 0x2211))
|
||||
{
|
||||
LinkRfu_DestroyIdleTask();
|
||||
for (i = 0; i < GetLinkPlayerCount(); ++i)
|
||||
@@ -621,10 +621,10 @@ void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubs
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||
}
|
||||
|
||||
void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1)
|
||||
void BtlController_EmitReturnMonToBall(u8 bufferId, bool8 skipAnim)
|
||||
{
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_RETURNMONTOBALL;
|
||||
sBattleBuffersTransferData[1] = arg1;
|
||||
sBattleBuffersTransferData[1] = skipAnim;
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||
}
|
||||
|
||||
@@ -800,7 +800,7 @@ void BtlController_EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2)
|
||||
}
|
||||
|
||||
// not used
|
||||
static void BtlController_EmitUnknownYesNoBox(u8 bufferId, u32 arg1) // TODO: Does the function name make sense for pokefirered?
|
||||
static void BtlController_EmitUnknownYesNoBox(u8 bufferId, u32 arg1) // TODO: Does the function name make sense for pokefirered?
|
||||
{
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_UNKNOWNYESNOBOX;
|
||||
sBattleBuffersTransferData[1] = arg1;
|
||||
@@ -934,16 +934,19 @@ static void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, voi
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 7);
|
||||
}
|
||||
|
||||
// not used
|
||||
static void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter)
|
||||
// Unused
|
||||
static void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_31;
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_PLAYBGM;
|
||||
sBattleBuffersTransferData[1] = songId;
|
||||
sBattleBuffersTransferData[2] = (songId & 0xFF00) >> 8;
|
||||
|
||||
// Nonsense loop using songId as a size
|
||||
// Would go out of bounds for any song id after SE_DEOXYS_MOVE (253)
|
||||
for (i = 0; i < songId; ++i)
|
||||
sBattleBuffersTransferData[3 + i] = *(u8 *)(unusedDumbDataParameter++);
|
||||
sBattleBuffersTransferData[3 + i] = *(u8 *)(data++);
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, songId + 3);
|
||||
}
|
||||
|
||||
@@ -1045,7 +1048,7 @@ void BtlController_EmitHitAnimation(u8 bufferId)
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||
}
|
||||
|
||||
void BtlController_EmitCmd42(u8 bufferId)
|
||||
void BtlController_EmitCantSwitch(u8 bufferId)
|
||||
{
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_42;
|
||||
sBattleBuffersTransferData[1] = CONTROLLER_42;
|
||||
@@ -1146,10 +1149,11 @@ void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||
}
|
||||
|
||||
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 arg1)
|
||||
// mode is a LINK_STANDBY_* constant
|
||||
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 mode)
|
||||
{
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_LINKSTANDBYMSG;
|
||||
sBattleBuffersTransferData[1] = arg1;
|
||||
sBattleBuffersTransferData[1] = mode;
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||
}
|
||||
|
||||
@@ -1160,9 +1164,9 @@ void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId)
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||
}
|
||||
|
||||
void BtlController_EmitCmd55(u8 bufferId, u8 battleOutcome)
|
||||
void BtlController_EmitEndLinkBattle(u8 bufferId, u8 battleOutcome)
|
||||
{
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_55;
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_ENDLINKBATTLE;
|
||||
sBattleBuffersTransferData[1] = battleOutcome;
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||
}
|
||||
|
||||
@@ -663,7 +663,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType)
|
||||
{
|
||||
const void *src;
|
||||
void *dst;
|
||||
|
||||
|
||||
position = GetBattlerPosition(battlerAtk);
|
||||
targetSpecies = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerAtk]], MON_DATA_SPECIES);
|
||||
personalityValue = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerAtk]], MON_DATA_PERSONALITY);
|
||||
@@ -1042,17 +1042,20 @@ void FreeMonSpritesGfx(void)
|
||||
FREE_AND_SET_NULL(gMonSpritesGfxPtr);
|
||||
}
|
||||
|
||||
bool32 ShouldPlayNormalPokeCry(struct Pokemon *mon)
|
||||
bool32 ShouldPlayNormalMonCry(struct Pokemon *mon)
|
||||
{
|
||||
s16 hp, maxHP;
|
||||
s32 barLevel;
|
||||
|
||||
if (GetMonData(mon, MON_DATA_STATUS) & (STATUS1_ANY | STATUS1_TOXIC_COUNTER))
|
||||
return FALSE;
|
||||
|
||||
hp = GetMonData(mon, MON_DATA_HP);
|
||||
maxHP = GetMonData(mon, MON_DATA_MAX_HP);
|
||||
|
||||
barLevel = GetHPBarLevel(hp, maxHP);
|
||||
if (barLevel <= HP_BAR_YELLOW)
|
||||
return FALSE;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
+43
-43
@@ -151,19 +151,19 @@ enum
|
||||
HEALTHBOX_GFX_117, //unknown_D1300C
|
||||
};
|
||||
|
||||
static void SpriteCB_HealthBoxOther(struct Sprite * sprite);
|
||||
static void SpriteCB_HealthBar(struct Sprite * sprite);
|
||||
static void SpriteCB_HealthBoxOther(struct Sprite *sprite);
|
||||
static void SpriteCB_HealthBar(struct Sprite *sprite);
|
||||
static const u8 *GetHealthboxElementGfxPtr(u8 which);
|
||||
static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent);
|
||||
static void sub_8049388(u8 taskId);
|
||||
static void sub_80493E4(u8 taskId);
|
||||
static void sub_8049568(struct Sprite * sprite);
|
||||
static void sub_8049630(struct Sprite * sprite);
|
||||
static void sub_8049568(struct Sprite *sprite);
|
||||
static void sub_8049630(struct Sprite *sprite);
|
||||
static void sub_804948C(u8 taskId);
|
||||
static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite * sprite);
|
||||
static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite *sprite);
|
||||
static void UpdateStatusIconInHealthbox(u8 spriteId);
|
||||
static void SpriteCB_StatusSummaryBar(struct Sprite * sprite);
|
||||
static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite * sprite);
|
||||
static void SpriteCB_StatusSummaryBar(struct Sprite *sprite);
|
||||
static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite);
|
||||
static u8 GetStatusIconForBattlerId(u8 statusElementId, u8 battlerId);
|
||||
static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar);
|
||||
static u8 GetScaledExpFraction(s32 oldValue, s32 receivedValue, s32 maxValue, u8 scale);
|
||||
@@ -744,7 +744,7 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl)
|
||||
|
||||
if (GetBattlerSide(gSprites[healthboxSpriteId].hMain_Battler) == B_SIDE_PLAYER)
|
||||
{
|
||||
objVram = (void*)(OBJ_VRAM0);
|
||||
objVram = (void *)(OBJ_VRAM0);
|
||||
if (!IsDoubleBattle())
|
||||
objVram += spriteTileNum + 0x820;
|
||||
else
|
||||
@@ -752,7 +752,7 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl)
|
||||
}
|
||||
else
|
||||
{
|
||||
objVram = (void*)(OBJ_VRAM0);
|
||||
objVram = (void *)(OBJ_VRAM0);
|
||||
objVram += spriteTileNum + 0x400;
|
||||
}
|
||||
TextIntoHealthboxObject(objVram, windowTileData, 3);
|
||||
@@ -774,7 +774,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent)
|
||||
ConvertIntToDecimalStringN(text, value, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||
windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, 0, 5, &windowId);
|
||||
spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum;
|
||||
TextIntoHealthboxObject( (void*)(OBJ_VRAM0) + spriteTileNum * TILE_SIZE_4BPP + 0xA40, windowTileData, 2);
|
||||
TextIntoHealthboxObject( (void *)(OBJ_VRAM0) + spriteTileNum * TILE_SIZE_4BPP + 0xA40, windowTileData, 2);
|
||||
RemoveWindowOnHealthbox(windowId);
|
||||
}
|
||||
else // singles, current
|
||||
@@ -825,7 +825,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent)
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[i * 64 + 32],
|
||||
(void*)((OBJ_VRAM0) + TILE_SIZE_4BPP * (gSprites[healthboxSpriteId].oam.tileNum + var + i)),
|
||||
(void *)((OBJ_VRAM0) + TILE_SIZE_4BPP * (gSprites[healthboxSpriteId].oam.tileNum + var + i)),
|
||||
0x20);
|
||||
}
|
||||
}
|
||||
@@ -866,13 +866,13 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8
|
||||
if (i < 3)
|
||||
{
|
||||
CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[((i - var) * 64) + 32],
|
||||
(void*)((OBJ_VRAM0) + 32 * (1 + gSprites[r7].oam.tileNum + i)),
|
||||
(void *)((OBJ_VRAM0) + 32 * (1 + gSprites[r7].oam.tileNum + i)),
|
||||
0x20);
|
||||
}
|
||||
else
|
||||
{
|
||||
CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[((i - var) * 64) + 32],
|
||||
(void*)((OBJ_VRAM0 + 0x20) + 32 * (i + gSprites[r7].oam.tileNum)),
|
||||
(void *)((OBJ_VRAM0 + 0x20) + 32 * (i + gSprites[r7].oam.tileNum)),
|
||||
0x20);
|
||||
}
|
||||
}
|
||||
@@ -880,16 +880,16 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8
|
||||
if (maxOrCurrent == HP_CURRENT)
|
||||
{
|
||||
CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[224],
|
||||
(void*)((OBJ_VRAM0) + ((gSprites[r7].oam.tileNum + 4) * TILE_SIZE_4BPP)),
|
||||
(void *)((OBJ_VRAM0) + ((gSprites[r7].oam.tileNum + 4) * TILE_SIZE_4BPP)),
|
||||
0x20);
|
||||
CpuFill32(0, (void*)((OBJ_VRAM0) + (gSprites[r7].oam.tileNum * TILE_SIZE_4BPP)), 0x20);
|
||||
CpuFill32(0, (void *)((OBJ_VRAM0) + (gSprites[r7].oam.tileNum * TILE_SIZE_4BPP)), 0x20);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (GetBattlerSide(battlerId) == B_SIDE_PLAYER) // Impossible to reach part, because the battlerId is from the opponent's side.
|
||||
{
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_116),
|
||||
(void*)(OBJ_VRAM0) + ((gSprites[healthboxSpriteId].oam.tileNum + 52) * TILE_SIZE_4BPP),
|
||||
(void *)(OBJ_VRAM0) + ((gSprites[healthboxSpriteId].oam.tileNum + 52) * TILE_SIZE_4BPP),
|
||||
0x20);
|
||||
}
|
||||
}
|
||||
@@ -927,11 +927,11 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon)
|
||||
for (j = 1; j < var + 1; j++)
|
||||
{
|
||||
spriteTileNum = (gSprites[healthboxSpriteId].oam.tileNum + (j - (j / 8 * 8)) + (j / 8 * 64)) * TILE_SIZE_4BPP;
|
||||
CpuCopy32(barFontGfx, (void*)(OBJ_VRAM0) + (spriteTileNum), 0x20);
|
||||
CpuCopy32(barFontGfx, (void *)(OBJ_VRAM0) + (spriteTileNum), 0x20);
|
||||
barFontGfx += 0x20;
|
||||
|
||||
spriteTileNum = (8 + gSprites[healthboxSpriteId].oam.tileNum + (j - (j / 8 * 8)) + (j / 8 * 64)) * TILE_SIZE_4BPP;
|
||||
CpuCopy32(barFontGfx, (void*)(OBJ_VRAM0) + (spriteTileNum), 0x20);
|
||||
CpuCopy32(barFontGfx, (void *)(OBJ_VRAM0) + (spriteTileNum), 0x20);
|
||||
barFontGfx += 0x20;
|
||||
}
|
||||
|
||||
@@ -948,13 +948,13 @@ static void PrintSafariMonInfo(u8 healthboxSpriteId, struct Pokemon *mon)
|
||||
if (j <= 1)
|
||||
{
|
||||
CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[0x40 * j + 0x20],
|
||||
(void*)(OBJ_VRAM0) + (gSprites[healthBarSpriteId].oam.tileNum + 2 + j) * TILE_SIZE_4BPP,
|
||||
(void *)(OBJ_VRAM0) + (gSprites[healthBarSpriteId].oam.tileNum + 2 + j) * TILE_SIZE_4BPP,
|
||||
32);
|
||||
}
|
||||
else
|
||||
{
|
||||
CpuCopy32(&gMonSpritesGfxPtr->barFontGfx[0x40 * j + 0x20],
|
||||
(void*)(OBJ_VRAM0 + 0xC0) + (j + gSprites[healthBarSpriteId].oam.tileNum) * TILE_SIZE_4BPP,
|
||||
(void *)(OBJ_VRAM0 + 0xC0) + (j + gSprites[healthBarSpriteId].oam.tileNum) * TILE_SIZE_4BPP,
|
||||
32);
|
||||
}
|
||||
}
|
||||
@@ -986,7 +986,7 @@ void SwapHpBarsWithHpText(void)
|
||||
{
|
||||
healthBarSpriteId = gSprites[gHealthboxSpriteIds[i]].hMain_HealthBarSpriteId;
|
||||
|
||||
CpuFill32(0, (void*)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 0x100);
|
||||
CpuFill32(0, (void *)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 0x100);
|
||||
UpdateHpTextInHealthboxInDoubles(gHealthboxSpriteIds[i], GetMonData(&gPlayerParty[gBattlerPartyIndexes[i]], MON_DATA_HP), HP_CURRENT);
|
||||
UpdateHpTextInHealthboxInDoubles(gHealthboxSpriteIds[i], GetMonData(&gPlayerParty[gBattlerPartyIndexes[i]], MON_DATA_MAX_HP), HP_MAX);
|
||||
}
|
||||
@@ -994,7 +994,7 @@ void SwapHpBarsWithHpText(void)
|
||||
{
|
||||
UpdateStatusIconInHealthbox(gHealthboxSpriteIds[i]);
|
||||
UpdateHealthboxAttribute(gHealthboxSpriteIds[i], &gPlayerParty[gBattlerPartyIndexes[i]], HEALTHBOX_HEALTH_BAR);
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_117), (void*)(OBJ_VRAM0 + 0x680 + gSprites[gHealthboxSpriteIds[i]].oam.tileNum * TILE_SIZE_4BPP), 32);
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_117), (void *)(OBJ_VRAM0 + 0x680 + gSprites[gHealthboxSpriteIds[i]].oam.tileNum * TILE_SIZE_4BPP), 32);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -1507,8 +1507,8 @@ void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon)
|
||||
|
||||
if (GetBattlerSide(gSprites[healthboxSpriteId].data[6]) == B_SIDE_PLAYER)
|
||||
{
|
||||
TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x40 + spriteTileNum), windowTileData, 6);
|
||||
ptr = (void*)(OBJ_VRAM0);
|
||||
TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x40 + spriteTileNum), windowTileData, 6);
|
||||
ptr = (void *)(OBJ_VRAM0);
|
||||
if (!IsDoubleBattle())
|
||||
ptr += spriteTileNum + 0x800;
|
||||
else
|
||||
@@ -1517,7 +1517,7 @@ void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon)
|
||||
}
|
||||
else
|
||||
{
|
||||
TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x20 + spriteTileNum), windowTileData, 7);
|
||||
TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x20 + spriteTileNum), windowTileData, 7);
|
||||
}
|
||||
|
||||
RemoveWindowOnHealthbox(windowId);
|
||||
@@ -1543,9 +1543,9 @@ void TryAddPokeballIconToHealthbox(u8 healthboxSpriteId, bool8 noStatus)
|
||||
healthBarSpriteId = gSprites[healthboxSpriteId].hMain_HealthBarSpriteId;
|
||||
|
||||
if (noStatus)
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_70), (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32);
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_70), (void *)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32);
|
||||
else
|
||||
CpuFill32(0, (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32);
|
||||
CpuFill32(0, (void *)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 8) * TILE_SIZE_4BPP), 32);
|
||||
}
|
||||
|
||||
enum
|
||||
@@ -1620,7 +1620,7 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
|
||||
statusGfxPtr = GetHealthboxElementGfxPtr(HEALTHBOX_GFX_39);
|
||||
|
||||
for (i = 0; i < 3; i++)
|
||||
CpuCopy32(statusGfxPtr, (void*)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder + i) * TILE_SIZE_4BPP), 32);
|
||||
CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder + i) * TILE_SIZE_4BPP), 32);
|
||||
|
||||
if (!gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars)
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_1), (void *)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 64);
|
||||
@@ -1633,14 +1633,14 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
|
||||
pltAdder += battlerId + 12;
|
||||
|
||||
FillPalette(sStatusIconColors[statusPalId], pltAdder + 0x100, 2);
|
||||
CpuCopy16(gPlttBufferUnfaded + 0x100 + pltAdder, (void*)(OBJ_PLTT + pltAdder * 2), 2);
|
||||
CpuCopy32(statusGfxPtr, (void*)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder) * TILE_SIZE_4BPP), 96);
|
||||
CpuCopy16(gPlttBufferUnfaded + 0x100 + pltAdder, (void *)(OBJ_PLTT + pltAdder * 2), 2);
|
||||
CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder) * TILE_SIZE_4BPP), 96);
|
||||
if (IsDoubleBattle() == TRUE || GetBattlerSide(battlerId) == B_SIDE_OPPONENT)
|
||||
{
|
||||
if (!gBattleSpritesDataPtr->battlerData[battlerId].hpNumbersNoBars)
|
||||
{
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_0), (void*)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 32);
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_65), (void*)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 1) * TILE_SIZE_4BPP), 32);
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_0), (void *)(OBJ_VRAM0 + gSprites[healthBarSpriteId].oam.tileNum * TILE_SIZE_4BPP), 32);
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_65), (void *)(OBJ_VRAM0 + (gSprites[healthBarSpriteId].oam.tileNum + 1) * TILE_SIZE_4BPP), 32);
|
||||
}
|
||||
}
|
||||
TryAddPokeballIconToHealthbox(healthboxSpriteId, FALSE);
|
||||
@@ -1713,8 +1713,8 @@ static void UpdateSafariBallsTextOnHealthbox(u8 healthboxSpriteId)
|
||||
|
||||
windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(gText_SafariBalls, 0, 3, &windowId);
|
||||
spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP;
|
||||
TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x40) + spriteTileNum, windowTileData, 6);
|
||||
TextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x800) + spriteTileNum, windowTileData + 0xC0, 2);
|
||||
TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x40) + spriteTileNum, windowTileData, 6);
|
||||
TextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x800) + spriteTileNum, windowTileData + 0xC0, 2);
|
||||
RemoveWindowOnHealthbox(windowId);
|
||||
}
|
||||
|
||||
@@ -1730,8 +1730,8 @@ static void UpdateLeftNoOfBallsTextOnHealthbox(u8 healthboxSpriteId)
|
||||
|
||||
windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, GetStringRightAlignXOffset(0, text, 0x2F), 3, &windowId);
|
||||
spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * TILE_SIZE_4BPP;
|
||||
SafariTextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0x2C0) + spriteTileNum, windowTileData, 2);
|
||||
SafariTextIntoHealthboxObject((void*)(OBJ_VRAM0 + 0xA00) + spriteTileNum, windowTileData + 0x40, 4);
|
||||
SafariTextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0x2C0) + spriteTileNum, windowTileData, 2);
|
||||
SafariTextIntoHealthboxObject((void *)(OBJ_VRAM0 + 0xA00) + spriteTileNum, windowTileData + 0x40, 4);
|
||||
RemoveWindowOnHealthbox(windowId);
|
||||
}
|
||||
|
||||
@@ -1875,10 +1875,10 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
|
||||
u8 healthbarSpriteId = gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].hMain_HealthBarSpriteId;
|
||||
if (i < 2)
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(barElementId) + array[i] * 32,
|
||||
(void*)(OBJ_VRAM0 + (gSprites[healthbarSpriteId].oam.tileNum + 2 + i) * TILE_SIZE_4BPP), 32);
|
||||
(void *)(OBJ_VRAM0 + (gSprites[healthbarSpriteId].oam.tileNum + 2 + i) * TILE_SIZE_4BPP), 32);
|
||||
else
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(barElementId) + array[i] * 32,
|
||||
(void*)(OBJ_VRAM0 + 64 + (i + gSprites[healthbarSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32);
|
||||
(void *)(OBJ_VRAM0 + 64 + (i + gSprites[healthbarSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32);
|
||||
}
|
||||
break;
|
||||
case EXP_BAR:
|
||||
@@ -1897,10 +1897,10 @@ static void MoveBattleBarGraphically(u8 battlerId, u8 whichBar)
|
||||
{
|
||||
if (i < 4)
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_12) + array[i] * 32,
|
||||
(void*)(OBJ_VRAM0 + (gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].oam.tileNum + 0x24 + i) * TILE_SIZE_4BPP), 32);
|
||||
(void *)(OBJ_VRAM0 + (gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].oam.tileNum + 0x24 + i) * TILE_SIZE_4BPP), 32);
|
||||
else
|
||||
CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_12) + array[i] * 32,
|
||||
(void*)(OBJ_VRAM0 + 0xB80 + (i + gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32);
|
||||
(void *)(OBJ_VRAM0 + 0xB80 + (i + gSprites[gBattleSpritesDataPtr->battleBars[battlerId].healthboxSpriteId].oam.tileNum) * TILE_SIZE_4BPP), 32);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -2148,7 +2148,7 @@ static const struct WindowTemplate sHealthboxWindowTemplate = {
|
||||
};
|
||||
|
||||
|
||||
static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, u32 *windowId)
|
||||
static u8 *AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y, u32 *windowId)
|
||||
{
|
||||
u16 winId;
|
||||
u8 color[3];
|
||||
@@ -2161,10 +2161,10 @@ static u8* AddTextPrinterAndCreateWindowOnHealthbox(const u8 *str, u32 x, u32 y,
|
||||
color[1] = 1;
|
||||
color[2] = 3;
|
||||
|
||||
AddTextPrinterParameterized4(winId, 0, x, y, 0, 0, color, -1, str);
|
||||
AddTextPrinterParameterized4(winId, FONT_0, x, y, 0, 0, color, -1, str);
|
||||
|
||||
*windowId = winId;
|
||||
return (u8*)(GetWindowAttribute(winId, WINDOW_TILE_DATA));
|
||||
return (u8 *)(GetWindowAttribute(winId, WINDOW_TILE_DATA));
|
||||
}
|
||||
|
||||
static void RemoveWindowOnHealthbox(u32 windowId)
|
||||
|
||||
+48
-48
@@ -1051,7 +1051,7 @@ static void CB2_HandleStartBattle(void)
|
||||
SetMainCallback2(BattleMainCB2);
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
{
|
||||
gBattleTypeFlags |= BATTLE_TYPE_LINK_ESTABLISHED;
|
||||
gBattleTypeFlags |= BATTLE_TYPE_LINK_IN_BATTLE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1409,7 +1409,7 @@ static void CB2_HandleStartMultiBattle(void)
|
||||
gMain.callback1 = BattleMainCB1;
|
||||
SetMainCallback2(BattleMainCB2);
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
gBattleTypeFlags |= BATTLE_TYPE_LINK_ESTABLISHED;
|
||||
gBattleTypeFlags |= BATTLE_TYPE_LINK_IN_BATTLE;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
@@ -1436,7 +1436,7 @@ void BattleMainCB2(void)
|
||||
{
|
||||
gSpecialVar_Result = gBattleOutcome = B_OUTCOME_DREW;
|
||||
ResetPaletteFadeControl();
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
SetMainCallback2(CB2_QuitPokedudeBattle);
|
||||
}
|
||||
}
|
||||
@@ -1779,7 +1779,7 @@ static void EndLinkBattleInSteps(void)
|
||||
case 1:
|
||||
if (--gBattleCommunication[1] == 0)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
++gBattleCommunication[MULTIUSE_STATE];
|
||||
}
|
||||
break;
|
||||
@@ -1796,7 +1796,7 @@ static void EndLinkBattleInSteps(void)
|
||||
}
|
||||
}
|
||||
|
||||
u32 GetBattleBgAttribute(u8 arrayId, u8 caseId)
|
||||
u32 GetBattleBgTemplateData(u8 arrayId, u8 caseId)
|
||||
{
|
||||
u32 ret = 0;
|
||||
|
||||
@@ -1859,7 +1859,7 @@ static void SpriteCB_MoveWildMonToRight(struct Sprite *sprite)
|
||||
if (sprite->x2 == 0)
|
||||
{
|
||||
sprite->callback = SpriteCB_WildMonShowHealthbox;
|
||||
PlayCry1(sprite->data[2], 25);
|
||||
PlayCry_Normal(sprite->data[2], 25);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1870,13 +1870,13 @@ static void SpriteCB_WildMonShowHealthbox(struct Sprite *sprite)
|
||||
{
|
||||
StartHealthboxSlideIn(sprite->sBattler);
|
||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[sprite->sBattler]);
|
||||
sprite->callback = SpriteCallbackDummy2;
|
||||
sprite->callback = SpriteCallbackDummy_2;
|
||||
StartSpriteAnimIfDifferent(sprite, 0);
|
||||
BeginNormalPaletteFade(0x20000, 0, 10, 0, RGB(8, 8, 8));
|
||||
}
|
||||
}
|
||||
|
||||
void SpriteCallbackDummy2(struct Sprite *sprite)
|
||||
void SpriteCallbackDummy_2(struct Sprite *sprite)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1900,7 +1900,7 @@ static void SpriteCB_Unused_8011E28_Step(struct Sprite *sprite)
|
||||
if (sprite->data[3] == 0)
|
||||
{
|
||||
sprite->invisible = FALSE;
|
||||
sprite->callback = SpriteCallbackDummy2;
|
||||
sprite->callback = SpriteCallbackDummy_2;
|
||||
gUnknown_2022AE8[0] = 0;
|
||||
}
|
||||
}
|
||||
@@ -1991,7 +1991,7 @@ void SpriteCb_HideAsMoveTarget(struct Sprite *sprite)
|
||||
{
|
||||
sprite->invisible = sprite->data[4];
|
||||
sprite->data[4] = FALSE;
|
||||
sprite->callback = SpriteCallbackDummy2;
|
||||
sprite->callback = SpriteCallbackDummy_2;
|
||||
}
|
||||
|
||||
void SpriteCB_AllyMon(struct Sprite *sprite)
|
||||
@@ -2433,7 +2433,7 @@ static void BattleIntroGetMonsData(void)
|
||||
{
|
||||
case 0:
|
||||
gActiveBattler = gBattleCommunication[1];
|
||||
BtlController_EmitGetMonData(0, REQUEST_ALL_BATTLE, 0);
|
||||
BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0);
|
||||
MarkBattlerForControllerExec(gActiveBattler);
|
||||
++gBattleCommunication[MULTIUSE_STATE];
|
||||
break;
|
||||
@@ -2468,7 +2468,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
|
||||
u8 *ptr;
|
||||
s32 i;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
@@ -2554,7 +2554,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
|
||||
s32 i;
|
||||
struct HpAndStatus hpStatus[PARTY_SIZE];
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
|
||||
{
|
||||
@@ -2621,7 +2621,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
|
||||
|
||||
static void BattleIntroPrintTrainerWantsToBattle(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gActiveBattler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
|
||||
PrepareStringBattle(STRINGID_INTROMSG, gActiveBattler);
|
||||
@@ -2631,7 +2631,7 @@ static void BattleIntroPrintTrainerWantsToBattle(void)
|
||||
|
||||
static void BattleIntroPrintWildMonAttacked(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
||||
PrepareStringBattle(STRINGID_INTROMSG, 0);
|
||||
@@ -2645,7 +2645,7 @@ static void BattleIntroPrintWildMonAttacked(void)
|
||||
|
||||
static void BattleIntroPrintOpponentSendsOut(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT));
|
||||
gBattleMainFunc = BattleIntroOpponentSendsOutMonAnimation;
|
||||
@@ -2654,7 +2654,7 @@ static void BattleIntroPrintOpponentSendsOut(void)
|
||||
|
||||
static void BattleIntroOpponentSendsOutMonAnimation(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
@@ -2675,7 +2675,7 @@ static void BattleIntroOpponentSendsOutMonAnimation(void)
|
||||
|
||||
static void BattleIntroRecordMonsToDex(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_OPPONENT
|
||||
@@ -2693,13 +2693,13 @@ static void BattleIntroRecordMonsToDex(void)
|
||||
// not used
|
||||
static void Unused_AutoProgressToIntro(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
||||
}
|
||||
|
||||
void BattleIntroPrintPlayerSendsOut(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
|
||||
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_PLAYER_LEFT));
|
||||
@@ -2711,7 +2711,7 @@ static void BattleIntroPlayerSendsOutMonAnimation(void)
|
||||
{
|
||||
u32 position;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
@@ -2736,13 +2736,13 @@ static void BattleIntroPlayerSendsOutMonAnimation(void)
|
||||
// not used
|
||||
static void Unused_AutoProgressToSwitchInAnims(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
|
||||
{
|
||||
BtlController_EmitSwitchInAnim(0, gBattlerPartyIndexes[gActiveBattler], FALSE);
|
||||
BtlController_EmitSwitchInAnim(BUFFER_A, gBattlerPartyIndexes[gActiveBattler], FALSE);
|
||||
MarkBattlerForControllerExec(gActiveBattler);
|
||||
}
|
||||
}
|
||||
@@ -2758,7 +2758,7 @@ static void TryDoEventsBeforeFirstTurn(void)
|
||||
s32 i, j;
|
||||
u8 effect = 0;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
|
||||
if (gBattleStruct->switchInAbilitiesCounter == 0)
|
||||
@@ -2819,7 +2819,7 @@ static void TryDoEventsBeforeFirstTurn(void)
|
||||
*(&gBattleStruct->turnEffectsBattlerId) = 0;
|
||||
*(&gBattleStruct->wishPerishSongState) = 0;
|
||||
*(&gBattleStruct->wishPerishSongBattlerId) = 0;
|
||||
gBattleScripting.atk49_state = 0;
|
||||
gBattleScripting.moveendState = 0;
|
||||
gBattleStruct->faintedActionsState = 0;
|
||||
gBattleStruct->turnCountersTracker = 0;
|
||||
gMoveResultFlags = 0;
|
||||
@@ -2831,7 +2831,7 @@ static void HandleEndTurn_ContinueBattle(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gBattleMainFunc = BattleTurnPassed;
|
||||
for (i = 0; i < BATTLE_COMMUNICATION_ENTRIES_COUNT; ++i)
|
||||
@@ -2875,7 +2875,7 @@ void BattleTurnPassed(void)
|
||||
gHitMarker &= ~(HITMARKER_PASSIVE_DAMAGE);
|
||||
gBattleScripting.animTurn = 0;
|
||||
gBattleScripting.animTargetsHit = 0;
|
||||
gBattleScripting.atk49_state = 0;
|
||||
gBattleScripting.moveendState = 0;
|
||||
gBattleMoveDamage = 0;
|
||||
gMoveResultFlags = 0;
|
||||
for (i = 0; i < 5; ++i)
|
||||
@@ -3098,7 +3098,7 @@ static void HandleTurnActionSelectionState(void)
|
||||
*(gBattleStruct->battlerPartyIndexes + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler];
|
||||
if (gBattleMons[gActiveBattler].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION) || gStatuses3[gActiveBattler] & STATUS3_ROOTED)
|
||||
{
|
||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CANT_SWITCH, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CANT_SWITCH, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
}
|
||||
else if ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_SHADOW_TAG))
|
||||
|| ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_ARENA_TRAP))
|
||||
@@ -3107,16 +3107,16 @@ static void HandleTurnActionSelectionState(void)
|
||||
|| ((i = AbilityBattleEffects(ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER, gActiveBattler, ABILITY_MAGNET_PULL, 0, 0))
|
||||
&& IS_BATTLER_OF_TYPE(gActiveBattler, TYPE_STEEL)))
|
||||
{
|
||||
BtlController_EmitChoosePokemon(0, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, 6, gLastUsedAbility, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
BtlController_EmitChoosePokemon(BUFFER_A, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, 6, gLastUsedAbility, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (gActiveBattler == 2 && gChosenActionByBattler[0] == B_ACTION_SWITCH)
|
||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
else if (gActiveBattler == 3 && gChosenActionByBattler[1] == B_ACTION_SWITCH)
|
||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
else
|
||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||
}
|
||||
MarkBattlerForControllerExec(gActiveBattler);
|
||||
break;
|
||||
@@ -3254,9 +3254,9 @@ static void HandleTurnActionSelectionState(void)
|
||||
if (((gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_DOUBLE)) != BATTLE_TYPE_DOUBLE)
|
||||
|| (position & BIT_FLANK) != B_FLANK_LEFT
|
||||
|| (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(position ^ BIT_FLANK)]))
|
||||
BtlController_EmitLinkStandbyMsg(0, 0);
|
||||
BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_STOP_BOUNCE);
|
||||
else
|
||||
BtlController_EmitLinkStandbyMsg(0, 1);
|
||||
BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_STOP_BOUNCE_ONLY);
|
||||
MarkBattlerForControllerExec(gActiveBattler);
|
||||
++gBattleCommunication[gActiveBattler];
|
||||
}
|
||||
@@ -3309,13 +3309,13 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
|
||||
|
||||
if (WEATHER_HAS_EFFECT)
|
||||
{
|
||||
if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY)
|
||||
|| (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY))
|
||||
if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN)
|
||||
|| (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN))
|
||||
speedMultiplierBattler1 = 2;
|
||||
else
|
||||
speedMultiplierBattler1 = 1;
|
||||
if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY)
|
||||
|| (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY))
|
||||
if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN)
|
||||
|| (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN))
|
||||
speedMultiplierBattler2 = 2;
|
||||
else
|
||||
speedMultiplierBattler2 = 1;
|
||||
@@ -3751,7 +3751,7 @@ static void HandleEndTurn_FinishBattle(void)
|
||||
gBattleMainFunc = FreeResetData_ReturnToOvOrDoEvolutions;
|
||||
gCB2_AfterEvolution = BattleMainCB2;
|
||||
}
|
||||
else if (!gBattleControllerExecFlags)
|
||||
else if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||
}
|
||||
@@ -3847,14 +3847,14 @@ void RunBattleScriptCommands_PopCallbacksStack(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||
}
|
||||
}
|
||||
|
||||
void RunBattleScriptCommands(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||
}
|
||||
|
||||
@@ -3874,7 +3874,7 @@ static void HandleAction_UseMove(void)
|
||||
gBattleStruct->atkCancellerTracker = 0;
|
||||
gMoveResultFlags = 0;
|
||||
gMultiHitCounter = 0;
|
||||
gBattleCommunication[6] = 0;
|
||||
gBattleCommunication[MISS_TYPE] = 0;
|
||||
gCurrMovePos = gChosenMovePos = *(gBattleStruct->chosenMovePositions + gBattlerAttacker);
|
||||
// choose move
|
||||
if (gProtectStructs[gBattlerAttacker].noValidMoves)
|
||||
@@ -4088,7 +4088,7 @@ static void HandleAction_UseItem(void)
|
||||
while (!(*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & 1))
|
||||
{
|
||||
*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) >>= 1;
|
||||
++gBattleCommunication[MULTISTRING_CHOOSER];
|
||||
gBattleCommunication[MULTISTRING_CHOOSER]++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -4344,8 +4344,8 @@ static void HandleAction_NothingIsFainted(void)
|
||||
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
|
||||
| HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
|
||||
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
|
||||
| HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT
|
||||
| HITMARKER_CHARGING | HITMARKER_x4000000);
|
||||
| HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT
|
||||
| HITMARKER_CHARGING | HITMARKER_NEVER_SET);
|
||||
}
|
||||
|
||||
static void HandleAction_ActionFinished(void)
|
||||
@@ -4356,8 +4356,8 @@ static void HandleAction_ActionFinished(void)
|
||||
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
|
||||
| HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
|
||||
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
|
||||
| HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT
|
||||
| HITMARKER_CHARGING | HITMARKER_x4000000);
|
||||
| HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT
|
||||
| HITMARKER_CHARGING | HITMARKER_NEVER_SET);
|
||||
gCurrentMove = MOVE_NONE;
|
||||
gBattleMoveDamage = 0;
|
||||
gMoveResultFlags = 0;
|
||||
@@ -4367,7 +4367,7 @@ static void HandleAction_ActionFinished(void)
|
||||
gLastHitByType[gBattlerAttacker] = 0;
|
||||
gBattleStruct->dynamicMoveType = 0;
|
||||
gDynamicBasePower = 0;
|
||||
gBattleScripting.atk49_state = 0;
|
||||
gBattleScripting.moveendState = 0;
|
||||
gBattleCommunication[MOVE_EFFECT_BYTE] = 0;
|
||||
gBattleCommunication[ACTIONS_CONFIRMED_COUNT] = 0;
|
||||
gBattleScripting.multihitMoveEffect = 0;
|
||||
|
||||
+408
-407
@@ -302,11 +302,11 @@ static const u8 sText_StatSharply[] = _("sharply ");
|
||||
const u8 gBattleText_Rose[] = _("rose!");
|
||||
static const u8 sText_StatHarshly[] = _("harshly ");
|
||||
static const u8 sText_StatFell[] = _("fell!");
|
||||
static const u8 sText_PkmnsStatChanged[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
const u8 gText_PkmnsStatChanged2[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
static const u8 sText_UsingXTheYOfZN[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_SCR_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}");
|
||||
static const u8 sText_PkmnsStatChanged3[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
static const u8 sText_PkmnsStatChanged4[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
static const u8 sText_AttackersStatRose[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
const u8 gText_DefendersStatRose[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
static const u8 sText_UsingItemTheStatOfPkmnRose[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_SCR_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}");
|
||||
static const u8 sText_AttackersStatFell[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
static const u8 sText_DefendersStatFell[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||
static const u8 sText_StatsWontIncrease2[] = _("{B_ATK_NAME_WITH_PREFIX}'s stats won't\ngo any higher!");
|
||||
static const u8 sText_StatsWontDecrease2[] = _("{B_DEF_NAME_WITH_PREFIX}'s stats won't\ngo any lower!");
|
||||
static const u8 sText_CriticalHit[] = _("A critical hit!");
|
||||
@@ -514,380 +514,380 @@ const u8 gText_WinEarnsPrizeMoney[] = _("OAK: Hm! Excellent!\pIf you win, you ea
|
||||
const u8 gText_HowDissapointing[] = _("OAK: Hm…\nHow disappointing…\pIf you win, you earn prize money,\nand your POKéMON grow.\pBut if you lose, {B_PLAYER_NAME}, you end\nup paying prize money…\pHowever, since you had no warning\nthis time, I'll pay for you.\pBut things won't be this way once\nyou step outside these doors.\pThat's why you must strengthen your\nPOKéMON by battling wild POKéMON.\p");
|
||||
|
||||
const u8 *const gBattleStringsTable[] = {
|
||||
[STRINGID_TRAINER1LOSETEXT - 12] = sText_Trainer1LoseText,
|
||||
[STRINGID_PKMNGAINEDEXP - 12] = sText_PkmnGainedEXP,
|
||||
[STRINGID_PKMNGREWTOLV - 12] = sText_PkmnGrewToLv,
|
||||
[STRINGID_PKMNLEARNEDMOVE - 12] = sText_PkmnLearnedMove,
|
||||
[STRINGID_TRYTOLEARNMOVE1 - 12] = sText_TryToLearnMove1,
|
||||
[STRINGID_TRYTOLEARNMOVE2 - 12] = sText_TryToLearnMove2,
|
||||
[STRINGID_TRYTOLEARNMOVE3 - 12] = sText_TryToLearnMove3,
|
||||
[STRINGID_PKMNFORGOTMOVE - 12] = sText_PkmnForgotMove,
|
||||
[STRINGID_STOPLEARNINGMOVE - 12] = sText_StopLearningMove,
|
||||
[STRINGID_DIDNOTLEARNMOVE - 12] = sText_DidNotLearnMove,
|
||||
[STRINGID_PKMNLEARNEDMOVE2 - 12] = sText_PkmnLearnedMove2,
|
||||
[STRINGID_ATTACKMISSED - 12] = sText_AttackMissed,
|
||||
[STRINGID_PKMNPROTECTEDITSELF - 12] = sText_PkmnProtectedItself,
|
||||
[STRINGID_STATSWONTINCREASE2 - 12] = sText_StatsWontIncrease2,
|
||||
[STRINGID_AVOIDEDDAMAGE - 12] = sText_AvoidedDamage,
|
||||
[STRINGID_ITDOESNTAFFECT - 12] = sText_ItDoesntAffect,
|
||||
[STRINGID_ATTACKERFAINTED - 12] = sText_AttackerFainted,
|
||||
[STRINGID_TARGETFAINTED - 12] = sText_TargetFainted,
|
||||
[STRINGID_PLAYERGOTMONEY - 12] = sText_PlayerGotMoney,
|
||||
[STRINGID_PLAYERWHITEOUT - 12] = sText_PlayerWhiteout,
|
||||
[STRINGID_PLAYERWHITEOUT2 - 12] = sText_PlayerPanicked,
|
||||
[STRINGID_PREVENTSESCAPE - 12] = sText_PreventsEscape,
|
||||
[STRINGID_HITXTIMES - 12] = sText_HitXTimes,
|
||||
[STRINGID_PKMNFELLASLEEP - 12] = sText_PkmnFellAsleep,
|
||||
[STRINGID_PKMNMADESLEEP - 12] = sText_PkmnMadeSleep,
|
||||
[STRINGID_PKMNALREADYASLEEP - 12] = sText_PkmnAlreadyAsleep,
|
||||
[STRINGID_PKMNALREADYASLEEP2 - 12] = sText_PkmnAlreadyAsleep2,
|
||||
[STRINGID_PKMNWASNTAFFECTED - 12] = sText_PkmnWasntAffected,
|
||||
[STRINGID_PKMNWASPOISONED - 12] = sText_PkmnWasPoisoned,
|
||||
[STRINGID_PKMNPOISONEDBY - 12] = sText_PkmnPoisonedBy,
|
||||
[STRINGID_PKMNHURTBYPOISON - 12] = sText_PkmnHurtByPoison,
|
||||
[STRINGID_PKMNALREADYPOISONED - 12] = sText_PkmnAlreadyPoisoned,
|
||||
[STRINGID_PKMNBADLYPOISONED - 12] = sText_PkmnBadlyPoisoned,
|
||||
[STRINGID_PKMNENERGYDRAINED - 12] = sText_PkmnEnergyDrained,
|
||||
[STRINGID_PKMNWASBURNED - 12] = sText_PkmnWasBurned,
|
||||
[STRINGID_PKMNBURNEDBY - 12] = sText_PkmnBurnedBy,
|
||||
[STRINGID_PKMNHURTBYBURN - 12] = sText_PkmnHurtByBurn,
|
||||
[STRINGID_PKMNWASFROZEN - 12] = sText_PkmnWasFrozen,
|
||||
[STRINGID_PKMNFROZENBY - 12] = sText_PkmnFrozenBy,
|
||||
[STRINGID_PKMNISFROZEN - 12] = sText_PkmnIsFrozen,
|
||||
[STRINGID_PKMNWASDEFROSTED - 12] = sText_PkmnWasDefrosted,
|
||||
[STRINGID_PKMNWASDEFROSTED2 - 12] = sText_PkmnWasDefrosted2,
|
||||
[STRINGID_PKMNWASDEFROSTEDBY - 12] = sText_PkmnWasDefrostedBy,
|
||||
[STRINGID_PKMNWASPARALYZED - 12] = sText_PkmnWasParalyzed,
|
||||
[STRINGID_PKMNWASPARALYZEDBY - 12] = sText_PkmnWasParalyzedBy,
|
||||
[STRINGID_PKMNISPARALYZED - 12] = sText_PkmnIsParalyzed,
|
||||
[STRINGID_PKMNISALREADYPARALYZED - 12] = sText_PkmnIsAlreadyParalyzed,
|
||||
[STRINGID_PKMNHEALEDPARALYSIS - 12] = sText_PkmnHealedParalysis,
|
||||
[STRINGID_PKMNDREAMEATEN - 12] = sText_PkmnDreamEaten,
|
||||
[STRINGID_STATSWONTINCREASE - 12] = sText_StatsWontIncrease,
|
||||
[STRINGID_STATSWONTDECREASE - 12] = sText_StatsWontDecrease,
|
||||
[STRINGID_TEAMSTOPPEDWORKING - 12] = sText_TeamStoppedWorking,
|
||||
[STRINGID_FOESTOPPEDWORKING - 12] = sText_FoeStoppedWorking,
|
||||
[STRINGID_PKMNISCONFUSED - 12] = sText_PkmnIsConfused,
|
||||
[STRINGID_PKMNHEALEDCONFUSION - 12] = sText_PkmnHealedConfusion,
|
||||
[STRINGID_PKMNWASCONFUSED - 12] = sText_PkmnWasConfused,
|
||||
[STRINGID_PKMNALREADYCONFUSED - 12] = sText_PkmnAlreadyConfused,
|
||||
[STRINGID_PKMNFELLINLOVE - 12] = sText_PkmnFellInLove,
|
||||
[STRINGID_PKMNINLOVE - 12] = sText_PkmnInLove,
|
||||
[STRINGID_PKMNIMMOBILIZEDBYLOVE - 12] = sText_PkmnImmobilizedByLove,
|
||||
[STRINGID_PKMNBLOWNAWAY - 12] = sText_PkmnBlownAway,
|
||||
[STRINGID_PKMNCHANGEDTYPE - 12] = sText_PkmnChangedType,
|
||||
[STRINGID_PKMNFLINCHED - 12] = sText_PkmnFlinched,
|
||||
[STRINGID_PKMNREGAINEDHEALTH - 12] = sText_PkmnRegainedHealth,
|
||||
[STRINGID_PKMNHPFULL - 12] = sText_PkmnHPFull,
|
||||
[STRINGID_PKMNRAISEDSPDEF - 12] = sText_PkmnRaisedSpDef,
|
||||
[STRINGID_PKMNRAISEDDEF - 12] = sText_PkmnRaisedDef,
|
||||
[STRINGID_PKMNCOVEREDBYVEIL - 12] = sText_PkmnCoveredByVeil,
|
||||
[STRINGID_PKMNUSEDSAFEGUARD - 12] = sText_PkmnUsedSafeguard,
|
||||
[STRINGID_PKMNSAFEGUARDEXPIRED - 12] = sText_PkmnSafeguardExpired,
|
||||
[STRINGID_PKMNWENTTOSLEEP - 12] = sText_PkmnWentToSleep,
|
||||
[STRINGID_PKMNSLEPTHEALTHY - 12] = sText_PkmnSleptHealthy,
|
||||
[STRINGID_PKMNWHIPPEDWHIRLWIND - 12] = sText_PkmnWhippedWhirlwind,
|
||||
[STRINGID_PKMNTOOKSUNLIGHT - 12] = sText_PkmnTookSunlight,
|
||||
[STRINGID_PKMNLOWEREDHEAD - 12] = sText_PkmnLoweredHead,
|
||||
[STRINGID_PKMNISGLOWING - 12] = sText_PkmnIsGlowing,
|
||||
[STRINGID_PKMNFLEWHIGH - 12] = sText_PkmnFlewHigh,
|
||||
[STRINGID_PKMNDUGHOLE - 12] = sText_PkmnDugHole,
|
||||
[STRINGID_PKMNSQUEEZEDBYBIND - 12] = sText_PkmnSqueezedByBind,
|
||||
[STRINGID_PKMNTRAPPEDINVORTEX - 12] = sText_PkmnTrappedInVortex,
|
||||
[STRINGID_PKMNWRAPPEDBY - 12] = sText_PkmnWrappedBy,
|
||||
[STRINGID_PKMNCLAMPED - 12] = sText_PkmnClamped,
|
||||
[STRINGID_PKMNHURTBY - 12] = sText_PkmnHurtBy,
|
||||
[STRINGID_PKMNFREEDFROM - 12] = sText_PkmnFreedFrom,
|
||||
[STRINGID_PKMNCRASHED - 12] = sText_PkmnCrashed,
|
||||
[STRINGID_PKMNSHROUDEDINMIST - 12] = gBattleText_MistShroud,
|
||||
[STRINGID_PKMNPROTECTEDBYMIST - 12] = sText_PkmnProtectedByMist,
|
||||
[STRINGID_PKMNGETTINGPUMPED - 12] = gBattleText_GetPumped,
|
||||
[STRINGID_PKMNHITWITHRECOIL - 12] = sText_PkmnHitWithRecoil,
|
||||
[STRINGID_PKMNPROTECTEDITSELF2 - 12] = sText_PkmnProtectedItself2,
|
||||
[STRINGID_PKMNBUFFETEDBYSANDSTORM - 12] = sText_PkmnBuffetedBySandstorm,
|
||||
[STRINGID_PKMNPELTEDBYHAIL - 12] = sText_PkmnPeltedByHail,
|
||||
[STRINGID_PKMNSEEDED - 12] = sText_PkmnSeeded,
|
||||
[STRINGID_PKMNEVADEDATTACK - 12] = sText_PkmnEvadedAttack,
|
||||
[STRINGID_PKMNSAPPEDBYLEECHSEED - 12] = sText_PkmnSappedByLeechSeed,
|
||||
[STRINGID_PKMNFASTASLEEP - 12] = sText_PkmnFastAsleep,
|
||||
[STRINGID_PKMNWOKEUP - 12] = sText_PkmnWokeUp,
|
||||
[STRINGID_PKMNUPROARKEPTAWAKE - 12] = sText_PkmnUproarKeptAwake,
|
||||
[STRINGID_PKMNWOKEUPINUPROAR - 12] = sText_PkmnWokeUpInUproar,
|
||||
[STRINGID_PKMNCAUSEDUPROAR - 12] = sText_PkmnCausedUproar,
|
||||
[STRINGID_PKMNMAKINGUPROAR - 12] = sText_PkmnMakingUproar,
|
||||
[STRINGID_PKMNCALMEDDOWN - 12] = sText_PkmnCalmedDown,
|
||||
[STRINGID_PKMNCANTSLEEPINUPROAR - 12] = sText_PkmnCantSleepInUproar,
|
||||
[STRINGID_PKMNSTOCKPILED - 12] = sText_PkmnStockpiled,
|
||||
[STRINGID_PKMNCANTSTOCKPILE - 12] = sText_PkmnCantStockpile,
|
||||
[STRINGID_PKMNCANTSLEEPINUPROAR2 - 12] = sText_PkmnCantSleepInUproar2,
|
||||
[STRINGID_UPROARKEPTPKMNAWAKE - 12] = sText_UproarKeptPkmnAwake,
|
||||
[STRINGID_PKMNSTAYEDAWAKEUSING - 12] = sText_PkmnStayedAwakeUsing,
|
||||
[STRINGID_PKMNSTORINGENERGY - 12] = sText_PkmnStoringEnergy,
|
||||
[STRINGID_PKMNUNLEASHEDENERGY - 12] = sText_PkmnUnleashedEnergy,
|
||||
[STRINGID_PKMNFATIGUECONFUSION - 12] = sText_PkmnFatigueConfusion,
|
||||
[STRINGID_PKMNPICKEDUPITEM - 12] = sText_PkmnPickedUpItem,
|
||||
[STRINGID_PKMNUNAFFECTED - 12] = sText_PkmnUnaffected,
|
||||
[STRINGID_PKMNTRANSFORMEDINTO - 12] = sText_PkmnTransformedInto,
|
||||
[STRINGID_PKMNMADESUBSTITUTE - 12] = sText_PkmnMadeSubstitute,
|
||||
[STRINGID_PKMNHASSUBSTITUTE - 12] = sText_PkmnHasSubstitute,
|
||||
[STRINGID_SUBSTITUTEDAMAGED - 12] = sText_SubstituteDamaged,
|
||||
[STRINGID_PKMNSUBSTITUTEFADED - 12] = sText_PkmnSubstituteFaded,
|
||||
[STRINGID_PKMNMUSTRECHARGE - 12] = sText_PkmnMustRecharge,
|
||||
[STRINGID_PKMNRAGEBUILDING - 12] = sText_PkmnRageBuilding,
|
||||
[STRINGID_PKMNMOVEWASDISABLED - 12] = sText_PkmnMoveWasDisabled,
|
||||
[STRINGID_PKMNMOVEISDISABLED - 12] = sText_PkmnMoveIsDisabled,
|
||||
[STRINGID_PKMNMOVEDISABLEDNOMORE - 12] = sText_PkmnMoveDisabledNoMore,
|
||||
[STRINGID_PKMNGOTENCORE - 12] = sText_PkmnGotEncore,
|
||||
[STRINGID_PKMNENCOREENDED - 12] = sText_PkmnEncoreEnded,
|
||||
[STRINGID_PKMNTOOKAIM - 12] = sText_PkmnTookAim,
|
||||
[STRINGID_PKMNSKETCHEDMOVE - 12] = sText_PkmnSketchedMove,
|
||||
[STRINGID_PKMNTRYINGTOTAKEFOE - 12] = sText_PkmnTryingToTakeFoe,
|
||||
[STRINGID_PKMNTOOKFOE - 12] = sText_PkmnTookFoe,
|
||||
[STRINGID_PKMNREDUCEDPP - 12] = sText_PkmnReducedPP,
|
||||
[STRINGID_PKMNSTOLEITEM - 12] = sText_PkmnStoleItem,
|
||||
[STRINGID_TARGETCANTESCAPENOW - 12] = sText_TargetCantEscapeNow,
|
||||
[STRINGID_PKMNFELLINTONIGHTMARE - 12] = sText_PkmnFellIntoNightmare,
|
||||
[STRINGID_PKMNLOCKEDINNIGHTMARE - 12] = sText_PkmnLockedInNightmare,
|
||||
[STRINGID_PKMNLAIDCURSE - 12] = sText_PkmnLaidCurse,
|
||||
[STRINGID_PKMNAFFLICTEDBYCURSE - 12] = sText_PkmnAfflictedByCurse,
|
||||
[STRINGID_SPIKESSCATTERED - 12] = sText_SpikesScattered,
|
||||
[STRINGID_PKMNHURTBYSPIKES - 12] = sText_PkmnHurtBySpikes,
|
||||
[STRINGID_PKMNIDENTIFIED - 12] = sText_PkmnIdentified,
|
||||
[STRINGID_PKMNPERISHCOUNTFELL - 12] = sText_PkmnPerishCountFell,
|
||||
[STRINGID_PKMNBRACEDITSELF - 12] = sText_PkmnBracedItself,
|
||||
[STRINGID_PKMNENDUREDHIT - 12] = sText_PkmnEnduredHit,
|
||||
[STRINGID_MAGNITUDESTRENGTH - 12] = sText_MagnitudeStrength,
|
||||
[STRINGID_PKMNCUTHPMAXEDATTACK - 12] = sText_PkmnCutHPMaxedAttack,
|
||||
[STRINGID_PKMNCOPIEDSTATCHANGES - 12] = sText_PkmnCopiedStatChanges,
|
||||
[STRINGID_PKMNGOTFREE - 12] = sText_PkmnGotFree,
|
||||
[STRINGID_PKMNSHEDLEECHSEED - 12] = sText_PkmnShedLeechSeed,
|
||||
[STRINGID_PKMNBLEWAWAYSPIKES - 12] = sText_PkmnBlewAwaySpikes,
|
||||
[STRINGID_PKMNFLEDFROMBATTLE - 12] = sText_PkmnFledFromBattle,
|
||||
[STRINGID_PKMNFORESAWATTACK - 12] = sText_PkmnForesawAttack,
|
||||
[STRINGID_PKMNTOOKATTACK - 12] = sText_PkmnTookAttack,
|
||||
[STRINGID_PKMNATTACK - 12] = sText_PkmnAttack,
|
||||
[STRINGID_PKMNCENTERATTENTION - 12] = sText_PkmnCenterAttention,
|
||||
[STRINGID_PKMNCHARGINGPOWER - 12] = sText_PkmnChargingPower,
|
||||
[STRINGID_NATUREPOWERTURNEDINTO - 12] = sText_NaturePowerTurnedInto,
|
||||
[STRINGID_PKMNSTATUSNORMAL - 12] = sText_PkmnStatusNormal,
|
||||
[STRINGID_PKMNHASNOMOVESLEFT - 12] = sText_PkmnHasNoMovesLeft,
|
||||
[STRINGID_PKMNSUBJECTEDTOTORMENT - 12] = sText_PkmnSubjectedToTorment,
|
||||
[STRINGID_PKMNCANTUSEMOVETORMENT - 12] = sText_PkmnCantUseMoveTorment,
|
||||
[STRINGID_PKMNTIGHTENINGFOCUS - 12] = sText_PkmnTighteningFocus,
|
||||
[STRINGID_PKMNFELLFORTAUNT - 12] = sText_PkmnFellForTaunt,
|
||||
[STRINGID_PKMNCANTUSEMOVETAUNT - 12] = sText_PkmnCantUseMoveTaunt,
|
||||
[STRINGID_PKMNREADYTOHELP - 12] = sText_PkmnReadyToHelp,
|
||||
[STRINGID_PKMNSWITCHEDITEMS - 12] = sText_PkmnSwitchedItems,
|
||||
[STRINGID_PKMNCOPIEDFOE - 12] = sText_PkmnCopiedFoe,
|
||||
[STRINGID_PKMNMADEWISH - 12] = sText_PkmnMadeWish,
|
||||
[STRINGID_PKMNWISHCAMETRUE - 12] = sText_PkmnWishCameTrue,
|
||||
[STRINGID_PKMNPLANTEDROOTS - 12] = sText_PkmnPlantedRoots,
|
||||
[STRINGID_PKMNABSORBEDNUTRIENTS - 12] = sText_PkmnAbsorbedNutrients,
|
||||
[STRINGID_PKMNANCHOREDITSELF - 12] = sText_PkmnAnchoredItself,
|
||||
[STRINGID_PKMNWASMADEDROWSY - 12] = sText_PkmnWasMadeDrowsy,
|
||||
[STRINGID_PKMNKNOCKEDOFF - 12] = sText_PkmnKnockedOff,
|
||||
[STRINGID_PKMNSWAPPEDABILITIES - 12] = sText_PkmnSwappedAbilities,
|
||||
[STRINGID_PKMNSEALEDOPPONENTMOVE - 12] = sText_PkmnSealedOpponentMove,
|
||||
[STRINGID_PKMNCANTUSEMOVESEALED - 12] = sText_PkmnCantUseMoveSealed,
|
||||
[STRINGID_PKMNWANTSGRUDGE - 12] = sText_PkmnWantsGrudge,
|
||||
[STRINGID_PKMNLOSTPPGRUDGE - 12] = sText_PkmnLostPPGrudge,
|
||||
[STRINGID_PKMNSHROUDEDITSELF - 12] = sText_PkmnShroudedItself,
|
||||
[STRINGID_PKMNMOVEBOUNCED - 12] = sText_PkmnMoveBounced,
|
||||
[STRINGID_PKMNWAITSFORTARGET - 12] = sText_PkmnWaitsForTarget,
|
||||
[STRINGID_PKMNSNATCHEDMOVE - 12] = sText_PkmnSnatchedMove,
|
||||
[STRINGID_PKMNMADEITRAIN - 12] = sText_PkmnMadeItRain,
|
||||
[STRINGID_PKMNRAISEDSPEED - 12] = sText_PkmnRaisedSpeed,
|
||||
[STRINGID_PKMNPROTECTEDBY - 12] = sText_PkmnProtectedBy,
|
||||
[STRINGID_PKMNPREVENTSUSAGE - 12] = sText_PkmnPreventsUsage,
|
||||
[STRINGID_PKMNRESTOREDHPUSING - 12] = sText_PkmnRestoredHPUsing,
|
||||
[STRINGID_PKMNCHANGEDTYPEWITH - 12] = sText_PkmnChangedTypeWith,
|
||||
[STRINGID_PKMNPREVENTSPARALYSISWITH - 12] = sText_PkmnPreventsParalysisWith,
|
||||
[STRINGID_PKMNPREVENTSROMANCEWITH - 12] = sText_PkmnPreventsRomanceWith,
|
||||
[STRINGID_PKMNPREVENTSPOISONINGWITH - 12] = sText_PkmnPreventsPoisoningWith,
|
||||
[STRINGID_PKMNPREVENTSCONFUSIONWITH - 12] = sText_PkmnPreventsConfusionWith,
|
||||
[STRINGID_PKMNRAISEDFIREPOWERWITH - 12] = sText_PkmnRaisedFirePowerWith,
|
||||
[STRINGID_PKMNANCHORSITSELFWITH - 12] = sText_PkmnAnchorsItselfWith,
|
||||
[STRINGID_PKMNCUTSATTACKWITH - 12] = sText_PkmnCutsAttackWith,
|
||||
[STRINGID_PKMNPREVENTSSTATLOSSWITH - 12] = sText_PkmnPreventsStatLossWith,
|
||||
[STRINGID_PKMNHURTSWITH - 12] = sText_PkmnHurtsWith,
|
||||
[STRINGID_PKMNTRACED - 12] = sText_PkmnTraced,
|
||||
[STRINGID_STATSHARPLY - 12] = sText_StatSharply,
|
||||
[STRINGID_STATROSE - 12] = gBattleText_Rose,
|
||||
[STRINGID_STATHARSHLY - 12] = sText_StatHarshly,
|
||||
[STRINGID_STATFELL - 12] = sText_StatFell,
|
||||
[STRINGID_PKMNSSTATCHANGED - 12] = sText_PkmnsStatChanged,
|
||||
[STRINGID_PKMNSSTATCHANGED2 - 12] = gText_PkmnsStatChanged2,
|
||||
[STRINGID_PKMNSSTATCHANGED3 - 12] = sText_PkmnsStatChanged3,
|
||||
[STRINGID_PKMNSSTATCHANGED4 - 12] = sText_PkmnsStatChanged4,
|
||||
[STRINGID_CRITICALHIT - 12] = sText_CriticalHit,
|
||||
[STRINGID_ONEHITKO - 12] = sText_OneHitKO,
|
||||
[STRINGID_123POOF - 12] = sText_123Poof,
|
||||
[STRINGID_ANDELLIPSIS - 12] = sText_AndEllipsis,
|
||||
[STRINGID_NOTVERYEFFECTIVE - 12] = sText_NotVeryEffective,
|
||||
[STRINGID_SUPEREFFECTIVE - 12] = sText_SuperEffective,
|
||||
[STRINGID_GOTAWAYSAFELY - 12] = sText_GotAwaySafely,
|
||||
[STRINGID_WILDPKMNFLED - 12] = sText_WildPkmnFled,
|
||||
[STRINGID_NORUNNINGFROMTRAINERS - 12] = sText_NoRunningFromTrainers,
|
||||
[STRINGID_CANTESCAPE - 12] = sText_CantEscape,
|
||||
[STRINGID_DONTLEAVEBIRCH - 12] = sText_EmptyString5,
|
||||
[STRINGID_BUTNOTHINGHAPPENED - 12] = sText_ButNothingHappened,
|
||||
[STRINGID_BUTITFAILED - 12] = sText_ButItFailed,
|
||||
[STRINGID_ITHURTCONFUSION - 12] = sText_ItHurtConfusion,
|
||||
[STRINGID_MIRRORMOVEFAILED - 12] = sText_MirrorMoveFailed,
|
||||
[STRINGID_STARTEDTORAIN - 12] = sText_StartedToRain,
|
||||
[STRINGID_DOWNPOURSTARTED - 12] = sText_DownpourStarted,
|
||||
[STRINGID_RAINCONTINUES - 12] = sText_RainContinues,
|
||||
[STRINGID_DOWNPOURCONTINUES - 12] = sText_DownpourContinues,
|
||||
[STRINGID_RAINSTOPPED - 12] = sText_RainStopped,
|
||||
[STRINGID_SANDSTORMBREWED - 12] = sText_SandstormBrewed,
|
||||
[STRINGID_SANDSTORMRAGES - 12] = sText_SandstormRages,
|
||||
[STRINGID_SANDSTORMSUBSIDED - 12] = sText_SandstormSubsided,
|
||||
[STRINGID_SUNLIGHTGOTBRIGHT - 12] = sText_SunlightGotBright,
|
||||
[STRINGID_SUNLIGHTSTRONG - 12] = sText_SunlightStrong,
|
||||
[STRINGID_SUNLIGHTFADED - 12] = sText_SunlightFaded,
|
||||
[STRINGID_STARTEDHAIL - 12] = sText_StartedHail,
|
||||
[STRINGID_HAILCONTINUES - 12] = sText_HailContinues,
|
||||
[STRINGID_HAILSTOPPED - 12] = sText_HailStopped,
|
||||
[STRINGID_FAILEDTOSPITUP - 12] = sText_FailedToSpitUp,
|
||||
[STRINGID_FAILEDTOSWALLOW - 12] = sText_FailedToSwallow,
|
||||
[STRINGID_WINDBECAMEHEATWAVE - 12] = sText_WindBecameHeatWave,
|
||||
[STRINGID_STATCHANGESGONE - 12] = sText_StatChangesGone,
|
||||
[STRINGID_COINSSCATTERED - 12] = sText_CoinsScattered,
|
||||
[STRINGID_TOOWEAKFORSUBSTITUTE - 12] = sText_TooWeakForSubstitute,
|
||||
[STRINGID_SHAREDPAIN - 12] = sText_SharedPain,
|
||||
[STRINGID_BELLCHIMED - 12] = sText_BellChimed,
|
||||
[STRINGID_FAINTINTHREE - 12] = sText_FaintInThree,
|
||||
[STRINGID_NOPPLEFT - 12] = sText_NoPPLeft,
|
||||
[STRINGID_BUTNOPPLEFT - 12] = sText_ButNoPPLeft,
|
||||
[STRINGID_PLAYERUSEDITEM - 12] = sText_PlayerUsedItem,
|
||||
[STRINGID_OLDMANUSEDITEM - 12] = sText_OldManUsedItem,
|
||||
[STRINGID_TRAINERBLOCKEDBALL - 12] = sText_TrainerBlockedBall,
|
||||
[STRINGID_DONTBEATHIEF - 12] = sText_DontBeAThief,
|
||||
[STRINGID_ITDODGEDBALL - 12] = sText_ItDodgedBall,
|
||||
[STRINGID_YOUMISSEDPKMN - 12] = sText_YouMissedPkmn,
|
||||
[STRINGID_PKMNBROKEFREE - 12] = sText_PkmnBrokeFree,
|
||||
[STRINGID_ITAPPEAREDCAUGHT - 12] = sText_ItAppearedCaught,
|
||||
[STRINGID_AARGHALMOSTHADIT - 12] = sText_AarghAlmostHadIt,
|
||||
[STRINGID_SHOOTSOCLOSE - 12] = sText_ShootSoClose,
|
||||
[STRINGID_GOTCHAPKMNCAUGHT - 12] = sText_GotchaPkmnCaught,
|
||||
[STRINGID_GOTCHAPKMNCAUGHT2 - 12] = sText_GotchaPkmnCaught2,
|
||||
[STRINGID_GIVENICKNAMECAPTURED - 12] = sText_GiveNicknameCaptured,
|
||||
[STRINGID_PKMNSENTTOPC - 12] = sText_PkmnSentToPC,
|
||||
[STRINGID_PKMNDATAADDEDTODEX - 12] = sText_PkmnDataAddedToDex,
|
||||
[STRINGID_ITISRAINING - 12] = sText_ItIsRaining,
|
||||
[STRINGID_SANDSTORMISRAGING - 12] = sText_SandstormIsRaging,
|
||||
[STRINGID_CANTESCAPE2 - 12] = sText_CantEscape2,
|
||||
[STRINGID_PKMNIGNORESASLEEP - 12] = sText_PkmnIgnoresAsleep,
|
||||
[STRINGID_PKMNIGNOREDORDERS - 12] = sText_PkmnIgnoredOrders,
|
||||
[STRINGID_PKMNBEGANTONAP - 12] = sText_PkmnBeganToNap,
|
||||
[STRINGID_PKMNLOAFING - 12] = sText_PkmnLoafing,
|
||||
[STRINGID_PKMNWONTOBEY - 12] = sText_PkmnWontObey,
|
||||
[STRINGID_PKMNTURNEDAWAY - 12] = sText_PkmnTurnedAway,
|
||||
[STRINGID_PKMNPRETENDNOTNOTICE - 12] = sText_PkmnPretendNotNotice,
|
||||
[STRINGID_ENEMYABOUTTOSWITCHPKMN - 12] = sText_EnemyAboutToSwitchPkmn,
|
||||
[STRINGID_THREWROCK - 12] = sText_ThrewARock,
|
||||
[STRINGID_THREWBAIT - 12] = sText_ThrewSomeBait,
|
||||
[STRINGID_PKMNWATCHINGCAREFULLY - 12] = sText_PkmnWatchingCarefully,
|
||||
[STRINGID_PKMNANGRY - 12] = sText_PkmnIsAngry,
|
||||
[STRINGID_PKMNEATING - 12] = sText_PkmnIsEating,
|
||||
[STRINGID_DUMMY288 - 12] = sText_Empty1,
|
||||
[STRINGID_DUMMY289 - 12] = sText_Empty1,
|
||||
[STRINGID_OUTOFSAFARIBALLS - 12] = sText_OutOfSafariBalls,
|
||||
[STRINGID_PKMNSITEMCUREDPARALYSIS - 12] = sText_PkmnsItemCuredParalysis,
|
||||
[STRINGID_PKMNSITEMCUREDPOISON - 12] = sText_PkmnsItemCuredPoison,
|
||||
[STRINGID_PKMNSITEMHEALEDBURN - 12] = sText_PkmnsItemHealedBurn,
|
||||
[STRINGID_PKMNSITEMDEFROSTEDIT - 12] = sText_PkmnsItemDefrostedIt,
|
||||
[STRINGID_PKMNSITEMWOKEIT - 12] = sText_PkmnsItemWokeIt,
|
||||
[STRINGID_PKMNSITEMSNAPPEDOUT - 12] = sText_PkmnsItemSnappedOut,
|
||||
[STRINGID_PKMNSITEMCUREDPROBLEM - 12] = sText_PkmnsItemCuredProblem,
|
||||
[STRINGID_PKMNSITEMRESTOREDHEALTH - 12] = sText_PkmnsItemRestoredHealth,
|
||||
[STRINGID_PKMNSITEMRESTOREDPP - 12] = sText_PkmnsItemRestoredPP,
|
||||
[STRINGID_PKMNSITEMRESTOREDSTATUS - 12] = sText_PkmnsItemRestoredStatus,
|
||||
[STRINGID_PKMNSITEMRESTOREDHPALITTLE - 12] = sText_PkmnsItemRestoredHPALittle,
|
||||
[STRINGID_ITEMALLOWSONLYYMOVE - 12] = sText_ItemAllowsOnlyYMove,
|
||||
[STRINGID_PKMNHUNGONWITHX - 12] = sText_PkmnHungOnWithX,
|
||||
[STRINGID_EMPTYSTRING3 - 12] = gText_EmptyString3,
|
||||
[STRINGID_PKMNSXPREVENTSBURNS - 12] = sText_PkmnsXPreventsBurns,
|
||||
[STRINGID_PKMNSXBLOCKSY - 12] = sText_PkmnsXBlocksY,
|
||||
[STRINGID_PKMNSXRESTOREDHPALITTLE2 - 12] = sText_PkmnsXRestoredHPALittle2,
|
||||
[STRINGID_PKMNSXWHIPPEDUPSANDSTORM - 12] = sText_PkmnsXWhippedUpSandstorm,
|
||||
[STRINGID_PKMNSXPREVENTSYLOSS - 12] = sText_PkmnsXPreventsYLoss,
|
||||
[STRINGID_PKMNSXINFATUATEDY - 12] = sText_PkmnsXInfatuatedY,
|
||||
[STRINGID_PKMNSXMADEYINEFFECTIVE - 12] = sText_PkmnsXMadeYIneffective,
|
||||
[STRINGID_PKMNSXCUREDYPROBLEM - 12] = sText_PkmnsXCuredYProblem,
|
||||
[STRINGID_ITSUCKEDLIQUIDOOZE - 12] = sText_ItSuckedLiquidOoze,
|
||||
[STRINGID_PKMNTRANSFORMED - 12] = sText_PkmnTransformed,
|
||||
[STRINGID_ELECTRICITYWEAKENED - 12] = sText_ElectricityWeakened,
|
||||
[STRINGID_FIREWEAKENED - 12] = sText_FireWeakened,
|
||||
[STRINGID_PKMNHIDUNDERWATER - 12] = sText_PkmnHidUnderwater,
|
||||
[STRINGID_PKMNSPRANGUP - 12] = sText_PkmnSprangUp,
|
||||
[STRINGID_HMMOVESCANTBEFORGOTTEN - 12] = sText_HMMovesCantBeForgotten,
|
||||
[STRINGID_XFOUNDONEY - 12] = sText_XFoundOneY,
|
||||
[STRINGID_PLAYERDEFEATEDTRAINER1 - 12] = sText_PlayerDefeatedLinkTrainerTrainer1,
|
||||
[STRINGID_SOOTHINGAROMA - 12] = sText_SoothingAroma,
|
||||
[STRINGID_ITEMSCANTBEUSEDNOW - 12] = sText_ItemsCantBeUsedNow,
|
||||
[STRINGID_FORXCOMMAYZ - 12] = sText_ForXCommaYZ,
|
||||
[STRINGID_USINGXTHEYOFZN - 12] = sText_UsingXTheYOfZN,
|
||||
[STRINGID_PKMNUSEDXTOGETPUMPED - 12] = sText_PkmnUsedXToGetPumped,
|
||||
[STRINGID_PKMNSXMADEYUSELESS - 12] = sText_PkmnsXMadeYUseless,
|
||||
[STRINGID_PKMNTRAPPEDBYSANDTOMB - 12] = sText_PkmnTrappedBySandTomb,
|
||||
[STRINGID_EMPTYSTRING4 - 12] = sText_EmptyString4,
|
||||
[STRINGID_ABOOSTED - 12] = sText_ABoosted,
|
||||
[STRINGID_PKMNSXINTENSIFIEDSUN - 12] = sText_PkmnsXIntensifiedSun,
|
||||
[STRINGID_PKMNMAKESGROUNDMISS - 12] = sText_PkmnMakesGroundMiss,
|
||||
[STRINGID_YOUTHROWABALLNOWRIGHT - 12] = sText_YouThrowABallNowRight,
|
||||
[STRINGID_PKMNSXTOOKATTACK - 12] = sText_PkmnsXTookAttack,
|
||||
[STRINGID_PKMNCHOSEXASDESTINY - 12] = sText_PkmnChoseXAsDestiny,
|
||||
[STRINGID_PKMNLOSTFOCUS - 12] = sText_PkmnLostFocus,
|
||||
[STRINGID_USENEXTPKMN - 12] = sText_UseNextPkmn,
|
||||
[STRINGID_PKMNFLEDUSINGITS - 12] = sText_PkmnFledUsingIts,
|
||||
[STRINGID_PKMNFLEDUSING - 12] = sText_PkmnFledUsing,
|
||||
[STRINGID_PKMNWASDRAGGEDOUT - 12] = sText_PkmnWasDraggedOut,
|
||||
[STRINGID_PREVENTEDFROMWORKING - 12] = sText_PreventedFromWorking,
|
||||
[STRINGID_PKMNSITEMNORMALIZEDSTATUS - 12] = sText_PkmnsItemNormalizedStatus,
|
||||
[STRINGID_TRAINER1USEDITEM - 12] = sText_Trainer1UsedItem,
|
||||
[STRINGID_BOXISFULL - 12] = sText_BoxIsFull,
|
||||
[STRINGID_PKMNAVOIDEDATTACK - 12] = sText_PkmnAvoidedAttack,
|
||||
[STRINGID_PKMNSXMADEITINEFFECTIVE - 12] = sText_PkmnsXMadeItIneffective,
|
||||
[STRINGID_PKMNSXPREVENTSFLINCHING - 12] = sText_PkmnsXPreventsFlinching,
|
||||
[STRINGID_PKMNALREADYHASBURN - 12] = sText_PkmnAlreadyHasBurn,
|
||||
[STRINGID_STATSWONTDECREASE2 - 12] = sText_StatsWontDecrease2,
|
||||
[STRINGID_PKMNSXBLOCKSY2 - 12] = sText_PkmnsXBlocksY2,
|
||||
[STRINGID_PKMNSXWOREOFF - 12] = sText_PkmnsXWoreOff,
|
||||
[STRINGID_PKMNRAISEDDEFALITTLE - 12] = sText_PkmnRaisedDefALittle,
|
||||
[STRINGID_PKMNRAISEDSPDEFALITTLE - 12] = sText_PkmnRaisedSpDefALittle,
|
||||
[STRINGID_THEWALLSHATTERED - 12] = sText_TheWallShattered,
|
||||
[STRINGID_PKMNSXPREVENTSYSZ - 12] = sText_PkmnsXPreventsYsZ,
|
||||
[STRINGID_PKMNSXCUREDITSYPROBLEM - 12] = sText_PkmnsXCuredItsYProblem,
|
||||
[STRINGID_ATTACKERCANTESCAPE - 12] = sText_AttackerCantEscape,
|
||||
[STRINGID_PKMNOBTAINEDX - 12] = sText_PkmnObtainedX,
|
||||
[STRINGID_PKMNOBTAINEDX2 - 12] = sText_PkmnObtainedX2,
|
||||
[STRINGID_PKMNOBTAINEDXYOBTAINEDZ - 12] = sText_PkmnObtainedXYObtainedZ,
|
||||
[STRINGID_BUTNOEFFECT - 12] = sText_ButNoEffect,
|
||||
[STRINGID_PKMNSXHADNOEFFECTONY - 12] = sText_PkmnsXHadNoEffectOnY,
|
||||
[STRINGID_OAKPLAYERWON - 12] = gText_WinEarnsPrizeMoney,
|
||||
[STRINGID_OAKPLAYERLOST - 12] = gText_HowDissapointing,
|
||||
[STRINGID_PLAYERLOSTAGAINSTENEMYTRAINER - 12] = sText_PlayerWhiteoutAgainstTrainer,
|
||||
[STRINGID_PLAYERPAIDPRIZEMONEY - 12] = sText_PlayerPaidAsPrizeMoney,
|
||||
[STRINGID_PKMNTRANSFERREDSOMEONESPC - 12] = Text_MonSentToBoxInSomeonesPC,
|
||||
[STRINGID_PKMNTRANSFERREDBILLSPC - 12] = Text_MonSentToBoxInBillsPC,
|
||||
[STRINGID_PKMNBOXSOMEONESPCFULL - 12] = Text_MonSentToBoxSomeonesBoxFull,
|
||||
[STRINGID_PKMNBOXBILLSPCFULL - 12] = Text_MonSentToBoxBillsBoxFull,
|
||||
[STRINGID_POKEDUDEUSED - 12] = sText_PokedudeUsedItem,
|
||||
[STRINGID_POKEFLUTECATCHY - 12] = sText_PlayedFluteCatchyTune,
|
||||
[STRINGID_POKEFLUTE - 12] = sText_PlayedThe,
|
||||
[STRINGID_MONHEARINGFLUTEAWOKE - 12] = sText_PkmnHearingFluteAwoke,
|
||||
[STRINGID_TRAINER2CLASS - 12] = sText_Trainer2Class,
|
||||
[STRINGID_TRAINER2NAME - 12] = sText_Trainer2Name,
|
||||
[STRINGID_PLAYERWHITEDOUT - 12] = sText_PlayerWhiteout2,
|
||||
[STRINGID_MONTOOSCAREDTOMOVE - 12] = sText_TooScaredToMove,
|
||||
[STRINGID_GHOSTGETOUTGETOUT - 12] = sText_GetOutGetOut,
|
||||
[STRINGID_SILPHSCOPEUNVEILED - 12] = sText_SilphScopeUnveil,
|
||||
[STRINGID_GHOSTWASMAROWAK - 12] = sText_TheGhostWas,
|
||||
[STRINGID_TRAINER1MON1COMEBACK - 12] = sText_Trainer1RecallPkmn1,
|
||||
[STRINGID_TRAINER1WINTEXT - 12] = sText_Trainer1WinText,
|
||||
[STRINGID_TRAINER1MON2COMEBACK - 12] = sText_Trainer1RecallPkmn2,
|
||||
[STRINGID_TRAINER1MON1AND2COMEBACK - 12] = sText_Trainer1RecallBoth
|
||||
[STRINGID_TRAINER1LOSETEXT - BATTLESTRINGS_TABLE_START] = sText_Trainer1LoseText,
|
||||
[STRINGID_PKMNGAINEDEXP - BATTLESTRINGS_TABLE_START] = sText_PkmnGainedEXP,
|
||||
[STRINGID_PKMNGREWTOLV - BATTLESTRINGS_TABLE_START] = sText_PkmnGrewToLv,
|
||||
[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnLearnedMove,
|
||||
[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_TABLE_START] = sText_TryToLearnMove1,
|
||||
[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_TABLE_START] = sText_TryToLearnMove2,
|
||||
[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_TABLE_START] = sText_TryToLearnMove3,
|
||||
[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnForgotMove,
|
||||
[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_TABLE_START] = sText_StopLearningMove,
|
||||
[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_TABLE_START] = sText_DidNotLearnMove,
|
||||
[STRINGID_PKMNLEARNEDMOVE2 - BATTLESTRINGS_TABLE_START] = sText_PkmnLearnedMove2,
|
||||
[STRINGID_ATTACKMISSED - BATTLESTRINGS_TABLE_START] = sText_AttackMissed,
|
||||
[STRINGID_PKMNPROTECTEDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedItself,
|
||||
[STRINGID_STATSWONTINCREASE2 - BATTLESTRINGS_TABLE_START] = sText_StatsWontIncrease2,
|
||||
[STRINGID_AVOIDEDDAMAGE - BATTLESTRINGS_TABLE_START] = sText_AvoidedDamage,
|
||||
[STRINGID_ITDOESNTAFFECT - BATTLESTRINGS_TABLE_START] = sText_ItDoesntAffect,
|
||||
[STRINGID_ATTACKERFAINTED - BATTLESTRINGS_TABLE_START] = sText_AttackerFainted,
|
||||
[STRINGID_TARGETFAINTED - BATTLESTRINGS_TABLE_START] = sText_TargetFainted,
|
||||
[STRINGID_PLAYERGOTMONEY - BATTLESTRINGS_TABLE_START] = sText_PlayerGotMoney,
|
||||
[STRINGID_PLAYERWHITEOUT - BATTLESTRINGS_TABLE_START] = sText_PlayerWhiteout,
|
||||
[STRINGID_PLAYERWHITEOUT2 - BATTLESTRINGS_TABLE_START] = sText_PlayerPanicked,
|
||||
[STRINGID_PREVENTSESCAPE - BATTLESTRINGS_TABLE_START] = sText_PreventsEscape,
|
||||
[STRINGID_HITXTIMES - BATTLESTRINGS_TABLE_START] = sText_HitXTimes,
|
||||
[STRINGID_PKMNFELLASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnFellAsleep,
|
||||
[STRINGID_PKMNMADESLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeSleep,
|
||||
[STRINGID_PKMNALREADYASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyAsleep,
|
||||
[STRINGID_PKMNALREADYASLEEP2 - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyAsleep2,
|
||||
[STRINGID_PKMNWASNTAFFECTED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasntAffected,
|
||||
[STRINGID_PKMNWASPOISONED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasPoisoned,
|
||||
[STRINGID_PKMNPOISONEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnPoisonedBy,
|
||||
[STRINGID_PKMNHURTBYPOISON - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtByPoison,
|
||||
[STRINGID_PKMNALREADYPOISONED - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyPoisoned,
|
||||
[STRINGID_PKMNBADLYPOISONED - BATTLESTRINGS_TABLE_START] = sText_PkmnBadlyPoisoned,
|
||||
[STRINGID_PKMNENERGYDRAINED - BATTLESTRINGS_TABLE_START] = sText_PkmnEnergyDrained,
|
||||
[STRINGID_PKMNWASBURNED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasBurned,
|
||||
[STRINGID_PKMNBURNEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnBurnedBy,
|
||||
[STRINGID_PKMNHURTBYBURN - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtByBurn,
|
||||
[STRINGID_PKMNWASFROZEN - BATTLESTRINGS_TABLE_START] = sText_PkmnWasFrozen,
|
||||
[STRINGID_PKMNFROZENBY - BATTLESTRINGS_TABLE_START] = sText_PkmnFrozenBy,
|
||||
[STRINGID_PKMNISFROZEN - BATTLESTRINGS_TABLE_START] = sText_PkmnIsFrozen,
|
||||
[STRINGID_PKMNWASDEFROSTED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDefrosted,
|
||||
[STRINGID_PKMNWASDEFROSTED2 - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDefrosted2,
|
||||
[STRINGID_PKMNWASDEFROSTEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDefrostedBy,
|
||||
[STRINGID_PKMNWASPARALYZED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasParalyzed,
|
||||
[STRINGID_PKMNWASPARALYZEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnWasParalyzedBy,
|
||||
[STRINGID_PKMNISPARALYZED - BATTLESTRINGS_TABLE_START] = sText_PkmnIsParalyzed,
|
||||
[STRINGID_PKMNISALREADYPARALYZED - BATTLESTRINGS_TABLE_START] = sText_PkmnIsAlreadyParalyzed,
|
||||
[STRINGID_PKMNHEALEDPARALYSIS - BATTLESTRINGS_TABLE_START] = sText_PkmnHealedParalysis,
|
||||
[STRINGID_PKMNDREAMEATEN - BATTLESTRINGS_TABLE_START] = sText_PkmnDreamEaten,
|
||||
[STRINGID_STATSWONTINCREASE - BATTLESTRINGS_TABLE_START] = sText_StatsWontIncrease,
|
||||
[STRINGID_STATSWONTDECREASE - BATTLESTRINGS_TABLE_START] = sText_StatsWontDecrease,
|
||||
[STRINGID_TEAMSTOPPEDWORKING - BATTLESTRINGS_TABLE_START] = sText_TeamStoppedWorking,
|
||||
[STRINGID_FOESTOPPEDWORKING - BATTLESTRINGS_TABLE_START] = sText_FoeStoppedWorking,
|
||||
[STRINGID_PKMNISCONFUSED - BATTLESTRINGS_TABLE_START] = sText_PkmnIsConfused,
|
||||
[STRINGID_PKMNHEALEDCONFUSION - BATTLESTRINGS_TABLE_START] = sText_PkmnHealedConfusion,
|
||||
[STRINGID_PKMNWASCONFUSED - BATTLESTRINGS_TABLE_START] = sText_PkmnWasConfused,
|
||||
[STRINGID_PKMNALREADYCONFUSED - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyConfused,
|
||||
[STRINGID_PKMNFELLINLOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnFellInLove,
|
||||
[STRINGID_PKMNINLOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnInLove,
|
||||
[STRINGID_PKMNIMMOBILIZEDBYLOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnImmobilizedByLove,
|
||||
[STRINGID_PKMNBLOWNAWAY - BATTLESTRINGS_TABLE_START] = sText_PkmnBlownAway,
|
||||
[STRINGID_PKMNCHANGEDTYPE - BATTLESTRINGS_TABLE_START] = sText_PkmnChangedType,
|
||||
[STRINGID_PKMNFLINCHED - BATTLESTRINGS_TABLE_START] = sText_PkmnFlinched,
|
||||
[STRINGID_PKMNREGAINEDHEALTH - BATTLESTRINGS_TABLE_START] = sText_PkmnRegainedHealth,
|
||||
[STRINGID_PKMNHPFULL - BATTLESTRINGS_TABLE_START] = sText_PkmnHPFull,
|
||||
[STRINGID_PKMNRAISEDSPDEF - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedSpDef,
|
||||
[STRINGID_PKMNRAISEDDEF - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedDef,
|
||||
[STRINGID_PKMNCOVEREDBYVEIL - BATTLESTRINGS_TABLE_START] = sText_PkmnCoveredByVeil,
|
||||
[STRINGID_PKMNUSEDSAFEGUARD - BATTLESTRINGS_TABLE_START] = sText_PkmnUsedSafeguard,
|
||||
[STRINGID_PKMNSAFEGUARDEXPIRED - BATTLESTRINGS_TABLE_START] = sText_PkmnSafeguardExpired,
|
||||
[STRINGID_PKMNWENTTOSLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnWentToSleep,
|
||||
[STRINGID_PKMNSLEPTHEALTHY - BATTLESTRINGS_TABLE_START] = sText_PkmnSleptHealthy,
|
||||
[STRINGID_PKMNWHIPPEDWHIRLWIND - BATTLESTRINGS_TABLE_START] = sText_PkmnWhippedWhirlwind,
|
||||
[STRINGID_PKMNTOOKSUNLIGHT - BATTLESTRINGS_TABLE_START] = sText_PkmnTookSunlight,
|
||||
[STRINGID_PKMNLOWEREDHEAD - BATTLESTRINGS_TABLE_START] = sText_PkmnLoweredHead,
|
||||
[STRINGID_PKMNISGLOWING - BATTLESTRINGS_TABLE_START] = sText_PkmnIsGlowing,
|
||||
[STRINGID_PKMNFLEWHIGH - BATTLESTRINGS_TABLE_START] = sText_PkmnFlewHigh,
|
||||
[STRINGID_PKMNDUGHOLE - BATTLESTRINGS_TABLE_START] = sText_PkmnDugHole,
|
||||
[STRINGID_PKMNSQUEEZEDBYBIND - BATTLESTRINGS_TABLE_START] = sText_PkmnSqueezedByBind,
|
||||
[STRINGID_PKMNTRAPPEDINVORTEX - BATTLESTRINGS_TABLE_START] = sText_PkmnTrappedInVortex,
|
||||
[STRINGID_PKMNWRAPPEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnWrappedBy,
|
||||
[STRINGID_PKMNCLAMPED - BATTLESTRINGS_TABLE_START] = sText_PkmnClamped,
|
||||
[STRINGID_PKMNHURTBY - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtBy,
|
||||
[STRINGID_PKMNFREEDFROM - BATTLESTRINGS_TABLE_START] = sText_PkmnFreedFrom,
|
||||
[STRINGID_PKMNCRASHED - BATTLESTRINGS_TABLE_START] = sText_PkmnCrashed,
|
||||
[STRINGID_PKMNSHROUDEDINMIST - BATTLESTRINGS_TABLE_START] = gBattleText_MistShroud,
|
||||
[STRINGID_PKMNPROTECTEDBYMIST - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedByMist,
|
||||
[STRINGID_PKMNGETTINGPUMPED - BATTLESTRINGS_TABLE_START] = gBattleText_GetPumped,
|
||||
[STRINGID_PKMNHITWITHRECOIL - BATTLESTRINGS_TABLE_START] = sText_PkmnHitWithRecoil,
|
||||
[STRINGID_PKMNPROTECTEDITSELF2 - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedItself2,
|
||||
[STRINGID_PKMNBUFFETEDBYSANDSTORM - BATTLESTRINGS_TABLE_START] = sText_PkmnBuffetedBySandstorm,
|
||||
[STRINGID_PKMNPELTEDBYHAIL - BATTLESTRINGS_TABLE_START] = sText_PkmnPeltedByHail,
|
||||
[STRINGID_PKMNSEEDED - BATTLESTRINGS_TABLE_START] = sText_PkmnSeeded,
|
||||
[STRINGID_PKMNEVADEDATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnEvadedAttack,
|
||||
[STRINGID_PKMNSAPPEDBYLEECHSEED - BATTLESTRINGS_TABLE_START] = sText_PkmnSappedByLeechSeed,
|
||||
[STRINGID_PKMNFASTASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnFastAsleep,
|
||||
[STRINGID_PKMNWOKEUP - BATTLESTRINGS_TABLE_START] = sText_PkmnWokeUp,
|
||||
[STRINGID_PKMNUPROARKEPTAWAKE - BATTLESTRINGS_TABLE_START] = sText_PkmnUproarKeptAwake,
|
||||
[STRINGID_PKMNWOKEUPINUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnWokeUpInUproar,
|
||||
[STRINGID_PKMNCAUSEDUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnCausedUproar,
|
||||
[STRINGID_PKMNMAKINGUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnMakingUproar,
|
||||
[STRINGID_PKMNCALMEDDOWN - BATTLESTRINGS_TABLE_START] = sText_PkmnCalmedDown,
|
||||
[STRINGID_PKMNCANTSLEEPINUPROAR - BATTLESTRINGS_TABLE_START] = sText_PkmnCantSleepInUproar,
|
||||
[STRINGID_PKMNSTOCKPILED - BATTLESTRINGS_TABLE_START] = sText_PkmnStockpiled,
|
||||
[STRINGID_PKMNCANTSTOCKPILE - BATTLESTRINGS_TABLE_START] = sText_PkmnCantStockpile,
|
||||
[STRINGID_PKMNCANTSLEEPINUPROAR2 - BATTLESTRINGS_TABLE_START] = sText_PkmnCantSleepInUproar2,
|
||||
[STRINGID_UPROARKEPTPKMNAWAKE - BATTLESTRINGS_TABLE_START] = sText_UproarKeptPkmnAwake,
|
||||
[STRINGID_PKMNSTAYEDAWAKEUSING - BATTLESTRINGS_TABLE_START] = sText_PkmnStayedAwakeUsing,
|
||||
[STRINGID_PKMNSTORINGENERGY - BATTLESTRINGS_TABLE_START] = sText_PkmnStoringEnergy,
|
||||
[STRINGID_PKMNUNLEASHEDENERGY - BATTLESTRINGS_TABLE_START] = sText_PkmnUnleashedEnergy,
|
||||
[STRINGID_PKMNFATIGUECONFUSION - BATTLESTRINGS_TABLE_START] = sText_PkmnFatigueConfusion,
|
||||
[STRINGID_PLAYERPICKEDUPMONEY - BATTLESTRINGS_TABLE_START] = sText_PkmnPickedUpItem,
|
||||
[STRINGID_PKMNUNAFFECTED - BATTLESTRINGS_TABLE_START] = sText_PkmnUnaffected,
|
||||
[STRINGID_PKMNTRANSFORMEDINTO - BATTLESTRINGS_TABLE_START] = sText_PkmnTransformedInto,
|
||||
[STRINGID_PKMNMADESUBSTITUTE - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeSubstitute,
|
||||
[STRINGID_PKMNHASSUBSTITUTE - BATTLESTRINGS_TABLE_START] = sText_PkmnHasSubstitute,
|
||||
[STRINGID_SUBSTITUTEDAMAGED - BATTLESTRINGS_TABLE_START] = sText_SubstituteDamaged,
|
||||
[STRINGID_PKMNSUBSTITUTEFADED - BATTLESTRINGS_TABLE_START] = sText_PkmnSubstituteFaded,
|
||||
[STRINGID_PKMNMUSTRECHARGE - BATTLESTRINGS_TABLE_START] = sText_PkmnMustRecharge,
|
||||
[STRINGID_PKMNRAGEBUILDING - BATTLESTRINGS_TABLE_START] = sText_PkmnRageBuilding,
|
||||
[STRINGID_PKMNMOVEWASDISABLED - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveWasDisabled,
|
||||
[STRINGID_PKMNMOVEISDISABLED - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveIsDisabled,
|
||||
[STRINGID_PKMNMOVEDISABLEDNOMORE - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveDisabledNoMore,
|
||||
[STRINGID_PKMNGOTENCORE - BATTLESTRINGS_TABLE_START] = sText_PkmnGotEncore,
|
||||
[STRINGID_PKMNENCOREENDED - BATTLESTRINGS_TABLE_START] = sText_PkmnEncoreEnded,
|
||||
[STRINGID_PKMNTOOKAIM - BATTLESTRINGS_TABLE_START] = sText_PkmnTookAim,
|
||||
[STRINGID_PKMNSKETCHEDMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnSketchedMove,
|
||||
[STRINGID_PKMNTRYINGTOTAKEFOE - BATTLESTRINGS_TABLE_START] = sText_PkmnTryingToTakeFoe,
|
||||
[STRINGID_PKMNTOOKFOE - BATTLESTRINGS_TABLE_START] = sText_PkmnTookFoe,
|
||||
[STRINGID_PKMNREDUCEDPP - BATTLESTRINGS_TABLE_START] = sText_PkmnReducedPP,
|
||||
[STRINGID_PKMNSTOLEITEM - BATTLESTRINGS_TABLE_START] = sText_PkmnStoleItem,
|
||||
[STRINGID_TARGETCANTESCAPENOW - BATTLESTRINGS_TABLE_START] = sText_TargetCantEscapeNow,
|
||||
[STRINGID_PKMNFELLINTONIGHTMARE - BATTLESTRINGS_TABLE_START] = sText_PkmnFellIntoNightmare,
|
||||
[STRINGID_PKMNLOCKEDINNIGHTMARE - BATTLESTRINGS_TABLE_START] = sText_PkmnLockedInNightmare,
|
||||
[STRINGID_PKMNLAIDCURSE - BATTLESTRINGS_TABLE_START] = sText_PkmnLaidCurse,
|
||||
[STRINGID_PKMNAFFLICTEDBYCURSE - BATTLESTRINGS_TABLE_START] = sText_PkmnAfflictedByCurse,
|
||||
[STRINGID_SPIKESSCATTERED - BATTLESTRINGS_TABLE_START] = sText_SpikesScattered,
|
||||
[STRINGID_PKMNHURTBYSPIKES - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtBySpikes,
|
||||
[STRINGID_PKMNIDENTIFIED - BATTLESTRINGS_TABLE_START] = sText_PkmnIdentified,
|
||||
[STRINGID_PKMNPERISHCOUNTFELL - BATTLESTRINGS_TABLE_START] = sText_PkmnPerishCountFell,
|
||||
[STRINGID_PKMNBRACEDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnBracedItself,
|
||||
[STRINGID_PKMNENDUREDHIT - BATTLESTRINGS_TABLE_START] = sText_PkmnEnduredHit,
|
||||
[STRINGID_MAGNITUDESTRENGTH - BATTLESTRINGS_TABLE_START] = sText_MagnitudeStrength,
|
||||
[STRINGID_PKMNCUTHPMAXEDATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnCutHPMaxedAttack,
|
||||
[STRINGID_PKMNCOPIEDSTATCHANGES - BATTLESTRINGS_TABLE_START] = sText_PkmnCopiedStatChanges,
|
||||
[STRINGID_PKMNGOTFREE - BATTLESTRINGS_TABLE_START] = sText_PkmnGotFree,
|
||||
[STRINGID_PKMNSHEDLEECHSEED - BATTLESTRINGS_TABLE_START] = sText_PkmnShedLeechSeed,
|
||||
[STRINGID_PKMNBLEWAWAYSPIKES - BATTLESTRINGS_TABLE_START] = sText_PkmnBlewAwaySpikes,
|
||||
[STRINGID_PKMNFLEDFROMBATTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnFledFromBattle,
|
||||
[STRINGID_PKMNFORESAWATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnForesawAttack,
|
||||
[STRINGID_PKMNTOOKATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnTookAttack,
|
||||
[STRINGID_PKMNATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnAttack,
|
||||
[STRINGID_PKMNCENTERATTENTION - BATTLESTRINGS_TABLE_START] = sText_PkmnCenterAttention,
|
||||
[STRINGID_PKMNCHARGINGPOWER - BATTLESTRINGS_TABLE_START] = sText_PkmnChargingPower,
|
||||
[STRINGID_NATUREPOWERTURNEDINTO - BATTLESTRINGS_TABLE_START] = sText_NaturePowerTurnedInto,
|
||||
[STRINGID_PKMNSTATUSNORMAL - BATTLESTRINGS_TABLE_START] = sText_PkmnStatusNormal,
|
||||
[STRINGID_PKMNHASNOMOVESLEFT - BATTLESTRINGS_TABLE_START] = sText_PkmnHasNoMovesLeft,
|
||||
[STRINGID_PKMNSUBJECTEDTOTORMENT - BATTLESTRINGS_TABLE_START] = sText_PkmnSubjectedToTorment,
|
||||
[STRINGID_PKMNCANTUSEMOVETORMENT - BATTLESTRINGS_TABLE_START] = sText_PkmnCantUseMoveTorment,
|
||||
[STRINGID_PKMNTIGHTENINGFOCUS - BATTLESTRINGS_TABLE_START] = sText_PkmnTighteningFocus,
|
||||
[STRINGID_PKMNFELLFORTAUNT - BATTLESTRINGS_TABLE_START] = sText_PkmnFellForTaunt,
|
||||
[STRINGID_PKMNCANTUSEMOVETAUNT - BATTLESTRINGS_TABLE_START] = sText_PkmnCantUseMoveTaunt,
|
||||
[STRINGID_PKMNREADYTOHELP - BATTLESTRINGS_TABLE_START] = sText_PkmnReadyToHelp,
|
||||
[STRINGID_PKMNSWITCHEDITEMS - BATTLESTRINGS_TABLE_START] = sText_PkmnSwitchedItems,
|
||||
[STRINGID_PKMNCOPIEDFOE - BATTLESTRINGS_TABLE_START] = sText_PkmnCopiedFoe,
|
||||
[STRINGID_PKMNMADEWISH - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeWish,
|
||||
[STRINGID_PKMNWISHCAMETRUE - BATTLESTRINGS_TABLE_START] = sText_PkmnWishCameTrue,
|
||||
[STRINGID_PKMNPLANTEDROOTS - BATTLESTRINGS_TABLE_START] = sText_PkmnPlantedRoots,
|
||||
[STRINGID_PKMNABSORBEDNUTRIENTS - BATTLESTRINGS_TABLE_START] = sText_PkmnAbsorbedNutrients,
|
||||
[STRINGID_PKMNANCHOREDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnAnchoredItself,
|
||||
[STRINGID_PKMNWASMADEDROWSY - BATTLESTRINGS_TABLE_START] = sText_PkmnWasMadeDrowsy,
|
||||
[STRINGID_PKMNKNOCKEDOFF - BATTLESTRINGS_TABLE_START] = sText_PkmnKnockedOff,
|
||||
[STRINGID_PKMNSWAPPEDABILITIES - BATTLESTRINGS_TABLE_START] = sText_PkmnSwappedAbilities,
|
||||
[STRINGID_PKMNSEALEDOPPONENTMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnSealedOpponentMove,
|
||||
[STRINGID_PKMNCANTUSEMOVESEALED - BATTLESTRINGS_TABLE_START] = sText_PkmnCantUseMoveSealed,
|
||||
[STRINGID_PKMNWANTSGRUDGE - BATTLESTRINGS_TABLE_START] = sText_PkmnWantsGrudge,
|
||||
[STRINGID_PKMNLOSTPPGRUDGE - BATTLESTRINGS_TABLE_START] = sText_PkmnLostPPGrudge,
|
||||
[STRINGID_PKMNSHROUDEDITSELF - BATTLESTRINGS_TABLE_START] = sText_PkmnShroudedItself,
|
||||
[STRINGID_PKMNMOVEBOUNCED - BATTLESTRINGS_TABLE_START] = sText_PkmnMoveBounced,
|
||||
[STRINGID_PKMNWAITSFORTARGET - BATTLESTRINGS_TABLE_START] = sText_PkmnWaitsForTarget,
|
||||
[STRINGID_PKMNSNATCHEDMOVE - BATTLESTRINGS_TABLE_START] = sText_PkmnSnatchedMove,
|
||||
[STRINGID_PKMNMADEITRAIN - BATTLESTRINGS_TABLE_START] = sText_PkmnMadeItRain,
|
||||
[STRINGID_PKMNRAISEDSPEED - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedSpeed,
|
||||
[STRINGID_PKMNPROTECTEDBY - BATTLESTRINGS_TABLE_START] = sText_PkmnProtectedBy,
|
||||
[STRINGID_PKMNPREVENTSUSAGE - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsUsage,
|
||||
[STRINGID_PKMNRESTOREDHPUSING - BATTLESTRINGS_TABLE_START] = sText_PkmnRestoredHPUsing,
|
||||
[STRINGID_PKMNCHANGEDTYPEWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnChangedTypeWith,
|
||||
[STRINGID_PKMNPREVENTSPARALYSISWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsParalysisWith,
|
||||
[STRINGID_PKMNPREVENTSROMANCEWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsRomanceWith,
|
||||
[STRINGID_PKMNPREVENTSPOISONINGWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsPoisoningWith,
|
||||
[STRINGID_PKMNPREVENTSCONFUSIONWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsConfusionWith,
|
||||
[STRINGID_PKMNRAISEDFIREPOWERWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedFirePowerWith,
|
||||
[STRINGID_PKMNANCHORSITSELFWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnAnchorsItselfWith,
|
||||
[STRINGID_PKMNCUTSATTACKWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnCutsAttackWith,
|
||||
[STRINGID_PKMNPREVENTSSTATLOSSWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnPreventsStatLossWith,
|
||||
[STRINGID_PKMNHURTSWITH - BATTLESTRINGS_TABLE_START] = sText_PkmnHurtsWith,
|
||||
[STRINGID_PKMNTRACED - BATTLESTRINGS_TABLE_START] = sText_PkmnTraced,
|
||||
[STRINGID_STATSHARPLY - BATTLESTRINGS_TABLE_START] = sText_StatSharply,
|
||||
[STRINGID_STATROSE - BATTLESTRINGS_TABLE_START] = gBattleText_Rose,
|
||||
[STRINGID_STATHARSHLY - BATTLESTRINGS_TABLE_START] = sText_StatHarshly,
|
||||
[STRINGID_STATFELL - BATTLESTRINGS_TABLE_START] = sText_StatFell,
|
||||
[STRINGID_ATTACKERSSTATROSE - BATTLESTRINGS_TABLE_START] = sText_AttackersStatRose,
|
||||
[STRINGID_DEFENDERSSTATROSE - BATTLESTRINGS_TABLE_START] = gText_DefendersStatRose,
|
||||
[STRINGID_ATTACKERSSTATFELL - BATTLESTRINGS_TABLE_START] = sText_AttackersStatFell,
|
||||
[STRINGID_DEFENDERSSTATFELL - BATTLESTRINGS_TABLE_START] = sText_DefendersStatFell,
|
||||
[STRINGID_CRITICALHIT - BATTLESTRINGS_TABLE_START] = sText_CriticalHit,
|
||||
[STRINGID_ONEHITKO - BATTLESTRINGS_TABLE_START] = sText_OneHitKO,
|
||||
[STRINGID_123POOF - BATTLESTRINGS_TABLE_START] = sText_123Poof,
|
||||
[STRINGID_ANDELLIPSIS - BATTLESTRINGS_TABLE_START] = sText_AndEllipsis,
|
||||
[STRINGID_NOTVERYEFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_NotVeryEffective,
|
||||
[STRINGID_SUPEREFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_SuperEffective,
|
||||
[STRINGID_GOTAWAYSAFELY - BATTLESTRINGS_TABLE_START] = sText_GotAwaySafely,
|
||||
[STRINGID_WILDPKMNFLED - BATTLESTRINGS_TABLE_START] = sText_WildPkmnFled,
|
||||
[STRINGID_NORUNNINGFROMTRAINERS - BATTLESTRINGS_TABLE_START] = sText_NoRunningFromTrainers,
|
||||
[STRINGID_CANTESCAPE - BATTLESTRINGS_TABLE_START] = sText_CantEscape,
|
||||
[STRINGID_DONTLEAVEBIRCH - BATTLESTRINGS_TABLE_START] = sText_EmptyString5,
|
||||
[STRINGID_BUTNOTHINGHAPPENED - BATTLESTRINGS_TABLE_START] = sText_ButNothingHappened,
|
||||
[STRINGID_BUTITFAILED - BATTLESTRINGS_TABLE_START] = sText_ButItFailed,
|
||||
[STRINGID_ITHURTCONFUSION - BATTLESTRINGS_TABLE_START] = sText_ItHurtConfusion,
|
||||
[STRINGID_MIRRORMOVEFAILED - BATTLESTRINGS_TABLE_START] = sText_MirrorMoveFailed,
|
||||
[STRINGID_STARTEDTORAIN - BATTLESTRINGS_TABLE_START] = sText_StartedToRain,
|
||||
[STRINGID_DOWNPOURSTARTED - BATTLESTRINGS_TABLE_START] = sText_DownpourStarted,
|
||||
[STRINGID_RAINCONTINUES - BATTLESTRINGS_TABLE_START] = sText_RainContinues,
|
||||
[STRINGID_DOWNPOURCONTINUES - BATTLESTRINGS_TABLE_START] = sText_DownpourContinues,
|
||||
[STRINGID_RAINSTOPPED - BATTLESTRINGS_TABLE_START] = sText_RainStopped,
|
||||
[STRINGID_SANDSTORMBREWED - BATTLESTRINGS_TABLE_START] = sText_SandstormBrewed,
|
||||
[STRINGID_SANDSTORMRAGES - BATTLESTRINGS_TABLE_START] = sText_SandstormRages,
|
||||
[STRINGID_SANDSTORMSUBSIDED - BATTLESTRINGS_TABLE_START] = sText_SandstormSubsided,
|
||||
[STRINGID_SUNLIGHTGOTBRIGHT - BATTLESTRINGS_TABLE_START] = sText_SunlightGotBright,
|
||||
[STRINGID_SUNLIGHTSTRONG - BATTLESTRINGS_TABLE_START] = sText_SunlightStrong,
|
||||
[STRINGID_SUNLIGHTFADED - BATTLESTRINGS_TABLE_START] = sText_SunlightFaded,
|
||||
[STRINGID_STARTEDHAIL - BATTLESTRINGS_TABLE_START] = sText_StartedHail,
|
||||
[STRINGID_HAILCONTINUES - BATTLESTRINGS_TABLE_START] = sText_HailContinues,
|
||||
[STRINGID_HAILSTOPPED - BATTLESTRINGS_TABLE_START] = sText_HailStopped,
|
||||
[STRINGID_FAILEDTOSPITUP - BATTLESTRINGS_TABLE_START] = sText_FailedToSpitUp,
|
||||
[STRINGID_FAILEDTOSWALLOW - BATTLESTRINGS_TABLE_START] = sText_FailedToSwallow,
|
||||
[STRINGID_WINDBECAMEHEATWAVE - BATTLESTRINGS_TABLE_START] = sText_WindBecameHeatWave,
|
||||
[STRINGID_STATCHANGESGONE - BATTLESTRINGS_TABLE_START] = sText_StatChangesGone,
|
||||
[STRINGID_COINSSCATTERED - BATTLESTRINGS_TABLE_START] = sText_CoinsScattered,
|
||||
[STRINGID_TOOWEAKFORSUBSTITUTE - BATTLESTRINGS_TABLE_START] = sText_TooWeakForSubstitute,
|
||||
[STRINGID_SHAREDPAIN - BATTLESTRINGS_TABLE_START] = sText_SharedPain,
|
||||
[STRINGID_BELLCHIMED - BATTLESTRINGS_TABLE_START] = sText_BellChimed,
|
||||
[STRINGID_FAINTINTHREE - BATTLESTRINGS_TABLE_START] = sText_FaintInThree,
|
||||
[STRINGID_NOPPLEFT - BATTLESTRINGS_TABLE_START] = sText_NoPPLeft,
|
||||
[STRINGID_BUTNOPPLEFT - BATTLESTRINGS_TABLE_START] = sText_ButNoPPLeft,
|
||||
[STRINGID_PLAYERUSEDITEM - BATTLESTRINGS_TABLE_START] = sText_PlayerUsedItem,
|
||||
[STRINGID_OLDMANUSEDITEM - BATTLESTRINGS_TABLE_START] = sText_OldManUsedItem,
|
||||
[STRINGID_TRAINERBLOCKEDBALL - BATTLESTRINGS_TABLE_START] = sText_TrainerBlockedBall,
|
||||
[STRINGID_DONTBEATHIEF - BATTLESTRINGS_TABLE_START] = sText_DontBeAThief,
|
||||
[STRINGID_ITDODGEDBALL - BATTLESTRINGS_TABLE_START] = sText_ItDodgedBall,
|
||||
[STRINGID_YOUMISSEDPKMN - BATTLESTRINGS_TABLE_START] = sText_YouMissedPkmn,
|
||||
[STRINGID_PKMNBROKEFREE - BATTLESTRINGS_TABLE_START] = sText_PkmnBrokeFree,
|
||||
[STRINGID_ITAPPEAREDCAUGHT - BATTLESTRINGS_TABLE_START] = sText_ItAppearedCaught,
|
||||
[STRINGID_AARGHALMOSTHADIT - BATTLESTRINGS_TABLE_START] = sText_AarghAlmostHadIt,
|
||||
[STRINGID_SHOOTSOCLOSE - BATTLESTRINGS_TABLE_START] = sText_ShootSoClose,
|
||||
[STRINGID_GOTCHAPKMNCAUGHT - BATTLESTRINGS_TABLE_START] = sText_GotchaPkmnCaught,
|
||||
[STRINGID_GOTCHAPKMNCAUGHT2 - BATTLESTRINGS_TABLE_START] = sText_GotchaPkmnCaught2,
|
||||
[STRINGID_GIVENICKNAMECAPTURED - BATTLESTRINGS_TABLE_START] = sText_GiveNicknameCaptured,
|
||||
[STRINGID_PKMNSENTTOPC - BATTLESTRINGS_TABLE_START] = sText_PkmnSentToPC,
|
||||
[STRINGID_PKMNDATAADDEDTODEX - BATTLESTRINGS_TABLE_START] = sText_PkmnDataAddedToDex,
|
||||
[STRINGID_ITISRAINING - BATTLESTRINGS_TABLE_START] = sText_ItIsRaining,
|
||||
[STRINGID_SANDSTORMISRAGING - BATTLESTRINGS_TABLE_START] = sText_SandstormIsRaging,
|
||||
[STRINGID_CANTESCAPE2 - BATTLESTRINGS_TABLE_START] = sText_CantEscape2,
|
||||
[STRINGID_PKMNIGNORESASLEEP - BATTLESTRINGS_TABLE_START] = sText_PkmnIgnoresAsleep,
|
||||
[STRINGID_PKMNIGNOREDORDERS - BATTLESTRINGS_TABLE_START] = sText_PkmnIgnoredOrders,
|
||||
[STRINGID_PKMNBEGANTONAP - BATTLESTRINGS_TABLE_START] = sText_PkmnBeganToNap,
|
||||
[STRINGID_PKMNLOAFING - BATTLESTRINGS_TABLE_START] = sText_PkmnLoafing,
|
||||
[STRINGID_PKMNWONTOBEY - BATTLESTRINGS_TABLE_START] = sText_PkmnWontObey,
|
||||
[STRINGID_PKMNTURNEDAWAY - BATTLESTRINGS_TABLE_START] = sText_PkmnTurnedAway,
|
||||
[STRINGID_PKMNPRETENDNOTNOTICE - BATTLESTRINGS_TABLE_START] = sText_PkmnPretendNotNotice,
|
||||
[STRINGID_ENEMYABOUTTOSWITCHPKMN - BATTLESTRINGS_TABLE_START] = sText_EnemyAboutToSwitchPkmn,
|
||||
[STRINGID_THREWROCK - BATTLESTRINGS_TABLE_START] = sText_ThrewARock,
|
||||
[STRINGID_THREWBAIT - BATTLESTRINGS_TABLE_START] = sText_ThrewSomeBait,
|
||||
[STRINGID_PKMNWATCHINGCAREFULLY - BATTLESTRINGS_TABLE_START] = sText_PkmnWatchingCarefully,
|
||||
[STRINGID_PKMNANGRY - BATTLESTRINGS_TABLE_START] = sText_PkmnIsAngry,
|
||||
[STRINGID_PKMNEATING - BATTLESTRINGS_TABLE_START] = sText_PkmnIsEating,
|
||||
[STRINGID_DUMMY288 - BATTLESTRINGS_TABLE_START] = sText_Empty1,
|
||||
[STRINGID_DUMMY289 - BATTLESTRINGS_TABLE_START] = sText_Empty1,
|
||||
[STRINGID_OUTOFSAFARIBALLS - BATTLESTRINGS_TABLE_START] = sText_OutOfSafariBalls,
|
||||
[STRINGID_PKMNSITEMCUREDPARALYSIS - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemCuredParalysis,
|
||||
[STRINGID_PKMNSITEMCUREDPOISON - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemCuredPoison,
|
||||
[STRINGID_PKMNSITEMHEALEDBURN - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemHealedBurn,
|
||||
[STRINGID_PKMNSITEMDEFROSTEDIT - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemDefrostedIt,
|
||||
[STRINGID_PKMNSITEMWOKEIT - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemWokeIt,
|
||||
[STRINGID_PKMNSITEMSNAPPEDOUT - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemSnappedOut,
|
||||
[STRINGID_PKMNSITEMCUREDPROBLEM - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemCuredProblem,
|
||||
[STRINGID_PKMNSITEMRESTOREDHEALTH - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredHealth,
|
||||
[STRINGID_PKMNSITEMRESTOREDPP - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredPP,
|
||||
[STRINGID_PKMNSITEMRESTOREDSTATUS - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredStatus,
|
||||
[STRINGID_PKMNSITEMRESTOREDHPALITTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemRestoredHPALittle,
|
||||
[STRINGID_ITEMALLOWSONLYYMOVE - BATTLESTRINGS_TABLE_START] = sText_ItemAllowsOnlyYMove,
|
||||
[STRINGID_PKMNHUNGONWITHX - BATTLESTRINGS_TABLE_START] = sText_PkmnHungOnWithX,
|
||||
[STRINGID_EMPTYSTRING3 - BATTLESTRINGS_TABLE_START] = gText_EmptyString3,
|
||||
[STRINGID_PKMNSXPREVENTSBURNS - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsBurns,
|
||||
[STRINGID_PKMNSXBLOCKSY - BATTLESTRINGS_TABLE_START] = sText_PkmnsXBlocksY,
|
||||
[STRINGID_PKMNSXRESTOREDHPALITTLE2 - BATTLESTRINGS_TABLE_START] = sText_PkmnsXRestoredHPALittle2,
|
||||
[STRINGID_PKMNSXWHIPPEDUPSANDSTORM - BATTLESTRINGS_TABLE_START] = sText_PkmnsXWhippedUpSandstorm,
|
||||
[STRINGID_PKMNSXPREVENTSYLOSS - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsYLoss,
|
||||
[STRINGID_PKMNSXINFATUATEDY - BATTLESTRINGS_TABLE_START] = sText_PkmnsXInfatuatedY,
|
||||
[STRINGID_PKMNSXMADEYINEFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_PkmnsXMadeYIneffective,
|
||||
[STRINGID_PKMNSXCUREDYPROBLEM - BATTLESTRINGS_TABLE_START] = sText_PkmnsXCuredYProblem,
|
||||
[STRINGID_ITSUCKEDLIQUIDOOZE - BATTLESTRINGS_TABLE_START] = sText_ItSuckedLiquidOoze,
|
||||
[STRINGID_PKMNTRANSFORMED - BATTLESTRINGS_TABLE_START] = sText_PkmnTransformed,
|
||||
[STRINGID_ELECTRICITYWEAKENED - BATTLESTRINGS_TABLE_START] = sText_ElectricityWeakened,
|
||||
[STRINGID_FIREWEAKENED - BATTLESTRINGS_TABLE_START] = sText_FireWeakened,
|
||||
[STRINGID_PKMNHIDUNDERWATER - BATTLESTRINGS_TABLE_START] = sText_PkmnHidUnderwater,
|
||||
[STRINGID_PKMNSPRANGUP - BATTLESTRINGS_TABLE_START] = sText_PkmnSprangUp,
|
||||
[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_TABLE_START] = sText_HMMovesCantBeForgotten,
|
||||
[STRINGID_XFOUNDONEY - BATTLESTRINGS_TABLE_START] = sText_XFoundOneY,
|
||||
[STRINGID_PLAYERDEFEATEDTRAINER1 - BATTLESTRINGS_TABLE_START] = sText_PlayerDefeatedLinkTrainerTrainer1,
|
||||
[STRINGID_SOOTHINGAROMA - BATTLESTRINGS_TABLE_START] = sText_SoothingAroma,
|
||||
[STRINGID_ITEMSCANTBEUSEDNOW - BATTLESTRINGS_TABLE_START] = sText_ItemsCantBeUsedNow,
|
||||
[STRINGID_FORXCOMMAYZ - BATTLESTRINGS_TABLE_START] = sText_ForXCommaYZ,
|
||||
[STRINGID_USINGITEMSTATOFPKMNROSE - BATTLESTRINGS_TABLE_START] = sText_UsingItemTheStatOfPkmnRose,
|
||||
[STRINGID_PKMNUSEDXTOGETPUMPED - BATTLESTRINGS_TABLE_START] = sText_PkmnUsedXToGetPumped,
|
||||
[STRINGID_PKMNSXMADEYUSELESS - BATTLESTRINGS_TABLE_START] = sText_PkmnsXMadeYUseless,
|
||||
[STRINGID_PKMNTRAPPEDBYSANDTOMB - BATTLESTRINGS_TABLE_START] = sText_PkmnTrappedBySandTomb,
|
||||
[STRINGID_EMPTYSTRING4 - BATTLESTRINGS_TABLE_START] = sText_EmptyString4,
|
||||
[STRINGID_ABOOSTED - BATTLESTRINGS_TABLE_START] = sText_ABoosted,
|
||||
[STRINGID_PKMNSXINTENSIFIEDSUN - BATTLESTRINGS_TABLE_START] = sText_PkmnsXIntensifiedSun,
|
||||
[STRINGID_PKMNMAKESGROUNDMISS - BATTLESTRINGS_TABLE_START] = sText_PkmnMakesGroundMiss,
|
||||
[STRINGID_YOUTHROWABALLNOWRIGHT - BATTLESTRINGS_TABLE_START] = sText_YouThrowABallNowRight,
|
||||
[STRINGID_PKMNSXTOOKATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnsXTookAttack,
|
||||
[STRINGID_PKMNCHOSEXASDESTINY - BATTLESTRINGS_TABLE_START] = sText_PkmnChoseXAsDestiny,
|
||||
[STRINGID_PKMNLOSTFOCUS - BATTLESTRINGS_TABLE_START] = sText_PkmnLostFocus,
|
||||
[STRINGID_USENEXTPKMN - BATTLESTRINGS_TABLE_START] = sText_UseNextPkmn,
|
||||
[STRINGID_PKMNFLEDUSINGITS - BATTLESTRINGS_TABLE_START] = sText_PkmnFledUsingIts,
|
||||
[STRINGID_PKMNFLEDUSING - BATTLESTRINGS_TABLE_START] = sText_PkmnFledUsing,
|
||||
[STRINGID_PKMNWASDRAGGEDOUT - BATTLESTRINGS_TABLE_START] = sText_PkmnWasDraggedOut,
|
||||
[STRINGID_PREVENTEDFROMWORKING - BATTLESTRINGS_TABLE_START] = sText_PreventedFromWorking,
|
||||
[STRINGID_PKMNSITEMNORMALIZEDSTATUS - BATTLESTRINGS_TABLE_START] = sText_PkmnsItemNormalizedStatus,
|
||||
[STRINGID_TRAINER1USEDITEM - BATTLESTRINGS_TABLE_START] = sText_Trainer1UsedItem,
|
||||
[STRINGID_BOXISFULL - BATTLESTRINGS_TABLE_START] = sText_BoxIsFull,
|
||||
[STRINGID_PKMNAVOIDEDATTACK - BATTLESTRINGS_TABLE_START] = sText_PkmnAvoidedAttack,
|
||||
[STRINGID_PKMNSXMADEITINEFFECTIVE - BATTLESTRINGS_TABLE_START] = sText_PkmnsXMadeItIneffective,
|
||||
[STRINGID_PKMNSXPREVENTSFLINCHING - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsFlinching,
|
||||
[STRINGID_PKMNALREADYHASBURN - BATTLESTRINGS_TABLE_START] = sText_PkmnAlreadyHasBurn,
|
||||
[STRINGID_STATSWONTDECREASE2 - BATTLESTRINGS_TABLE_START] = sText_StatsWontDecrease2,
|
||||
[STRINGID_PKMNSXBLOCKSY2 - BATTLESTRINGS_TABLE_START] = sText_PkmnsXBlocksY2,
|
||||
[STRINGID_PKMNSXWOREOFF - BATTLESTRINGS_TABLE_START] = sText_PkmnsXWoreOff,
|
||||
[STRINGID_PKMNRAISEDDEFALITTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedDefALittle,
|
||||
[STRINGID_PKMNRAISEDSPDEFALITTLE - BATTLESTRINGS_TABLE_START] = sText_PkmnRaisedSpDefALittle,
|
||||
[STRINGID_THEWALLSHATTERED - BATTLESTRINGS_TABLE_START] = sText_TheWallShattered,
|
||||
[STRINGID_PKMNSXPREVENTSYSZ - BATTLESTRINGS_TABLE_START] = sText_PkmnsXPreventsYsZ,
|
||||
[STRINGID_PKMNSXCUREDITSYPROBLEM - BATTLESTRINGS_TABLE_START] = sText_PkmnsXCuredItsYProblem,
|
||||
[STRINGID_ATTACKERCANTESCAPE - BATTLESTRINGS_TABLE_START] = sText_AttackerCantEscape,
|
||||
[STRINGID_PKMNOBTAINEDX - BATTLESTRINGS_TABLE_START] = sText_PkmnObtainedX,
|
||||
[STRINGID_PKMNOBTAINEDX2 - BATTLESTRINGS_TABLE_START] = sText_PkmnObtainedX2,
|
||||
[STRINGID_PKMNOBTAINEDXYOBTAINEDZ - BATTLESTRINGS_TABLE_START] = sText_PkmnObtainedXYObtainedZ,
|
||||
[STRINGID_BUTNOEFFECT - BATTLESTRINGS_TABLE_START] = sText_ButNoEffect,
|
||||
[STRINGID_PKMNSXHADNOEFFECTONY - BATTLESTRINGS_TABLE_START] = sText_PkmnsXHadNoEffectOnY,
|
||||
[STRINGID_OAKPLAYERWON - BATTLESTRINGS_TABLE_START] = gText_WinEarnsPrizeMoney,
|
||||
[STRINGID_OAKPLAYERLOST - BATTLESTRINGS_TABLE_START] = gText_HowDissapointing,
|
||||
[STRINGID_PLAYERLOSTAGAINSTENEMYTRAINER - BATTLESTRINGS_TABLE_START] = sText_PlayerWhiteoutAgainstTrainer,
|
||||
[STRINGID_PLAYERPAIDPRIZEMONEY - BATTLESTRINGS_TABLE_START] = sText_PlayerPaidAsPrizeMoney,
|
||||
[STRINGID_PKMNTRANSFERREDSOMEONESPC - BATTLESTRINGS_TABLE_START] = Text_MonSentToBoxInSomeonesPC,
|
||||
[STRINGID_PKMNTRANSFERREDBILLSPC - BATTLESTRINGS_TABLE_START] = Text_MonSentToBoxInBillsPC,
|
||||
[STRINGID_PKMNBOXSOMEONESPCFULL - BATTLESTRINGS_TABLE_START] = Text_MonSentToBoxSomeonesBoxFull,
|
||||
[STRINGID_PKMNBOXBILLSPCFULL - BATTLESTRINGS_TABLE_START] = Text_MonSentToBoxBillsBoxFull,
|
||||
[STRINGID_POKEDUDEUSED - BATTLESTRINGS_TABLE_START] = sText_PokedudeUsedItem,
|
||||
[STRINGID_POKEFLUTECATCHY - BATTLESTRINGS_TABLE_START] = sText_PlayedFluteCatchyTune,
|
||||
[STRINGID_POKEFLUTE - BATTLESTRINGS_TABLE_START] = sText_PlayedThe,
|
||||
[STRINGID_MONHEARINGFLUTEAWOKE - BATTLESTRINGS_TABLE_START] = sText_PkmnHearingFluteAwoke,
|
||||
[STRINGID_TRAINER2CLASS - BATTLESTRINGS_TABLE_START] = sText_Trainer2Class,
|
||||
[STRINGID_TRAINER2NAME - BATTLESTRINGS_TABLE_START] = sText_Trainer2Name,
|
||||
[STRINGID_PLAYERWHITEDOUT - BATTLESTRINGS_TABLE_START] = sText_PlayerWhiteout2,
|
||||
[STRINGID_MONTOOSCAREDTOMOVE - BATTLESTRINGS_TABLE_START] = sText_TooScaredToMove,
|
||||
[STRINGID_GHOSTGETOUTGETOUT - BATTLESTRINGS_TABLE_START] = sText_GetOutGetOut,
|
||||
[STRINGID_SILPHSCOPEUNVEILED - BATTLESTRINGS_TABLE_START] = sText_SilphScopeUnveil,
|
||||
[STRINGID_GHOSTWASMAROWAK - BATTLESTRINGS_TABLE_START] = sText_TheGhostWas,
|
||||
[STRINGID_TRAINER1MON1COMEBACK - BATTLESTRINGS_TABLE_START] = sText_Trainer1RecallPkmn1,
|
||||
[STRINGID_TRAINER1WINTEXT - BATTLESTRINGS_TABLE_START] = sText_Trainer1WinText,
|
||||
[STRINGID_TRAINER1MON2COMEBACK - BATTLESTRINGS_TABLE_START] = sText_Trainer1RecallPkmn2,
|
||||
[STRINGID_TRAINER1MON1AND2COMEBACK - BATTLESTRINGS_TABLE_START] = sText_Trainer1RecallBoth
|
||||
};
|
||||
|
||||
const u16 gMissStringIds[] = {
|
||||
@@ -990,18 +990,19 @@ const u16 gUproarAwakeStringIds[] = {
|
||||
STRINGID_PKMNSTAYEDAWAKEUSING
|
||||
};
|
||||
|
||||
const u16 gStatUpStringIds[] = {
|
||||
STRINGID_PKMNSSTATCHANGED,
|
||||
STRINGID_PKMNSSTATCHANGED2,
|
||||
STRINGID_STATSWONTINCREASE,
|
||||
STRINGID_EMPTYSTRING3,
|
||||
STRINGID_USINGXTHEYOFZN,
|
||||
STRINGID_PKMNUSEDXTOGETPUMPED
|
||||
const u16 gStatUpStringIds[] =
|
||||
{
|
||||
[B_MSG_ATTACKER_STAT_ROSE] = STRINGID_ATTACKERSSTATROSE,
|
||||
[B_MSG_DEFENDER_STAT_ROSE] = STRINGID_DEFENDERSSTATROSE,
|
||||
[B_MSG_STAT_WONT_INCREASE] = STRINGID_STATSWONTINCREASE,
|
||||
[B_MSG_STAT_ROSE_EMPTY] = STRINGID_EMPTYSTRING3,
|
||||
[B_MSG_STAT_ROSE_ITEM] = STRINGID_USINGITEMSTATOFPKMNROSE,
|
||||
[B_MSG_USED_DIRE_HIT] = STRINGID_PKMNUSEDXTOGETPUMPED,
|
||||
};
|
||||
|
||||
const u16 gStatDownStringIds[] = {
|
||||
STRINGID_PKMNSSTATCHANGED3,
|
||||
STRINGID_PKMNSSTATCHANGED4,
|
||||
STRINGID_ATTACKERSSTATFELL,
|
||||
STRINGID_DEFENDERSSTATFELL,
|
||||
STRINGID_STATSWONTDECREASE,
|
||||
STRINGID_EMPTYSTRING3
|
||||
};
|
||||
@@ -1041,7 +1042,7 @@ const u16 gTransformUsedStringIds[] = {
|
||||
STRINGID_BUTITFAILED
|
||||
};
|
||||
|
||||
const u16 gSubsituteUsedStringIds[] = {
|
||||
const u16 gSubstituteUsedStringIds[] = {
|
||||
STRINGID_PKMNMADESUBSTITUTE,
|
||||
STRINGID_TOOWEAKFORSUBSTITUTE
|
||||
};
|
||||
@@ -1086,7 +1087,7 @@ const u16 gAttractUsedStringIds[] = {
|
||||
STRINGID_PKMNSXINFATUATEDY
|
||||
};
|
||||
|
||||
const u16 gLeechSeedDrainStringIds[] = {
|
||||
const u16 gAbsorbDrainStringIds[] = {
|
||||
STRINGID_PKMNENERGYDRAINED,
|
||||
STRINGID_ITSUCKEDLIQUIDOOZE
|
||||
};
|
||||
@@ -1116,7 +1117,7 @@ const u16 gBallEscapeStringIds[] = {
|
||||
STRINGID_SHOOTSOCLOSE
|
||||
};
|
||||
|
||||
const u16 gWeatherContinuesStringIds[] = {
|
||||
const u16 gWeatherStartsStringIds[] = {
|
||||
STRINGID_ITISRAINING,
|
||||
STRINGID_ITISRAINING,
|
||||
STRINGID_ITISRAINING,
|
||||
@@ -1236,7 +1237,7 @@ const u8 gUnknown_83FE7BF[] = _("{RIGHT_ARROW_2}");
|
||||
const u8 gUnknown_83FE7C2[] = _("{PLUS}");
|
||||
const u8 gUnknown_83FE7C5[] = _("-");
|
||||
|
||||
const u8 gUnknown_83FE7C7[] = _("{SIZE 0}Max{SIZE 2} HP");
|
||||
const u8 gUnknown_83FE7C7[] = _("{FONT_0}Max{FONT_2} HP");
|
||||
const u8 gUnknown_83FE7D4[] = _("ATTACK ");
|
||||
const u8 gUnknown_83FE7DC[] = _("DEFENSE");
|
||||
const u8 gUnknown_83FE7E4[] = _("SP. ATK");
|
||||
@@ -1465,7 +1466,7 @@ void BufferStringBattle(u16 stringId)
|
||||
s32 i;
|
||||
const u8 *stringPtr = NULL;
|
||||
|
||||
sBattleMsgDataPtr = (struct BattleMsgData*)(&gBattleBufferA[gActiveBattler][4]);
|
||||
sBattleMsgDataPtr = (struct BattleMsgData *)(&gBattleBufferA[gActiveBattler][4]);
|
||||
gLastUsedItem = sBattleMsgDataPtr->lastItem;
|
||||
gLastUsedAbility = sBattleMsgDataPtr->lastAbility;
|
||||
gBattleScripting.battler = sBattleMsgDataPtr->scrActive;
|
||||
@@ -1701,14 +1702,14 @@ void BufferStringBattle(u16 stringId)
|
||||
}
|
||||
break;
|
||||
default: // load a string from the table
|
||||
if (stringId >= BATTLESTRINGS_COUNT + BATTLESTRINGS_ID_ADDER)
|
||||
if (stringId >= BATTLESTRINGS_COUNT + BATTLESTRINGS_TABLE_START)
|
||||
{
|
||||
gDisplayedStringBattle[0] = EOS;
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
stringPtr = gBattleStringsTable[stringId - BATTLESTRINGS_ID_ADDER];
|
||||
stringPtr = gBattleStringsTable[stringId - BATTLESTRINGS_TABLE_START];
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1716,17 +1717,17 @@ void BufferStringBattle(u16 stringId)
|
||||
BattleStringExpandPlaceholdersToDisplayedString(stringPtr);
|
||||
}
|
||||
|
||||
u32 BattleStringExpandPlaceholdersToDisplayedString(const u8* src)
|
||||
u32 BattleStringExpandPlaceholdersToDisplayedString(const u8 *src)
|
||||
{
|
||||
BattleStringExpandPlaceholders(src, gDisplayedStringBattle);
|
||||
}
|
||||
|
||||
static const u8* TryGetStatusString(u8 *src)
|
||||
static const u8 *TryGetStatusString(u8 *src)
|
||||
{
|
||||
u32 i;
|
||||
u8 status[] = _("$$$$$$$");
|
||||
u32 chars1, chars2;
|
||||
u8* statusPtr;
|
||||
u8 *statusPtr;
|
||||
|
||||
statusPtr = status;
|
||||
for (i = 0; i < 8; i++)
|
||||
@@ -1738,13 +1739,13 @@ static const u8* TryGetStatusString(u8 *src)
|
||||
statusPtr++;
|
||||
}
|
||||
|
||||
chars1 = *(u32*)(&status[0]);
|
||||
chars2 = *(u32*)(&status[4]);
|
||||
chars1 = *(u32 *)(&status[0]);
|
||||
chars2 = *(u32 *)(&status[4]);
|
||||
|
||||
for (i = 0; i < NELEMS(gStatusConditionStringsTable); i++)
|
||||
{
|
||||
if (chars1 == *(u32*)(&gStatusConditionStringsTable[i][0][0])
|
||||
&& chars2 == *(u32*)(&gStatusConditionStringsTable[i][0][4]))
|
||||
if (chars1 == *(u32 *)(&gStatusConditionStringsTable[i][0][0])
|
||||
&& chars2 == *(u32 *)(&gStatusConditionStringsTable[i][0][4]))
|
||||
return gStatusConditionStringsTable[i][1];
|
||||
}
|
||||
return NULL;
|
||||
@@ -2169,7 +2170,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst)
|
||||
{
|
||||
case B_BUFF_STRING: // battle string
|
||||
hword = T1_READ_16(&src[srcId + 1]);
|
||||
StringAppend(dst, gBattleStringsTable[hword - BATTLESTRINGS_ID_ADDER]);
|
||||
StringAppend(dst, gBattleStringsTable[hword - BATTLESTRINGS_TABLE_START]);
|
||||
srcId += 3;
|
||||
break;
|
||||
case B_BUFF_NUMBER: // int to string
|
||||
@@ -2273,7 +2274,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst)
|
||||
// unused, since the value loaded into the buffer is not read; it loaded one of
|
||||
// two particles (either "は" or "の") which works in tandem with ChooseTypeOfMoveUsedString
|
||||
// below to effect changes in the meaning of the line.
|
||||
static void ChooseMoveUsedParticle(u8* textBuff)
|
||||
static void ChooseMoveUsedParticle(u8 *textBuff)
|
||||
{
|
||||
s32 counter = 0;
|
||||
u32 i = 0;
|
||||
@@ -2313,7 +2314,7 @@ static void ChooseMoveUsedParticle(u8* textBuff)
|
||||
//
|
||||
// sText_ExclamationMark5 was " こうげき!" This resulted in a translation of
|
||||
// "<NAME>'s <ATTACK> attack!".
|
||||
static void ChooseTypeOfMoveUsedString(u8* dst)
|
||||
static void ChooseTypeOfMoveUsedString(u8 *dst)
|
||||
{
|
||||
s32 counter = 0;
|
||||
s32 i = 0;
|
||||
@@ -2456,7 +2457,7 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) {
|
||||
if (!(textFlags & 0x80))
|
||||
{
|
||||
PutWindowTilemap(windowId);
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2469,7 +2470,7 @@ bool8 BattleStringShouldBeColored(u16 stringId)
|
||||
|
||||
void SetPpNumbersPaletteInMoveSelection(void)
|
||||
{
|
||||
struct ChooseMoveStruct *chooseMoveStruct = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBattler][4]);
|
||||
struct ChooseMoveStruct *chooseMoveStruct = (struct ChooseMoveStruct *)(&gBattleBufferA[gActiveBattler][4]);
|
||||
const u16 *palPtr = gUnknown_8D2FBB4;
|
||||
u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBattler]],
|
||||
chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBattler]]);
|
||||
|
||||
+14
-14
@@ -127,7 +127,7 @@ static void MainCB2_SetUp(void)
|
||||
gMain.state++;
|
||||
break;
|
||||
case 6:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
gMain.state++;
|
||||
break;
|
||||
case 7:
|
||||
@@ -167,7 +167,7 @@ static void Task_WaitFadeIn(u8 taskId)
|
||||
|
||||
static void Task_WaitButton(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
if (JOY_NEW(A_BUTTON) || JOY_NEW(B_BUTTON))
|
||||
{
|
||||
@@ -178,7 +178,7 @@ static void Task_WaitButton(u8 taskId)
|
||||
|
||||
static void Task_FadeOut(u8 taskId)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
gTasks[taskId].func = Task_DestroyAndReturnToField;
|
||||
}
|
||||
|
||||
@@ -205,19 +205,19 @@ static void ClearWindowCommitAndRemove(u8 windowId)
|
||||
static void ResetGpu(void)
|
||||
{
|
||||
{
|
||||
void * dest = (void *)VRAM;
|
||||
void *dest = (void *)VRAM;
|
||||
u32 size = VRAM_SIZE;
|
||||
DmaClearLarge16(3, dest, size, 0x1000);
|
||||
}
|
||||
|
||||
{
|
||||
void * dest = (void *)OAM;
|
||||
void *dest = (void *)OAM;
|
||||
u32 size = OAM_SIZE;
|
||||
DmaClear32(3, dest, size);
|
||||
}
|
||||
|
||||
{
|
||||
void * dest = (void *)PLTT;
|
||||
void *dest = (void *)PLTT;
|
||||
u32 size = PLTT_SIZE;
|
||||
DmaClear16(3, dest, size);
|
||||
}
|
||||
@@ -486,7 +486,7 @@ static void PrintTotalRecord(struct LinkBattleRecords * records)
|
||||
}
|
||||
|
||||
StringExpandPlaceholders(gStringVar4, gString_BattleRecords_TotalRecord);
|
||||
AddTextPrinterParameterized4(0, 2, 12, 24, 0, 2, sTextColor, 0, gStringVar4);
|
||||
AddTextPrinterParameterized4(0, FONT_2, 12, 24, 0, 2, sTextColor, 0, gStringVar4);
|
||||
}
|
||||
|
||||
static void PrintOpponentBattleRecord(struct LinkBattleRecord * record, u8 y)
|
||||
@@ -496,7 +496,7 @@ static void PrintOpponentBattleRecord(struct LinkBattleRecord * record, u8 y)
|
||||
|
||||
if (record->wins == 0 && record->losses == 0 && record->draws == 0)
|
||||
{
|
||||
AddTextPrinterParameterized4(0, 2, 0, y, 0, 2, sTextColor, 0, gString_BattleRecords_7Dashes);
|
||||
AddTextPrinterParameterized4(0, FONT_2, 0, y, 0, 2, sTextColor, 0, gString_BattleRecords_7Dashes);
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
if (i == 0)
|
||||
@@ -505,7 +505,7 @@ static void PrintOpponentBattleRecord(struct LinkBattleRecord * record, u8 y)
|
||||
x = 0x84;
|
||||
else
|
||||
x = 0xB4;
|
||||
AddTextPrinterParameterized4(0, 2, x, y, 0, 2, sTextColor, 0, gString_BattleRecords_4Dashes);
|
||||
AddTextPrinterParameterized4(0, FONT_2, x, y, 0, 2, sTextColor, 0, gString_BattleRecords_4Dashes);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -533,7 +533,7 @@ static void PrintOpponentBattleRecord(struct LinkBattleRecord * record, u8 y)
|
||||
x = 0xB4;
|
||||
ConvertIntToDecimalStringN(gStringVar1, record->draws, STR_CONV_MODE_RIGHT_ALIGN, 4);
|
||||
}
|
||||
AddTextPrinterParameterized4(0, 2, x, y, 0, 2, sTextColor, 0, gStringVar1);
|
||||
AddTextPrinterParameterized4(0, FONT_2, x, y, 0, 2, sTextColor, 0, gStringVar1);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -545,10 +545,10 @@ static void PrintBattleRecords(void)
|
||||
|
||||
FillWindowPixelRect(0, PIXEL_FILL(0), 0, 0, 0xD8, 0x90);
|
||||
StringExpandPlaceholders(gStringVar4, gString_BattleRecords_PlayersBattleResults);
|
||||
left = 0xD0 - GetStringWidth(2, gStringVar4, -1);
|
||||
AddTextPrinterParameterized4(0, 2, left / 2, 4, 0, 2, sTextColor, 0, gStringVar4);
|
||||
left = 0xD0 - GetStringWidth(FONT_2, gStringVar4, -1);
|
||||
AddTextPrinterParameterized4(0, FONT_2, left / 2, 4, 0, 2, sTextColor, 0, gStringVar4);
|
||||
PrintTotalRecord(&gSaveBlock2Ptr->linkBattleRecords);
|
||||
AddTextPrinterParameterized4(0, 2, 0x54, 0x30, 0, 2, sTextColor, 0, gString_BattleRecords_ColumnHeaders);
|
||||
AddTextPrinterParameterized4(0, FONT_2, 0x54, 0x30, 0, 2, sTextColor, 0, gString_BattleRecords_ColumnHeaders);
|
||||
for (i = 0; i < LINK_B_RECORDS_COUNT; i++)
|
||||
PrintOpponentBattleRecord(&gSaveBlock2Ptr->linkBattleRecords.entries[i], 0x3D + 14 * i);
|
||||
CommitWindow(0);
|
||||
@@ -557,7 +557,7 @@ static void PrintBattleRecords(void)
|
||||
static void CommitWindow(u8 windowId)
|
||||
{
|
||||
PutWindowTilemap(windowId);
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void LoadFrameGfxOnBg(u8 bg)
|
||||
|
||||
+3257
-2760
File diff suppressed because it is too large
Load Diff
+3
-3
@@ -181,7 +181,7 @@ static void Task_BattleStart(u8 taskId)
|
||||
case 0:
|
||||
if (!FldEffPoison_IsActive())
|
||||
{
|
||||
HelpSystem_Disable();
|
||||
HelpSystem_Disable();
|
||||
BT_StartOnField(tTransition);
|
||||
++tState;
|
||||
}
|
||||
@@ -189,7 +189,7 @@ static void Task_BattleStart(u8 taskId)
|
||||
case 1:
|
||||
if (BT_IsDone() == TRUE)
|
||||
{
|
||||
HelpSystem_Enable();
|
||||
HelpSystem_Enable();
|
||||
CleanupOverworldWindowsAndTilemaps();
|
||||
SetMainCallback2(CB2_InitBattle);
|
||||
RestartWildEncounterImmunitySteps();
|
||||
@@ -460,7 +460,7 @@ u8 BattleSetup_GetTerrainId(void)
|
||||
|
||||
PlayerGetDestCoords(&x, &y);
|
||||
tileBehavior = MapGridGetMetatileBehaviorAt(x, y);
|
||||
if (MetatileBehavior_IsTallGrass_2(tileBehavior))
|
||||
if (MetatileBehavior_IsTallGrass(tileBehavior))
|
||||
return BATTLE_TERRAIN_GRASS;
|
||||
if (MetatileBehavior_IsLongGrass(tileBehavior))
|
||||
return BATTLE_TERRAIN_LONG_GRASS;
|
||||
|
||||
+14
-14
@@ -394,7 +394,7 @@ static const TransitionStateFunc sBT_Phase2WhiteFadeInStripesFuncs[] =
|
||||
};
|
||||
|
||||
static const u16 sWhiteStripeDelay[] = { 0, 9, 15, 6, 12, 3 };
|
||||
|
||||
|
||||
static const TransitionStateFunc sBT_Phase2GridSquaresFuncs[] =
|
||||
{
|
||||
BT_Phase2GridSquares_LoadGfx,
|
||||
@@ -466,7 +466,7 @@ static const union AffineAnimCmd *const sSpriteAffineAnimTable_SlidingPokeball[]
|
||||
|
||||
static const struct SpriteTemplate sSpriteTemplate_SlidingPokeball =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = 0x1009,
|
||||
.oam = &gObjectEventBaseOam_32x32,
|
||||
.anims = sSpriteAnimTable_SlidingPokeball,
|
||||
@@ -480,7 +480,7 @@ static const struct OamData sOamData_Unused =
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.mosaic = FALSE,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.x = 0,
|
||||
@@ -519,7 +519,7 @@ static const union AnimCmd *const sSpriteAnimTable_Unused[] = { sSpriteAnim_Unus
|
||||
static const struct SpriteTemplate sSpriteTemplateTable_Unused[] =
|
||||
{
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = 0x100A,
|
||||
.oam = &sOamData_Unused,
|
||||
.anims = sSpriteAnimTable_Unused,
|
||||
@@ -528,7 +528,7 @@ static const struct SpriteTemplate sSpriteTemplateTable_Unused[] =
|
||||
.callback = SpriteCB_BT_Phase2Mugshots,
|
||||
},
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = 0x100A,
|
||||
.oam = &sOamData_Unused,
|
||||
.anims = sSpriteAnimTable_Unused,
|
||||
@@ -711,7 +711,7 @@ static bool8 BT_Phase2Blur_Anim(struct Task *task)
|
||||
{
|
||||
task->tInterval = 2;
|
||||
if (++task->tMosaicSize == 10)
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, RGB_BLACK);
|
||||
// The mosaic size argument is shared by HSIZE and VSIZE
|
||||
SetGpuReg(REG_OFFSET_MOSAIC, (task->tMosaicSize & 0xF) + ((task->tMosaicSize & 0xF) << 4));
|
||||
if (task->tMosaicSize > 14)
|
||||
@@ -742,7 +742,7 @@ static bool8 BT_Phase2DistortedWave_InitWave(struct Task *task)
|
||||
{
|
||||
BT_InitCtrlBlk();
|
||||
ScanlineEffect_Clear();
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 4, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK);
|
||||
BT_LoadWaveIntoBuffer(gScanlineEffectRegBuffers[1], sTransitionStructPtr->bg123HOfs, 0, 2, 0, 160);
|
||||
SetVBlankCallback(VBCB_BT_Phase2DistortedWave);
|
||||
SetHBlankCallback(HBCB_BT_Phase2DistortedWave);
|
||||
@@ -788,7 +788,7 @@ static bool8 BT_Phase2HorizontalCorrugate_Init(struct Task *task)
|
||||
{
|
||||
BT_InitCtrlBlk();
|
||||
ScanlineEffect_Clear();
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 4, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK);
|
||||
memset(gScanlineEffectRegBuffers[1], sTransitionStructPtr->bg123VOfs, 320);
|
||||
SetVBlankCallback(VBCB_BT_Phase2HorizontalCorrugate);
|
||||
SetHBlankCallback(HBCB_BT_Phase2HorizontalCorrugate);
|
||||
@@ -1022,7 +1022,7 @@ static void VBCB_BT_Phase2BigPokeball2(void)
|
||||
#undef tTheta
|
||||
#undef tAmplitude
|
||||
|
||||
// TODO: Document this effect after knowing more about field effects.
|
||||
// TODO: Document this effect after knowing more about field effects.
|
||||
static void BT_Phase2SlidingPokeballs(u8 taskId)
|
||||
{
|
||||
while (sBT_Phase2SlidingPokeballsFuncs[gTasks[taskId].tState](&gTasks[taskId]));
|
||||
@@ -1382,7 +1382,7 @@ static bool8 BT_Phase2FullScreenWave_UpdateWave(struct Task *task)
|
||||
if (++task->tDelayForFade == 41)
|
||||
{
|
||||
++task->tStartFade;
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -8, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -8, 0, 0x10, RGB_BLACK);
|
||||
}
|
||||
if (task->tStartFade && !gPaletteFade.active)
|
||||
DestroyTask(FindTaskIdByFunc(BT_Phase2FullScreenWave));
|
||||
@@ -1982,7 +1982,7 @@ static bool8 BT_Phase2Mugshot_ExpandWhiteBand(struct Task *task)
|
||||
static bool8 BT_Phase2Mugshot_StartBlackFade(struct Task *task)
|
||||
{
|
||||
sTransitionStructPtr->vblankDma = FALSE;
|
||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_WHITE);
|
||||
BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE);
|
||||
sTransitionStructPtr->bldCnt = BLDCNT_TGT1_BG0 | BLDCNT_TGT1_BG1 | BLDCNT_TGT1_BG2 | BLDCNT_TGT1_BG3 | BLDCNT_TGT1_OBJ | BLDCNT_TGT1_BD | BLDCNT_EFFECT_DARKEN;
|
||||
task->tCounter = 0;
|
||||
++task->tState;
|
||||
@@ -2310,7 +2310,7 @@ static bool8 BT_Phase2WhiteFadeInStripes_IsWhiteFadeDone(struct Task *task)
|
||||
sTransitionStructPtr->vblankDma = FALSE;
|
||||
if (sTransitionStructPtr->counter > 5)
|
||||
{
|
||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_WHITE);
|
||||
BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE);
|
||||
++task->tState;
|
||||
}
|
||||
return FALSE;
|
||||
@@ -2658,7 +2658,7 @@ static bool8 BT_Phase1_FadeIn(struct Task *task)
|
||||
task->tCoeff -= task->tFadeInSpeed;
|
||||
if (task->tCoeff < 0)
|
||||
task->tCoeff = 0;
|
||||
BlendPalettes(0xFFFFFFFF, task->tCoeff, RGB(11, 11, 11));
|
||||
BlendPalettes(PALETTES_ALL, task->tCoeff, RGB(11, 11, 11));
|
||||
}
|
||||
if (task->tCoeff == 0)
|
||||
{
|
||||
@@ -2719,7 +2719,7 @@ static void BT_GetBg0TilemapAndTilesetBase(u16 **tilemapPtr, u16 **tilesetPtr)
|
||||
|
||||
static void BT_BlendPalettesToBlack(void)
|
||||
{
|
||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK);
|
||||
}
|
||||
|
||||
static void BT_LoadWaveIntoBuffer(s16 *buffer, s16 offset, s16 theta, s16 frequency, s16 amplitude, s16 bufSize)
|
||||
|
||||
+43
-43
@@ -568,22 +568,22 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
case ENDTURN_RAIN:
|
||||
if (gBattleWeather & WEATHER_RAIN_ANY)
|
||||
if (gBattleWeather & B_WEATHER_RAIN)
|
||||
{
|
||||
if (!(gBattleWeather & WEATHER_RAIN_PERMANENT))
|
||||
if (!(gBattleWeather & B_WEATHER_RAIN_PERMANENT))
|
||||
{
|
||||
if (--gWishFutureKnock.weatherDuration == 0)
|
||||
{
|
||||
gBattleWeather &= ~WEATHER_RAIN_TEMPORARY;
|
||||
gBattleWeather &= ~WEATHER_RAIN_DOWNPOUR;
|
||||
gBattleWeather &= ~B_WEATHER_RAIN_TEMPORARY;
|
||||
gBattleWeather &= ~B_WEATHER_RAIN_DOWNPOUR;
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
|
||||
}
|
||||
else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR)
|
||||
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||
else
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
|
||||
}
|
||||
else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR)
|
||||
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
|
||||
{
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||
}
|
||||
@@ -597,11 +597,11 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
case ENDTURN_SANDSTORM:
|
||||
if (gBattleWeather & WEATHER_SANDSTORM_ANY)
|
||||
if (gBattleWeather & B_WEATHER_SANDSTORM)
|
||||
{
|
||||
if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
||||
if (!(gBattleWeather & B_WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
||||
{
|
||||
gBattleWeather &= ~WEATHER_SANDSTORM_TEMPORARY;
|
||||
gBattleWeather &= ~B_WEATHER_SANDSTORM_TEMPORARY;
|
||||
gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
|
||||
}
|
||||
else
|
||||
@@ -616,11 +616,11 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
case ENDTURN_SUN:
|
||||
if (gBattleWeather & WEATHER_SUN_ANY)
|
||||
if (gBattleWeather & B_WEATHER_SUN)
|
||||
{
|
||||
if (!(gBattleWeather & WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
||||
if (!(gBattleWeather & B_WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
||||
{
|
||||
gBattleWeather &= ~WEATHER_SUN_TEMPORARY;
|
||||
gBattleWeather &= ~B_WEATHER_SUN_TEMPORARY;
|
||||
gBattlescriptCurrInstr = BattleScript_SunlightFaded;
|
||||
}
|
||||
else
|
||||
@@ -633,11 +633,11 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
case ENDTURN_HAIL:
|
||||
if (gBattleWeather & WEATHER_HAIL_ANY)
|
||||
if (gBattleWeather & B_WEATHER_HAIL)
|
||||
{
|
||||
if (--gWishFutureKnock.weatherDuration == 0)
|
||||
{
|
||||
gBattleWeather &= ~WEATHER_HAIL;
|
||||
gBattleWeather &= ~B_WEATHER_HAIL_TEMPORARY;
|
||||
gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
|
||||
}
|
||||
else
|
||||
@@ -687,7 +687,7 @@ u8 DoBattlerEndTurnEffects(void)
|
||||
{
|
||||
u8 effect = 0;
|
||||
|
||||
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20);
|
||||
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||
while (gBattleStruct->turnEffectsBattlerId < gBattlersCount && gBattleStruct->turnEffectsTracker <= ENDTURN_BATTLER_COUNT)
|
||||
{
|
||||
gActiveBattler = gBattlerAttacker = gBattlerByTurnOrder[gBattleStruct->turnEffectsBattlerId];
|
||||
@@ -1000,13 +1000,13 @@ u8 DoBattlerEndTurnEffects(void)
|
||||
return effect;
|
||||
}
|
||||
}
|
||||
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_x20);
|
||||
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||
return 0;
|
||||
}
|
||||
|
||||
bool8 HandleWishPerishSongOnTurnEnd(void)
|
||||
{
|
||||
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20);
|
||||
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||
switch (gBattleStruct->wishPerishSongState)
|
||||
{
|
||||
case 0:
|
||||
@@ -1073,7 +1073,7 @@ bool8 HandleWishPerishSongOnTurnEnd(void)
|
||||
}
|
||||
break;
|
||||
}
|
||||
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_x20);
|
||||
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -1093,7 +1093,7 @@ bool8 HandleFaintedMonActions(void)
|
||||
++gBattleStruct->faintedActionsState;
|
||||
for (i = 0; i < gBattlersCount; ++i)
|
||||
{
|
||||
if (gAbsentBattlerFlags & gBitTable[i] && !HasNoMonsToSwitch(i, 6, 6))
|
||||
if (gAbsentBattlerFlags & gBitTable[i] && !HasNoMonsToSwitch(i, PARTY_SIZE, PARTY_SIZE))
|
||||
gAbsentBattlerFlags &= ~(gBitTable[i]);
|
||||
}
|
||||
// fall through
|
||||
@@ -1552,22 +1552,22 @@ u8 CastformDataTypeChange(u8 battler)
|
||||
}
|
||||
if (!WEATHER_HAS_EFFECT)
|
||||
return CASTFORM_NO_CHANGE;
|
||||
if (!(gBattleWeather & (WEATHER_RAIN_ANY | WEATHER_SUN_ANY | WEATHER_HAIL_ANY)) && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL))
|
||||
if (!(gBattleWeather & (B_WEATHER_RAIN | B_WEATHER_SUN | B_WEATHER_HAIL)) && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL))
|
||||
{
|
||||
SET_BATTLER_TYPE(battler, TYPE_NORMAL);
|
||||
formChange = CASTFORM_TO_NORMAL;
|
||||
}
|
||||
if (gBattleWeather & WEATHER_SUN_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_FIRE))
|
||||
if (gBattleWeather & B_WEATHER_SUN && !IS_BATTLER_OF_TYPE(battler, TYPE_FIRE))
|
||||
{
|
||||
SET_BATTLER_TYPE(battler, TYPE_FIRE);
|
||||
formChange = CASTFORM_TO_FIRE;
|
||||
}
|
||||
if (gBattleWeather & WEATHER_RAIN_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_WATER))
|
||||
if (gBattleWeather & B_WEATHER_RAIN && !IS_BATTLER_OF_TYPE(battler, TYPE_WATER))
|
||||
{
|
||||
SET_BATTLER_TYPE(battler, TYPE_WATER);
|
||||
formChange = CASTFORM_TO_WATER;
|
||||
}
|
||||
if (gBattleWeather & WEATHER_HAIL_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_ICE))
|
||||
if (gBattleWeather & B_WEATHER_HAIL && !IS_BATTLER_OF_TYPE(battler, TYPE_ICE))
|
||||
{
|
||||
SET_BATTLER_TYPE(battler, TYPE_ICE);
|
||||
formChange = CASTFORM_TO_ICE;
|
||||
@@ -1631,27 +1631,27 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
||||
case WEATHER_RAIN:
|
||||
case WEATHER_RAIN_THUNDERSTORM:
|
||||
case WEATHER_DOWNPOUR:
|
||||
if (!(gBattleWeather & WEATHER_RAIN_ANY))
|
||||
if (!(gBattleWeather & B_WEATHER_RAIN))
|
||||
{
|
||||
gBattleWeather = (WEATHER_RAIN_TEMPORARY | WEATHER_RAIN_PERMANENT);
|
||||
gBattleWeather = (B_WEATHER_RAIN_TEMPORARY | B_WEATHER_RAIN_PERMANENT);
|
||||
gBattleScripting.animArg1 = B_ANIM_RAIN_CONTINUES;
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
case WEATHER_SANDSTORM:
|
||||
if (!(gBattleWeather & WEATHER_SANDSTORM_ANY))
|
||||
if (!(gBattleWeather & B_WEATHER_SANDSTORM))
|
||||
{
|
||||
gBattleWeather = (WEATHER_SANDSTORM_PERMANENT | WEATHER_SANDSTORM_TEMPORARY);
|
||||
gBattleWeather = (B_WEATHER_SANDSTORM_PERMANENT | B_WEATHER_SANDSTORM_TEMPORARY);
|
||||
gBattleScripting.animArg1 = B_ANIM_SANDSTORM_CONTINUES;
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
case WEATHER_DROUGHT:
|
||||
if (!(gBattleWeather & WEATHER_SUN_ANY))
|
||||
if (!(gBattleWeather & B_WEATHER_SUN))
|
||||
{
|
||||
gBattleWeather = (WEATHER_SUN_PERMANENT | WEATHER_SUN_TEMPORARY);
|
||||
gBattleWeather = (B_WEATHER_SUN_PERMANENT | B_WEATHER_SUN_TEMPORARY);
|
||||
gBattleScripting.animArg1 = B_ANIM_SUN_CONTINUES;
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
@@ -1665,27 +1665,27 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
||||
}
|
||||
break;
|
||||
case ABILITY_DRIZZLE:
|
||||
if (!(gBattleWeather & WEATHER_RAIN_PERMANENT))
|
||||
if (!(gBattleWeather & B_WEATHER_RAIN_PERMANENT))
|
||||
{
|
||||
gBattleWeather = (WEATHER_RAIN_PERMANENT | WEATHER_RAIN_TEMPORARY);
|
||||
gBattleWeather = (B_WEATHER_RAIN_PERMANENT | B_WEATHER_RAIN_TEMPORARY);
|
||||
BattleScriptPushCursorAndCallback(BattleScript_DrizzleActivates);
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
case ABILITY_SAND_STREAM:
|
||||
if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT))
|
||||
if (!(gBattleWeather & B_WEATHER_SANDSTORM_PERMANENT))
|
||||
{
|
||||
gBattleWeather = (WEATHER_SANDSTORM_PERMANENT | WEATHER_SANDSTORM_TEMPORARY);
|
||||
gBattleWeather = (B_WEATHER_SANDSTORM_PERMANENT | B_WEATHER_SANDSTORM_TEMPORARY);
|
||||
BattleScriptPushCursorAndCallback(BattleScript_SandstreamActivates);
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
case ABILITY_DROUGHT:
|
||||
if (!(gBattleWeather & WEATHER_SUN_PERMANENT))
|
||||
if (!(gBattleWeather & B_WEATHER_SUN_PERMANENT))
|
||||
{
|
||||
gBattleWeather = (WEATHER_SUN_PERMANENT | WEATHER_SUN_TEMPORARY);
|
||||
gBattleWeather = (B_WEATHER_SUN_PERMANENT | B_WEATHER_SUN_TEMPORARY);
|
||||
BattleScriptPushCursorAndCallback(BattleScript_DroughtActivates);
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
@@ -1739,7 +1739,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
||||
switch (gLastUsedAbility)
|
||||
{
|
||||
case ABILITY_RAIN_DISH:
|
||||
if (WEATHER_HAS_EFFECT && (gBattleWeather & WEATHER_RAIN_ANY)
|
||||
if (WEATHER_HAS_EFFECT && (gBattleWeather & B_WEATHER_RAIN)
|
||||
&& gBattleMons[battler].maxHP > gBattleMons[battler].hp)
|
||||
{
|
||||
gLastUsedAbility = ABILITY_RAIN_DISH; // why
|
||||
@@ -1874,7 +1874,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ABILITYEFFECT_MOVE_END: // Think contact abilities.
|
||||
case ABILITYEFFECT_ON_DAMAGE: // Think contact abilities.
|
||||
switch (gLastUsedAbility)
|
||||
{
|
||||
case ABILITY_COLOR_CHANGE:
|
||||
@@ -2234,12 +2234,12 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
||||
case ABILITYEFFECT_FIELD_SPORT: // 14
|
||||
switch (gLastUsedAbility)
|
||||
{
|
||||
case 0xFD:
|
||||
case ABILITYEFFECT_MUD_SPORT:
|
||||
for (i = 0; i < gBattlersCount; ++i)
|
||||
if (gStatuses3[i] & STATUS3_MUDSPORT)
|
||||
effect = i + 1;
|
||||
break;
|
||||
case 0xFE:
|
||||
case ABILITYEFFECT_WATER_SPORT:
|
||||
for (i = 0; i < gBattlersCount; ++i)
|
||||
if (gStatuses3[i] & STATUS3_WATERSPORT)
|
||||
effect = i + 1;
|
||||
@@ -2971,12 +2971,12 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
|
||||
if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)
|
||||
&& TARGET_TURN_DAMAGED
|
||||
&& (Random() % 100) < battlerHoldEffectParam
|
||||
&& gBattleMoves[gCurrentMove].flags & FLAG_KINGSROCK_AFFECTED
|
||||
&& gBattleMoves[gCurrentMove].flags & FLAG_KINGS_ROCK_AFFECTED
|
||||
&& gBattleMons[gBattlerTarget].hp)
|
||||
{
|
||||
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_FLINCH;
|
||||
BattleScriptPushCursor();
|
||||
SetMoveEffect(0, 0);
|
||||
SetMoveEffect(FALSE, 0);
|
||||
BattleScriptPop();
|
||||
}
|
||||
break;
|
||||
@@ -3016,7 +3016,7 @@ void ClearFuryCutterDestinyBondGrudge(u8 battlerId)
|
||||
|
||||
void HandleAction_RunBattleScript(void) // identical to RunBattleScriptCommands
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleScriptingCommandsTable[*gBattlescriptCurrInstr]();
|
||||
}
|
||||
|
||||
@@ -3158,7 +3158,7 @@ u8 IsMonDisobedient(void)
|
||||
gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos];
|
||||
gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove;
|
||||
gBattlerTarget = GetMoveTarget(gCalledMove, 0);
|
||||
gHitMarker |= HITMARKER_x200000;
|
||||
gHitMarker |= HITMARKER_DISOBEDIENT_MOVE;
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
|
||||
+57
-57
@@ -387,10 +387,10 @@ static void DrawPlayerNameWindows(struct BerryCrushGame * game);
|
||||
static void CopyPlayerNameWindowGfxToBg(struct BerryCrushGame * game);
|
||||
static void CreateGameSprites(struct BerryCrushGame * game);
|
||||
static void DestroyGameSprites(struct BerryCrushGame * game);
|
||||
static void SpriteCB_Impact(struct Sprite * sprite);
|
||||
static void SpriteCB_Sparkle_End(struct Sprite * sprite);
|
||||
static void SpriteCB_Sparkle(struct Sprite * sprite);
|
||||
static void SpriteCB_Sparkle_Init(struct Sprite * sprite);
|
||||
static void SpriteCB_Impact(struct Sprite *sprite);
|
||||
static void SpriteCB_Sparkle_End(struct Sprite *sprite);
|
||||
static void SpriteCB_Sparkle(struct Sprite *sprite);
|
||||
static void SpriteCB_Sparkle_Init(struct Sprite *sprite);
|
||||
static struct BerryCrushGame *GetBerryCrushGame(void);
|
||||
static u32 QuitBerryCrush(MainCallback callback);
|
||||
static void ChooseBerry(void);
|
||||
@@ -410,7 +410,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame *game, struct BerryCrushGa
|
||||
static void CloseResultsWindow(struct BerryCrushGame *game);
|
||||
static void ResetCrusherPos(struct BerryCrushGame *game);
|
||||
static void HideTimer(struct BerryCrushGame_Gfx *gfx);
|
||||
static void SpriteCB_DropBerryIntoCrusher(struct Sprite * sprite);
|
||||
static void SpriteCB_DropBerryIntoCrusher(struct Sprite *sprite);
|
||||
|
||||
static const u8 sBitTable[] = {
|
||||
1 << 0,
|
||||
@@ -1268,13 +1268,13 @@ static u32 Cmd_PrintMessage(struct BerryCrushGame * game, u8 *args)
|
||||
if (bFlags & F_MSG_EXPAND)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, sMessages[bMsgId]);
|
||||
AddTextPrinterParameterized2(0, 2, gStringVar4, game->textSpeed, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gStringVar4, game->textSpeed, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
}
|
||||
else
|
||||
{
|
||||
AddTextPrinterParameterized2(0, 2, sMessages[bMsgId], game->textSpeed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
AddTextPrinterParameterized2(0, FONT_2, sMessages[bMsgId], game->textSpeed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
}
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
break;
|
||||
case 1:
|
||||
if (!IsTextPrinterActive(0))
|
||||
@@ -2222,12 +2222,12 @@ static u32 Cmd_SaveGame(struct BerryCrushGame * game, u8 *args)
|
||||
if (!IsLinkTaskFinished())
|
||||
return 0;
|
||||
DrawDialogueFrame(0, FALSE);
|
||||
AddTextPrinterParameterized2(0, 2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CreateTask(Task_LinkSave, 0);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
CreateTask(Task_LinkFullSave, 0);
|
||||
break;
|
||||
case 3:
|
||||
if (FuncIsActiveTask(Task_LinkSave))
|
||||
if (FuncIsActiveTask(Task_LinkFullSave))
|
||||
return 0;
|
||||
break;
|
||||
case 4:
|
||||
@@ -2367,10 +2367,10 @@ static u32 Cmd_StopGame(struct BerryCrushGame * game, UNUSED u8 *args)
|
||||
case 0:
|
||||
DrawDialogueFrame(0, FALSE);
|
||||
if (game->playAgainState == PLAY_AGAIN_NO_BERRIES)
|
||||
AddTextPrinterParameterized2(0, 2, sMessages[MSG_NO_BERRIES], game->textSpeed, NULL, 2, 1, 3);
|
||||
AddTextPrinterParameterized2(0, FONT_2, sMessages[MSG_NO_BERRIES], game->textSpeed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
else
|
||||
AddTextPrinterParameterized2(0, 2, sMessages[MSG_DROPPED], game->textSpeed, NULL, 2, 1, 3);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized2(0, FONT_2, sMessages[MSG_DROPPED], game->textSpeed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
break;
|
||||
case 1:
|
||||
if (IsTextPrinterActive(0))
|
||||
@@ -2728,7 +2728,7 @@ static void CreateBerrySprites(struct BerryCrushGame * game, struct BerryCrushGa
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_DropBerryIntoCrusher(struct Sprite * sprite)
|
||||
static void SpriteCB_DropBerryIntoCrusher(struct Sprite *sprite)
|
||||
{
|
||||
s16 *data = sprite->data;
|
||||
|
||||
@@ -2896,8 +2896,8 @@ static void FramesToMinSec(struct BerryCrushGame_Gfx * gfx, u16 frames)
|
||||
|
||||
static void PrintTextCentered(u8 windowId, u8 left, u8 colorId, const u8 *string)
|
||||
{
|
||||
left = (left * 4) - (GetStringWidth(2, string, -1) / 2u);
|
||||
AddTextPrinterParameterized3(windowId, 2, left, 0, sBerryCrushTextColorTable[colorId], 0, string);
|
||||
left = (left * 4) - (GetStringWidth(FONT_2, string, -1) / 2u);
|
||||
AddTextPrinterParameterized3(windowId, FONT_2, left, 0, sBerryCrushTextColorTable[colorId], 0, string);
|
||||
}
|
||||
|
||||
static void PrintResultsText(struct BerryCrushGame * game, u8 command, u8 x, u8 y)
|
||||
@@ -2922,9 +2922,9 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 command, u8 x, u8
|
||||
if (i != 0 && bcPlayers->stats[command][i] != bcPlayers->stats[command][i - 1])
|
||||
linkIdToPrint = i;
|
||||
ConvertIntToDecimalStringN(gStringVar1, bcPlayers->stats[command][i], STR_CONV_MODE_RIGHT_ALIGN, 4);
|
||||
realX = x - GetStringWidth(2, sBCRankingHeaders[command], -1) - 4;
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, realX, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, sBCRankingHeaders[command]);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, realX - 24, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar1);
|
||||
realX = x - GetStringWidth(FONT_2, sBCRankingHeaders[command], -1) - 4;
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, realX, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, sBCRankingHeaders[command]);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, realX - 24, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar1);
|
||||
break;
|
||||
case RESULTS_PAGE_RANDOM:
|
||||
// Neatness
|
||||
@@ -2943,7 +2943,7 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 command, u8 x, u8
|
||||
ConvertIntToDecimalStringN(gStringVar2, realX, STR_CONV_MODE_LEADING_ZEROS, 2);
|
||||
StringExpandPlaceholders(gStringVar4, sBCRankingHeaders[command]);
|
||||
realX2 = x - 4;
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, realX2 - GetStringWidth(2, gStringVar4, 0), y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, realX2 - GetStringWidth(FONT_2, gStringVar4, 0), y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
break;
|
||||
case RESULTS_PAGE_CRUSHING:
|
||||
// Berry names
|
||||
@@ -2954,7 +2954,7 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 command, u8 x, u8
|
||||
j = 0;
|
||||
StringCopy(gStringVar1, gBerries[j].name);
|
||||
StringExpandPlaceholders(gStringVar4, sBCRankingHeaders[command]);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x - GetStringWidth(2, gStringVar4, -1) - 4, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x - GetStringWidth(FONT_2, gStringVar4, -1) - 4, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
break;
|
||||
}
|
||||
if (linkPlayerId == game->localId)
|
||||
@@ -2964,7 +2964,7 @@ static void PrintResultsText(struct BerryCrushGame * game, u8 command, u8 x, u8
|
||||
gStringVar3[0] = linkIdToPrint + CHAR_1;
|
||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, game->players[linkPlayerId].name);
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gStringVar3);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 4, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, 4, y + 14 * i, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2977,30 +2977,30 @@ static void printCrushingResults(struct BerryCrushGame * game)
|
||||
u8 y = GetWindowAttribute(game->gfx.resultsWindowId, WINDOW_HEIGHT) * 8 - 42;
|
||||
|
||||
FramesToMinSec(&game->gfx, players->time);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 2, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_TimeColon);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, 2, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_TimeColon);
|
||||
|
||||
x = 190 - (u8)GetStringWidth(2, gText_SpaceSec, 0);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_SpaceSec);
|
||||
x = 190 - (u8)GetStringWidth(FONT_2, gText_SpaceSec, 0);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_SpaceSec);
|
||||
|
||||
x -= 32;
|
||||
ConvertIntToDecimalStringN(gStringVar1, game->gfx.secondsInt, STR_CONV_MODE_LEADING_ZEROS, 2);
|
||||
ConvertIntToDecimalStringN(gStringVar2, game->gfx.secondsFrac, STR_CONV_MODE_LEADING_ZEROS, 2);
|
||||
StringExpandPlaceholders(gStringVar4, gText_XDotY2);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
|
||||
x -= (u8)GetStringWidth(2, gText_SpaceMin, 0) + 3;
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_SpaceMin);
|
||||
x -= (u8)GetStringWidth(FONT_2, gText_SpaceMin, 0) + 3;
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_SpaceMin);
|
||||
|
||||
x -= 9;
|
||||
ConvertIntToDecimalStringN(gStringVar1, game->gfx.minutes, STR_CONV_MODE_LEADING_ZEROS, 1);
|
||||
StringExpandPlaceholders(gStringVar4, gText_StrVar1);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
|
||||
y += 14;
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 2, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_PressingSpeed);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, 2, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_PressingSpeed);
|
||||
|
||||
x = 190 - (u8)GetStringWidth(2, gText_TimesPerSec, 0);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 3, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec);
|
||||
x = 190 - (u8)GetStringWidth(FONT_2, gText_TimesPerSec, 0);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_3, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_TimesPerSec);
|
||||
|
||||
for (i = 0; i < 8; ++i)
|
||||
if (((u8)game->pressingSpeed >> (7 - i)) & 1)
|
||||
@@ -3010,17 +3010,17 @@ static void printCrushingResults(struct BerryCrushGame * game)
|
||||
StringExpandPlaceholders(gStringVar4, gText_XDotY3);
|
||||
x -= 38;
|
||||
if (game->newRecord)
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sBerryCrushTextColorTable[COLORID_RED], 0, gStringVar4);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x, y, sBerryCrushTextColorTable[COLORID_RED], 0, gStringVar4);
|
||||
else
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
|
||||
y += 14;
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, 2, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_Silkiness);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, 2, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gText_Silkiness);
|
||||
|
||||
ConvertIntToDecimalStringN(gStringVar1, players->silkiness, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_Var1Percent);
|
||||
x = 190 - (u8)GetStringWidth(2, gStringVar4, 0);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, 2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
x = 190 - (u8)GetStringWidth(FONT_2, gStringVar4, 0);
|
||||
AddTextPrinterParameterized3(game->gfx.resultsWindowId, FONT_2, x, y, sBerryCrushTextColorTable[COLORID_GRAY], 0, gStringVar4);
|
||||
}
|
||||
|
||||
static bool32 OpenResultsWindow(struct BerryCrushGame * game, struct BerryCrushGame_Gfx * spriteManager)
|
||||
@@ -3073,7 +3073,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame * game, struct BerryCrushG
|
||||
printCrushingResults(game);
|
||||
break;
|
||||
case 5:
|
||||
CopyWindowToVram(spriteManager->resultsWindowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(spriteManager->resultsWindowId, COPYWIN_FULL);
|
||||
spriteManager->resultsState = 0;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -3109,20 +3109,20 @@ static void Task_ShowBerryCrushRankings(u8 taskId)
|
||||
DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 0x21D, 0xD);
|
||||
break;
|
||||
case 1:
|
||||
xPos = 96 - GetStringWidth(2, gText_BerryCrush2, -1) / 2u;
|
||||
xPos = 96 - GetStringWidth(FONT_2, gText_BerryCrush2, -1) / 2u;
|
||||
AddTextPrinterParameterized3(
|
||||
tWindowId,
|
||||
2,
|
||||
FONT_2,
|
||||
xPos,
|
||||
2,
|
||||
sBerryCrushTextColorTable[COLORID_BLUE],
|
||||
0,
|
||||
gText_BerryCrush2
|
||||
);
|
||||
xPos = 96 - GetStringWidth(2, gText_PressingSpeedRankings, -1) / 2u;
|
||||
xPos = 96 - GetStringWidth(FONT_2, gText_PressingSpeedRankings, -1) / 2u;
|
||||
AddTextPrinterParameterized3(
|
||||
tWindowId,
|
||||
2,
|
||||
FONT_2,
|
||||
xPos,
|
||||
18,
|
||||
sBerryCrushTextColorTable[COLORID_BLUE],
|
||||
@@ -3136,7 +3136,7 @@ static void Task_ShowBerryCrushRankings(u8 taskId)
|
||||
StringExpandPlaceholders(gStringVar4, gText_Var1Players);
|
||||
AddTextPrinterParameterized3(
|
||||
tWindowId,
|
||||
2,
|
||||
FONT_2,
|
||||
4,
|
||||
yPos,
|
||||
sBerryCrushTextColorTable[COLORID_GRAY],
|
||||
@@ -3153,10 +3153,10 @@ static void Task_ShowBerryCrushRankings(u8 taskId)
|
||||
str = StringExpandPlaceholders(gStringVar4, gText_XDotY3);
|
||||
*str++ = CHAR_SPACE;
|
||||
StringCopy(str, gText_TimesPerSec);
|
||||
xPos = 192 - (u8)GetStringWidth(3, gStringVar4, 0);
|
||||
xPos = 192 - (u8)GetStringWidth(FONT_3, gStringVar4, 0);
|
||||
AddTextPrinterParameterized3(
|
||||
tWindowId,
|
||||
3,
|
||||
FONT_3,
|
||||
xPos,
|
||||
yPos,
|
||||
sBerryCrushTextColorTable[COLORID_GRAY],
|
||||
@@ -3166,7 +3166,7 @@ static void Task_ShowBerryCrushRankings(u8 taskId)
|
||||
yPos += 14;
|
||||
score = 0;
|
||||
}
|
||||
CopyWindowToVram(tWindowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(tWindowId, COPYWIN_FULL);
|
||||
break;
|
||||
case 2:
|
||||
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
||||
@@ -3239,8 +3239,8 @@ static void DrawPlayerNameWindows(struct BerryCrushGame * game)
|
||||
{
|
||||
AddTextPrinterParameterized4(
|
||||
game->gfx.nameWindowIds[i],
|
||||
2,
|
||||
36 - GetStringWidth(2, game->players[i].name, 0) / 2u,
|
||||
FONT_2,
|
||||
36 - GetStringWidth(FONT_2, game->players[i].name, 0) / 2u,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
@@ -3253,8 +3253,8 @@ static void DrawPlayerNameWindows(struct BerryCrushGame * game)
|
||||
{
|
||||
AddTextPrinterParameterized4(
|
||||
game->gfx.nameWindowIds[i],
|
||||
2,
|
||||
36 - GetStringWidth(2, game->players[i].name, 0) / 2u,
|
||||
FONT_2,
|
||||
36 - GetStringWidth(FONT_2, game->players[i].name, 0) / 2u,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
@@ -3263,7 +3263,7 @@ static void DrawPlayerNameWindows(struct BerryCrushGame * game)
|
||||
game->players[i].name
|
||||
);
|
||||
}
|
||||
CopyWindowToVram(game->gfx.nameWindowIds[i], COPYWIN_BOTH);
|
||||
CopyWindowToVram(game->gfx.nameWindowIds[i], COPYWIN_FULL);
|
||||
}
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
}
|
||||
@@ -3387,7 +3387,7 @@ static void DestroyGameSprites(struct BerryCrushGame * game)
|
||||
DestroySprite(game->gfx.coreSprite);
|
||||
}
|
||||
|
||||
static void SpriteCB_Impact(struct Sprite * sprite)
|
||||
static void SpriteCB_Impact(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->animEnded)
|
||||
{
|
||||
@@ -3396,7 +3396,7 @@ static void SpriteCB_Impact(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_Sparkle_End(struct Sprite * sprite)
|
||||
static void SpriteCB_Sparkle_End(struct Sprite *sprite)
|
||||
{
|
||||
u8 r1 = 0;
|
||||
SpriteCallback r5 = SpriteCallbackDummy;
|
||||
@@ -3425,7 +3425,7 @@ static void SpriteCB_Sparkle_End(struct Sprite * sprite)
|
||||
#define MASK_TARGET_Y 0x7FFF
|
||||
#define F_MOVE_HORIZ 0x8000
|
||||
|
||||
static void SpriteCB_Sparkle(struct Sprite * sprite)
|
||||
static void SpriteCB_Sparkle(struct Sprite *sprite)
|
||||
{
|
||||
s16 *data = sprite->data;
|
||||
|
||||
@@ -3447,7 +3447,7 @@ static void SpriteCB_Sparkle(struct Sprite * sprite)
|
||||
sprite->callback = SpriteCB_Sparkle_End;
|
||||
}
|
||||
|
||||
static void SpriteCB_Sparkle_Init(struct Sprite * sprite)
|
||||
static void SpriteCB_Sparkle_Init(struct Sprite *sprite)
|
||||
{
|
||||
s16 *data = sprite->data;
|
||||
s16 xMult, var;
|
||||
|
||||
@@ -20,7 +20,7 @@ typedef struct {
|
||||
|
||||
// Static RAM declarations
|
||||
|
||||
const void * gUnknown_3005EF0;
|
||||
const void *gUnknown_3005EF0;
|
||||
int gUnknown_3005EF4;
|
||||
size_t gUnknown_3005EF8;
|
||||
struct MultiBootParam gUnknown_3005F00;
|
||||
|
||||
+26
-26
@@ -552,11 +552,11 @@ static bool8 RunBerryPouchInit(void)
|
||||
gMain.state++;
|
||||
break;
|
||||
case 17:
|
||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||
gMain.state++;
|
||||
break;
|
||||
case 18:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -2, 16, 0, RGB_BLACK);
|
||||
gMain.state++;
|
||||
break;
|
||||
default:
|
||||
@@ -570,7 +570,7 @@ static bool8 RunBerryPouchInit(void)
|
||||
|
||||
static void AbortBerryPouchLoading(void)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||
CreateTask(Task_AbortBerryPouchLoading_WaitFade, 0);
|
||||
SetVBlankCallback(VBlankCB_BerryPouchIdle);
|
||||
SetMainCallback2(CB2_BerryPouchIdle);
|
||||
@@ -672,7 +672,7 @@ static void SetUpListMenuTemplate(void)
|
||||
gMultiuseListMenuTemplate.itemVerticalPadding = 2;
|
||||
gMultiuseListMenuTemplate.upText_Y = 2;
|
||||
gMultiuseListMenuTemplate.maxShowed = sResources->listMenuMaxShowed;
|
||||
gMultiuseListMenuTemplate.fontId = 2;
|
||||
gMultiuseListMenuTemplate.fontId = FONT_2;
|
||||
gMultiuseListMenuTemplate.cursorPal = 2;
|
||||
gMultiuseListMenuTemplate.fillValue = 0;
|
||||
gMultiuseListMenuTemplate.cursorShadowPal = 3;
|
||||
@@ -726,7 +726,7 @@ static void BerryPouchItemPrintFunc(u8 windowId, u32 itemId, u8 y)
|
||||
itemQuantity = BagGetQuantityByPocketPosition(POCKET_BERRY_POUCH, itemId);
|
||||
ConvertIntToDecimalStringN(gStringVar1, itemQuantity, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BerryPouchPrint(windowId, 0, gStringVar4, 110, y, 0, 0, 0xFF, 1);
|
||||
BerryPouchPrint(windowId, FONT_0, gStringVar4, 110, y, 0, 0, 0xFF, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -741,14 +741,14 @@ static void BerryPouchSetArrowCursorAt(u8 y, u8 colorIdx)
|
||||
u8 height;
|
||||
if (colorIdx == 0xFF)
|
||||
{
|
||||
width = GetMenuCursorDimensionByFont(2, 0);
|
||||
height = GetMenuCursorDimensionByFont(2, 1);
|
||||
width = GetMenuCursorDimensionByFont(FONT_2, 0);
|
||||
height = GetMenuCursorDimensionByFont(FONT_2, 1);
|
||||
FillWindowPixelRect(0, 0, 1, y, width, height);
|
||||
CopyWindowToVram(0, COPYWIN_GFX);
|
||||
}
|
||||
else
|
||||
{
|
||||
BerryPouchPrint(0, 2, gText_SelectorArrow2, 1, y, 0, 0, 0, colorIdx);
|
||||
BerryPouchPrint(0, FONT_2, gText_SelectorArrow2, 1, y, 0, 0, 0, colorIdx);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -760,7 +760,7 @@ static void PrintSelectedBerryDescription(s32 itemIdx)
|
||||
else
|
||||
str = gText_TheBerryPouchWillBePutAway;
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(0));
|
||||
BerryPouchPrint(1, 2, str, 0, 2, 2, 0, 0, 0);
|
||||
BerryPouchPrint(1, FONT_2, str, 0, 2, 2, 0, 0, 0);
|
||||
}
|
||||
|
||||
static void SetDescriptionWindowBorderPalette(s32 pal)
|
||||
@@ -800,8 +800,8 @@ static void DestroyScrollIndicatorArrows(void)
|
||||
|
||||
static void PrintBerryPouchHeaderCentered(void)
|
||||
{
|
||||
u32 slack = 72 - GetStringWidth(1, gText_BerryPouch, 0);
|
||||
BerryPouchPrint(2, 1, gText_BerryPouch, slack / 2, 1, 0, 0, 0, 0);
|
||||
u32 slack = 72 - GetStringWidth(FONT_1, gText_BerryPouch, 0);
|
||||
BerryPouchPrint(2, FONT_1, gText_BerryPouch, slack / 2, 1, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
void BerryPouch_CursorResetToTop(void)
|
||||
@@ -859,7 +859,7 @@ static void BerryPouch_DestroyResources(void)
|
||||
|
||||
void BerryPouch_StartFadeToExitCallback(u8 taskId)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||
gTasks[taskId].func = Task_BerryPouchFadeToExitCallback;
|
||||
}
|
||||
|
||||
@@ -914,11 +914,11 @@ void InitTossQuantitySelectUI(u8 taskId, const u8 * str)
|
||||
u8 windowId2;
|
||||
CopySelectedListMenuItemName(data[1], gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, str);
|
||||
BerryPouchPrint(windowId, 2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
BerryPouchPrint(windowId, FONT_2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
windowId2 = GetOrCreateVariableWindow(0);
|
||||
ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BerryPouchPrint(windowId2, 0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
BerryPouchPrint(windowId2, FONT_0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
}
|
||||
|
||||
static void PrintxQuantityOnWindow(u8 whichWindow, s16 quantity, u8 ndigits)
|
||||
@@ -927,7 +927,7 @@ static void PrintxQuantityOnWindow(u8 whichWindow, s16 quantity, u8 ndigits)
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||
ConvertIntToDecimalStringN(gStringVar1, quantity, STR_CONV_MODE_LEADING_ZEROS, ndigits);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BerryPouchPrint(windowId, 0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
BerryPouchPrint(windowId, FONT_0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
}
|
||||
|
||||
static void Task_BerryPouchMain(u8 taskId)
|
||||
@@ -1023,12 +1023,12 @@ static void CreateNormalContextMenu(u8 taskId)
|
||||
sContextMenuNumOptions = 4;
|
||||
}
|
||||
windowId = GetOrCreateVariableWindow(sContextMenuNumOptions + 9);
|
||||
AddItemMenuActionTextPrinters(windowId, 2, GetMenuCursorDimensionByFont(2, 0), 2, GetFontAttribute(2, FONTATTR_LETTER_SPACING), GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 2, sContextMenuNumOptions, sContextMenuActions, sContextMenuOptions);
|
||||
Menu_InitCursor(windowId, 2, 0, 2, GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 2, sContextMenuNumOptions, 0);
|
||||
AddItemMenuActionTextPrinters(windowId, FONT_2, GetMenuCursorDimensionByFont(FONT_2, 0), 2, GetFontAttribute(FONT_2, FONTATTR_LETTER_SPACING), GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 2, sContextMenuNumOptions, sContextMenuActions, sContextMenuOptions);
|
||||
Menu_InitCursor(windowId, FONT_2, 0, 2, GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 2, sContextMenuNumOptions, 0);
|
||||
windowId2 = GetOrCreateVariableWindow(6);
|
||||
CopySelectedListMenuItemName(data[1], gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gText_Var1IsSelected);
|
||||
BerryPouchPrint(windowId2, 2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
BerryPouchPrint(windowId2, FONT_2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
}
|
||||
|
||||
static void Task_NormalContextMenu(u8 taskId)
|
||||
@@ -1104,7 +1104,7 @@ static void Task_AskTossMultiple(u8 taskId)
|
||||
s16 * data = gTasks[taskId].data;
|
||||
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_ThrowAwayStrVar2OfThisItemQM);
|
||||
BerryPouchPrint(GetOrCreateVariableWindow(7), 2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
BerryPouchPrint(GetOrCreateVariableWindow(7), FONT_2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
CreateYesNoMenuWin3(taskId, &sYesNoFuncs_Toss);
|
||||
}
|
||||
|
||||
@@ -1158,7 +1158,7 @@ static void Task_TossYes(u8 taskId)
|
||||
CopySelectedListMenuItemName(data[1], gStringVar1);
|
||||
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_ThrewAwayStrVar2StrVar1s);
|
||||
BerryPouchPrint(GetOrCreateVariableWindow(9), 2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
BerryPouchPrint(GetOrCreateVariableWindow(9), FONT_2, gStringVar4, 0, 2, 1, 2, 0, 1);
|
||||
gTasks[taskId].func = Task_WaitButtonThenTossBerries;
|
||||
}
|
||||
|
||||
@@ -1201,7 +1201,7 @@ static void Task_BerryPouch_Give(u8 taskId)
|
||||
|
||||
static void Task_Give_PrintThereIsNoPokemon(u8 taskId)
|
||||
{
|
||||
DisplayItemMessageInBerryPouch(taskId, 2, gText_ThereIsNoPokemon, Task_WaitButtonBeforeDialogueWindowDestruction);
|
||||
DisplayItemMessageInBerryPouch(taskId, FONT_2, gText_ThereIsNoPokemon, Task_WaitButtonBeforeDialogueWindowDestruction);
|
||||
}
|
||||
|
||||
static void Task_WaitButtonBeforeDialogueWindowDestruction(u8 taskId)
|
||||
@@ -1247,7 +1247,7 @@ static void Task_ContextMenu_FromPartyGiveMenu(u8 taskId)
|
||||
{
|
||||
CopyItemName(itemId, gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TheStrVar1CantBeHeldHere);
|
||||
DisplayItemMessageInBerryPouch(taskId, 2, gStringVar4, Task_WaitButtonBeforeDialogueWindowDestruction);
|
||||
DisplayItemMessageInBerryPouch(taskId, FONT_2, gStringVar4, Task_WaitButtonBeforeDialogueWindowDestruction);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1322,7 +1322,7 @@ static void Task_Sell_PrintSelectMultipleUI(u8 taskId)
|
||||
u8 windowId = GetOrCreateVariableWindow(1);
|
||||
ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 2);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BerryPouchPrint(windowId, 0, gStringVar4, 4, 10, 1, 0, 0xFF, 1);
|
||||
BerryPouchPrint(windowId, FONT_0, gStringVar4, 4, 10, 1, 0, 0xFF, 1);
|
||||
SellMultiple_UpdateSellPriceDisplay(itemid_get_market_price(BagGetItemIdByPocketPosition(POCKET_BERRY_POUCH, data[1])) / 2 * data[8]);
|
||||
PrintMoneyInWin2();
|
||||
CreateScrollIndicatorArrows_SellQuantity();
|
||||
@@ -1375,7 +1375,7 @@ static void Task_SellYes(u8 taskId)
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar1);
|
||||
ConvertIntToDecimalStringN(gStringVar3, itemid_get_market_price(BagGetItemIdByPocketPosition(POCKET_BERRY_POUCH, data[1])) / 2 * data[8], STR_CONV_MODE_LEFT_ALIGN, 6);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TurnedOverItemsWorthYen);
|
||||
DisplayItemMessageInBerryPouch(taskId, 2, gStringVar4, Task_SellBerries_PlaySfxAndRemoveBerries);
|
||||
DisplayItemMessageInBerryPouch(taskId, FONT_2, gStringVar4, Task_SellBerries_PlaySfxAndRemoveBerries);
|
||||
}
|
||||
|
||||
static void Task_SellBerries_PlaySfxAndRemoveBerries(u8 taskId)
|
||||
@@ -1490,12 +1490,12 @@ void DisplayItemMessageInBerryPouch(u8 taskId, u8 fontId, const u8 * str, TaskFu
|
||||
|
||||
static void CreateYesNoMenuWin3(u8 taskId, const struct YesNoFuncTable *ptrs)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[3], 2, 0, 2, 0x001, 0xE, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[3], FONT_2, 0, 2, 0x001, 0xE, ptrs);
|
||||
}
|
||||
|
||||
static void CreateYesNoMenuWin4(u8 taskId, const struct YesNoFuncTable *ptrs)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[4], 2, 0, 2, 0x001, 0xE, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[4], FONT_2, 0, 2, 0x001, 0xE, ptrs);
|
||||
}
|
||||
|
||||
static void PrintMoneyInWin2(void)
|
||||
|
||||
+2
-2
@@ -94,13 +94,13 @@ u32 GetBerryPowder(void)
|
||||
static void PrintBerryPowderAmount(u8 windowId, u32 amount, u8 x, u8 y, u8 speed)
|
||||
{
|
||||
ConvertIntToDecimalStringN(gStringVar1, amount, STR_CONV_MODE_RIGHT_ALIGN, 5);
|
||||
AddTextPrinterParameterized(windowId, 0, gStringVar1, x, y, speed, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_0, gStringVar1, x, y, speed, NULL);
|
||||
}
|
||||
|
||||
static void DrawPlayerPowderAmount(u8 windowId, u16 baseBlock, u8 palette, u32 amount)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, baseBlock, palette);
|
||||
AddTextPrinterParameterized(windowId, 0, gOtherText_Powder, 0, 0, -1, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_0, gOtherText_Powder, 0, 0, -1, NULL);
|
||||
PrintBerryPowderAmount(windowId, amount, 39, 12, 0);
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ struct BgConfig2
|
||||
u32 basePalette:4;
|
||||
u32 unk_3:18;
|
||||
|
||||
void* tilemap;
|
||||
void *tilemap;
|
||||
u32 bg_x;
|
||||
u32 bg_y;
|
||||
};
|
||||
@@ -181,7 +181,7 @@ u8 LoadBgVram(u8 bg, const void *src, u16 size, u16 destOffset, u8 mode)
|
||||
|
||||
offset = destOffset + offset;
|
||||
|
||||
cursor = RequestDma3Copy(src, (void*)(offset + BG_VRAM), size, DMA3_16BIT);
|
||||
cursor = RequestDma3Copy(src, (void *)(offset + BG_VRAM), size, DMA3_16BIT);
|
||||
|
||||
if (cursor == -1)
|
||||
{
|
||||
@@ -418,7 +418,7 @@ void InitBgFromTemplate(const struct BgTemplate *template)
|
||||
}
|
||||
}
|
||||
|
||||
u16 LoadBgTiles(u8 bg, const void* src, u16 size, u16 destOffset)
|
||||
u16 LoadBgTiles(u8 bg, const void *src, u16 size, u16 destOffset)
|
||||
{
|
||||
u16 tileOffset;
|
||||
u8 cursor;
|
||||
@@ -473,7 +473,7 @@ u16 Unused_LoadBgPalette(u8 bg, const void *src, u16 size, u16 destOffset)
|
||||
if (IsInvalidBg32(bg) == FALSE)
|
||||
{
|
||||
paletteOffset = (sGpuBgConfigs2[bg].basePalette * 0x20) + (destOffset * 2);
|
||||
cursor = RequestDma3Copy(src, (void*)(paletteOffset + BG_PLTT), size, DMA3_16BIT);
|
||||
cursor = RequestDma3Copy(src, (void *)(paletteOffset + BG_PLTT), size, DMA3_16BIT);
|
||||
|
||||
if (cursor == -1)
|
||||
{
|
||||
@@ -820,7 +820,7 @@ void UnsetBgTilemapBuffer(u8 bg)
|
||||
}
|
||||
}
|
||||
|
||||
void* GetBgTilemapBuffer(u8 bg)
|
||||
void *GetBgTilemapBuffer(u8 bg)
|
||||
{
|
||||
if (IsInvalidBg32(bg) != FALSE)
|
||||
return NULL;
|
||||
@@ -866,7 +866,7 @@ void CopyBgTilemapBufferToVram(u8 bg)
|
||||
}
|
||||
}
|
||||
|
||||
void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height)
|
||||
void CopyToBgTilemapBufferRect(u8 bg, const void *src, u8 destX, u8 destY, u8 width, u8 height)
|
||||
{
|
||||
u16 destX16;
|
||||
u16 destY16;
|
||||
@@ -883,7 +883,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi
|
||||
{
|
||||
for (destX16 = destX; destX16 < (destX + width); destX16++)
|
||||
{
|
||||
((u16*)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *(srcCopy)++;
|
||||
((u16 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * 0x20) + destX16)] = *(srcCopy)++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -896,7 +896,7 @@ void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 wi
|
||||
{
|
||||
for (destX16 = destX; destX16 < (destX + width); destX16++)
|
||||
{
|
||||
((u8*)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *(srcCopy)++;
|
||||
((u8 *)sGpuBgConfigs2[bg].tilemap)[((destY16 * mode) + destX16)] = *(srcCopy)++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -944,7 +944,7 @@ void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8
|
||||
{
|
||||
for (j = destX; j < (destX + rectWidth); j++)
|
||||
{
|
||||
*(u8*)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8*)(srcPtr) + tileOffset;
|
||||
*(u8 *)(sGpuBgConfigs2[bg].tilemap + ((var * i) + j)) = *(u8 *)(srcPtr) + tileOffset;
|
||||
srcPtr++;
|
||||
}
|
||||
srcPtr += (srcWidth - rectWidth);
|
||||
@@ -969,7 +969,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width,
|
||||
{
|
||||
for (x16 = x; x16 < (x + width); x16++)
|
||||
{
|
||||
((u16*)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum;
|
||||
((u16 *)sGpuBgConfigs2[bg].tilemap)[((y16 * 0x20) + x16)] = tileNum;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -979,7 +979,7 @@ void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width,
|
||||
{
|
||||
for (x16 = x; x16 < (x + width); x16++)
|
||||
{
|
||||
((u8*)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum;
|
||||
((u8 *)sGpuBgConfigs2[bg].tilemap)[((y16 * mode) + x16)] = tileNum;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1014,7 +1014,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt
|
||||
{
|
||||
for (x16 = x; x16 < (x + width); x16++)
|
||||
{
|
||||
CopyTileMapEntry(&firstTileNum, &((u16*)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
|
||||
CopyTileMapEntry(&firstTileNum, &((u16 *)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
|
||||
firstTileNum = (firstTileNum & 0xFC00) + ((firstTileNum + tileNumDelta) & 0x3FF);
|
||||
}
|
||||
}
|
||||
@@ -1025,7 +1025,7 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt
|
||||
{
|
||||
for (x16 = x; x16 < (x + width); x16++)
|
||||
{
|
||||
((u8*)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
|
||||
((u8 *)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
|
||||
firstTileNum = (firstTileNum & 0xFC00) + ((firstTileNum + tileNumDelta) & 0x3FF);
|
||||
}
|
||||
}
|
||||
@@ -1207,7 +1207,7 @@ bool32 IsInvalidBg32(u8 bg)
|
||||
|
||||
bool32 IsTileMapOutsideWram(u8 bg)
|
||||
{
|
||||
if (sGpuBgConfigs2[bg].tilemap > (void*)IWRAM_END)
|
||||
if (sGpuBgConfigs2[bg].tilemap > (void *)IWRAM_END)
|
||||
return TRUE;
|
||||
if (sGpuBgConfigs2[bg].tilemap == 0x0)
|
||||
return TRUE;
|
||||
|
||||
@@ -17,8 +17,8 @@ struct BPPD_Struct
|
||||
{
|
||||
struct BPPD_MapRect map1Rect;
|
||||
struct BPPD_MapRect map2Rect;
|
||||
const void * src1;
|
||||
const void * src2;
|
||||
const void *src1;
|
||||
const void *src2;
|
||||
u16 src1Height;
|
||||
u16 src1Width;
|
||||
u16 src2Width;
|
||||
@@ -80,7 +80,7 @@ void CopyAllBoxPartyPokemonDropdownsToVram(void)
|
||||
}
|
||||
}
|
||||
|
||||
void SetBoxPartyPokemonDropdownMap2(u8 idx, u8 bgId, const void * src, u16 width, u16 height)
|
||||
void SetBoxPartyPokemonDropdownMap2(u8 idx, u8 bgId, const void *src, u16 width, u16 height)
|
||||
{
|
||||
u16 screenSize;
|
||||
u16 bgType;
|
||||
@@ -112,7 +112,7 @@ void SetBoxPartyPokemonDropdownMap2(u8 idx, u8 bgId, const void * src, u16 width
|
||||
}
|
||||
}
|
||||
|
||||
void SetBoxPartyPokemonDropdownMap1Tiles(u8 idx, const void * src)
|
||||
void SetBoxPartyPokemonDropdownMap1Tiles(u8 idx, const void *src)
|
||||
{
|
||||
if (idx < sBoxPartyPokemonDropdownCount)
|
||||
{
|
||||
@@ -191,7 +191,7 @@ static void PushMap1(u8 idx)
|
||||
{
|
||||
int i;
|
||||
int run = sBoxPartyPokemonDropdownPtr[idx].mapSize * sBoxPartyPokemonDropdownPtr[idx].src1Height;
|
||||
const void * addr = sBoxPartyPokemonDropdownPtr[idx].src1 + run * sBoxPartyPokemonDropdownPtr[idx].map1Rect.destY2 + sBoxPartyPokemonDropdownPtr[idx].map1Rect.destX2 * sBoxPartyPokemonDropdownPtr[idx].mapSize;
|
||||
const void *addr = sBoxPartyPokemonDropdownPtr[idx].src1 + run * sBoxPartyPokemonDropdownPtr[idx].map1Rect.destY2 + sBoxPartyPokemonDropdownPtr[idx].map1Rect.destX2 * sBoxPartyPokemonDropdownPtr[idx].mapSize;
|
||||
for (i = 0; i < sBoxPartyPokemonDropdownPtr[idx].map1Rect.height; i++)
|
||||
{
|
||||
CopyToBgTilemapBufferRect(sBoxPartyPokemonDropdownPtr[idx].bgId, addr, sBoxPartyPokemonDropdownPtr[idx].map1Rect.destX2, sBoxPartyPokemonDropdownPtr[idx].map1Rect.destY2 + i, sBoxPartyPokemonDropdownPtr[idx].map1Rect.width, 1);
|
||||
@@ -203,7 +203,7 @@ static void PushMap2(u8 idx)
|
||||
{
|
||||
int i;
|
||||
int run = sBoxPartyPokemonDropdownPtr[idx].mapSize * sBoxPartyPokemonDropdownPtr[idx].src2Width;
|
||||
const void * addr = sBoxPartyPokemonDropdownPtr[idx].src2 + run * sBoxPartyPokemonDropdownPtr[idx].map2Rect.destY + sBoxPartyPokemonDropdownPtr[idx].map2Rect.destX * sBoxPartyPokemonDropdownPtr[idx].mapSize;
|
||||
const void *addr = sBoxPartyPokemonDropdownPtr[idx].src2 + run * sBoxPartyPokemonDropdownPtr[idx].map2Rect.destY + sBoxPartyPokemonDropdownPtr[idx].map2Rect.destX * sBoxPartyPokemonDropdownPtr[idx].mapSize;
|
||||
for (i = 0; i < sBoxPartyPokemonDropdownPtr[idx].map2Rect.height; i++)
|
||||
{
|
||||
CopyToBgTilemapBufferRect(sBoxPartyPokemonDropdownPtr[idx].bgId, addr, sBoxPartyPokemonDropdownPtr[idx].map2Rect.destX2, sBoxPartyPokemonDropdownPtr[idx].map2Rect.destY2 + i, sBoxPartyPokemonDropdownPtr[idx].map2Rect.width, 1);
|
||||
|
||||
@@ -184,7 +184,7 @@ void BuyMenuPrint(u8 windowId, u8 font, const u8 *text, u8 x, u8 y, u8 letterSpa
|
||||
|
||||
void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback)
|
||||
{
|
||||
DisplayMessageAndContinueTask(taskId, 2, 0x13, 0xE, GetMartUnk16_4(), GetTextSpeedSetting(), text, callback);
|
||||
DisplayMessageAndContinueTask(taskId, 2, 0x13, 0xE, GetMartFontId(), GetTextSpeedSetting(), text, callback);
|
||||
ScheduleBgCopyTilemapToVram(0);
|
||||
}
|
||||
|
||||
@@ -200,5 +200,5 @@ void BuyMenuQuantityBoxThinBorder(u8 windowId, bool8 copyToVram)
|
||||
|
||||
void BuyMenuConfirmPurchase(u8 taskId, const struct YesNoFuncTable *yesNo)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sShopBuyMenuYesNoWindowTemplate, 2, 0, 2, 1, 0xD, yesNo);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sShopBuyMenuYesNoWindowTemplate, FONT_2, 0, 2, 1, 0xD, yesNo);
|
||||
}
|
||||
|
||||
+16
-16
@@ -79,14 +79,14 @@ static void PrintNewCountOnLinkPlayerCountDisplayWindow(u16 windowId, s32 num)
|
||||
ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_LEFT_ALIGN, 1);
|
||||
SetStdWindowBorderStyle(windowId, FALSE);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_841DF82);
|
||||
AddTextPrinterParameterized(windowId, 2, gStringVar4, 0, 0, TEXT_SPEED_FF, NULL);
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized(windowId, FONT_2, gStringVar4, 0, 0, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void DestroyLinkPlayerCountDisplayWindow(u16 windowId)
|
||||
{
|
||||
ClearStdWindowAndFrame(windowId, FALSE);
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void UpdateLinkPlayerCountDisplay(u8 taskId, u8 num)
|
||||
@@ -219,7 +219,7 @@ static void Task_Linkup1(u8 taskId)
|
||||
|
||||
static void Task_LinkupMaster_2(u8 taskId)
|
||||
{
|
||||
if (sub_80808F0(taskId) != TRUE && sub_8080990(taskId) != TRUE && sub_80808BC(taskId) != TRUE && !textbox_any_visible())
|
||||
if (sub_80808F0(taskId) != TRUE && sub_8080990(taskId) != TRUE && sub_80808BC(taskId) != TRUE && !GetFieldMessageBoxType())
|
||||
{
|
||||
gTasks[taskId].data[3] = 0;
|
||||
gTasks[taskId].func = Task_LinkupMaster_3;
|
||||
@@ -246,7 +246,7 @@ static void Task_LinkupMaster_3(u8 taskId)
|
||||
|
||||
static void Task_LinkupMaster_4(u8 taskId)
|
||||
{
|
||||
if (sub_80808F0(taskId) != TRUE && sub_8080990(taskId) != TRUE && sub_80808BC(taskId) != TRUE && !textbox_any_visible())
|
||||
if (sub_80808F0(taskId) != TRUE && sub_8080990(taskId) != TRUE && sub_80808BC(taskId) != TRUE && !GetFieldMessageBoxType())
|
||||
{
|
||||
if (GetSavedPlayerCount() != GetLinkPlayerCount_2())
|
||||
{
|
||||
@@ -316,7 +316,7 @@ static void Task_LinkupSlave_2(u8 taskId)
|
||||
gFieldLinkPlayerCount = GetLinkPlayerCount_2();
|
||||
gLocalLinkPlayerId = GetMultiplayerId();
|
||||
sub_800A900(gFieldLinkPlayerCount);
|
||||
TrainerCard_GenerateCardForLinkPlayer((void*)gBlockSendBuffer);
|
||||
TrainerCard_GenerateCardForLinkPlayer((void *)gBlockSendBuffer);
|
||||
gTasks[taskId].func = Task_Linkup_6a;
|
||||
}
|
||||
}
|
||||
@@ -367,7 +367,7 @@ static void Task_LinkupMaster_6(u8 taskId)
|
||||
gFieldLinkPlayerCount = GetLinkPlayerCount_2();
|
||||
gLocalLinkPlayerId = GetMultiplayerId();
|
||||
sub_800A900(gFieldLinkPlayerCount);
|
||||
TrainerCard_GenerateCardForLinkPlayer((void*)gBlockSendBuffer);
|
||||
TrainerCard_GenerateCardForLinkPlayer((void *)gBlockSendBuffer);
|
||||
gTasks[taskId].func = Task_Linkup_6a;
|
||||
Link_PrepareCmd0xCCCC_Rfu0xA100(2);
|
||||
}
|
||||
@@ -580,7 +580,7 @@ void CableClub_AskSaveTheGame(void)
|
||||
|
||||
static void Task_StartWiredCableClubBattle(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
switch (task->data[0])
|
||||
{
|
||||
case 0:
|
||||
@@ -723,7 +723,7 @@ static void sub_8081624(void)
|
||||
|
||||
void CB2_ReturnFromCableClubBattle(void)
|
||||
{
|
||||
gBattleTypeFlags &= (u16)~BATTLE_TYPE_LINK_ESTABLISHED;
|
||||
gBattleTypeFlags &= (u16)~BATTLE_TYPE_LINK_IN_BATTLE;
|
||||
Overworld_ResetMapMusic();
|
||||
LoadPlayerParty();
|
||||
SavePlayerBag();
|
||||
@@ -772,7 +772,7 @@ void ExitLinkRoom(void)
|
||||
|
||||
static void Task_EnterCableClubSeat(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
switch (task->data[0])
|
||||
{
|
||||
case 0:
|
||||
@@ -782,20 +782,20 @@ static void Task_EnterCableClubSeat(u8 taskId)
|
||||
case 1:
|
||||
if (IsFieldMessageBoxHidden())
|
||||
{
|
||||
sub_8057F34();
|
||||
SetInCableClubSeat();
|
||||
SetLocalLinkPlayerId(gSpecialVar_0x8005);
|
||||
task->data[0] = 2;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
switch (sub_8057EC0())
|
||||
switch (GetCableClubPartnersReady())
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
HideFieldMessageBox();
|
||||
task->data[0] = 0;
|
||||
sub_8057F70();
|
||||
SetStartedCableClubActivity();
|
||||
SwitchTaskToFollowupFunc(taskId);
|
||||
break;
|
||||
case 2:
|
||||
@@ -804,7 +804,7 @@ static void Task_EnterCableClubSeat(u8 taskId)
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
sub_8057F48();
|
||||
SetLinkWaitingForScript();
|
||||
sub_80F771C(TRUE);
|
||||
DestroyTask(taskId);
|
||||
EnableBothScriptContexts();
|
||||
@@ -821,7 +821,7 @@ static void CreateEnterCableClubSeatTaskWithFollowupFunc(TaskFunc followUpFunc)
|
||||
|
||||
static void Task_StartWiredCableClubTrade(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
switch (task->data[0])
|
||||
{
|
||||
case 0:
|
||||
@@ -936,7 +936,7 @@ bool32 GetSeeingLinkPlayerCardMsg(u8 who)
|
||||
|
||||
void Task_WaitForReceivedRemoteLinkPlayers5SecondTimeout(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
task->data[0]++;
|
||||
if (task->data[0] > 300)
|
||||
{
|
||||
|
||||
+15
-12
@@ -4,6 +4,12 @@
|
||||
#include "save.h"
|
||||
#include "cereader_tool.h"
|
||||
|
||||
#define SEC30_SIZE (offsetof(struct EReaderTrainerTowerSet, floors[4]))
|
||||
#define SEC31_SIZE (sizeof(struct EReaderTrainerTowerSet) - SEC30_SIZE)
|
||||
|
||||
// The trainer tower data exceeds SECTOR_DATA_SIZE. They're allowed to use the full save sector up to the counter field.
|
||||
STATIC_ASSERT(SEC30_SIZE + SEC31_SIZE <= SECTOR_COUNTER_OFFSET * 2, EReaderTrainerTowerSetFreeSpace);
|
||||
|
||||
u8 sub_815D654(void)
|
||||
{
|
||||
return (gSaveBlock1Ptr->trainerTower[0].unk9 + 1) % 256;
|
||||
@@ -36,41 +42,38 @@ bool32 ValidateTrainerTowerData(struct EReaderTrainerTowerSet * ttdata)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#define SEC30_SIZE (offsetof(struct EReaderTrainerTowerSet, floors[4]))
|
||||
#define SEC31_SIZE (sizeof(struct EReaderTrainerTowerSet) - SEC30_SIZE)
|
||||
|
||||
static bool32 CEReaderTool_SaveTrainerTower_r(struct EReaderTrainerTowerSet * ttdata, u8 * buffer)
|
||||
{
|
||||
AGB_ASSERT_EX(ttdata->dummy == 0, ABSPATH("cereader_tool.c"), 198);
|
||||
AGB_ASSERT_EX(ttdata->id == 0, ABSPATH("cereader_tool.c"), 199)
|
||||
|
||||
memset(buffer, 0, 0x1000);
|
||||
memset(buffer, 0, SECTOR_SIZE);
|
||||
memcpy(buffer, ttdata, SEC30_SIZE);
|
||||
buffer[1] = sub_815D654();
|
||||
if (TryWriteSpecialSaveSection(SECTOR_TTOWER(0), buffer) != TRUE)
|
||||
if (TryWriteSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_1, buffer) != TRUE)
|
||||
return FALSE;
|
||||
memset(buffer, 0, 0x1000);
|
||||
memset(buffer, 0, SECTOR_SIZE);
|
||||
memcpy(buffer, (u8 *)ttdata + SEC30_SIZE, SEC31_SIZE);
|
||||
if (TryWriteSpecialSaveSection(SECTOR_TTOWER(1), buffer) != TRUE)
|
||||
if (TryWriteSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_2, buffer) != TRUE)
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerTowerSet * ttdata)
|
||||
{
|
||||
u8 * buffer = AllocZeroed(0x1000);
|
||||
u8 * buffer = AllocZeroed(SECTOR_SIZE);
|
||||
bool32 result = CEReaderTool_SaveTrainerTower_r(ttdata, buffer);
|
||||
Free(buffer);
|
||||
return result;
|
||||
}
|
||||
|
||||
static bool32 CEReaderTool_LoadTrainerTower_r(struct EReaderTrainerTowerSet * ttdata, void * buffer)
|
||||
static bool32 CEReaderTool_LoadTrainerTower_r(struct EReaderTrainerTowerSet * ttdata, void *buffer)
|
||||
{
|
||||
if (TryCopySpecialSaveSection(SECTOR_TTOWER(0), buffer) != 1)
|
||||
if (TryReadSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_1, buffer) != 1)
|
||||
return FALSE;
|
||||
memcpy(ttdata + 0x000, buffer, SEC30_SIZE);
|
||||
|
||||
if (TryCopySpecialSaveSection(SECTOR_TTOWER(1), buffer) != 1)
|
||||
if (TryReadSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_2, buffer) != 1)
|
||||
return FALSE;
|
||||
memcpy((u8 *)ttdata + SEC30_SIZE, buffer, SEC31_SIZE);
|
||||
|
||||
@@ -81,7 +84,7 @@ static bool32 CEReaderTool_LoadTrainerTower_r(struct EReaderTrainerTowerSet * tt
|
||||
|
||||
bool32 CEReaderTool_LoadTrainerTower(struct EReaderTrainerTowerSet * ttdata)
|
||||
{
|
||||
void * buffer = AllocZeroed(0x1000);
|
||||
void *buffer = AllocZeroed(SECTOR_SIZE);
|
||||
bool32 success = CEReaderTool_LoadTrainerTower_r(ttdata, buffer);
|
||||
Free(buffer);
|
||||
return success;
|
||||
|
||||
@@ -90,7 +90,7 @@ static void Task_DrawClearSaveDataScreen(u8 taskId)
|
||||
switch (sClearSaveDataState->unk1)
|
||||
{
|
||||
case 0:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
break;
|
||||
case 1:
|
||||
if (gPaletteFade.active)
|
||||
@@ -106,11 +106,11 @@ static void Task_DrawClearSaveDataScreen(u8 taskId)
|
||||
break;
|
||||
case 4:
|
||||
DrawStdFrameWithCustomTileAndPalette(1, TRUE, 0x001, 0xF);
|
||||
AddTextPrinterParameterized4(1, 2, 0, 3, 1, 1, sTextColor, 0, gUnknown_841B69E);
|
||||
AddTextPrinterParameterized4(1, FONT_2, 0, 3, 1, 1, sTextColor, 0, gUnknown_841B69E);
|
||||
CopyWindowToVram(1, COPYWIN_GFX);
|
||||
break;
|
||||
case 5:
|
||||
CreateYesNoMenu(&sWindowTemplates[0], 2, 0, 2, 0x001, 0xF, 1);
|
||||
CreateYesNoMenu(&sWindowTemplates[0], FONT_2, 0, 2, 0x001, 0xF, 1);
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
break;
|
||||
default:
|
||||
@@ -138,8 +138,8 @@ static void Task_HandleYesNoMenu(u8 taskId)
|
||||
case 0:
|
||||
PlaySE(SE_SELECT);
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized4(1, 2, 0, 3, 1, 1, sTextColor, 0, gUnknown_841B6B9);
|
||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized4(1, FONT_2, 0, 3, 1, 1, sTextColor, 0, gUnknown_841B6B9);
|
||||
CopyWindowToVram(1, COPYWIN_FULL);
|
||||
ClearSaveData();
|
||||
break;
|
||||
case MENU_NOTHING_CHOSEN:
|
||||
|
||||
+5
-5
@@ -53,13 +53,13 @@ void PrintCoinsString_Parameterized(u8 windowId, u32 coinAmount, u8 x, u8 y, u8
|
||||
{
|
||||
ConvertIntToDecimalStringN(gStringVar1, coinAmount, STR_CONV_MODE_RIGHT_ALIGN, 4);
|
||||
StringExpandPlaceholders(gStringVar4, gText_Coins);
|
||||
AddTextPrinterParameterized(windowId, 0, gStringVar4, x, y, speed, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_0, gStringVar4, x, y, speed, NULL);
|
||||
}
|
||||
|
||||
void sub_80D0674(u8 windowId, u16 tileStart, u8 palette, u32 coinAmount)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, tileStart, palette);
|
||||
AddTextPrinterParameterized(windowId, 2, gText_Coins_2, 0, 0, 0xFF, 0);
|
||||
AddTextPrinterParameterized(windowId, FONT_2, gText_Coins_2, 0, 0, 0xFF, 0);
|
||||
PrintCoinsString_Parameterized(windowId, coinAmount, 0x10, 0xC, 0);
|
||||
}
|
||||
|
||||
@@ -70,9 +70,9 @@ void PrintCoinsString(u32 coinAmount)
|
||||
|
||||
ConvertIntToDecimalStringN(gStringVar1, coinAmount, STR_CONV_MODE_RIGHT_ALIGN, 4);
|
||||
StringExpandPlaceholders(gStringVar4, gText_Coins);
|
||||
width = GetStringWidth(0, gStringVar4, 0);
|
||||
width = GetStringWidth(FONT_0, gStringVar4, 0);
|
||||
windowId = sCoinsWindowId;
|
||||
AddTextPrinterParameterized(windowId, 0, gStringVar4, 64 - width, 0xC, 0, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_0, gStringVar4, 64 - width, 0xC, 0, NULL);
|
||||
}
|
||||
|
||||
void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y)
|
||||
@@ -85,7 +85,7 @@ void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y)
|
||||
PutWindowTilemap(sCoinsWindowId);
|
||||
TextWindow_SetStdFrame0_WithPal(sCoinsWindowId, 0x21D, 0xD0);
|
||||
DrawStdFrameWithCustomTileAndPalette(sCoinsWindowId, FALSE, 0x21D, 0xD);
|
||||
AddTextPrinterParameterized(sCoinsWindowId, 2, gText_Coins_2, 0, 0, 0xFF, 0);
|
||||
AddTextPrinterParameterized(sCoinsWindowId, FONT_2, gText_Coins_2, 0, 0, 0xFF, 0);
|
||||
PrintCoinsString(coinAmount);
|
||||
}
|
||||
|
||||
|
||||
+13
-12
@@ -14,6 +14,7 @@
|
||||
#include "quest_log.h"
|
||||
#include "constants/maps.h"
|
||||
#include "constants/field_weather.h"
|
||||
#include "constants/sound.h"
|
||||
|
||||
#if defined(FIRERED)
|
||||
#define TITLE_TEXT gString_PokemonFireRed_Staff
|
||||
@@ -761,7 +762,7 @@ static void CreateCreditsWindow(void)
|
||||
sCreditsMgr->windowId = AddWindow(&sCreditsWindowTemplate);
|
||||
FillWindowPixelBuffer(sCreditsMgr->windowId, PIXEL_FILL(0));
|
||||
PutWindowTilemap(sCreditsMgr->windowId);
|
||||
CopyWindowToVram(sCreditsMgr->windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(sCreditsMgr->windowId, COPYWIN_FULL);
|
||||
sCreditsMgr->windowIsActive = TRUE;
|
||||
}
|
||||
|
||||
@@ -855,7 +856,7 @@ static s32 RollCredits(void)
|
||||
|
||||
}
|
||||
sCreditsMgr->timer = 360;
|
||||
AddTextPrinterParameterized4(sCreditsMgr->windowId, 1, 0x08, 0x29, 1, 2, sTextColor_Header, 0, TITLE_TEXT);
|
||||
AddTextPrinterParameterized4(sCreditsMgr->windowId, FONT_1, 0x08, 0x29, 1, 2, sTextColor_Header, 0, TITLE_TEXT);
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_WAIT_TITLE_STAFF;
|
||||
return 0;
|
||||
case CREDITSSCENE_WAIT_TITLE_STAFF:
|
||||
@@ -899,7 +900,7 @@ static s32 RollCredits(void)
|
||||
case CREDITSSCRCMD_THEENDGFX:
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_THEEND_DESTROY_ASSETS;
|
||||
sCreditsMgr->whichMon = sCreditsScript[sCreditsMgr->scrcmdidx].param;
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 4, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 16, RGB_BLACK);
|
||||
break;
|
||||
case CREDITSSCRCMD_WAITBUTTON:
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_WAITBUTTON;
|
||||
@@ -912,12 +913,12 @@ static s32 RollCredits(void)
|
||||
if (gPaletteFade.active)
|
||||
return sCreditsMgr->canSpeedThrough;
|
||||
win0v[0] = sCreditsTexts[sCreditsScript[sCreditsMgr->scrcmdidx].param].unk_8; // unused
|
||||
AddTextPrinterParameterized4(sCreditsMgr->windowId, 1, 2, 6, 0, 0, sTextColor_Header, -1, sCreditsTexts[sCreditsScript[sCreditsMgr->scrcmdidx].param].unk_0);
|
||||
AddTextPrinterParameterized4(sCreditsMgr->windowId, FONT_1, 2, 6, 0, 0, sTextColor_Header, -1, sCreditsTexts[sCreditsScript[sCreditsMgr->scrcmdidx].param].unk_0);
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_PRINT_ADDPRINTER2;
|
||||
return sCreditsMgr->canSpeedThrough;
|
||||
case CREDITSSCENE_PRINT_ADDPRINTER2:
|
||||
win0v[0] = sCreditsTexts[sCreditsScript[sCreditsMgr->scrcmdidx].param].unk_8;
|
||||
AddTextPrinterParameterized4(sCreditsMgr->windowId, 2, 8, 6, 0, 0, sTextColor_Regular, -1, sCreditsTexts[sCreditsScript[sCreditsMgr->scrcmdidx].param].unk_4);
|
||||
AddTextPrinterParameterized4(sCreditsMgr->windowId, FONT_2, 8, 6, 0, 0, sTextColor_Regular, -1, sCreditsTexts[sCreditsScript[sCreditsMgr->scrcmdidx].param].unk_4);
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_PRINT_DELAY;
|
||||
return sCreditsMgr->canSpeedThrough;
|
||||
case CREDITSSCENE_PRINT_DELAY:
|
||||
@@ -1004,7 +1005,7 @@ static s32 RollCredits(void)
|
||||
case CREDITSSCENE_WAITBUTTON:
|
||||
if (JOY_NEW(A_BUTTON))
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_WHITE);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITE);
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_TERMINATE;
|
||||
return 0;
|
||||
}
|
||||
@@ -1015,7 +1016,7 @@ static s32 RollCredits(void)
|
||||
else
|
||||
{
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_TERMINATE;
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_WHITE);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITE);
|
||||
}
|
||||
return 0;
|
||||
case CREDITSSCENE_TERMINATE:
|
||||
@@ -1136,7 +1137,7 @@ static bool32 DoCreditsMonScene(void)
|
||||
case 2:
|
||||
ShowBg(2);
|
||||
ShowBg(0);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
sCreditsMgr->creditsMonTimer = 40;
|
||||
sCreditsMgr->subseqno++;
|
||||
break;
|
||||
@@ -1190,7 +1191,7 @@ static bool32 DoCreditsMonScene(void)
|
||||
{
|
||||
HideBg(2);
|
||||
ShowBg(1);
|
||||
PlayCry2(GetCreditsMonSpecies(sCreditsMgr->whichMon), 0, 125, 10);
|
||||
PlayCry_NormalNoDucking(GetCreditsMonSpecies(sCreditsMgr->whichMon), 0, CRY_VOLUME_RS, CRY_PRIORITY_NORMAL);
|
||||
sCreditsMgr->creditsMonTimer = 128;
|
||||
sCreditsMgr->subseqno++;
|
||||
}
|
||||
@@ -1200,7 +1201,7 @@ static bool32 DoCreditsMonScene(void)
|
||||
sCreditsMgr->creditsMonTimer--;
|
||||
else
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
sCreditsMgr->subseqno++;
|
||||
}
|
||||
break;
|
||||
@@ -1251,9 +1252,9 @@ static bool32 DoCopyrightOrTheEndGfxScene(void)
|
||||
case 2:
|
||||
ShowBg(0);
|
||||
if (sCreditsMgr->whichMon != 0)
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0, RGB_BLACK);
|
||||
else
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
sCreditsMgr->subseqno++;
|
||||
break;
|
||||
case 3:
|
||||
|
||||
-114
@@ -4,120 +4,6 @@
|
||||
|
||||
.syntax unified
|
||||
|
||||
.global Start
|
||||
|
||||
.text
|
||||
|
||||
.arm
|
||||
|
||||
_start: @ 8000000
|
||||
b start_vector
|
||||
|
||||
.include "asm/rom_header.inc"
|
||||
|
||||
@ 80000C0
|
||||
.word 0
|
||||
|
||||
.global GPIOPortData
|
||||
GPIOPortData: @ 80000C4
|
||||
.hword 0
|
||||
|
||||
.global GPIOPortDirection
|
||||
GPIOPortDirection: @ 80000C6
|
||||
.hword 0
|
||||
|
||||
.global GPIOPortReadEnable
|
||||
GPIOPortReadEnable: @ 80000C8
|
||||
.hword 0
|
||||
|
||||
.space 6
|
||||
|
||||
@ 80000D0
|
||||
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
|
||||
@ 8000100
|
||||
.global CartIdent
|
||||
CartIdent:
|
||||
.4byte GAME_VERSION
|
||||
.4byte GAME_LANGUAGE
|
||||
.game_name:
|
||||
.ifdef FIRERED
|
||||
.ascii "pokemon red version"
|
||||
.else
|
||||
.ifdef LEAFGREEN
|
||||
.ascii "pokemon green version"
|
||||
.endif
|
||||
.endif
|
||||
.space .game_name+0x20-.
|
||||
.4byte gMonFrontPicTable
|
||||
.4byte gMonBackPicTable
|
||||
.4byte gMonPaletteTable
|
||||
.4byte gMonShinyPaletteTable
|
||||
.4byte gMonIconTable
|
||||
.4byte gMonIconPaletteIndices
|
||||
.4byte gMonIconPaletteTable
|
||||
.4byte gSpeciesNames
|
||||
.4byte gMoveNames
|
||||
.4byte gDecorations
|
||||
.4byte 0xEE0 @ offsetof(struct SaveBlock1, flags)
|
||||
.4byte 0x1000 @ offsetof(struct SaveBlock1, vars)
|
||||
.4byte 0x18 @ offsetof(struct SaveBlock2, pokedex)
|
||||
.4byte 0x5F8 @ offsetof(struct SaveBlock1, seen1)
|
||||
.4byte 0x3A18 @ offsetof(struct SaveBlock1, seen2)
|
||||
.4byte 0x3C
|
||||
.4byte 0x838
|
||||
.4byte 0x839
|
||||
.4byte 0x182
|
||||
.byte 7, 10, 10, 10, 12, 12, 6, 12
|
||||
.byte 6, 16, 18, 12, 15, 11, 1, 8
|
||||
.byte 12
|
||||
.align 2, 0
|
||||
.4byte 0xF24 @ sizeof(struct SaveBlock2) /* 88 */
|
||||
.4byte 0x3D68 @ sizeof(struct SaveBlock1)
|
||||
.4byte 0x34 @ offsetof(struct SaveBlock1, playerPartyCount)
|
||||
.4byte 0x38 @ offsetof(struct SaveBlock1, playerParty)
|
||||
.4byte 9 @ offsetof(struct SaveBlock2, specialSaveWarp)
|
||||
.4byte 0xA @ offsetof(struct SaveBlock2, playerTrainerId)
|
||||
.4byte 0 @ offsetof(struct SaveBlock2, playerName)
|
||||
.4byte 8 @ offsetof(struct SaveBlock2, playerGender)
|
||||
|
||||
.4byte 0xAD @ offsetof(struct SaveBlock2, ?????? (0xAD))
|
||||
.4byte 0xAD @ offsetof(struct SaveBlock2, ?????? (0xAD))
|
||||
.4byte 0x30BB @ offsetof(struct SaveBlock1, externalEventFlags)
|
||||
.4byte 0x30A7 @ offsetof(struct SaveBlock1, externalEventData)
|
||||
.byte 0
|
||||
.align 2, 0
|
||||
.4byte gBaseStats
|
||||
.4byte gAbilityNames
|
||||
.4byte gAbilityDescriptionPointers
|
||||
.4byte gItems
|
||||
.4byte gBattleMoves
|
||||
.4byte gBallSpriteSheets
|
||||
.4byte gBallSpritePalettes
|
||||
.4byte 0xA8 @ offsetof(struct SaveBlock2,gcnLinkFlags)
|
||||
.4byte 0x82C @ FLAG_SYS_GAME_CLEAR
|
||||
.4byte 0x83B @ FLAG_SYS_RIBBON_GET
|
||||
.4byte 0x3A0D1E2A
|
||||
.4byte 0x1E2B
|
||||
.4byte 0x298 @ offsetof(struct SaveBlock1, pcItems) // maybe all items were in a struct together?
|
||||
.4byte 0x309C @ offsetof(struct SaveBlock1, giftRibbons)
|
||||
.4byte 0x30EC @ offsetof(struct SaveBlock1, enigmaBerry)
|
||||
.4byte 0x34 @ size of SaveBlock1 map header reconstruction data?
|
||||
.4byte 0
|
||||
.4byte 0xFFFFFFFF
|
||||
|
||||
.arm
|
||||
.align 2, 0
|
||||
.global start_vector
|
||||
|
||||
+4
-4
@@ -412,7 +412,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
task->data[10] = gBattle_BG1_Y;
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1);
|
||||
FillPalette(0, animBg.paletteId * 16, 32);
|
||||
FillPalette(RGB_BLACK, animBg.paletteId * 16, 32);
|
||||
scanlineParams.dmaDest = ®_BG1VOFS;
|
||||
var0 = WINOUT_WIN01_BG1;
|
||||
if (!IsContest())
|
||||
@@ -422,7 +422,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId)
|
||||
{
|
||||
task->data[10] = gBattle_BG2_Y;
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2);
|
||||
FillPalette(0, 144, 32);
|
||||
FillPalette(RGB_BLACK, 144, 32);
|
||||
scanlineParams.dmaDest = ®_BG2VOFS;
|
||||
var0 = WINOUT_WIN01_BG2;
|
||||
if (!IsContest())
|
||||
@@ -542,12 +542,12 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId)
|
||||
{
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
task->data[10] = gBattle_BG1_Y;
|
||||
FillPalette(0, animBg.paletteId * 16, 32);
|
||||
FillPalette(RGB_BLACK, animBg.paletteId * 16, 32);
|
||||
}
|
||||
else
|
||||
{
|
||||
task->data[10] = gBattle_BG2_Y;
|
||||
FillPalette(0, 9 * 16, 32);
|
||||
FillPalette(RGB_BLACK, 9 * 16, 32);
|
||||
}
|
||||
sub_80B856C(3);
|
||||
++task->data[0];
|
||||
|
||||
+172
-172
File diff suppressed because it is too large
Load Diff
@@ -19,8 +19,8 @@ static const struct SpriteFrameImage sPicTable_ShadowExtraLarge[] = { obj_frame_
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_8x8,
|
||||
.anims = sAnimTable_Shadow,
|
||||
.images = sPicTable_ShadowSmall,
|
||||
@@ -30,8 +30,8 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_16x8,
|
||||
.anims = sAnimTable_Shadow,
|
||||
.images = sPicTable_ShadowMedium,
|
||||
@@ -41,8 +41,8 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_32x8,
|
||||
.anims = sAnimTable_Shadow,
|
||||
.images = sPicTable_ShadowLarge,
|
||||
@@ -52,8 +52,8 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_64x32,
|
||||
.anims = sAnimTable_Shadow,
|
||||
.images = sPicTable_ShadowExtraLarge,
|
||||
@@ -87,7 +87,7 @@ static const union AnimCmd *const sAnimTable_TallGrass[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_TallGrass,
|
||||
@@ -125,7 +125,7 @@ static const union AnimCmd *const sAnimTable_Ripple[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_Ripple,
|
||||
@@ -160,7 +160,7 @@ static const union AnimCmd *const sAnimTable_Ash[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Ash =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_Ash,
|
||||
@@ -217,8 +217,8 @@ static const union AnimCmd *const sAnimTable_SurfBlob[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_32x32,
|
||||
.anims = sAnimTable_SurfBlob,
|
||||
.images = sPicTable_SurfBlob,
|
||||
@@ -276,8 +276,8 @@ static const union AnimCmd *const sAnimTable_Arrow[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_Arrow,
|
||||
.images = sPicTable_Arrow,
|
||||
@@ -307,7 +307,7 @@ static const union AnimCmd *const sAnimTable_GroundImpactDust[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x8,
|
||||
.anims = sAnimTable_GroundImpactDust,
|
||||
@@ -340,7 +340,7 @@ static const union AnimCmd *const sAnimTable_JumpTallGrass[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x8,
|
||||
.anims = sAnimTable_JumpTallGrass,
|
||||
@@ -390,7 +390,7 @@ static const union AnimCmd *const sAnimTable_SandFootprints[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_SandFootprints,
|
||||
@@ -440,7 +440,7 @@ static const union AnimCmd *const sAnimTable_DeepSandFootprints[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_DeepSandFootprints,
|
||||
@@ -520,7 +520,7 @@ static const union AnimCmd *const sAnimTable_BikeTireTracks[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_BikeTireTracks,
|
||||
@@ -553,7 +553,7 @@ static const union AnimCmd *const sAnimTable_JumpBigSplash[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_JumpBigSplash,
|
||||
@@ -596,7 +596,7 @@ static const union AnimCmd *const sAnimTable_Splash[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Splash =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x8,
|
||||
.anims = sAnimTable_Splash,
|
||||
@@ -627,7 +627,7 @@ static const union AnimCmd *const sAnimTable_JumpSmallSplash[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x8,
|
||||
.anims = sAnimTable_JumpSmallSplash,
|
||||
@@ -663,7 +663,7 @@ static const union AnimCmd *const sAnimTable_LongGrass[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_LongGrass,
|
||||
@@ -700,7 +700,7 @@ static const union AnimCmd *const sAnimTable_JumpLongGrass[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_JumpLongGrass,
|
||||
@@ -743,7 +743,7 @@ static const union AnimCmd *const sAnimTable_UnusedGrass[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_UnusedGrass,
|
||||
@@ -778,7 +778,7 @@ static const union AnimCmd *const sAnimTable_UnusedGrass2[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2 =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_UnusedGrass2,
|
||||
@@ -811,7 +811,7 @@ static const union AnimCmd *const sAnimTable_UnusedSand[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_UnusedSand,
|
||||
@@ -842,7 +842,7 @@ static const union AnimCmd *const sAnimTable_SandPile[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x8,
|
||||
.anims = sAnimTable_SandPile,
|
||||
@@ -877,7 +877,7 @@ static const union AnimCmd *const sAnimTable_WaterSurfacing[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_WaterSurfacing,
|
||||
@@ -923,7 +923,7 @@ const union AffineAnimCmd *const sAffineAnims_ReflectionDistortion[] =
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion =
|
||||
{
|
||||
.tileTag = 0x0,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gDummyOamData,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
@@ -1019,8 +1019,8 @@ static const union AnimCmd *const sAnimTable_TreeDisguise[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_16x32,
|
||||
.anims = sAnimTable_TreeDisguise,
|
||||
.images = sPicTable_TreeDisguise,
|
||||
@@ -1065,8 +1065,8 @@ static const union AnimCmd *const sAnimTable_MountainDisguise[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_16x32,
|
||||
.anims = sAnimTable_MountainDisguise,
|
||||
.images = sPicTable_MountainDisguise,
|
||||
@@ -1087,8 +1087,8 @@ static const struct SpriteFrameImage sPicTable_SandDisguisePlaceholder[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_16x32,
|
||||
.anims = sAnimTable_TreeDisguise,
|
||||
.images = sPicTable_SandDisguisePlaceholder,
|
||||
@@ -1105,31 +1105,31 @@ static const struct SpriteFrameImage sPicTable_Bird[] =
|
||||
overworld_frame(gFieldEffectObjectPic_Bird, 8, 8, 4),
|
||||
};
|
||||
|
||||
static const union AnimCmd sAnim_Bird_0[] =
|
||||
static const union AnimCmd sAnim_Bird_WithoutPlayer[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sAnim_Bird_1[] =
|
||||
static const union AnimCmd sAnim_Bird_Red_FlyOut[] =
|
||||
{
|
||||
ANIMCMD_FRAME(1, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sAnim_Bird_2[] =
|
||||
static const union AnimCmd sAnim_Bird_Red_FlyIn[] =
|
||||
{
|
||||
ANIMCMD_FRAME(2, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sAnim_Bird_3[] =
|
||||
static const union AnimCmd sAnim_Bird_Green_FlyOut[] =
|
||||
{
|
||||
ANIMCMD_FRAME(3, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd sAnim_Bird_4[] =
|
||||
static const union AnimCmd sAnim_Bird_Green_FlyIn[] =
|
||||
{
|
||||
ANIMCMD_FRAME(4, 1),
|
||||
ANIMCMD_END,
|
||||
@@ -1137,17 +1137,17 @@ static const union AnimCmd sAnim_Bird_4[] =
|
||||
|
||||
static const union AnimCmd *const sAnimTable_Bird[] =
|
||||
{
|
||||
sAnim_Bird_0,
|
||||
sAnim_Bird_1,
|
||||
sAnim_Bird_2,
|
||||
sAnim_Bird_3,
|
||||
sAnim_Bird_4,
|
||||
sAnim_Bird_WithoutPlayer,
|
||||
sAnim_Bird_Red_FlyOut,
|
||||
sAnim_Bird_Red_FlyIn,
|
||||
sAnim_Bird_Green_FlyOut,
|
||||
sAnim_Bird_Green_FlyIn,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Bird =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gObjectEventBaseOam_64x64,
|
||||
.anims = sAnimTable_Bird,
|
||||
.images = sPicTable_Bird,
|
||||
@@ -1175,7 +1175,7 @@ static const union AnimCmd *const sAnimTable_ShortGrass[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_ShortGrass,
|
||||
@@ -1202,7 +1202,7 @@ static const union AnimCmd *const sAnimTable_HotSpringsWater[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_1,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_HotSpringsWater,
|
||||
@@ -1237,7 +1237,7 @@ static const union AnimCmd *const sAnimTable_AshPuff[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_ASH,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_AshPuff,
|
||||
@@ -1274,7 +1274,7 @@ static const union AnimCmd *const sAnimTable_AshLaunch[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_ASH,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_AshLaunch,
|
||||
@@ -1315,7 +1315,7 @@ static const union AnimCmd *const sAnimTable_Bubbles[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_GENERAL_0,
|
||||
.oam = &gObjectEventBaseOam_16x32,
|
||||
.anims = sAnimTable_Bubbles,
|
||||
@@ -1345,7 +1345,7 @@ static const union AnimCmd *const sAnimTable_SmallSparkle[] =
|
||||
|
||||
const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle =
|
||||
{
|
||||
.tileTag = SPRITE_INVALID_TAG,
|
||||
.tileTag = TAG_NONE,
|
||||
.paletteTag = FLDEFF_PAL_TAG_SMALL_SPARKLE,
|
||||
.oam = &gObjectEventBaseOam_16x16,
|
||||
.anims = sAnimTable_SmallSparkle,
|
||||
|
||||
@@ -1,37 +1,37 @@
|
||||
const u32 gInterfaceGfx_PokeBall[] = INCBIN_U32("graphics/interface/ball/poke.4bpp.lz");
|
||||
const u32 gInterfacePal_PokeBall[] = INCBIN_U32("graphics/interface/ball/poke.gbapal.lz");
|
||||
const u32 gBallGfx_Poke[] = INCBIN_U32("graphics/interface/ball/poke.4bpp.lz");
|
||||
const u32 gBallPal_Poke[] = INCBIN_U32("graphics/interface/ball/poke.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_GreatBall[] = INCBIN_U32("graphics/interface/ball/great.4bpp.lz");
|
||||
const u32 gInterfacePal_GreatBall[] = INCBIN_U32("graphics/interface/ball/great.gbapal.lz");
|
||||
const u32 gBallGfx_Great[] = INCBIN_U32("graphics/interface/ball/great.4bpp.lz");
|
||||
const u32 gBallPal_Great[] = INCBIN_U32("graphics/interface/ball/great.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_SafariBall[] = INCBIN_U32("graphics/interface/ball/safari.4bpp.lz");
|
||||
const u32 gInterfacePal_SafariBall[] = INCBIN_U32("graphics/interface/ball/safari.gbapal.lz");
|
||||
const u32 gBallGfx_Safari[] = INCBIN_U32("graphics/interface/ball/safari.4bpp.lz");
|
||||
const u32 gBallPal_Safari[] = INCBIN_U32("graphics/interface/ball/safari.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_UltraBall[] = INCBIN_U32("graphics/interface/ball/ultra.4bpp.lz");
|
||||
const u32 gInterfacePal_UltraBall[] = INCBIN_U32("graphics/interface/ball/ultra.gbapal.lz");
|
||||
const u32 gBallGfx_Ultra[] = INCBIN_U32("graphics/interface/ball/ultra.4bpp.lz");
|
||||
const u32 gBallPal_Ultra[] = INCBIN_U32("graphics/interface/ball/ultra.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_MasterBall[] = INCBIN_U32("graphics/interface/ball/master.4bpp.lz");
|
||||
const u32 gInterfacePal_MasterBall[] = INCBIN_U32("graphics/interface/ball/master.gbapal.lz");
|
||||
const u32 gBallGfx_Master[] = INCBIN_U32("graphics/interface/ball/master.4bpp.lz");
|
||||
const u32 gBallPal_Master[] = INCBIN_U32("graphics/interface/ball/master.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_NetBall[] = INCBIN_U32("graphics/interface/ball/net.4bpp.lz");
|
||||
const u32 gInterfacePal_NetBall[] = INCBIN_U32("graphics/interface/ball/net.gbapal.lz");
|
||||
const u32 gBallGfx_Net[] = INCBIN_U32("graphics/interface/ball/net.4bpp.lz");
|
||||
const u32 gBallPal_Net[] = INCBIN_U32("graphics/interface/ball/net.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_DiveBall[] = INCBIN_U32("graphics/interface/ball/dive.4bpp.lz");
|
||||
const u32 gInterfacePal_DiveBall[] = INCBIN_U32("graphics/interface/ball/dive.gbapal.lz");
|
||||
const u32 gBallGfx_Dive[] = INCBIN_U32("graphics/interface/ball/dive.4bpp.lz");
|
||||
const u32 gBallPal_Dive[] = INCBIN_U32("graphics/interface/ball/dive.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_NestBall[] = INCBIN_U32("graphics/interface/ball/nest.4bpp.lz");
|
||||
const u32 gInterfacePal_NestBall[] = INCBIN_U32("graphics/interface/ball/nest.gbapal.lz");
|
||||
const u32 gBallGfx_Nest[] = INCBIN_U32("graphics/interface/ball/nest.4bpp.lz");
|
||||
const u32 gBallPal_Nest[] = INCBIN_U32("graphics/interface/ball/nest.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_RepeatBall[] = INCBIN_U32("graphics/interface/ball/repeat.4bpp.lz");
|
||||
const u32 gInterfacePal_RepeatBall[] = INCBIN_U32("graphics/interface/ball/repeat.gbapal.lz");
|
||||
const u32 gBallGfx_Repeat[] = INCBIN_U32("graphics/interface/ball/repeat.4bpp.lz");
|
||||
const u32 gBallPal_Repeat[] = INCBIN_U32("graphics/interface/ball/repeat.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_TimerBall[] = INCBIN_U32("graphics/interface/ball/timer.4bpp.lz");
|
||||
const u32 gInterfacePal_TimerBall[] = INCBIN_U32("graphics/interface/ball/timer.gbapal.lz");
|
||||
const u32 gBallGfx_Timer[] = INCBIN_U32("graphics/interface/ball/timer.4bpp.lz");
|
||||
const u32 gBallPal_Timer[] = INCBIN_U32("graphics/interface/ball/timer.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_LuxuryBall[] = INCBIN_U32("graphics/interface/ball/luxury.4bpp.lz");
|
||||
const u32 gInterfacePal_LuxuryBall[] = INCBIN_U32("graphics/interface/ball/luxury.gbapal.lz");
|
||||
const u32 gBallGfx_Luxury[] = INCBIN_U32("graphics/interface/ball/luxury.4bpp.lz");
|
||||
const u32 gBallPal_Luxury[] = INCBIN_U32("graphics/interface/ball/luxury.gbapal.lz");
|
||||
|
||||
const u32 gInterfaceGfx_PremierBall[] = INCBIN_U32("graphics/interface/ball/premier.4bpp.lz");
|
||||
const u32 gInterfacePal_PremierBall[] = INCBIN_U32("graphics/interface/ball/premier.gbapal.lz");
|
||||
const u32 gBallGfx_Premier[] = INCBIN_U32("graphics/interface/ball/premier.4bpp.lz");
|
||||
const u32 gBallPal_Premier[] = INCBIN_U32("graphics/interface/ball/premier.gbapal.lz");
|
||||
|
||||
const u32 gOpenPokeballGfx[] = INCBIN_U32("graphics/interface/ball_open.4bpp.lz");
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -711,7 +711,7 @@ static const struct OamData sOamData_HeldItem =
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.mosaic = FALSE,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(8x8),
|
||||
.x = 0,
|
||||
@@ -767,7 +767,7 @@ static const struct OamData sOamData_MenuPokeball =
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.mosaic = FALSE,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(32x32),
|
||||
.x = 0,
|
||||
@@ -824,7 +824,7 @@ static const struct OamData sOamData_MenuPokeballSmall =
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.mosaic = FALSE,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(16x16),
|
||||
.x = 0,
|
||||
@@ -905,7 +905,7 @@ static const struct OamData sOamData_StatusCondition =
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.mosaic = FALSE,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(32x8),
|
||||
.x = 0,
|
||||
|
||||
+124
-124
@@ -15,7 +15,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -35,7 +35,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -57,7 +57,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -239,7 +239,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -264,7 +264,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM31_BRICK_BREAK)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -758,7 +758,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -794,7 +794,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -867,7 +867,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -901,7 +901,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -974,7 +974,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -992,7 +992,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -1011,7 +1011,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -1029,7 +1029,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -1052,7 +1052,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -1073,7 +1073,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -1093,7 +1093,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -1607,7 +1607,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -1626,7 +1626,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -1646,7 +1646,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -1778,7 +1778,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM11_SUNNY_DAY)
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -1797,7 +1797,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM15_HYPER_BEAM)
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -2348,7 +2348,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -2372,7 +2372,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -2495,7 +2495,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -2647,7 +2647,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -2680,7 +2680,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -2706,7 +2706,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -2872,7 +2872,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -3021,7 +3021,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -3198,7 +3198,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -3356,7 +3356,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
@@ -3560,7 +3560,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -3608,7 +3608,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -3655,7 +3655,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -3676,7 +3676,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -3700,7 +3700,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -3874,7 +3874,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -3903,7 +3903,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -3976,7 +3976,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM31_BRICK_BREAK)
|
||||
@@ -4000,7 +4000,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM31_BRICK_BREAK)
|
||||
@@ -4020,7 +4020,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
@@ -4040,7 +4040,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
@@ -4151,7 +4151,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -4177,7 +4177,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
@@ -4202,7 +4202,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -4229,7 +4229,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -4258,7 +4258,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -4284,7 +4284,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -4373,7 +4373,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -4493,7 +4493,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM40_AERIAL_ACE)
|
||||
@@ -4510,7 +4510,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM40_AERIAL_ACE)
|
||||
@@ -4528,7 +4528,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM40_AERIAL_ACE)
|
||||
@@ -4547,7 +4547,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -4577,7 +4577,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -4598,7 +4598,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -4615,7 +4615,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -4855,7 +4855,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -4877,7 +4877,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -4901,7 +4901,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -4982,7 +4982,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
@@ -5017,7 +5017,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -5455,7 +5455,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM12_TAUNT)
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -5481,7 +5481,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM15_HYPER_BEAM)
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -5568,7 +5568,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -5593,7 +5593,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -5731,7 +5731,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -5766,7 +5766,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -5826,7 +5826,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -6003,7 +6003,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
@@ -6039,7 +6039,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6114,7 +6114,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -6140,7 +6140,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -6169,7 +6169,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -6450,7 +6450,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6473,7 +6473,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6499,7 +6499,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM42_FACADE)
|
||||
@@ -6522,7 +6522,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM31_BRICK_BREAK)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -6552,7 +6552,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM31_BRICK_BREAK)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -6575,7 +6575,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6595,7 +6595,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6621,7 +6621,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6646,7 +6646,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6666,7 +6666,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6688,7 +6688,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -6745,7 +6745,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -6767,7 +6767,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM31_BRICK_BREAK)
|
||||
@@ -6866,7 +6866,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -6888,7 +6888,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -6960,7 +6960,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -6987,7 +6987,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -7014,7 +7014,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -7048,7 +7048,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -7073,7 +7073,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -7383,7 +7383,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -7404,7 +7404,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM28_DIG)
|
||||
@@ -7428,7 +7428,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -7660,7 +7660,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM37_SANDSTORM)
|
||||
@@ -7680,7 +7680,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM37_SANDSTORM)
|
||||
@@ -7769,7 +7769,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM29_PSYCHIC)
|
||||
@@ -7906,7 +7906,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM31_BRICK_BREAK)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -7982,7 +7982,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM40_AERIAL_ACE)
|
||||
@@ -8005,7 +8005,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -8085,7 +8085,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -8108,7 +8108,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -8140,7 +8140,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
@@ -8174,7 +8174,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
@@ -8204,7 +8204,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -8229,7 +8229,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -8253,7 +8253,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -8279,7 +8279,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -8302,7 +8302,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -8332,7 +8332,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM30_SHADOW_BALL)
|
||||
@@ -8538,7 +8538,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -8649,7 +8649,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -8683,7 +8683,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -8710,7 +8710,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -8736,7 +8736,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
@@ -8759,7 +8759,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
| TMHM(TM36_SLUDGE_BOMB)
|
||||
@@ -8777,7 +8777,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM19_GIGA_DRAIN)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
| TMHM(TM27_RETURN)
|
||||
| TMHM(TM32_DOUBLE_TEAM)
|
||||
@@ -9160,7 +9160,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -9196,7 +9196,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM17_PROTECT)
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM23_IRON_TAIL)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
@@ -9234,7 +9234,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
@@ -9272,7 +9272,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM26_EARTHQUAKE)
|
||||
@@ -9337,7 +9337,7 @@ static const u32 sTMHMLearnsets[][2] =
|
||||
| TMHM(TM18_RAIN_DANCE)
|
||||
| TMHM(TM20_SAFEGUARD)
|
||||
| TMHM(TM21_FRUSTRATION)
|
||||
| TMHM(TM22_SOLARBEAM)
|
||||
| TMHM(TM22_SOLAR_BEAM)
|
||||
| TMHM(TM24_THUNDERBOLT)
|
||||
| TMHM(TM25_THUNDER)
|
||||
| TMHM(TM27_RETURN)
|
||||
|
||||
+20
-20
@@ -67,7 +67,7 @@ static void SpriteCB_Egg_3(struct Sprite* sprite);
|
||||
static void SpriteCB_Egg_4(struct Sprite* sprite);
|
||||
static void SpriteCB_Egg_5(struct Sprite* sprite);
|
||||
static void SpriteCB_EggShard(struct Sprite* sprite);
|
||||
static void EggHatchPrintMessage(u8 windowId, u8* string, u8 x, u8 y, u8 speed);
|
||||
static void EggHatchPrintMessage(u8 windowId, u8 *string, u8 x, u8 y, u8 speed);
|
||||
static void CreateRandomEggShardSprite(void);
|
||||
static void CreateEggShardSprite(u8 x, u8 y, s16 data1, s16 data2, s16 data3, u8 spriteAnimIndex);
|
||||
|
||||
@@ -119,7 +119,7 @@ static const struct ListMenuTemplate sDaycareListMenuLevelTemplate =
|
||||
.lettersSpacing = 1,
|
||||
.itemVerticalPadding = 0,
|
||||
.scrollMultiple = 0,
|
||||
.fontId = 3,
|
||||
.fontId = FONT_3,
|
||||
.cursorKind = 0
|
||||
};
|
||||
|
||||
@@ -143,7 +143,7 @@ static const struct OamData sOamData_EggHatch =
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.mosaic = FALSE,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(32x32),
|
||||
.x = 0,
|
||||
@@ -223,7 +223,7 @@ static const struct OamData sOamData_EggShard =
|
||||
.y = 0,
|
||||
.affineMode = 0,
|
||||
.objMode = 0,
|
||||
.mosaic = 0,
|
||||
.mosaic = FALSE,
|
||||
.bpp = 0,
|
||||
.shape = SPRITE_SHAPE(8x8),
|
||||
.x = 0,
|
||||
@@ -356,7 +356,7 @@ static u8 *DayCare_GetMonNickname(struct Pokemon *mon, u8 *dest)
|
||||
u8 nickname[POKEMON_NAME_LENGTH * 2];
|
||||
|
||||
GetMonData(mon, MON_DATA_NICKNAME, nickname);
|
||||
return StringCopy10(dest, nickname);
|
||||
return StringCopy_Nickname(dest, nickname);
|
||||
}
|
||||
|
||||
static u8 *DayCare_GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest)
|
||||
@@ -364,7 +364,7 @@ static u8 *DayCare_GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest)
|
||||
u8 nickname[POKEMON_NAME_LENGTH * 2];
|
||||
|
||||
GetBoxMonData(mon, MON_DATA_NICKNAME, nickname);
|
||||
return StringCopy10(dest, nickname);
|
||||
return StringCopy_Nickname(dest, nickname);
|
||||
}
|
||||
|
||||
u8 CountPokemonInDaycare(struct DayCare *daycare)
|
||||
@@ -1439,7 +1439,7 @@ static void DaycareAddTextPrinter(u8 windowId, const u8 *text, u32 x, u32 y)
|
||||
|
||||
printer.currentChar = text;
|
||||
printer.windowId = windowId;
|
||||
printer.fontId = 3;
|
||||
printer.fontId = FONT_3;
|
||||
printer.x = x;
|
||||
printer.y = y;
|
||||
printer.currentX = x;
|
||||
@@ -1479,7 +1479,7 @@ static void DaycarePrintMonLvl(struct DayCare *daycare, u8 windowId, u32 daycare
|
||||
level = GetLevelAfterDaycareSteps(&daycare->mons[daycareSlotId].mon, daycare->mons[daycareSlotId].steps);
|
||||
ConvertIntToDecimalStringN(intText, level, STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringAppend(lvlText, intText);
|
||||
x = 132 - GetStringWidth(3, lvlText, 0);
|
||||
x = 132 - GetStringWidth(FONT_3, lvlText, 0);
|
||||
DaycareAddTextPrinter(windowId, lvlText, x, y);
|
||||
}
|
||||
|
||||
@@ -1542,7 +1542,7 @@ void ShowDaycareLevelMenu(void)
|
||||
menuTemplate.windowId = windowId;
|
||||
listMenuTaskId = ListMenuInit(&menuTemplate, 0, 0);
|
||||
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
|
||||
daycareMenuTaskId = CreateTask(Task_HandleDaycareLevelMenuInput, 3);
|
||||
gTasks[daycareMenuTaskId].tMenuListTaskId = listMenuTaskId;
|
||||
@@ -1710,7 +1710,7 @@ bool8 DaycareMonReceivedMail(void)
|
||||
|
||||
extern const struct CompressedSpriteSheet gMonFrontPicTable[];
|
||||
|
||||
static u8 EggHatchCreateMonSprite(u8 a0, u8 switchID, u8 pokeID, u16* speciesLoc)
|
||||
static u8 EggHatchCreateMonSprite(u8 a0, u8 switchID, u8 pokeID, u16 *speciesLoc)
|
||||
{
|
||||
u8 r4 = 0;
|
||||
u8 spriteID = 0; // r7
|
||||
@@ -1758,7 +1758,7 @@ void EggHatch(void)
|
||||
{
|
||||
ScriptContext2_Enable();
|
||||
CreateTask(Task_EggHatch, 10);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, 0);
|
||||
HelpSystem_Disable();
|
||||
}
|
||||
|
||||
@@ -1895,7 +1895,7 @@ static void CB2_EggHatch_1(void)
|
||||
switch (sEggHatchData->CB2_state)
|
||||
{
|
||||
case 0:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK);
|
||||
sEggHatchData->eggSpriteID = CreateSprite(&sSpriteTemplate_EggHatch, 120, 75, 5);
|
||||
ShowBg(0);
|
||||
ShowBg(1);
|
||||
@@ -1920,7 +1920,7 @@ static void CB2_EggHatch_1(void)
|
||||
case 3:
|
||||
if (gSprites[sEggHatchData->eggSpriteID].callback == SpriteCallbackDummy)
|
||||
{
|
||||
PlayCry1(sEggHatchData->species, 0);
|
||||
PlayCry_Normal(sEggHatchData->species, 0);
|
||||
sEggHatchData->CB2_state++;
|
||||
}
|
||||
break;
|
||||
@@ -1937,7 +1937,7 @@ static void CB2_EggHatch_1(void)
|
||||
PlayFanfare(MUS_EVOLVED);
|
||||
sEggHatchData->CB2_state++;
|
||||
PutWindowTilemap(sEggHatchData->windowId);
|
||||
CopyWindowToVram(sEggHatchData->windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(sEggHatchData->windowId, COPYWIN_FULL);
|
||||
break;
|
||||
case 6:
|
||||
if (IsFanfareTaskInactive())
|
||||
@@ -1957,7 +1957,7 @@ static void CB2_EggHatch_1(void)
|
||||
if (!IsTextPrinterActive(sEggHatchData->windowId))
|
||||
{
|
||||
LoadUserWindowBorderGfx(sEggHatchData->windowId, 0x140, 0xE0);
|
||||
CreateYesNoMenu(&sYesNoWinTemplate, 3, 0, 2, 0x140, 0xE, 0);
|
||||
CreateYesNoMenu(&sYesNoWinTemplate, FONT_3, 0, 2, 0x140, 0xE, 0);
|
||||
sEggHatchData->CB2_state++;
|
||||
}
|
||||
break;
|
||||
@@ -1977,7 +1977,7 @@ static void CB2_EggHatch_1(void)
|
||||
}
|
||||
break;
|
||||
case 11:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
sEggHatchData->CB2_state++;
|
||||
break;
|
||||
case 12:
|
||||
@@ -2087,7 +2087,7 @@ static void SpriteCB_Egg_4(struct Sprite* sprite)
|
||||
{
|
||||
s16 i;
|
||||
if (sprite->data[0] == 0)
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 0x10, 0xFFFF);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, 0xFFFF);
|
||||
if (sprite->data[0] < 4u)
|
||||
{
|
||||
for (i = 0; i <= 3; i++)
|
||||
@@ -2111,7 +2111,7 @@ static void SpriteCB_Egg_5(struct Sprite* sprite)
|
||||
StartSpriteAffineAnim(&gSprites[sEggHatchData->pokeSpriteID], 1);
|
||||
}
|
||||
if (sprite->data[0] == 8)
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0x10, 0, 0xFFFF);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -1, 0x10, 0, 0xFFFF);
|
||||
if (sprite->data[0] <= 9)
|
||||
gSprites[sEggHatchData->pokeSpriteID].y -= 1;
|
||||
if (sprite->data[0] > 40)
|
||||
@@ -2153,11 +2153,11 @@ static void CreateEggShardSprite(u8 x, u8 y, s16 data1, s16 data2, s16 data3, u8
|
||||
StartSpriteAnim(&gSprites[spriteID], spriteAnimIndex);
|
||||
}
|
||||
|
||||
static void EggHatchPrintMessage(u8 windowId, u8* string, u8 x, u8 y, u8 speed)
|
||||
static void EggHatchPrintMessage(u8 windowId, u8 *string, u8 x, u8 y, u8 speed)
|
||||
{
|
||||
FillWindowPixelBuffer(windowId, 0xFF);
|
||||
sEggHatchData->textColor[0] = 0;
|
||||
sEggHatchData->textColor[1] = 5;
|
||||
sEggHatchData->textColor[2] = 6;
|
||||
AddTextPrinterParameterized4(windowId, 3, x, y, 1, 1, sEggHatchData->textColor, speed, string);
|
||||
AddTextPrinterParameterized4(windowId, FONT_3, x, y, 1, 1, sEggHatchData->textColor, speed, string);
|
||||
}
|
||||
|
||||
+7
-7
@@ -45,7 +45,7 @@ void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src)
|
||||
struct SpritePalette dest;
|
||||
|
||||
LZ77UnCompWram(src->data, gDecompressionBuffer);
|
||||
dest.data = (void*) gDecompressionBuffer;
|
||||
dest.data = (void *) gDecompressionBuffer;
|
||||
dest.tag = src->tag;
|
||||
LoadSpritePalette(&dest);
|
||||
}
|
||||
@@ -60,7 +60,7 @@ void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePale
|
||||
LoadSpritePalette(&dest);
|
||||
}
|
||||
|
||||
void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void* buffer, s32 species)
|
||||
void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void *buffer, s32 species)
|
||||
{
|
||||
if (species > NUM_SPECIES)
|
||||
LZ77UnCompWram(gMonFrontPicTable[0].data, buffer);
|
||||
@@ -263,9 +263,9 @@ static void sub_800EDDC(s32 object_size, s32 object_count, u8 *src_tiles, u8 *de
|
||||
bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src)
|
||||
{
|
||||
struct SpriteSheet dest;
|
||||
void* buffer;
|
||||
void *buffer;
|
||||
|
||||
buffer = AllocZeroed(*((u32*)src->data) >> 8);
|
||||
buffer = AllocZeroed(*((u32 *)src->data) >> 8);
|
||||
if (!buffer)
|
||||
return TRUE;
|
||||
LZ77UnCompWram(src->data, buffer);
|
||||
@@ -280,9 +280,9 @@ bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src
|
||||
bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette *src)
|
||||
{
|
||||
struct SpritePalette dest;
|
||||
void* buffer;
|
||||
void *buffer;
|
||||
|
||||
buffer = AllocZeroed(*((u32*)src->data) >> 8);
|
||||
buffer = AllocZeroed(*((u32 *)src->data) >> 8);
|
||||
if (!buffer)
|
||||
return TRUE;
|
||||
LZ77UnCompWram(src->data, buffer);
|
||||
@@ -305,7 +305,7 @@ u32 GetDecompressedDataSize(const u8 *ptr)
|
||||
return ptr32[0];
|
||||
}
|
||||
|
||||
void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void* buffer, s32 species)
|
||||
void DecompressPicFromTable_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void *buffer, s32 species)
|
||||
{
|
||||
if (species > NUM_SPECIES)
|
||||
LZ77UnCompWram(gMonFrontPicTable[0].data, buffer);
|
||||
|
||||
+9
-9
@@ -8,7 +8,7 @@
|
||||
#include "scanline_effect.h"
|
||||
#include "strings.h"
|
||||
#include "task.h"
|
||||
#include "constants/fanfares.h"
|
||||
#include "constants/sound.h"
|
||||
|
||||
struct Diploma
|
||||
{
|
||||
@@ -138,7 +138,7 @@ static void Task_DiplomaInit(u8 taskId)
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
break;
|
||||
case 7:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
break;
|
||||
case 8:
|
||||
SetVBlankCallback(VCBC_DiplomaOam);
|
||||
@@ -148,7 +148,7 @@ static void Task_DiplomaInit(u8 taskId)
|
||||
{
|
||||
break;
|
||||
}
|
||||
PlayFanfareByFanfareNum(FANFARE_05);
|
||||
PlayFanfareByFanfareNum(FANFARE_OBTAIN_BADGE);
|
||||
gTasks[taskId].func = Task_WaitForExit;
|
||||
}
|
||||
gDiploma->callbackStep++;
|
||||
@@ -167,7 +167,7 @@ static void Task_WaitForExit(u8 taskId)
|
||||
case 1:
|
||||
if (JOY_NEW(A_BUTTON))
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
gDiploma->state++;
|
||||
}
|
||||
break;
|
||||
@@ -264,11 +264,11 @@ static void DiplomaPrintText(void)
|
||||
}
|
||||
FillWindowPixelBuffer(0, 0);
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(arr, gUnknown_841B60E);
|
||||
width = GetStringWidth(2, arr, -1);
|
||||
AddTextPrinterParameterized3(0, 2, 0x78 - (width / 2), 4, gUnknown_8415A04, -1, arr);
|
||||
width = GetStringWidth(FONT_2, arr, -1);
|
||||
AddTextPrinterParameterized3(0, FONT_2, 120 - (width / 2), 4, gUnknown_8415A04, -1, arr);
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(arr, gUnknown_841B619);
|
||||
width = GetStringWidth(2, arr, -1);
|
||||
AddTextPrinterParameterized3(0, 0x2, 0x78 - (width / 2), 0x1E, gUnknown_8415A04, -1, arr);
|
||||
AddTextPrinterParameterized3(0, 0x2, 0x78, 0x69, gUnknown_8415A04, 0, gUnknown_841B684);
|
||||
width = GetStringWidth(FONT_2, arr, -1);
|
||||
AddTextPrinterParameterized3(0, FONT_2, 120 - (width / 2), 0x1E, gUnknown_8415A04, -1, arr);
|
||||
AddTextPrinterParameterized3(0, FONT_2, 120, 105, gUnknown_8415A04, 0, gUnknown_841B684);
|
||||
PutWindowTilemap(0);
|
||||
}
|
||||
|
||||
+14
-14
@@ -13,7 +13,7 @@
|
||||
#include "task.h"
|
||||
#include "text_window.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/fanfares.h"
|
||||
#include "constants/sound.h"
|
||||
#include "constants/items.h"
|
||||
|
||||
struct DodrioStruct
|
||||
@@ -332,8 +332,8 @@ static void sub_8150A84(u8 taskId)
|
||||
gUnknown_203F3E0->unk0C++;
|
||||
break;
|
||||
case 6:
|
||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
SetVBlankCallback(sub_8152034);
|
||||
gUnknown_203F3E0->unk0C++;
|
||||
break;
|
||||
@@ -834,7 +834,7 @@ static void sub_81514F0(void)
|
||||
switch (gUnknown_203F3E0->unk10)
|
||||
{
|
||||
case 0:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
gUnknown_203F3E0->unk10++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -871,7 +871,7 @@ static void sub_815159C(void)
|
||||
{
|
||||
case 0:
|
||||
sub_81549D4(9);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
gUnknown_203F3E0->unk10++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -902,8 +902,8 @@ static void sub_815159C(void)
|
||||
gUnknown_203F3E0->unk10++;
|
||||
break;
|
||||
case 5:
|
||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
gUnknown_203F3E0->unk10++;
|
||||
break;
|
||||
case 6:
|
||||
@@ -1204,7 +1204,7 @@ static void sub_8151D98(void)
|
||||
}
|
||||
else if (gUnknown_203F3E0->unk154 == 1)
|
||||
{
|
||||
PlayFanfareByFanfareNum(FANFARE_10); // MUS_TOO_BAD
|
||||
PlayFanfareByFanfareNum(FANFARE_TOO_BAD);
|
||||
gUnknown_203F3E0->unk154 = 2;
|
||||
}
|
||||
}
|
||||
@@ -1262,7 +1262,7 @@ static void sub_8151E94(void)
|
||||
}
|
||||
else if (gUnknown_203F3E0->unk154 == 1)
|
||||
{
|
||||
PlayFanfareByFanfareNum(FANFARE_10); // MUS_TOO_BAD
|
||||
PlayFanfareByFanfareNum(FANFARE_TOO_BAD);
|
||||
gUnknown_203F3E0->unk154 = 2;
|
||||
}
|
||||
}
|
||||
@@ -2341,7 +2341,7 @@ static void Task_ShowDodrioBerryPickingRecords(u8 taskId)
|
||||
case 0:
|
||||
data[1] = AddWindow(&sUnknown_84755E0);
|
||||
sub_81538D0(data[1]);
|
||||
CopyWindowToVram(data[1], COPYWIN_BOTH);
|
||||
CopyWindowToVram(data[1], COPYWIN_FULL);
|
||||
data[0]++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -2379,14 +2379,14 @@ static void sub_81538D0(u8 windowId)
|
||||
TextWindow_SetStdFrame0_WithPal(windowId, 0x21D, 0xD0);
|
||||
DrawTextBorderOuter(windowId, 0x21D, 0xD);
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(windowId, 2, sUnknown_84755E8[0], 1, 1, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_2, sUnknown_84755E8[0], 1, 1, TEXT_SKIP_DRAW, NULL);
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
ConvertIntToDecimalStringN(strbuf, results[i], STR_CONV_MODE_LEFT_ALIGN, sUnknown_84755F8[i]);
|
||||
numWidth = GetStringWidth(2, strbuf, -1);
|
||||
AddTextPrinterParameterized(windowId, 2, sUnknown_84755E8[i + 1], 1, sUnknown_84755FC[i][0], TEXT_SPEED_FF, NULL);
|
||||
numWidth = GetStringWidth(FONT_2, strbuf, -1);
|
||||
AddTextPrinterParameterized(windowId, FONT_2, sUnknown_84755E8[i + 1], 1, sUnknown_84755FC[i][0], TEXT_SKIP_DRAW, NULL);
|
||||
x = 224 - numWidth;
|
||||
AddTextPrinterParameterized(windowId, 2, strbuf, x, sUnknown_8475602[i][0], TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_2, strbuf, x, sUnknown_8475602[i][0], TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
PutWindowTilemap(windowId);
|
||||
}
|
||||
|
||||
@@ -29,13 +29,13 @@ static EWRAM_DATA u16 *gUnknown_203F42C[4] = {NULL};
|
||||
static EWRAM_DATA struct DodrioStruct_2022CF4 * gUnknown_203F43C = NULL;
|
||||
static EWRAM_DATA struct DodrioSubstruct_0160 * gUnknown_203F440 = NULL;
|
||||
|
||||
static void sub_8153B9C(struct Sprite * sprite);
|
||||
static u32 sub_8153C30(struct Sprite * sprite);
|
||||
static u32 sub_8153CA0(struct Sprite * sprite);
|
||||
static void sub_8153B9C(struct Sprite *sprite);
|
||||
static u32 sub_8153C30(struct Sprite *sprite);
|
||||
static u32 sub_8153CA0(struct Sprite *sprite);
|
||||
static void sub_8153D48(bool8 a0, u8 a1);
|
||||
static void nullsub_97(struct Sprite * sprite);
|
||||
static void nullsub_97(struct Sprite *sprite);
|
||||
static void sub_8154324(bool8 a0);
|
||||
static void sub_81543E8(struct Sprite * sprite);
|
||||
static void sub_81543E8(struct Sprite *sprite);
|
||||
static s16 sub_8154608(u8 a0, u8 a1);
|
||||
static void sub_8154A08(u8 taskId);
|
||||
static void sub_8154A2C(void);
|
||||
@@ -304,7 +304,7 @@ void sub_8153AFC(struct DodrioSubstruct_318C * arg0, u8 arg1, u8 id, u8 arg3)
|
||||
sub_8153D48(TRUE, id);
|
||||
}
|
||||
|
||||
static void sub_8153B9C(struct Sprite * sprite)
|
||||
static void sub_8153B9C(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -321,7 +321,7 @@ static void sub_8153B9C(struct Sprite * sprite)
|
||||
|
||||
void sub_8153BC0(u8 unused)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[*gUnknown_203F3E4[GetMultiplayerId()]];
|
||||
struct Sprite *sprite = &gSprites[*gUnknown_203F3E4[GetMultiplayerId()]];
|
||||
sprite->data[0] = 1;
|
||||
sprite->data[1] = 0;
|
||||
sprite->data[2] = 0;
|
||||
@@ -331,7 +331,7 @@ void sub_8153BC0(u8 unused)
|
||||
|
||||
void sub_8153BF8(u8 unused)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[*gUnknown_203F3E4[GetMultiplayerId()]];
|
||||
struct Sprite *sprite = &gSprites[*gUnknown_203F3E4[GetMultiplayerId()]];
|
||||
sprite->data[0] = 2;
|
||||
sprite->data[1] = 0;
|
||||
sprite->data[2] = 0;
|
||||
@@ -339,7 +339,7 @@ void sub_8153BF8(u8 unused)
|
||||
sprite->data[4] = 0;
|
||||
}
|
||||
|
||||
static u32 sub_8153C30(struct Sprite * sprite)
|
||||
static u32 sub_8153C30(struct Sprite *sprite)
|
||||
{
|
||||
s8 var;
|
||||
u8 mod = (++sprite->data[1] / 2) % 4;
|
||||
@@ -368,7 +368,7 @@ static u32 sub_8153C30(struct Sprite * sprite)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static u32 sub_8153CA0(struct Sprite * sprite)
|
||||
static u32 sub_8153CA0(struct Sprite *sprite)
|
||||
{
|
||||
u8 mod = (++sprite->data[1] / 13) % 4;
|
||||
|
||||
@@ -388,7 +388,7 @@ void sub_8153D08(u8 count)
|
||||
u8 i;
|
||||
for (i = 0; i < count; i++)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[*gUnknown_203F3E4[i]];
|
||||
struct Sprite *sprite = &gSprites[*gUnknown_203F3E4[i]];
|
||||
if (sprite != NULL)
|
||||
DestroySpriteAndFreeResources(sprite);
|
||||
// Memory should be freed here but is not.
|
||||
@@ -412,7 +412,7 @@ void sub_8153DA8(u8 id, u8 frameNum)
|
||||
StartSpriteAnim(&gSprites[*gUnknown_203F3E4[id]], frameNum);
|
||||
}
|
||||
|
||||
static void nullsub_97(struct Sprite * sprite)
|
||||
static void nullsub_97(struct Sprite *sprite)
|
||||
{
|
||||
|
||||
}
|
||||
@@ -422,7 +422,7 @@ void sub_8153DD8(void)
|
||||
u8 i;
|
||||
for (i = 0; i < 10; i++)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
|
||||
struct Sprite *sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
|
||||
sprite->x = (i * 16) + 48;
|
||||
sprite->y = -8 - (i * 8);
|
||||
gUnknown_203F43C->unkC[i] = 0;
|
||||
@@ -466,7 +466,7 @@ void sub_8153ED8(void)
|
||||
u8 i;
|
||||
for (i = 0; i < 10; i++)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
|
||||
struct Sprite *sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
|
||||
if (sprite != NULL)
|
||||
DestroySpriteAndFreeResources(sprite);
|
||||
}
|
||||
@@ -479,7 +479,7 @@ bool32 sub_8153F1C(void)
|
||||
bool32 r3 = FALSE;
|
||||
for (i = 0; i < 10; i++)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
|
||||
struct Sprite *sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
|
||||
gUnknown_203F43C->unk16[i] = 2;
|
||||
if (gUnknown_203F43C->unkC[i] != 0 && sprite->y == 8)
|
||||
continue;
|
||||
@@ -621,7 +621,7 @@ void sub_815417C(void)
|
||||
|
||||
void sub_8154274(void)
|
||||
{
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
u8 i;
|
||||
|
||||
for (i = 0; i < 11; i++)
|
||||
@@ -677,7 +677,7 @@ static void sub_81543C4(u8 spriteId)
|
||||
#define sKeepPosX data[10]
|
||||
#endif // BUGFIX
|
||||
|
||||
static void sub_81543E8(struct Sprite * sprite)
|
||||
static void sub_81543E8(struct Sprite *sprite)
|
||||
{
|
||||
u8 i;
|
||||
static const u8 array[] = {30, 20};
|
||||
@@ -735,7 +735,7 @@ void sub_81544F0(void)
|
||||
u8 i;
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[*gUnknown_203F3F8[i]];
|
||||
struct Sprite *sprite = &gSprites[*gUnknown_203F3F8[i]];
|
||||
sprite->sKeepPosX = TRUE;
|
||||
sprite->x = gUnknown_8478E0E[i][0];
|
||||
sprite->y = gUnknown_8478E0E[i][1];
|
||||
@@ -747,7 +747,7 @@ void sub_8154540(void)
|
||||
u8 i;
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[*gUnknown_203F3F8[i]];
|
||||
struct Sprite *sprite = &gSprites[*gUnknown_203F3F8[i]];
|
||||
sprite->sKeepPosX = FALSE;
|
||||
}
|
||||
}
|
||||
@@ -757,7 +757,7 @@ void sub_8154578(void)
|
||||
u8 i;
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[*gUnknown_203F3F8[i]];
|
||||
struct Sprite *sprite = &gSprites[*gUnknown_203F3F8[i]];
|
||||
if (sprite)
|
||||
DestroySprite(sprite);
|
||||
FREE_AND_SET_NULL(gUnknown_203F3F8[i]);
|
||||
@@ -833,8 +833,8 @@ void sub_81546C0(void)
|
||||
|
||||
static void sub_81546EC(u8 frameId)
|
||||
{
|
||||
LoadBgTiles(0, GetUserFrameGraphicsInfo(frameId)->tiles, 0x120, 1);
|
||||
LoadPalette(GetUserFrameGraphicsInfo(frameId)->palette, 0xA0, 0x20);
|
||||
LoadBgTiles(0, GetWindowFrameTilesPal(frameId)->tiles, 0x120, 1);
|
||||
LoadPalette(GetWindowFrameTilesPal(frameId)->palette, 0xA0, 0x20);
|
||||
}
|
||||
|
||||
static void sub_8154720(void)
|
||||
@@ -1045,7 +1045,7 @@ static void sub_8154B34(void)
|
||||
{
|
||||
colorsId = 0;
|
||||
id = sub_81537AC(i);
|
||||
left = (56 - GetStringWidth(0, sub_81533C4(id), -1)) / 2u;
|
||||
left = (56 - GetStringWidth(FONT_0, sub_81533C4(id), -1)) / 2u;
|
||||
window.tilemapLeft = ptr->left;
|
||||
window.tilemapTop = ptr->top;
|
||||
gUnknown_203F440->unk3008[i] = AddWindow(&window);
|
||||
@@ -1054,7 +1054,7 @@ static void sub_8154B34(void)
|
||||
if (id == GetMultiplayerId())
|
||||
colorsId = 2;
|
||||
name = sub_81533C4(id);
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[i], 0, left, 1, sTextColorTable[colorsId], -1, name);
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[i], FONT_0, left, 1, sTextColorTable[colorsId], -1, name);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[i], COPYWIN_GFX);
|
||||
window.baseBlock += 0xE;
|
||||
sub_8154868(&window);
|
||||
@@ -1127,22 +1127,22 @@ static void sub_8154D9C(u8 playersCount_)
|
||||
structArray[i].unk0 = playersCount - 1;
|
||||
}
|
||||
|
||||
x = 216 - GetStringWidth(0, gText_SpacePoints, 0);
|
||||
x = 216 - GetStringWidth(FONT_0, gText_SpacePoints, 0);
|
||||
for (i = 0; i < playersCount; i++)
|
||||
{
|
||||
u8 colorsId = 0;
|
||||
u8 id = array[i];
|
||||
u32 points = structArray[id].unk4;
|
||||
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 0, sUnknown_8478E94[structArray[id].unk0], 8, sUnknown_8478EBA[i], -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_0, sUnknown_8478E94[structArray[id].unk0], 8, sUnknown_8478EBA[i], -1, NULL);
|
||||
if (id == GetMultiplayerId())
|
||||
colorsId = 2;
|
||||
name = sub_81533C4(id);
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[1], 0, 28, sUnknown_8478EBA[i], sTextColorTable[colorsId], -1, name);
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[1], FONT_0, 28, sUnknown_8478EBA[i], sTextColorTable[colorsId], -1, name);
|
||||
ConvertIntToDecimalStringN(numString, points, STR_CONV_MODE_RIGHT_ALIGN, 7);
|
||||
numWidth = GetStringWidth(0, numString, -1);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 0, numString, x - 35, sUnknown_8478EBA[i], -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 0, gText_SpacePoints, x, sUnknown_8478EBA[i], -1, NULL);
|
||||
numWidth = GetStringWidth(FONT_0, numString, -1);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_0, numString, x - 35, sUnknown_8478EBA[i], -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_0, gText_SpacePoints, x, sUnknown_8478EBA[i], -1, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1173,10 +1173,10 @@ static void sub_8154F80(void)
|
||||
case 2:
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[1], PIXEL_FILL(1));
|
||||
strWidth = GetStringWidth(0, gText_BerryPickingResults, -1);
|
||||
strWidth = GetStringWidth(FONT_0, gText_BerryPickingResults, -1);
|
||||
x = (224 - strWidth) / 2;
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 0, gText_BerryPickingResults, x, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 0, gText_10P30P50P50P, 68, 16, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], FONT_0, gText_BerryPickingResults, x, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_0, gText_10P30P50P50P, 68, 16, -1, NULL);
|
||||
for (i = 0; i < playersCount; i++)
|
||||
{
|
||||
u8 colorsId = 0;
|
||||
@@ -1184,7 +1184,7 @@ static void sub_8154F80(void)
|
||||
colorsId = 2;
|
||||
|
||||
name = sub_81533C4(i);
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[1], 0, 2, sUnknown_8478EB0[i], sTextColorTable[colorsId], -1, name);
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[1], FONT_0, 2, sUnknown_8478EB0[i], sTextColorTable[colorsId], -1, name);
|
||||
for (j = 0; j < 4; j++)
|
||||
{
|
||||
u32 width;
|
||||
@@ -1192,11 +1192,11 @@ static void sub_8154F80(void)
|
||||
u16 result2 = Min(sub_81534F0(j), 9999);
|
||||
|
||||
ConvertIntToDecimalStringN(sp0C, result1, STR_CONV_MODE_LEFT_ALIGN, 4);
|
||||
width = GetStringWidth(0, sp0C, -1);
|
||||
width = GetStringWidth(FONT_0, sp0C, -1);
|
||||
if (result2 == result1 && result2 != 0)
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[1], 0, sUnknown_8478EA8[j] - width, sUnknown_8478EB0[i], sTextColorTable[1], -1, sp0C);
|
||||
AddTextPrinterParameterized3(gUnknown_203F440->unk3008[1], FONT_0, sUnknown_8478EA8[j] - width, sUnknown_8478EB0[i], sTextColorTable[1], -1, sp0C);
|
||||
else
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 0, sp0C, sUnknown_8478EA8[j] - width, sUnknown_8478EB0[i], -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_0, sp0C, sUnknown_8478EA8[j] - width, sUnknown_8478EB0[i], -1, NULL);
|
||||
}
|
||||
}
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[0], COPYWIN_GFX);
|
||||
@@ -1225,9 +1225,9 @@ static void sub_8154F80(void)
|
||||
case 5:
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[1], PIXEL_FILL(1));
|
||||
strWidth = GetStringWidth(0, gText_AnnouncingRankings, -1);
|
||||
strWidth = GetStringWidth(FONT_0, gText_AnnouncingRankings, -1);
|
||||
x = (224 - strWidth) / 2;
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 0, gText_AnnouncingRankings, x, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], FONT_0, gText_AnnouncingRankings, x, 2, -1, NULL);
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
case 6:
|
||||
@@ -1271,14 +1271,14 @@ static void sub_8154F80(void)
|
||||
PlayNewMapMusic(MUS_LEVEL_UP);
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[1], PIXEL_FILL(1));
|
||||
strWidth = GetStringWidth(0, gText_AnnouncingPrizes, -1);
|
||||
strWidth = GetStringWidth(FONT_0, gText_AnnouncingPrizes, -1);
|
||||
x = (224 - strWidth) / 2;
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 0, gText_AnnouncingPrizes, x, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], FONT_0, gText_AnnouncingPrizes, x, 2, -1, NULL);
|
||||
DynamicPlaceholderTextUtil_Reset();
|
||||
CopyItemName(sub_8153390(), sp70);
|
||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sp70);
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(sp0C, gText_FirstPlacePrize);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 0, sp0C, 8, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_0, sp0C, 8, 2, -1, NULL);
|
||||
itemGiveRet = sub_815372C();
|
||||
if (itemGiveRet != 0 && itemGiveRet != 3)
|
||||
{
|
||||
@@ -1289,7 +1289,7 @@ static void sub_8154F80(void)
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(sp0C, gText_CantHoldAnyMore);
|
||||
else if (itemGiveRet == 1)
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(sp0C, gText_FilledStorageSpace);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 0, sp0C, 8, 40, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_0, sp0C, 8, 40, -1, NULL);
|
||||
}
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[0], COPYWIN_GFX);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[1], COPYWIN_GFX);
|
||||
@@ -1345,10 +1345,10 @@ static void sub_81556E0(void)
|
||||
case 1:
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[1], PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 2, gText_WantToPlayAgain, 0, 6, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_Yes, 8, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_No, 8, 16, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_SelectorArrow2, 0, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], FONT_2, gText_WantToPlayAgain, 0, 6, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_2, gText_Yes, 8, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_2, gText_No, 8, 16, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_2, gText_SelectorArrow2, 0, 2, -1, NULL);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[0], COPYWIN_GFX);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[1], COPYWIN_GFX);
|
||||
gUnknown_203F440->state++;
|
||||
@@ -1367,10 +1367,10 @@ static void sub_81556E0(void)
|
||||
if (y == 0)
|
||||
y = 1;
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[1], PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_Yes, 8, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_No, 8, 16, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_SelectorArrow2, 0, y == 1 ? 2 : 16, -1, NULL);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[1], COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_2, gText_Yes, 8, 2, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_2, gText_No, 8, 16, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], FONT_2, gText_SelectorArrow2, 0, y == 1 ? 2 : 16, -1, NULL);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[1], COPYWIN_FULL);
|
||||
// Increment state only if A or B button have been pressed.
|
||||
if (JOY_NEW(A_BUTTON))
|
||||
{
|
||||
@@ -1421,22 +1421,22 @@ static void sub_8155A78(void)
|
||||
{
|
||||
case 0:
|
||||
DrawDialogueFrame(0, FALSE);
|
||||
AddTextPrinterParameterized2(0, 2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
case 1:
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
case 2:
|
||||
if (!IsDma3ManagerBusyWithBgCopy())
|
||||
{
|
||||
CreateTask(Task_LinkSave, 0);
|
||||
CreateTask(Task_LinkFullSave, 0);
|
||||
gUnknown_203F440->state++;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (!FuncIsActiveTask(Task_LinkSave))
|
||||
if (!FuncIsActiveTask(Task_LinkFullSave))
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
default:
|
||||
@@ -1459,7 +1459,7 @@ static void sub_8155B4C(void)
|
||||
break;
|
||||
case 1:
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 2, gText_CommunicationStandby3, 0, 6, -1, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], FONT_2, gText_CommunicationStandby3, 0, 6, -1, NULL);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[0], COPYWIN_GFX);
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
@@ -1499,7 +1499,7 @@ static void sub_8155C80(void)
|
||||
break;
|
||||
case 1:
|
||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 2, gText_SomeoneDroppedOut, 0, 6, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], FONT_2, gText_SomeoneDroppedOut, 0, 6, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(gUnknown_203F440->unk3008[0], COPYWIN_GFX);
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
|
||||
+3
-3
@@ -162,15 +162,15 @@ static void Task_RunEasyChat(u8 taskId)
|
||||
{
|
||||
case 0:
|
||||
SetVBlankCallback(VBlankCallback_EasyChatScreen);
|
||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 16, 0, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK);
|
||||
data[EZCHAT_TASK_STATE]++;
|
||||
break;
|
||||
case 1:
|
||||
action = EasyChatScreen_HandleJoypad();
|
||||
if (action == 23)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK);
|
||||
data[EZCHAT_TASK_STATE] = 3;
|
||||
}
|
||||
else if (action != 0)
|
||||
|
||||
+34
-32
@@ -23,16 +23,16 @@ struct ECWork
|
||||
u16 bg2ScrollRow;
|
||||
int tgtBgY;
|
||||
int deltaBgY;
|
||||
struct Sprite * selectDestFieldCursorSprite;
|
||||
struct Sprite * rectCursorSpriteRight;
|
||||
struct Sprite * rectCursorSpriteLeft;
|
||||
struct Sprite * selectWordCursorSprite;
|
||||
struct Sprite * selectGroupHelpSprite;
|
||||
struct Sprite * modeIconsSprite;
|
||||
struct Sprite * upTriangleCursorSprite;
|
||||
struct Sprite * downTriangleCursorSprite;
|
||||
struct Sprite * startPgUpButtonSprite;
|
||||
struct Sprite * selectPgDnButtonSprite;
|
||||
struct Sprite *selectDestFieldCursorSprite;
|
||||
struct Sprite *rectCursorSpriteRight;
|
||||
struct Sprite *rectCursorSpriteLeft;
|
||||
struct Sprite *selectWordCursorSprite;
|
||||
struct Sprite *selectGroupHelpSprite;
|
||||
struct Sprite *modeIconsSprite;
|
||||
struct Sprite *upTriangleCursorSprite;
|
||||
struct Sprite *downTriangleCursorSprite;
|
||||
struct Sprite *startPgUpButtonSprite;
|
||||
struct Sprite *selectPgDnButtonSprite;
|
||||
u16 bg1TilemapBuffer[BG_SCREEN_SIZE / 2];
|
||||
u16 bg3TilemapBuffer[BG_SCREEN_SIZE / 2];
|
||||
};
|
||||
@@ -104,7 +104,7 @@ static int GetBg2ScrollRow(void);
|
||||
static void SetRegWin0Coords(u8 left, u8 top, u8 right, u8 bottom);
|
||||
static void LoadSpriteGfx(void);
|
||||
static void CreateSelectDestFieldCursorSprite(void);
|
||||
static void SpriteCB_BounceCursor(struct Sprite * sprite);
|
||||
static void SpriteCB_BounceCursor(struct Sprite *sprite);
|
||||
static void SetSelectDestFieldCursorSpritePosAndResetAnim(u8 x, u8 y);
|
||||
static void FreezeSelectDestFieldCursorSprite(void);
|
||||
static void UnfreezeSelectDestFieldCursorSprite(void);
|
||||
@@ -114,7 +114,7 @@ static void EC_MoveCursor(void);
|
||||
static void MoveCursor_Group(s8 a0, s8 a1);
|
||||
static void MoveCursor_Alpha(s8 a0, s8 a1);
|
||||
static void CreateSelectWordCursorSprite(void);
|
||||
static void SpriteCB_SelectWordCursorSprite(struct Sprite * sprite);
|
||||
static void SpriteCB_SelectWordCursorSprite(struct Sprite *sprite);
|
||||
static void SetSelectWordCursorSpritePos(void);
|
||||
static void SetSelectWordCursorSpritePosExplicit(u8 x, u8 y);
|
||||
static void DestroySelectWordCursorSprite(void);
|
||||
@@ -695,12 +695,12 @@ static bool8 ECInterfaceCmd_02(void)
|
||||
{
|
||||
if (*ecWord == 0xFFFF)
|
||||
{
|
||||
stringWidth = GetStringWidth(1, gUnknown_843F8D8, 0) * 7;
|
||||
stringWidth = GetStringWidth(FONT_1, gUnknown_843F8D8, 0) * 7;
|
||||
}
|
||||
else
|
||||
{
|
||||
CopyEasyChatWord(str, *ecWord);
|
||||
stringWidth = GetStringWidth(1, str, 0);
|
||||
stringWidth = GetStringWidth(FONT_1, str, 0);
|
||||
}
|
||||
|
||||
trueStringWidth = stringWidth + 17;
|
||||
@@ -1319,23 +1319,25 @@ static void PrintTitleText(void)
|
||||
if (titleText == NULL)
|
||||
return;
|
||||
|
||||
xOffset = (128 - GetStringWidth(1, titleText, 0)) / 2u;
|
||||
xOffset = (128 - GetStringWidth(FONT_1, titleText, 0)) / 2u;
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
EC_AddTextPrinterParameterized2(0, 1, titleText, xOffset, 0, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY);
|
||||
EC_AddTextPrinterParameterized2(0, FONT_1, titleText, xOffset, 0, TEXT_SKIP_DRAW, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY);
|
||||
PutWindowTilemap(0);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void EC_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16))
|
||||
{
|
||||
if (fontId == 1) y += 2;
|
||||
if (fontId == FONT_1)
|
||||
y += 2;
|
||||
AddTextPrinterParameterized(windowId, fontId, str, x, y, speed, callback);
|
||||
}
|
||||
|
||||
static void EC_AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, u8 bg, u8 fg, u8 shadow)
|
||||
{
|
||||
u8 color[3];
|
||||
if (fontId == 1) y += 2;
|
||||
if (fontId == FONT_1)
|
||||
y += 2;
|
||||
color[0] = bg;
|
||||
color[1] = fg;
|
||||
color[2] = shadow;
|
||||
@@ -1374,17 +1376,17 @@ static void PrintECInterfaceTextById(u8 direction)
|
||||
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||
if (text1)
|
||||
EC_AddTextPrinterParameterized(1, 1, text1, 0, 0, TEXT_SPEED_FF, NULL);
|
||||
EC_AddTextPrinterParameterized(1, FONT_1, text1, 0, 0, TEXT_SKIP_DRAW, NULL);
|
||||
|
||||
if (text2)
|
||||
EC_AddTextPrinterParameterized(1, 1, text2, 0, 16, TEXT_SPEED_FF, NULL);
|
||||
EC_AddTextPrinterParameterized(1, FONT_1, text2, 0, 16, TEXT_SKIP_DRAW, NULL);
|
||||
|
||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
||||
CopyWindowToVram(1, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void EC_CreateYesNoMenuWithInitialCursorPos(u8 initialCursorPos)
|
||||
{
|
||||
CreateYesNoMenu(&sEasyChatYesNoWindowTemplate, 1, 0, 2, 0x001, 14, initialCursorPos);
|
||||
CreateYesNoMenu(&sEasyChatYesNoWindowTemplate, FONT_1, 0, 2, 0x001, 14, initialCursorPos);
|
||||
}
|
||||
|
||||
static void CreatePhraseFrameWindow(void)
|
||||
@@ -1435,7 +1437,7 @@ static void PrintECFields(void)
|
||||
ecWord++;
|
||||
for (k = 0; k < 7; k++)
|
||||
{
|
||||
*str++ = CHAR_EXTRA_EMOJI;
|
||||
*str++ = CHAR_EXTRA_SYMBOL;
|
||||
*str++ = 9;
|
||||
}
|
||||
|
||||
@@ -1451,10 +1453,10 @@ static void PrintECFields(void)
|
||||
}
|
||||
|
||||
*str = EOS;
|
||||
EC_AddTextPrinterParameterized(sEasyChatGraphicsResources->windowId, 1, sEasyChatGraphicsResources->ecPrintBuffer, 0, i * 16, TEXT_SPEED_FF, NULL);
|
||||
EC_AddTextPrinterParameterized(sEasyChatGraphicsResources->windowId, FONT_1, sEasyChatGraphicsResources->ecPrintBuffer, 0, i * 16, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
|
||||
CopyWindowToVram(sEasyChatGraphicsResources->windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(sEasyChatGraphicsResources->windowId, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void DrawECFrameInTilemapBuffer(u16 *tilemap)
|
||||
@@ -1566,7 +1568,7 @@ static void PrintECGroupsMenu(void)
|
||||
return;
|
||||
}
|
||||
|
||||
EC_AddTextPrinterParameterized(2, 1, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SPEED_FF, NULL);
|
||||
EC_AddTextPrinterParameterized(2, FONT_1, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
|
||||
y += 16;
|
||||
@@ -1578,7 +1580,7 @@ static void PrintEasyChatKeyboardText(void)
|
||||
u32 i;
|
||||
|
||||
for (i = 0; i < NELEMS(sEasyChatKeyboardText); i++)
|
||||
EC_AddTextPrinterParameterized(2, 1, sEasyChatKeyboardText[i], 10, 96 + i * 16, TEXT_SPEED_FF, NULL);
|
||||
EC_AddTextPrinterParameterized(2, FONT_1, sEasyChatKeyboardText[i], 10, 96 + i * 16, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
|
||||
static void PrintECWordsMenu(void)
|
||||
@@ -1652,7 +1654,7 @@ static void PrintECRowsWin2(u8 row, u8 remrow)
|
||||
|
||||
CopyEasyChatWordPadded(sEasyChatGraphicsResources->ecPaddedWordBuffer, easyChatWord, 0);
|
||||
|
||||
EC_AddTextPrinterParameterized(2, 1, sEasyChatGraphicsResources->ecPaddedWordBuffer, (j * 13 + 3) * 8, y_, TEXT_SPEED_FF, NULL);
|
||||
EC_AddTextPrinterParameterized(2, FONT_1, sEasyChatGraphicsResources->ecPaddedWordBuffer, (j * 13 + 3) * 8, y_, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
}
|
||||
y += 16;
|
||||
@@ -1933,7 +1935,7 @@ static void CreateSelectDestFieldCursorSprite(void)
|
||||
gSprites[spriteId].data[1] = 1;
|
||||
}
|
||||
|
||||
static void SpriteCB_BounceCursor(struct Sprite * sprite)
|
||||
static void SpriteCB_BounceCursor(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[1])
|
||||
{
|
||||
@@ -2076,7 +2078,7 @@ static void CreateSelectWordCursorSprite(void)
|
||||
SetSelectWordCursorSpritePos();
|
||||
}
|
||||
|
||||
static void SpriteCB_SelectWordCursorSprite(struct Sprite * sprite)
|
||||
static void SpriteCB_SelectWordCursorSprite(struct Sprite *sprite)
|
||||
{
|
||||
if (++sprite->data[0] > 2)
|
||||
{
|
||||
@@ -2293,6 +2295,6 @@ static void CreateFooterWindow(void)
|
||||
template.baseBlock = 0x030;
|
||||
windowId = AddWindow(&template);
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||
EC_AddTextPrinterParameterized(windowId, 1, gUnknown_841EE2B, 0, 0, 0, NULL);
|
||||
EC_AddTextPrinterParameterized(windowId, FONT_1, gUnknown_841EE2B, 0, 0, 0, NULL);
|
||||
PutWindowTilemap(windowId);
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ static u16 sSavedTm3Cnt;
|
||||
static u16 sSavedSioCnt;
|
||||
static u16 sSavedRCnt;
|
||||
|
||||
int EReader_Send(size_t size, const void * src)
|
||||
int EReader_Send(size_t size, const void *src)
|
||||
{
|
||||
int result;
|
||||
EReaderHelper_SaveRegsState();
|
||||
@@ -73,7 +73,7 @@ int EReader_Send(size_t size, const void * src)
|
||||
return result;
|
||||
}
|
||||
|
||||
int EReader_Recv(void * dest)
|
||||
int EReader_Recv(void *dest)
|
||||
{
|
||||
int result;
|
||||
EReaderHelper_SaveRegsState();
|
||||
@@ -147,7 +147,7 @@ static void OpenSerial32(void)
|
||||
sCounter2 = 0;
|
||||
}
|
||||
|
||||
u16 EReaderHandleTransfer(u8 mode, size_t size, const void * data, void * recvBuffer)
|
||||
u16 EReaderHandleTransfer(u8 mode, size_t size, const void *data, void *recvBuffer)
|
||||
{
|
||||
switch (sSendRecvMgr.state)
|
||||
{
|
||||
@@ -240,7 +240,7 @@ static bool16 DetermineSendRecvState(u8 mode)
|
||||
return resp;
|
||||
}
|
||||
|
||||
static void SetUpTransferManager(size_t size, const void * data, void * recvBuffer)
|
||||
static void SetUpTransferManager(size_t size, const void *data, void *recvBuffer)
|
||||
{
|
||||
if (sSendRecvMgr.master_slave)
|
||||
{
|
||||
|
||||
@@ -42,7 +42,7 @@ void ScriptFreezeObjectEvents(void)
|
||||
|
||||
void Task_WaitPlayerAndTargetNPCStopMoving(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
if (task->data[0] == 0 && walkrun_is_standing_still() == TRUE)
|
||||
{
|
||||
|
||||
+48
-48
@@ -32,32 +32,32 @@ static bool8 IsMetatileDirectionallyImpassable(struct ObjectEvent *, s16, s16, u
|
||||
static bool8 DoesObjectCollideWithObjectAt(struct ObjectEvent *, s16, s16);
|
||||
static void CalcWhetherObjectIsOffscreen(struct ObjectEvent *, struct Sprite *);
|
||||
static void UpdateObjEventSpriteVisibility(struct ObjectEvent *, struct Sprite *);
|
||||
static void ObjectEventUpdateMetatileBehaviors(struct ObjectEvent*);
|
||||
static void GetGroundEffectFlags_Reflection(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_LongGrassOnSpawn(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_SandHeap(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_ShallowFlowingWater(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_ShortGrass(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_HotSprings(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_TallGrassOnBeginStep(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_LongGrassOnBeginStep(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_Tracks(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_Puddle(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_Ripple(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_Seaweed(struct ObjectEvent*, u32*);
|
||||
static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent*, u32*);
|
||||
static u8 ObjectEventCheckForReflectiveSurface(struct ObjectEvent*);
|
||||
static void ObjectEventUpdateMetatileBehaviors(struct ObjectEvent *);
|
||||
static void GetGroundEffectFlags_Reflection(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_LongGrassOnSpawn(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_SandHeap(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_ShallowFlowingWater(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_ShortGrass(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_HotSprings(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_TallGrassOnBeginStep(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_LongGrassOnBeginStep(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_Tracks(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_Puddle(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_Ripple(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_Seaweed(struct ObjectEvent *, u32 *);
|
||||
static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent *, u32 *);
|
||||
static u8 ObjectEventCheckForReflectiveSurface(struct ObjectEvent *);
|
||||
static u8 GetReflectionTypeByMetatileBehavior(u32);
|
||||
static void InitObjectPriorityByZCoord(struct Sprite *sprite, u8 z);
|
||||
static void ObjectEventUpdateSubpriority(struct ObjectEvent*, struct Sprite*);
|
||||
static void DoTracksGroundEffect_None(struct ObjectEvent*, struct Sprite*, u8);
|
||||
static void DoTracksGroundEffect_Footprints(struct ObjectEvent*, struct Sprite*, u8);
|
||||
static void DoTracksGroundEffect_BikeTireTracks(struct ObjectEvent*, struct Sprite*, u8);
|
||||
static void DoRippleFieldEffect(struct ObjectEvent*, struct Sprite*);
|
||||
static void DoGroundEffects_OnSpawn(struct ObjectEvent*, struct Sprite*);
|
||||
static void DoGroundEffects_OnBeginStep(struct ObjectEvent*, struct Sprite*);
|
||||
static void DoGroundEffects_OnFinishStep(struct ObjectEvent*, struct Sprite*);
|
||||
static void ObjectEventUpdateSubpriority(struct ObjectEvent *, struct Sprite *);
|
||||
static void DoTracksGroundEffect_None(struct ObjectEvent *, struct Sprite *, u8);
|
||||
static void DoTracksGroundEffect_Footprints(struct ObjectEvent *, struct Sprite *, u8);
|
||||
static void DoTracksGroundEffect_BikeTireTracks(struct ObjectEvent *, struct Sprite *, u8);
|
||||
static void DoRippleFieldEffect(struct ObjectEvent *, struct Sprite *);
|
||||
static void DoGroundEffects_OnSpawn(struct ObjectEvent *, struct Sprite *);
|
||||
static void DoGroundEffects_OnBeginStep(struct ObjectEvent *, struct Sprite *);
|
||||
static void DoGroundEffects_OnFinishStep(struct ObjectEvent *, struct Sprite *);
|
||||
static void CreateReflectionEffectSprites(void);
|
||||
static u8 GetObjectEventIdByLocalId(u8);
|
||||
static u8 GetObjectEventIdByLocalIdAndMapInternal(u8, u8, u8);
|
||||
@@ -94,7 +94,7 @@ static u8 MovementType_VsSeeker4D_Callback(struct ObjectEvent *, struct Sprite *
|
||||
static u8 MovementType_VsSeeker4E_Callback(struct ObjectEvent *, struct Sprite *);
|
||||
static u8 MovementType_VsSeeker4F_Callback(struct ObjectEvent *, struct Sprite *);
|
||||
static void sub_8064544(struct ObjectEvent *, struct Sprite *);
|
||||
static void DoObjectUnionRoomWarpYDisplacement(struct Sprite * sprite);
|
||||
static void DoObjectUnionRoomWarpYDisplacement(struct Sprite *sprite);
|
||||
static void MovementType_None(struct Sprite *);
|
||||
static void MovementType_LookAround(struct Sprite *);
|
||||
static void MovementType_WanderAround(struct Sprite *);
|
||||
@@ -181,7 +181,7 @@ const u8 gReflectionEffectPaletteMap[16] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11
|
||||
|
||||
static const struct SpriteTemplate gCameraSpriteTemplate = {
|
||||
.tileTag = 0,
|
||||
.paletteTag = SPRITE_INVALID_TAG,
|
||||
.paletteTag = TAG_NONE,
|
||||
.oam = &gDummyOamData,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
@@ -1571,7 +1571,7 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl
|
||||
if (objectEvent->movementType == MOVEMENT_TYPE_INVISIBLE)
|
||||
objectEvent->invisible = TRUE;
|
||||
|
||||
*(u16 *)&spriteTemplate->paletteTag = SPRITE_INVALID_TAG;
|
||||
*(u16 *)&spriteTemplate->paletteTag = TAG_NONE;
|
||||
spriteId = CreateSprite(spriteTemplate, 0, 0, 0);
|
||||
if (spriteId == MAX_SPRITES)
|
||||
{
|
||||
@@ -1702,7 +1702,7 @@ u8 AddPseudoObjectEvent(u16 graphicsId, SpriteCallback callback, s16 x, s16 y, u
|
||||
u8 spriteId;
|
||||
|
||||
MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, callback, &spriteTemplate, &subspriteTables);
|
||||
if (spriteTemplate.paletteTag != SPRITE_INVALID_TAG)
|
||||
if (spriteTemplate.paletteTag != TAG_NONE)
|
||||
{
|
||||
LoadObjectEventPalette(spriteTemplate.paletteTag);
|
||||
}
|
||||
@@ -1725,7 +1725,7 @@ u8 sprite_new(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction)
|
||||
|
||||
graphicsInfo = GetObjectEventGraphicsInfo(graphicsId);
|
||||
MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, UpdateObjectEventSpriteSubpriorityAndVisibility, &spriteTemplate, &subspriteTables);
|
||||
*(u16 *)&spriteTemplate.paletteTag = SPRITE_INVALID_TAG;
|
||||
*(u16 *)&spriteTemplate.paletteTag = TAG_NONE;
|
||||
x += 7;
|
||||
y += 7;
|
||||
SetSpritePosToOffsetMapCoords(&x, &y, 8, 16);
|
||||
@@ -1767,7 +1767,7 @@ u8 sub_805EB44(u8 graphicsId, u8 a1, s16 x, s16 y)
|
||||
|
||||
graphicsInfo = GetObjectEventGraphicsInfo(graphicsId);
|
||||
MakeObjectTemplateFromObjectEventGraphicsInfo(graphicsId, SpriteCallbackDummy, &spriteTemplate, &subspriteTables);
|
||||
*(u16 *)&spriteTemplate.paletteTag = SPRITE_INVALID_TAG;
|
||||
*(u16 *)&spriteTemplate.paletteTag = TAG_NONE;
|
||||
|
||||
spriteId = CreateSpriteAtEnd(&spriteTemplate, x, y, 0);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
@@ -1899,7 +1899,7 @@ static void ReloadMapObjectWithOffset(u8 objectEventId, s16 x, s16 y)
|
||||
spriteFrameImage.size = graphicsInfo->size;
|
||||
MakeObjectTemplateFromObjectEventGraphicsInfoWithCallbackIndex(objectEvent->graphicsId, objectEvent->movementType, &spriteTemplate, &subspriteTables);
|
||||
spriteTemplate.images = &spriteFrameImage;
|
||||
*(u16 *)&spriteTemplate.paletteTag = SPRITE_INVALID_TAG;
|
||||
*(u16 *)&spriteTemplate.paletteTag = TAG_NONE;
|
||||
if (graphicsInfo->paletteSlot == 0)
|
||||
{
|
||||
LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
|
||||
@@ -1908,7 +1908,7 @@ static void ReloadMapObjectWithOffset(u8 objectEventId, s16 x, s16 y)
|
||||
{
|
||||
LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
|
||||
}
|
||||
*(u16 *)&spriteTemplate.paletteTag = SPRITE_INVALID_TAG;
|
||||
*(u16 *)&spriteTemplate.paletteTag = TAG_NONE;
|
||||
spriteId = CreateSprite(&spriteTemplate, 0, 0, 0);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
@@ -2081,9 +2081,9 @@ void ShowOrHideObjectByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 stat
|
||||
|
||||
void ObjectEventGetLocalIdAndMap(struct ObjectEvent *objectEvent, void *localId, void *mapNum, void *mapGroup)
|
||||
{
|
||||
*(u8*)(localId) = objectEvent->localId;
|
||||
*(u8*)(mapNum) = objectEvent->mapNum;
|
||||
*(u8*)(mapGroup) = objectEvent->mapGroup;
|
||||
*(u8 *)(localId) = objectEvent->localId;
|
||||
*(u8 *)(mapNum) = objectEvent->mapNum;
|
||||
*(u8 *)(mapGroup) = objectEvent->mapGroup;
|
||||
}
|
||||
|
||||
void EnableObjectGroundEffectsByXY(s16 x, s16 y)
|
||||
@@ -5148,7 +5148,7 @@ void sub_8063E28(struct ObjectEvent *objectEvent, struct Sprite *sprite)
|
||||
}
|
||||
|
||||
if (MetatileBehavior_IsIce_2(objectEvent->currentMetatileBehavior) == TRUE
|
||||
|| MetatileBehavior_IsUnknownMovement48(objectEvent->currentMetatileBehavior) == TRUE)
|
||||
|| MetatileBehavior_IsTrickHouseSlipperyFloor(objectEvent->currentMetatileBehavior) == TRUE)
|
||||
objectEvent->disableAnim = TRUE;
|
||||
else
|
||||
objectEvent->disableAnim = FALSE;
|
||||
@@ -8095,13 +8095,13 @@ static void GetGroundEffectFlags_Reflection(struct ObjectEvent *objEvent, u32 *f
|
||||
|
||||
static void GetGroundEffectFlags_TallGrassOnSpawn(struct ObjectEvent *objEvent, u32 *flags)
|
||||
{
|
||||
if (MetatileBehavior_IsTallGrass_2(objEvent->currentMetatileBehavior))
|
||||
if (MetatileBehavior_IsTallGrass(objEvent->currentMetatileBehavior))
|
||||
*flags |= GROUND_EFFECT_FLAG_TALL_GRASS_ON_SPAWN;
|
||||
}
|
||||
|
||||
static void GetGroundEffectFlags_TallGrassOnBeginStep(struct ObjectEvent *objEvent, u32 *flags)
|
||||
{
|
||||
if (MetatileBehavior_IsTallGrass_2(objEvent->currentMetatileBehavior))
|
||||
if (MetatileBehavior_IsTallGrass(objEvent->currentMetatileBehavior))
|
||||
*flags |= GROUND_EFFECT_FLAG_TALL_GRASS_ON_MOVE;
|
||||
}
|
||||
|
||||
@@ -8230,7 +8230,7 @@ static void GetGroundEffectFlags_JumpLanding(struct ObjectEvent *objEvent, u32 *
|
||||
typedef bool8 (*MetatileFunc)(u8);
|
||||
|
||||
static const MetatileFunc metatileFuncs[] = {
|
||||
MetatileBehavior_IsTallGrass_2,
|
||||
MetatileBehavior_IsTallGrass,
|
||||
MetatileBehavior_IsLongGrass,
|
||||
MetatileBehavior_IsPuddle,
|
||||
MetatileBehavior_IsSurfable,
|
||||
@@ -8840,37 +8840,37 @@ void UnfreezeObjectEvents(void)
|
||||
#define tSpeed data[4]
|
||||
#define tStepNo data[5]
|
||||
|
||||
static void little_step(struct Sprite * sprite, u8 direction)
|
||||
static void little_step(struct Sprite *sprite, u8 direction)
|
||||
{
|
||||
sprite->x += sDirectionToVectors[direction].x;
|
||||
sprite->y += sDirectionToVectors[direction].y;
|
||||
}
|
||||
|
||||
static void double_little_steps(struct Sprite * sprite, u8 direction)
|
||||
static void double_little_steps(struct Sprite *sprite, u8 direction)
|
||||
{
|
||||
sprite->x += 2 * (u16)sDirectionToVectors[direction].x;
|
||||
sprite->y += 2 * (u16)sDirectionToVectors[direction].y;
|
||||
}
|
||||
|
||||
static void triple_little_steps(struct Sprite * sprite, u8 direction)
|
||||
static void triple_little_steps(struct Sprite *sprite, u8 direction)
|
||||
{
|
||||
sprite->x += 2 * (u16)sDirectionToVectors[direction].x + (u16)sDirectionToVectors[direction].x;
|
||||
sprite->y += 2 * (u16)sDirectionToVectors[direction].y + (u16)sDirectionToVectors[direction].y;
|
||||
}
|
||||
|
||||
static void quad_little_steps(struct Sprite * sprite, u8 direction)
|
||||
static void quad_little_steps(struct Sprite *sprite, u8 direction)
|
||||
{
|
||||
sprite->x += 4 * (u16)sDirectionToVectors[direction].x;
|
||||
sprite->y += 4 * (u16)sDirectionToVectors[direction].y;
|
||||
}
|
||||
|
||||
static void oct_little_steps(struct Sprite * sprite, u8 direction)
|
||||
static void oct_little_steps(struct Sprite *sprite, u8 direction)
|
||||
{
|
||||
sprite->x += 8 * (u16)sDirectionToVectors[direction].x;
|
||||
sprite->y += 8 * (u16)sDirectionToVectors[direction].y;
|
||||
}
|
||||
|
||||
void SetSpriteDataForNormalStep(struct Sprite * sprite, u8 direction, u8 speed)
|
||||
void SetSpriteDataForNormalStep(struct Sprite *sprite, u8 direction, u8 speed)
|
||||
{
|
||||
sprite->tDirection = direction;
|
||||
sprite->tSpeed = speed;
|
||||
@@ -9322,7 +9322,7 @@ void RfuUnionObjectStartWarp(u8 objectEventId, u8 animNo)
|
||||
}
|
||||
}
|
||||
|
||||
static void DoObjectUnionRoomWarpYDisplacementUpwards(struct Sprite * sprite)
|
||||
static void DoObjectUnionRoomWarpYDisplacementUpwards(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->tUnionRoomWarpAnimState)
|
||||
{
|
||||
@@ -9342,7 +9342,7 @@ static void DoObjectUnionRoomWarpYDisplacementUpwards(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void DoObjectUnionRoomWarpYDisplacementDownwards(struct Sprite * sprite)
|
||||
static void DoObjectUnionRoomWarpYDisplacementDownwards(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->tUnionRoomWarpAnimState)
|
||||
{
|
||||
@@ -9360,7 +9360,7 @@ static void DoObjectUnionRoomWarpYDisplacementDownwards(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void DoObjectUnionRoomWarpYDisplacement(struct Sprite * sprite)
|
||||
static void DoObjectUnionRoomWarpYDisplacement(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->tUnionRoomWarpAnimNo)
|
||||
{
|
||||
|
||||
+13
-13
@@ -8,7 +8,7 @@
|
||||
#include "evolution_graphics.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
static void SpriteCallbackDummy_EvoSparkles(struct Sprite * sprite);
|
||||
static void SpriteCallbackDummy_EvoSparkles(struct Sprite *sprite);
|
||||
static void EvoTask_PreEvoSparkleSet1Init(u8 taskId);
|
||||
static void EvoTask_CreatePreEvoSparkleSet1(u8 taskId);
|
||||
static void EvoTask_WaitForPre1SparklesToGoUp(u8 taskId);
|
||||
@@ -90,7 +90,7 @@ static const s16 sUnref_841EF28[][2] = {
|
||||
{ 4, 0x10}
|
||||
};
|
||||
|
||||
static void SpriteCallbackDummy_EvoSparkles(struct Sprite * sprite)
|
||||
static void SpriteCallbackDummy_EvoSparkles(struct Sprite *sprite)
|
||||
{
|
||||
|
||||
}
|
||||
@@ -102,7 +102,7 @@ static void SetEvoSparklesMatrices(void)
|
||||
SetOamMatrix(i + 20, sEvolutionSparkleMatrixScales[i], 0, 0, sEvolutionSparkleMatrixScales[i]);
|
||||
}
|
||||
|
||||
static void SpriteCB_PreEvoSparkleSet1(struct Sprite * sprite)
|
||||
static void SpriteCB_PreEvoSparkleSet1(struct Sprite *sprite)
|
||||
{
|
||||
u8 mnum;
|
||||
if (sprite->y > 8)
|
||||
@@ -143,7 +143,7 @@ static void CreatePreEvoSparkleSet1(u8 a0)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_PreEvoSparkleSet2(struct Sprite * sprite)
|
||||
static void SpriteCB_PreEvoSparkleSet2(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->y < 88)
|
||||
{
|
||||
@@ -174,7 +174,7 @@ static void CreatePreEvoSparkleSet2(u8 a0)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_PostEvoSparkleSet1(struct Sprite * sprite)
|
||||
static void SpriteCB_PostEvoSparkleSet1(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[5] > 8)
|
||||
{
|
||||
@@ -205,7 +205,7 @@ static void CreatePostEvoSparkleSet1(u8 a0, u8 a1)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_PostEvoSparkleSet2(struct Sprite * sprite)
|
||||
static void SpriteCB_PostEvoSparkleSet2(struct Sprite *sprite)
|
||||
{
|
||||
u8 mnum;
|
||||
if ((sprite->data[7] & 3) == 0)
|
||||
@@ -259,7 +259,7 @@ void LoadEvoSparkleSpriteAndPal(void)
|
||||
LoadSpritePalettes(sSpritePalette_EvolutionSparkles);
|
||||
}
|
||||
|
||||
u8 LaunchTask_PreEvoSparklesSet1(u16 a0)
|
||||
u8 EvolutionSparkles_SpiralUpward(u16 a0)
|
||||
{
|
||||
u8 taskId = CreateTask(EvoTask_PreEvoSparkleSet1Init, 0);
|
||||
gTasks[taskId].data[1] = a0;
|
||||
@@ -302,7 +302,7 @@ static void EvoTask_WaitForPre1SparklesToGoUp(u8 taskId)
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
u8 LaunchTask_PreEvoSparklesSet2(void)
|
||||
u8 EvolutionSparkles_ArcDown(void)
|
||||
{
|
||||
u8 taskId = CreateTask(EvoTask_PreEvoSparkleSet2Init, 0);
|
||||
return taskId;
|
||||
@@ -339,7 +339,7 @@ static void EvoTask_PreEvoSparkleSet2Teardown(u8 taskId)
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
u8 LaunchTask_PostEvoSparklesSet1(void)
|
||||
u8 EvolutionSparkles_CircleInward(void)
|
||||
{
|
||||
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet1Init, 0);
|
||||
return taskId;
|
||||
@@ -385,7 +385,7 @@ static void EvoTask_PostEvoSparklesSet1Teardown(u8 taskId)
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
u8 LaunchTask_PostEvoSparklesSet2AndFlash(u16 species)
|
||||
u8 EvolutionSparkles_SprayAndFlash(u16 species)
|
||||
{
|
||||
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet2Init, 0);
|
||||
gTasks[taskId].data[2] = species;
|
||||
@@ -436,7 +436,7 @@ static void EvoTask_PostEvoSparklesSet2Teardown(u8 taskId)
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
u8 LaunchTask_PostEvoSparklesSet2AndFlash_Trade(u16 species)
|
||||
u8 EvolutionSparkles_SprayAndFlash_Trade(u16 species)
|
||||
{
|
||||
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet2TradeInit, 0);
|
||||
gTasks[taskId].data[2] = species;
|
||||
@@ -481,7 +481,7 @@ static void EvoTask_CreatePostEvoSparklesSet2Trade(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCallbackDummy_MonSprites(struct Sprite * sprite)
|
||||
static void SpriteCallbackDummy_MonSprites(struct Sprite *sprite)
|
||||
{
|
||||
|
||||
}
|
||||
@@ -493,7 +493,7 @@ static void SpriteCallbackDummy_MonSprites(struct Sprite * sprite)
|
||||
#define tDirection data[5]
|
||||
#define tSpeed data[6]
|
||||
|
||||
u8 LaunchTask_PrePostEvoMonSprites(u8 preEvoSpriteId, u8 postEvoSpriteId)
|
||||
u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId)
|
||||
{
|
||||
u16 i;
|
||||
u8 taskId;
|
||||
|
||||
+467
-315
File diff suppressed because it is too large
Load Diff
+26
-26
@@ -100,7 +100,7 @@ static void DestroyPersonPicSprite(u8 taskId, u16 who);
|
||||
static void UpdateIconDescriptionBox(u8 whichText);
|
||||
static void UpdateIconDescriptionBoxOff(void);
|
||||
static void FC_CreateListMenu(void);
|
||||
static void SpriteCB_FCSpinningPokeball(struct Sprite * sprite);
|
||||
static void SpriteCB_FCSpinningPokeball(struct Sprite *sprite);
|
||||
static void InitListMenuTemplate(void);
|
||||
static void FC_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu * list);
|
||||
static void Task_SwitchToPickMode(u8 taskId);
|
||||
@@ -695,7 +695,7 @@ static void MainCB2_LoadFameChecker(void)
|
||||
LoadUISpriteSheetsAndPalettes();
|
||||
CreateAllFlavorTextIcons(FAMECHECKER_OAK);
|
||||
WipeMsgBoxAndTransfer();
|
||||
BeginNormalPaletteFade(0xFFFFFFFF,0, 16, 0, 0);
|
||||
BeginNormalPaletteFade(PALETTES_ALL,0, 16, 0, 0);
|
||||
gMain.state++;
|
||||
break;
|
||||
case 7:
|
||||
@@ -822,7 +822,7 @@ static bool8 TryExitPickMode(u8 taskId)
|
||||
|
||||
static void MessageBoxPrintEmptyText(void)
|
||||
{
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, 2, gFameCheckerText_ClearTextbox, 0, NULL, 2, 1, 3);
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, FONT_2, gFameCheckerText_ClearTextbox, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
}
|
||||
|
||||
static void Task_EnterPickMode(u8 taskId)
|
||||
@@ -962,7 +962,7 @@ static void GetPickModeText(void)
|
||||
if (HasUnlockedAllFlavorTextsForCurrentPerson() == TRUE)
|
||||
whichText = NUM_FAMECHECKER_PERSONS;
|
||||
StringExpandPlaceholders(gStringVar4, sFameCheckerNameAndQuotesPointers[sFameCheckerData->unlockedPersons[who] + whichText]);
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, 2, gStringVar4, GetTextSpeedSetting(), NULL, 2, 1, 3);
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, FONT_2, gStringVar4, GetTextSpeedSetting(), NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
FC_PutWindowTilemapAndCopyWindowToVramMode3(FCWINDOWID_MSGBOX);
|
||||
}
|
||||
}
|
||||
@@ -973,7 +973,7 @@ static void PrintSelectedNameInBrightGreen(u8 taskId)
|
||||
u16 cursorPos = FameCheckerGetCursorY();
|
||||
FillWindowPixelRect(FCWINDOWID_MSGBOX, PIXEL_FILL(1), 0, 0, 0xd0, 0x20);
|
||||
StringExpandPlaceholders(gStringVar4, sFameCheckerFlavorTextPointers[sFameCheckerData->unlockedPersons[cursorPos] * 6 + data[1]]);
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, 2, gStringVar4, GetTextSpeedSetting(), NULL, 2, 1, 3);
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, FONT_2, gStringVar4, GetTextSpeedSetting(), NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
FC_PutWindowTilemapAndCopyWindowToVramMode3(FCWINDOWID_MSGBOX);
|
||||
}
|
||||
|
||||
@@ -994,7 +994,7 @@ static void Setup_DrawMsgAndListBoxes(void)
|
||||
static void FC_PutWindowTilemapAndCopyWindowToVramMode3(u8 windowId)
|
||||
{
|
||||
PutWindowTilemap(windowId);
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static bool8 SetMessageSelectorIconObjMode(u8 spriteId, u8 objMode)
|
||||
@@ -1010,7 +1010,7 @@ static bool8 SetMessageSelectorIconObjMode(u8 spriteId, u8 objMode)
|
||||
static void Task_StartToCloseFameChecker(u8 taskId)
|
||||
{
|
||||
PlaySE(SE_M_SWIFT);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, 0);
|
||||
gTasks[taskId].func = Task_DestroyAssetsAndCloseFameChecker;
|
||||
}
|
||||
|
||||
@@ -1081,9 +1081,9 @@ static void PrintUIHelp(u8 state)
|
||||
if (state == 1)
|
||||
src = gFameCheckerText_PickScreenUI;
|
||||
}
|
||||
width = GetStringWidth(0, src, 0);
|
||||
width = GetStringWidth(FONT_0, src, 0);
|
||||
FillWindowPixelRect(FCWINDOWID_UIHELP, PIXEL_FILL(0), 0, 0, 0xc0, 0x10);
|
||||
AddTextPrinterParameterized4(FCWINDOWID_UIHELP, 0, 188 - width, 0, 0, 2, sTextColor_White, -1, src);
|
||||
AddTextPrinterParameterized4(FCWINDOWID_UIHELP, FONT_0, 188 - width, 0, 0, 2, sTextColor_White, -1, src);
|
||||
FC_PutWindowTilemapAndCopyWindowToVramMode3(FCWINDOWID_UIHELP);
|
||||
}
|
||||
|
||||
@@ -1164,7 +1164,7 @@ void FullyUnlockFameChecker(void)
|
||||
|
||||
static void FCSetup_ClearVideoRegisters(void)
|
||||
{
|
||||
void * vram = (void *)VRAM;
|
||||
void *vram = (void *)VRAM;
|
||||
DmaClearLarge16(3, vram, VRAM_SIZE, 0x1000);
|
||||
DmaClear32(3, OAM, OAM_SIZE);
|
||||
DmaClear16(3, PLTT, PLTT_SIZE);
|
||||
@@ -1268,7 +1268,7 @@ static u8 CreateFlavorTextIconSelectorCursorSprite(s16 where)
|
||||
return CreateSprite(&sSpriteTemplate_SelectorCursor, x, y, 0);
|
||||
}
|
||||
|
||||
static void SpriteCB_DestroyFlavorTextIconSelectorCursor(struct Sprite * sprite)
|
||||
static void SpriteCB_DestroyFlavorTextIconSelectorCursor(struct Sprite *sprite)
|
||||
{
|
||||
DestroySprite(sprite);
|
||||
}
|
||||
@@ -1297,7 +1297,7 @@ static u8 CreateSpinningPokeballSprite(void)
|
||||
return CreateSprite(&sSpinningPokeballSpriteTemplate, 0xe2, 0x42, 0);
|
||||
}
|
||||
|
||||
static void SpriteCB_DestroySpinningPokeball(struct Sprite * sprite)
|
||||
static void SpriteCB_DestroySpinningPokeball(struct Sprite *sprite)
|
||||
{
|
||||
FreeSpriteOamMatrix(sprite);
|
||||
DestroySprite(sprite);
|
||||
@@ -1311,7 +1311,7 @@ static void FreeNonTrainerPicTiles(void)
|
||||
FreeSpriteTilesByTag(SPRITETAG_BILL);
|
||||
}
|
||||
|
||||
static void SpriteCB_FCSpinningPokeball(struct Sprite * sprite)
|
||||
static void SpriteCB_FCSpinningPokeball(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[0] == 1)
|
||||
{
|
||||
@@ -1395,11 +1395,11 @@ static void UpdateIconDescriptionBox(u8 whichText)
|
||||
HandleFlavorTextModeSwitch(TRUE);
|
||||
gIconDescriptionBoxIsOpen = 1;
|
||||
FillWindowPixelRect(FCWINDOWID_ICONDESC, PIXEL_FILL(0), 0, 0, 0x58, 0x20);
|
||||
width = (0x54 - GetStringWidth(0, sFlavorTextOriginLocationTexts[idx], 0)) / 2;
|
||||
AddTextPrinterParameterized4(FCWINDOWID_ICONDESC, 0, width, 0, 0, 2, sTextColor_DkGrey, -1, sFlavorTextOriginLocationTexts[idx]);
|
||||
width = (0x54 - GetStringWidth(FONT_0, sFlavorTextOriginLocationTexts[idx], 0)) / 2;
|
||||
AddTextPrinterParameterized4(FCWINDOWID_ICONDESC, FONT_0, width, 0, 0, 2, sTextColor_DkGrey, -1, sFlavorTextOriginLocationTexts[idx]);
|
||||
StringExpandPlaceholders(gStringVar1, sFlavorTextOriginObjectNameTexts[idx]);
|
||||
width = (0x54 - GetStringWidth(0, gStringVar1, 0)) / 2;
|
||||
AddTextPrinterParameterized4(FCWINDOWID_ICONDESC, 0, width, 10, 0, 2, sTextColor_DkGrey, -1, gStringVar1);
|
||||
width = (0x54 - GetStringWidth(FONT_0, gStringVar1, 0)) / 2;
|
||||
AddTextPrinterParameterized4(FCWINDOWID_ICONDESC, FONT_0, width, 10, 0, 2, sTextColor_DkGrey, -1, gStringVar1);
|
||||
FC_PutWindowTilemapAndCopyWindowToVramMode3(FCWINDOWID_ICONDESC);
|
||||
}
|
||||
|
||||
@@ -1435,7 +1435,7 @@ static void InitListMenuTemplate(void)
|
||||
gFameChecker_ListMenuTemplate.lettersSpacing = 0;
|
||||
gFameChecker_ListMenuTemplate.itemVerticalPadding = 0;
|
||||
gFameChecker_ListMenuTemplate.scrollMultiple = 0;
|
||||
gFameChecker_ListMenuTemplate.fontId = 2;
|
||||
gFameChecker_ListMenuTemplate.fontId = FONT_2;
|
||||
gFameChecker_ListMenuTemplate.cursorKind = 0;
|
||||
}
|
||||
|
||||
@@ -1503,7 +1503,7 @@ static void FC_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list
|
||||
|
||||
static void Task_SwitchToPickMode(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
task->data[2] = CreatePersonPicSprite(sFameCheckerData->unlockedPersons[sLastMenuIdx]);
|
||||
gSprites[task->data[2]].data[0] = 0;
|
||||
GetPickModeText();
|
||||
@@ -1513,7 +1513,7 @@ static void Task_SwitchToPickMode(u8 taskId)
|
||||
static void PrintCancelDescription(void)
|
||||
{
|
||||
FillWindowPixelRect(FCWINDOWID_MSGBOX, PIXEL_FILL(1), 0, 0, 0xd0, 0x20);
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, 2, gFameCheckerText_FameCheckerWillBeClosed, 0, NULL, 2, 1, 3);
|
||||
AddTextPrinterParameterized2(FCWINDOWID_MSGBOX, FONT_2, gFameCheckerText_FameCheckerWillBeClosed, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
FC_PutWindowTilemapAndCopyWindowToVramMode3(FCWINDOWID_MSGBOX);
|
||||
}
|
||||
|
||||
@@ -1524,14 +1524,14 @@ static void FC_DoMoveCursor(s32 itemIndex, bool8 onInit)
|
||||
u16 who;
|
||||
ListMenuGetScrollAndRow(sFameCheckerData->listMenuTaskId, &listY, &cursorY);
|
||||
who = listY + cursorY;
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, 2, 8, 14 * cursorY + 4, 0, 0, sTextColor_Green, 0, sListMenuItems[itemIndex].label);
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, FONT_2, 8, 14 * cursorY + 4, 0, 0, sTextColor_Green, 0, sListMenuItems[itemIndex].label);
|
||||
if (!onInit)
|
||||
{
|
||||
if (listY < sFameCheckerData->listMenuTopIdx2)
|
||||
sFameCheckerData->listMenuDrawnSelIdx++;
|
||||
else if (listY > sFameCheckerData->listMenuTopIdx2 && who != sFameCheckerData->numUnlockedPersons - 1)
|
||||
sFameCheckerData->listMenuDrawnSelIdx--;
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, 2, 8, 14 * sFameCheckerData->listMenuDrawnSelIdx + 4, 0, 0, sTextColor_DkGrey, 0, sListMenuItems[sFameCheckerData->listMenuCurIdx].label);
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, FONT_2, 8, 14 * sFameCheckerData->listMenuDrawnSelIdx + 4, 0, 0, sTextColor_DkGrey, 0, sListMenuItems[sFameCheckerData->listMenuCurIdx].label);
|
||||
|
||||
}
|
||||
sFameCheckerData->listMenuCurIdx = itemIndex;
|
||||
@@ -1578,7 +1578,7 @@ static u8 FC_PopulateListMenu(void)
|
||||
static void FC_PutWindowTilemapAndCopyWindowToVramMode3_2(u8 windowId)
|
||||
{
|
||||
PutWindowTilemap(windowId);
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void FC_CreateScrollIndicatorArrowPair(void)
|
||||
@@ -1642,7 +1642,7 @@ static void HandleFlavorTextModeSwitch(bool8 state)
|
||||
|
||||
static void Task_FCOpenOrCloseInfoBox(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
switch (task->data[0])
|
||||
{
|
||||
case 0:
|
||||
@@ -1729,7 +1729,7 @@ static void PlaceListMenuCursor(bool8 isActive)
|
||||
{
|
||||
u16 cursorY = ListMenuGetYCoordForPrintingArrowCursor(sFameCheckerData->listMenuTaskId);
|
||||
if (isActive == TRUE)
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, 2, 0, cursorY, 0, 0, sTextColor_DkGrey, 0, gText_SelectorArrow2);
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, FONT_2, 0, cursorY, 0, 0, sTextColor_DkGrey, 0, gText_SelectorArrow2);
|
||||
else
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, 2, 0, cursorY, 0, 0, sTextColor_White, 0, gText_SelectorArrow2);
|
||||
AddTextPrinterParameterized4(FCWINDOWID_LIST, FONT_2, 0, cursorY, 0, 0, sTextColor_White, 0, gText_SelectorArrow2);
|
||||
}
|
||||
|
||||
@@ -575,12 +575,12 @@ static const u8 *GetInteractedMetatileScript(struct MapPosition *position, u8 me
|
||||
return EventScript_Questionnaire;
|
||||
if (MetatileBehavior_IsPlayerFacingBattleRecords(metatileBehavior, direction) == TRUE)
|
||||
return CableClub_EventScript_ShowBattleRecords;
|
||||
if (MetatileBehavior_IsIndigoPlateauMark(metatileBehavior) == TRUE)
|
||||
if (MetatileBehavior_IsIndigoPlateauSign1(metatileBehavior) == TRUE)
|
||||
{
|
||||
MsgSetSignPost();
|
||||
return EventScript_Indigo_UltimateGoal;
|
||||
}
|
||||
if (MetatileBehavior_IsIndigoPlateauMark2(metatileBehavior) == TRUE)
|
||||
if (MetatileBehavior_IsIndigoPlateauSign2(metatileBehavior) == TRUE)
|
||||
{
|
||||
MsgSetSignPost();
|
||||
return EventScript_Indigo_HighestAuthority;
|
||||
@@ -792,10 +792,10 @@ static u8 GetFacingSignpostType(u16 metatileBehavior, u8 playerDirection)
|
||||
if (MetatileBehavior_IsPlayerFacingPokeMartSign(metatileBehavior, playerDirection) == TRUE)
|
||||
return SIGNPOST_POKEMART;
|
||||
|
||||
if (MetatileBehavior_IsIndigoPlateauMark(metatileBehavior) == TRUE)
|
||||
if (MetatileBehavior_IsIndigoPlateauSign1(metatileBehavior) == TRUE)
|
||||
return SIGNPOST_INDIGO_1;
|
||||
|
||||
if (MetatileBehavior_IsIndigoPlateauMark2(metatileBehavior) == TRUE)
|
||||
if (MetatileBehavior_IsIndigoPlateauSign2(metatileBehavior) == TRUE)
|
||||
return SIGNPOST_INDIGO_2;
|
||||
|
||||
if (MetatileBehavior_IsSignpost(metatileBehavior) == TRUE)
|
||||
|
||||
+1046
-926
File diff suppressed because it is too large
Load Diff
+162
-146
@@ -3,6 +3,7 @@
|
||||
#include "event_object_movement.h"
|
||||
#include "field_camera.h"
|
||||
#include "field_effect.h"
|
||||
#include "field_effect_helpers.h"
|
||||
#include "field_weather.h"
|
||||
#include "fieldmap.h"
|
||||
#include "metatile_behavior.h"
|
||||
@@ -12,26 +13,26 @@
|
||||
|
||||
#define OBJ_EVENT_PAL_TAG_NONE 0x11FF // duplicate of define in event_object_movement.c
|
||||
|
||||
static void UpdateObjectReflectionSprite(struct Sprite * sprite);
|
||||
static void LoadObjectReflectionPalette(struct ObjectEvent * objectEvent, struct Sprite * sprite);
|
||||
static void UpdateObjectReflectionSprite(struct Sprite *sprite);
|
||||
static void LoadObjectReflectionPalette(struct ObjectEvent * objectEvent, struct Sprite *sprite);
|
||||
static void LoadObjectHighBridgeReflectionPalette(struct ObjectEvent * objectEvent, u8 paletteNum);
|
||||
static void LoadObjectRegularReflectionPalette(struct ObjectEvent * objectEvent, u8 paletteNum);
|
||||
static void UpdateGrassFieldEffectSubpriority(struct Sprite * sprite, u8 z, u8 offset);
|
||||
static void FadeFootprintsTireTracks_Step0(struct Sprite * sprite);
|
||||
static void FadeFootprintsTireTracks_Step1(struct Sprite * sprite);
|
||||
static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite * sprite);
|
||||
static void UpdateAshFieldEffect_Step0(struct Sprite * sprite);
|
||||
static void UpdateAshFieldEffect_Step1(struct Sprite * sprite);
|
||||
static void UpdateAshFieldEffect_Step2(struct Sprite * sprite);
|
||||
static void SynchroniseSurfAnim(struct ObjectEvent * objectEvent, struct Sprite * sprite);
|
||||
static void SynchroniseSurfPosition(struct ObjectEvent * objectEvent, struct Sprite * sprite);
|
||||
static void CreateBobbingEffect(struct ObjectEvent * objectEvent, struct Sprite * linkedSprite, struct Sprite * sprite);
|
||||
static void SpriteCB_UnderwaterSurfBlob(struct Sprite * sprite);
|
||||
static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 offset);
|
||||
static void FadeFootprintsTireTracks_Step0(struct Sprite *sprite);
|
||||
static void FadeFootprintsTireTracks_Step1(struct Sprite *sprite);
|
||||
static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *sprite);
|
||||
static void UpdateAshFieldEffect_Step0(struct Sprite *sprite);
|
||||
static void UpdateAshFieldEffect_Step1(struct Sprite *sprite);
|
||||
static void UpdateAshFieldEffect_Step2(struct Sprite *sprite);
|
||||
static void SynchroniseSurfAnim(struct ObjectEvent * objectEvent, struct Sprite *sprite);
|
||||
static void SynchroniseSurfPosition(struct ObjectEvent * objectEvent, struct Sprite *sprite);
|
||||
static void CreateBobbingEffect(struct ObjectEvent * objectEvent, struct Sprite *linkedSprite, struct Sprite *sprite);
|
||||
static void SpriteCB_UnderwaterSurfBlob(struct Sprite *sprite);
|
||||
static u32 ShowDisguiseFieldEffect(u8 fldEff, u8 templateIdx, u8 paletteNum);
|
||||
|
||||
void SetUpReflection(struct ObjectEvent * objectEvent, struct Sprite * sprite, bool8 stillReflection)
|
||||
void SetUpReflection(struct ObjectEvent * objectEvent, struct Sprite *sprite, bool8 stillReflection)
|
||||
{
|
||||
struct Sprite * reflectionSprite;
|
||||
struct Sprite *reflectionSprite;
|
||||
|
||||
reflectionSprite = &gSprites[CreateCopySpriteAt(sprite, sprite->x, sprite->y, 0x98)];
|
||||
reflectionSprite->callback = UpdateObjectReflectionSprite;
|
||||
@@ -57,7 +58,7 @@ static s16 GetReflectionVerticalOffset(struct ObjectEvent * objectEvent)
|
||||
return GetObjectEventGraphicsInfo(objectEvent->graphicsId)->height - 2;
|
||||
}
|
||||
|
||||
static void LoadObjectReflectionPalette(struct ObjectEvent * objectEvent, struct Sprite * sprite)
|
||||
static void LoadObjectReflectionPalette(struct ObjectEvent * objectEvent, struct Sprite *sprite)
|
||||
{
|
||||
u8 bridgeType;
|
||||
u16 bridgeReflectionVerticalOffsets[] = { 12, 28, 44 };
|
||||
@@ -110,10 +111,10 @@ static void LoadObjectHighBridgeReflectionPalette(struct ObjectEvent * objectEve
|
||||
}
|
||||
}
|
||||
|
||||
static void UpdateObjectReflectionSprite(struct Sprite * reflectionSprite)
|
||||
static void UpdateObjectReflectionSprite(struct Sprite *reflectionSprite)
|
||||
{
|
||||
struct ObjectEvent * objectEvent;
|
||||
struct Sprite * mainSprite;
|
||||
struct Sprite *mainSprite;
|
||||
|
||||
objectEvent = &gObjectEvents[reflectionSprite->data[0]];
|
||||
mainSprite = &gSprites[objectEvent->spriteId];
|
||||
@@ -163,7 +164,7 @@ extern const struct SpriteTemplate * const gFieldEffectObjectTemplatePointers[];
|
||||
u8 CreateWarpArrowSprite(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_ARROW], 0, 0, 0x52);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
@@ -185,7 +186,7 @@ void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y)
|
||||
{
|
||||
s16 x2;
|
||||
s16 y2;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
sprite = &gSprites[spriteId];
|
||||
if (sprite->invisible || sprite->data[0] != x || sprite->data[1] != y)
|
||||
@@ -235,11 +236,11 @@ u32 FldEff_Shadow(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateShadowFieldEffect(struct Sprite * sprite)
|
||||
void UpdateShadowFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 objectEventId;
|
||||
struct ObjectEvent * objectEvent;
|
||||
struct Sprite * linkedSprite;
|
||||
struct Sprite *linkedSprite;
|
||||
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(sprite->data[0], sprite->data[1], sprite->data[2], &objectEventId))
|
||||
{
|
||||
@@ -269,7 +270,7 @@ u32 FldEff_TallGrass(void)
|
||||
s16 x;
|
||||
s16 y;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
x = gFieldEffectArguments[0];
|
||||
y = gFieldEffectArguments[1];
|
||||
@@ -294,7 +295,7 @@ u32 FldEff_TallGrass(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateTallGrassFieldEffect(struct Sprite * sprite)
|
||||
void UpdateTallGrassFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 mapNum;
|
||||
u8 mapGroup;
|
||||
@@ -315,7 +316,7 @@ void UpdateTallGrassFieldEffect(struct Sprite * sprite)
|
||||
mapNum = sprite->data[3];
|
||||
mapGroup = sprite->data[4];
|
||||
metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->data[1], sprite->data[2]);
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) || !MetatileBehavior_IsTallGrass_2(metatileBehavior) || (sprite->data[7] && sprite->animEnded))
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId) || !MetatileBehavior_IsTallGrass(metatileBehavior) || (sprite->data[7] && sprite->animEnded))
|
||||
{
|
||||
FieldEffectStop(sprite, FLDEFF_TALL_GRASS);
|
||||
}
|
||||
@@ -338,7 +339,7 @@ void UpdateTallGrassFieldEffect(struct Sprite * sprite)
|
||||
u32 FldEff_JumpTallGrass(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 12);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_JUMP_TALL_GRASS], gFieldEffectArguments[0], gFieldEffectArguments[1], 0);
|
||||
@@ -355,7 +356,7 @@ u32 FldEff_JumpTallGrass(void)
|
||||
|
||||
u8 FindTallGrassFieldEffectSpriteId(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y)
|
||||
{
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
u8 i;
|
||||
|
||||
for (i = 0; i < MAX_SPRITES; i++)
|
||||
@@ -376,7 +377,7 @@ u32 FldEff_LongGrass(void)
|
||||
s16 x;
|
||||
s16 y;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
x = gFieldEffectArguments[0];
|
||||
y = gFieldEffectArguments[1];
|
||||
@@ -401,7 +402,7 @@ u32 FldEff_LongGrass(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateLongGrassFieldEffect(struct Sprite * sprite)
|
||||
void UpdateLongGrassFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 mapNum;
|
||||
u8 mapGroup;
|
||||
@@ -441,7 +442,7 @@ void UpdateLongGrassFieldEffect(struct Sprite * sprite)
|
||||
u32 FldEff_JumpLongGrass(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_JUMP_LONG_GRASS], gFieldEffectArguments[0], gFieldEffectArguments[1], 0);
|
||||
@@ -461,7 +462,7 @@ u32 FldEff_ShortGrass(void)
|
||||
u8 objectEventId;
|
||||
struct ObjectEvent * objectEvent;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
objectEventId = GetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
objectEvent = &gObjectEvents[objectEventId];
|
||||
@@ -480,13 +481,13 @@ u32 FldEff_ShortGrass(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateShortGrassFieldEffect(struct Sprite * sprite)
|
||||
void UpdateShortGrassFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 objectEventId;
|
||||
s16 x;
|
||||
s16 y;
|
||||
const struct ObjectEventGraphicsInfo * graphicsInfo;
|
||||
struct Sprite * linkedSprite;
|
||||
struct Sprite *linkedSprite;
|
||||
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(sprite->data[0], sprite->data[1], sprite->data[2], &objectEventId) || !gObjectEvents[objectEventId].inShortGrass)
|
||||
{
|
||||
@@ -519,7 +520,7 @@ void UpdateShortGrassFieldEffect(struct Sprite * sprite)
|
||||
u32 FldEff_SandFootprints(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_SAND_FOOTPRINTS], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -537,7 +538,7 @@ u32 FldEff_SandFootprints(void)
|
||||
u32 FldEff_DeepSandFootprints(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_DEEP_SAND_FOOTPRINTS], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -555,7 +556,7 @@ u32 FldEff_DeepSandFootprints(void)
|
||||
u32 FldEff_BikeTireTracks(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_BIKE_TIRE_TRACKS], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -570,17 +571,17 @@ u32 FldEff_BikeTireTracks(void)
|
||||
return spriteId;
|
||||
}
|
||||
|
||||
void (*const gFadeFootprintsTireTracksFuncs[])(struct Sprite * sprite) = {
|
||||
void (*const gFadeFootprintsTireTracksFuncs[])(struct Sprite *sprite) = {
|
||||
FadeFootprintsTireTracks_Step0,
|
||||
FadeFootprintsTireTracks_Step1
|
||||
};
|
||||
|
||||
void UpdateFootprintsTireTracksFieldEffect(struct Sprite * sprite)
|
||||
void UpdateFootprintsTireTracksFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
gFadeFootprintsTireTracksFuncs[sprite->data[0]](sprite);
|
||||
}
|
||||
|
||||
static void FadeFootprintsTireTracks_Step0(struct Sprite * sprite)
|
||||
static void FadeFootprintsTireTracks_Step0(struct Sprite *sprite)
|
||||
{
|
||||
// Wait 40 frames before the flickering starts.
|
||||
if (++sprite->data[1] > 40)
|
||||
@@ -589,7 +590,7 @@ static void FadeFootprintsTireTracks_Step0(struct Sprite * sprite)
|
||||
UpdateObjectEventSpriteVisibility(sprite, FALSE);
|
||||
}
|
||||
|
||||
static void FadeFootprintsTireTracks_Step1(struct Sprite * sprite)
|
||||
static void FadeFootprintsTireTracks_Step1(struct Sprite *sprite)
|
||||
{
|
||||
sprite->invisible ^= 1;
|
||||
sprite->data[1]++;
|
||||
@@ -605,9 +606,9 @@ u32 FldEff_Splash(void)
|
||||
u8 objectEventId;
|
||||
struct ObjectEvent * objectEvent;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
const struct ObjectEventGraphicsInfo * graphicsInfo;
|
||||
struct Sprite * linkedSprite;
|
||||
struct Sprite *linkedSprite;
|
||||
|
||||
objectEventId = GetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
objectEvent = &gObjectEvents[objectEventId];
|
||||
@@ -628,7 +629,7 @@ u32 FldEff_Splash(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateSplashFieldEffect(struct Sprite * sprite)
|
||||
void UpdateSplashFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 objectEventId;
|
||||
|
||||
@@ -647,7 +648,7 @@ void UpdateSplashFieldEffect(struct Sprite * sprite)
|
||||
u32 FldEff_JumpSmallSplash(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 12);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_JUMP_SMALL_SPLASH], gFieldEffectArguments[0], gFieldEffectArguments[1], 0);
|
||||
@@ -665,7 +666,7 @@ u32 FldEff_JumpSmallSplash(void)
|
||||
u32 FldEff_JumpBigSplash(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_JUMP_BIG_SPLASH], gFieldEffectArguments[0], gFieldEffectArguments[1], 0);
|
||||
@@ -685,7 +686,7 @@ u32 FldEff_FeetInFlowingWater(void)
|
||||
u8 objectEventId;
|
||||
struct ObjectEvent * objectEvent;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
const struct ObjectEventGraphicsInfo * graphicsInfo;
|
||||
|
||||
objectEventId = GetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -709,10 +710,10 @@ u32 FldEff_FeetInFlowingWater(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite * sprite)
|
||||
static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 objectEventId;
|
||||
struct Sprite * linkedSprite;
|
||||
struct Sprite *linkedSprite;
|
||||
struct ObjectEvent * objectEvent;
|
||||
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(sprite->data[0], sprite->data[1], sprite->data[2], &objectEventId) || !gObjectEvents[objectEventId].inShallowFlowingWater)
|
||||
@@ -742,7 +743,7 @@ static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite * sprite)
|
||||
u32 FldEff_Ripple(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_RIPPLE], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
@@ -760,7 +761,7 @@ u32 FldEff_HotSpringsWater(void)
|
||||
u8 objectEventId;
|
||||
struct ObjectEvent * objectEvent;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
objectEventId = GetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
objectEvent = &gObjectEvents[objectEventId];
|
||||
@@ -779,11 +780,11 @@ u32 FldEff_HotSpringsWater(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateHotSpringsWaterFieldEffect(struct Sprite * sprite)
|
||||
void UpdateHotSpringsWaterFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 objectEventId;
|
||||
const struct ObjectEventGraphicsInfo * graphicsInfo;
|
||||
struct Sprite * linkedSprite;
|
||||
struct Sprite *linkedSprite;
|
||||
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(sprite->data[0], sprite->data[1], sprite->data[2], &objectEventId) || !gObjectEvents[objectEventId].inHotSprings)
|
||||
{
|
||||
@@ -800,10 +801,10 @@ void UpdateHotSpringsWaterFieldEffect(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
u32 FldEff_Unknown19(void)
|
||||
u32 FldEff_UnusedGrass(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_UNUSED_GRASS], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -812,15 +813,15 @@ u32 FldEff_Unknown19(void)
|
||||
sprite = &gSprites[spriteId];
|
||||
sprite->coordOffsetEnabled = TRUE;
|
||||
sprite->oam.priority = gFieldEffectArguments[3];
|
||||
sprite->data[0] = FLDEFF_UNKNOWN_19;
|
||||
sprite->data[0] = FLDEFF_UNUSED_GRASS;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 FldEff_Unknown20(void)
|
||||
u32 FldEff_UnusedGrass2(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_UNUSED_GRASS_2], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -829,15 +830,15 @@ u32 FldEff_Unknown20(void)
|
||||
sprite = &gSprites[spriteId];
|
||||
sprite->coordOffsetEnabled = TRUE;
|
||||
sprite->oam.priority = gFieldEffectArguments[3];
|
||||
sprite->data[0] = FLDEFF_UNKNOWN_20;
|
||||
sprite->data[0] = FLDEFF_UNUSED_GRASS_2;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 FldEff_Unknown21(void)
|
||||
u32 FldEff_UnusedSand(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_UNUSED_SAND], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -846,15 +847,15 @@ u32 FldEff_Unknown21(void)
|
||||
sprite = &gSprites[spriteId];
|
||||
sprite->coordOffsetEnabled = TRUE;
|
||||
sprite->oam.priority = gFieldEffectArguments[3];
|
||||
sprite->data[0] = FLDEFF_UNKNOWN_21;
|
||||
sprite->data[0] = FLDEFF_UNUSED_SAND;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 FldEff_Unknown22(void)
|
||||
u32 FldEff_UnusedWaterSurfacing(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_WATER_SURFACING], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -863,7 +864,7 @@ u32 FldEff_Unknown22(void)
|
||||
sprite = &gSprites[spriteId];
|
||||
sprite->coordOffsetEnabled = TRUE;
|
||||
sprite->oam.priority = gFieldEffectArguments[3];
|
||||
sprite->data[0] = FLDEFF_UNKNOWN_22;
|
||||
sprite->data[0] = FLDEFF_UNUSED_WATER_SURFACING;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -884,7 +885,7 @@ u32 FldEff_Ash(void)
|
||||
s16 x;
|
||||
s16 y;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
x = gFieldEffectArguments[0];
|
||||
y = gFieldEffectArguments[1];
|
||||
@@ -903,18 +904,18 @@ u32 FldEff_Ash(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void (*const gAshFieldEffectFuncs[])(struct Sprite * sprite) = {
|
||||
void (*const gAshFieldEffectFuncs[])(struct Sprite *sprite) = {
|
||||
UpdateAshFieldEffect_Step0,
|
||||
UpdateAshFieldEffect_Step1,
|
||||
UpdateAshFieldEffect_Step2
|
||||
};
|
||||
|
||||
void UpdateAshFieldEffect(struct Sprite * sprite)
|
||||
void UpdateAshFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
gAshFieldEffectFuncs[sprite->data[0]](sprite);
|
||||
}
|
||||
|
||||
static void UpdateAshFieldEffect_Step0(struct Sprite * sprite)
|
||||
static void UpdateAshFieldEffect_Step0(struct Sprite *sprite)
|
||||
{
|
||||
sprite->invisible = TRUE;
|
||||
sprite->animPaused = TRUE;
|
||||
@@ -922,7 +923,7 @@ static void UpdateAshFieldEffect_Step0(struct Sprite * sprite)
|
||||
sprite->data[0] = 1;
|
||||
}
|
||||
|
||||
static void UpdateAshFieldEffect_Step1(struct Sprite * sprite)
|
||||
static void UpdateAshFieldEffect_Step1(struct Sprite *sprite)
|
||||
{
|
||||
sprite->invisible = FALSE;
|
||||
sprite->animPaused = FALSE;
|
||||
@@ -932,27 +933,34 @@ static void UpdateAshFieldEffect_Step1(struct Sprite * sprite)
|
||||
sprite->data[0] = 2;
|
||||
}
|
||||
|
||||
static void UpdateAshFieldEffect_Step2(struct Sprite * sprite)
|
||||
static void UpdateAshFieldEffect_Step2(struct Sprite *sprite)
|
||||
{
|
||||
UpdateObjectEventSpriteVisibility(sprite, FALSE);
|
||||
if (sprite->animEnded)
|
||||
FieldEffectStop(sprite, FLDEFF_ASH);
|
||||
}
|
||||
|
||||
// Sprite data for surf blob
|
||||
#define sBitfield data[0]
|
||||
#define sPlayerOffset data[1]
|
||||
#define sPlayerObjectId data[2]
|
||||
#define sBobDirection data[3]
|
||||
#define sTimer data[4]
|
||||
|
||||
u32 FldEff_SurfBlob(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 8);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_SURF_BLOB], gFieldEffectArguments[0], gFieldEffectArguments[1], 0x96);
|
||||
if (spriteId !=MAX_SPRITES)
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
sprite = &gSprites[spriteId];
|
||||
sprite->coordOffsetEnabled = TRUE;
|
||||
sprite->oam.paletteNum = 0;
|
||||
sprite->data[2] = gFieldEffectArguments[2];
|
||||
sprite->data[3] = 0;
|
||||
sprite->sPlayerObjectId = gFieldEffectArguments[2];
|
||||
sprite->sBobDirection = 0;
|
||||
sprite->data[6] = -1;
|
||||
sprite->data[7] = -1;
|
||||
}
|
||||
@@ -960,51 +968,51 @@ u32 FldEff_SurfBlob(void)
|
||||
return spriteId;
|
||||
}
|
||||
|
||||
void SetSurfBlob_BobState(u8 spriteId, u8 value)
|
||||
void SetSurfBlob_BobState(u8 spriteId, u8 bobState)
|
||||
{
|
||||
gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF) | (value & 0xF);
|
||||
gSprites[spriteId].sBitfield = (gSprites[spriteId].sBitfield & ~0xF) | (bobState & 0xF);
|
||||
}
|
||||
|
||||
void SetSurfBlob_DontSyncAnim(u8 spriteId, u8 value)
|
||||
void SetSurfBlob_DontSyncAnim(u8 spriteId, bool8 value)
|
||||
{
|
||||
gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF0) | ((value & 0xF) << 4);
|
||||
gSprites[spriteId].sBitfield = (gSprites[spriteId].sBitfield & ~0xF0) | ((value & 0xF) << 4);
|
||||
}
|
||||
|
||||
void SetSurfBlob_PlayerOffset(u8 spriteId, u8 hasOffset, s16 offset)
|
||||
void SetSurfBlob_PlayerOffset(u8 spriteId, bool8 hasOffset, s16 offset)
|
||||
{
|
||||
gSprites[spriteId].data[0] = (gSprites[spriteId].data[0] & ~0xF00) | ((hasOffset & 0xF) << 8);
|
||||
gSprites[spriteId].data[1] = offset;
|
||||
gSprites[spriteId].sBitfield = (gSprites[spriteId].sBitfield & ~0xF00) | ((hasOffset & 0xF) << 8);
|
||||
gSprites[spriteId].sPlayerOffset = offset;
|
||||
}
|
||||
|
||||
static u8 GetSurfBlob_BobState(struct Sprite * sprite)
|
||||
static u8 GetSurfBlob_BobState(struct Sprite *sprite)
|
||||
{
|
||||
return sprite->data[0] & 0xF;
|
||||
return sprite->sBitfield & 0xF;
|
||||
}
|
||||
|
||||
static u8 GetSurfBlob_DontSyncAnim(struct Sprite * sprite)
|
||||
static bool8 GetSurfBlob_DontSyncAnim(struct Sprite *sprite)
|
||||
{
|
||||
return (sprite->data[0] & 0xF0) >> 4;
|
||||
return (sprite->sBitfield & 0xF0) >> 4;
|
||||
}
|
||||
|
||||
static u8 GetSurfBlob_HasPlayerOffset(struct Sprite * sprite)
|
||||
static bool8 GetSurfBlob_HasPlayerOffset(struct Sprite *sprite)
|
||||
{
|
||||
return (sprite->data[0] & 0xF00) >> 8;
|
||||
return (sprite->sBitfield & 0xF00) >> 8;
|
||||
}
|
||||
|
||||
void UpdateSurfBlobFieldEffect(struct Sprite * sprite)
|
||||
void UpdateSurfBlobFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
struct ObjectEvent * objectEvent;
|
||||
struct Sprite * linkedSprite;
|
||||
struct ObjectEvent *playerObject;
|
||||
struct Sprite *playerSprite;
|
||||
|
||||
objectEvent = &gObjectEvents[sprite->data[2]];
|
||||
linkedSprite = &gSprites[objectEvent->spriteId];
|
||||
SynchroniseSurfAnim(objectEvent, sprite);
|
||||
SynchroniseSurfPosition(objectEvent, sprite);
|
||||
CreateBobbingEffect(objectEvent, linkedSprite, sprite);
|
||||
sprite->oam.priority = linkedSprite->oam.priority;
|
||||
playerObject = &gObjectEvents[sprite->sPlayerObjectId];
|
||||
playerSprite = &gSprites[playerObject->spriteId];
|
||||
SynchroniseSurfAnim(playerObject, sprite);
|
||||
SynchroniseSurfPosition(playerObject, sprite);
|
||||
CreateBobbingEffect(playerObject, playerSprite, sprite);
|
||||
sprite->oam.priority = playerSprite->oam.priority;
|
||||
}
|
||||
|
||||
static void SynchroniseSurfAnim(struct ObjectEvent * objectEvent, struct Sprite * sprite)
|
||||
static void SynchroniseSurfAnim(struct ObjectEvent *objectEvent, struct Sprite *sprite)
|
||||
{
|
||||
u8 surfBlobDirectionAnims[] = {
|
||||
[DIR_NONE] = 0,
|
||||
@@ -1014,66 +1022,74 @@ static void SynchroniseSurfAnim(struct ObjectEvent * objectEvent, struct Sprite
|
||||
[DIR_EAST] = 3
|
||||
};
|
||||
|
||||
if (GetSurfBlob_DontSyncAnim(sprite) == 0)
|
||||
if (GetSurfBlob_DontSyncAnim(sprite) == FALSE)
|
||||
StartSpriteAnimIfDifferent(sprite, surfBlobDirectionAnims[objectEvent->movementDirection]);
|
||||
}
|
||||
|
||||
void SynchroniseSurfPosition(struct ObjectEvent * objectEvent, struct Sprite * sprite)
|
||||
void SynchroniseSurfPosition(struct ObjectEvent *playerObject, struct Sprite *surfBlobSprite)
|
||||
{
|
||||
u8 i;
|
||||
s16 x = objectEvent->currentCoords.x;
|
||||
s16 y = objectEvent->currentCoords.y;
|
||||
s32 spriteY = sprite->y2;
|
||||
s16 x = playerObject->currentCoords.x;
|
||||
s16 y = playerObject->currentCoords.y;
|
||||
s32 yOffset = surfBlobSprite->y2;
|
||||
|
||||
if (spriteY == 0 && (x != sprite->data[6] || y != sprite->data[7]))
|
||||
if (yOffset == 0 && (x != surfBlobSprite->data[6] || y != surfBlobSprite->data[7]))
|
||||
{
|
||||
sprite->data[5] = spriteY;
|
||||
sprite->data[6] = x;
|
||||
sprite->data[7] = y;
|
||||
for (i = DIR_SOUTH; i <= DIR_EAST; i++, x = sprite->data[6], y = sprite->data[7])
|
||||
surfBlobSprite->data[5] = yOffset;
|
||||
surfBlobSprite->data[6] = x;
|
||||
surfBlobSprite->data[7] = y;
|
||||
for (i = DIR_SOUTH; i <= DIR_EAST; i++, x = surfBlobSprite->data[6], y = surfBlobSprite->data[7])
|
||||
{
|
||||
MoveCoords(i, &x, &y);
|
||||
if (MapGridGetZCoordAt(x, y) == 3)
|
||||
{
|
||||
sprite->data[5]++;
|
||||
surfBlobSprite->data[5]++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void CreateBobbingEffect(struct ObjectEvent * objectEvent, struct Sprite * linkedSprite, struct Sprite * sprite)
|
||||
static void CreateBobbingEffect(struct ObjectEvent *objectEvent, struct Sprite *playerSprite, struct Sprite *surfBlobSprite)
|
||||
{
|
||||
u16 unk_83FECFA[] = {7, 15};
|
||||
u8 v0 = GetSurfBlob_BobState(sprite);
|
||||
if (v0 != 0)
|
||||
u16 intervals[] = {7, 15};
|
||||
u8 bobState = GetSurfBlob_BobState(surfBlobSprite);
|
||||
if (bobState != BOB_NONE)
|
||||
{
|
||||
if (((u16)(++ sprite->data[4]) & unk_83FECFA[sprite->data[5]]) == 0)
|
||||
// the surf blob sprite never bobs since sBobDirection will always be 0
|
||||
|
||||
if (((u16)(++surfBlobSprite->sTimer) & intervals[surfBlobSprite->data[5]]) == 0)
|
||||
surfBlobSprite->y2 += surfBlobSprite->sBobDirection;
|
||||
|
||||
if ((surfBlobSprite->sTimer & 0x1F) == 0)
|
||||
surfBlobSprite->sBobDirection = -surfBlobSprite->sBobDirection;
|
||||
|
||||
if (bobState != BOB_MON_ONLY)
|
||||
{
|
||||
sprite->y2 += sprite->data[3];
|
||||
}
|
||||
if ((sprite->data[4] & 0x1F) == 0)
|
||||
{
|
||||
sprite->data[3] = -sprite->data[3];
|
||||
}
|
||||
if (v0 != 2)
|
||||
{
|
||||
if (GetSurfBlob_HasPlayerOffset(sprite) == 0)
|
||||
linkedSprite->y2 = sprite->y2;
|
||||
if (GetSurfBlob_HasPlayerOffset(surfBlobSprite) == FALSE)
|
||||
playerSprite->y2 = surfBlobSprite->y2;
|
||||
else
|
||||
linkedSprite->y2 = sprite->data[1] + sprite->y2;
|
||||
if (sprite->animCmdIndex != 0)
|
||||
linkedSprite->y2++;
|
||||
sprite->x = linkedSprite->x;
|
||||
sprite->y = linkedSprite->y + 8;
|
||||
playerSprite->y2 = surfBlobSprite->sPlayerOffset + surfBlobSprite->y2;
|
||||
|
||||
if (surfBlobSprite->animCmdIndex != 0)
|
||||
playerSprite->y2++;
|
||||
|
||||
surfBlobSprite->x = playerSprite->x;
|
||||
surfBlobSprite->y = playerSprite->y + 8;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#undef sBitfield
|
||||
#undef sPlayerOffset
|
||||
#undef sPlayerObjectId
|
||||
#undef sBobDirection
|
||||
#undef sTimer
|
||||
|
||||
u8 StartUnderwaterSurfBlobBobbing(u8 oldSpriteId)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
spriteId = CreateSpriteAtEnd(&gDummySpriteTemplate, 0, 0, -1);
|
||||
sprite = &gSprites[spriteId];
|
||||
@@ -1084,9 +1100,9 @@ u8 StartUnderwaterSurfBlobBobbing(u8 oldSpriteId)
|
||||
return spriteId;
|
||||
}
|
||||
|
||||
static void SpriteCB_UnderwaterSurfBlob(struct Sprite * sprite)
|
||||
static void SpriteCB_UnderwaterSurfBlob(struct Sprite *sprite)
|
||||
{
|
||||
struct Sprite * oldSprite;
|
||||
struct Sprite *oldSprite;
|
||||
|
||||
oldSprite = &gSprites[sprite->data[0]];
|
||||
if (((sprite->data[2]++) & 0x03) == 0)
|
||||
@@ -1102,7 +1118,7 @@ static void SpriteCB_UnderwaterSurfBlob(struct Sprite * sprite)
|
||||
u32 FldEff_Dust(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 12);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_GROUND_IMPACT_DUST], gFieldEffectArguments[0], gFieldEffectArguments[1], 0);
|
||||
@@ -1122,7 +1138,7 @@ u32 FldEff_SandPile(void)
|
||||
u8 objectEventId;
|
||||
struct ObjectEvent * objectEvent;
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
const struct ObjectEventGraphicsInfo * graphicsInfo;
|
||||
|
||||
objectEventId = GetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -1145,7 +1161,7 @@ u32 FldEff_SandPile(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateSandPileFieldEffect(struct Sprite * sprite)
|
||||
void UpdateSandPileFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 objectEventId;
|
||||
s16 x;
|
||||
@@ -1178,7 +1194,7 @@ void UpdateSandPileFieldEffect(struct Sprite * sprite)
|
||||
u32 FldEff_Bubbles(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 0);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_BUBBLES], gFieldEffectArguments[0], gFieldEffectArguments[1], 0x52);
|
||||
@@ -1191,7 +1207,7 @@ u32 FldEff_Bubbles(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateBubblesFieldEffect(struct Sprite * sprite)
|
||||
void UpdateBubblesFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] += 0x80;
|
||||
sprite->data[0] &= 0x100;
|
||||
@@ -1206,7 +1222,7 @@ void UpdateBubblesFieldEffect(struct Sprite * sprite)
|
||||
u32 FldEff_BerryTreeGrowthSparkle(void)
|
||||
{
|
||||
/*u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
SetSpritePosToOffsetMapCoords((s16 *)&gFieldEffectArguments[0], (s16 *)&gFieldEffectArguments[1], 8, 4);
|
||||
spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_SPARKLE], gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
|
||||
@@ -1239,7 +1255,7 @@ u32 ShowSandDisguiseFieldEffect(void)
|
||||
static u32 ShowDisguiseFieldEffect(u8 fldEff, u8 templateIdx, u8 paletteNum)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2], &spriteId))
|
||||
{
|
||||
@@ -1260,11 +1276,11 @@ static u32 ShowDisguiseFieldEffect(u8 fldEff, u8 templateIdx, u8 paletteNum)
|
||||
return spriteId;
|
||||
}
|
||||
|
||||
void UpdateDisguiseFieldEffect(struct Sprite * sprite)
|
||||
void UpdateDisguiseFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
u8 objectEventId;
|
||||
const struct ObjectEventGraphicsInfo * graphicsInfo;
|
||||
struct Sprite * linkedSprite;
|
||||
struct Sprite *linkedSprite;
|
||||
|
||||
if (TryGetObjectEventIdByLocalIdAndMap(sprite->data[2], sprite->data[3], sprite->data[4], &objectEventId))
|
||||
{
|
||||
@@ -1302,7 +1318,7 @@ void StartRevealDisguise(struct ObjectEvent * objectEvent)
|
||||
|
||||
bool8 UpdateRevealDisguise(struct ObjectEvent * objectEvent)
|
||||
{
|
||||
struct Sprite * sprite;
|
||||
struct Sprite *sprite;
|
||||
|
||||
if (objectEvent->directionSequenceIndex == 2)
|
||||
{
|
||||
@@ -1338,7 +1354,7 @@ u32 FldEff_Sparkle(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void UpdateSparkleFieldEffect(struct Sprite * sprite)
|
||||
void UpdateSparkleFieldEffect(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[0] == 0)
|
||||
{
|
||||
@@ -1356,7 +1372,7 @@ void UpdateSparkleFieldEffect(struct Sprite * sprite)
|
||||
FieldEffectStop(sprite, FLDEFF_SPARKLE);
|
||||
}
|
||||
|
||||
void UpdateJumpImpactEffect(struct Sprite * sprite)
|
||||
void UpdateJumpImpactEffect(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->animEnded)
|
||||
{
|
||||
@@ -1369,7 +1385,7 @@ void UpdateJumpImpactEffect(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void WaitFieldEffectSpriteAnim(struct Sprite * sprite)
|
||||
void WaitFieldEffectSpriteAnim(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->animEnded)
|
||||
FieldEffectStop(sprite, sprite->data[0]);
|
||||
@@ -1377,12 +1393,12 @@ void WaitFieldEffectSpriteAnim(struct Sprite * sprite)
|
||||
UpdateObjectEventSpriteVisibility(sprite, FALSE);
|
||||
}
|
||||
|
||||
static void UpdateGrassFieldEffectSubpriority(struct Sprite * sprite, u8 z, u8 offset)
|
||||
static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 offset)
|
||||
{
|
||||
u8 i;
|
||||
s16 var, xhi, lyhi, yhi, ylo;
|
||||
const struct ObjectEventGraphicsInfo * graphicsInfo; // Unused Variable
|
||||
struct Sprite * linkedSprite;
|
||||
struct Sprite *linkedSprite;
|
||||
|
||||
SetObjectSubpriorityByZCoord(z, sprite, offset);
|
||||
for (i = 0; i < OBJECT_EVENTS_COUNT; i++)
|
||||
|
||||
@@ -264,7 +264,7 @@ static void SetUpWarpExitTask(bool8 playerNotMoving)
|
||||
func = Task_ExitNonAnimDoor;
|
||||
else if (MetatileBehavior_IsDirectionalStairWarp(metatileBehavior) == TRUE)
|
||||
{
|
||||
u8 tmp = gUnknown_2031DE0;
|
||||
u8 tmp = gExitStairsMovementDisabled;
|
||||
func = Task_ExitNonDoor;
|
||||
if (!tmp)
|
||||
func = Task_ExitStairs;
|
||||
@@ -272,7 +272,7 @@ static void SetUpWarpExitTask(bool8 playerNotMoving)
|
||||
else
|
||||
func = Task_ExitNonDoor;
|
||||
}
|
||||
gUnknown_2031DE0 = FALSE;
|
||||
gExitStairsMovementDisabled = FALSE;
|
||||
CreateTask(func, 10);
|
||||
}
|
||||
|
||||
|
||||
+47
-38
@@ -5,22 +5,30 @@
|
||||
#include "script.h"
|
||||
#include "text_window.h"
|
||||
|
||||
enum
|
||||
{
|
||||
FIELD_MESSAGE_BOX_HIDDEN,
|
||||
FIELD_MESSAGE_BOX_UNUSED,
|
||||
FIELD_MESSAGE_BOX_NORMAL,
|
||||
FIELD_MESSAGE_BOX_AUTO_SCROLL,
|
||||
};
|
||||
|
||||
static EWRAM_DATA u8 sMessageBoxType = 0;
|
||||
|
||||
static void textbox_fdecode_auto_and_task_add(const u8 *str);
|
||||
static void textbox_auto_and_task_add(void);
|
||||
static void ExpandStringAndStartDrawFieldMessageBox(const u8 *str);
|
||||
static void StartDrawFieldMessageBox(void);
|
||||
|
||||
void InitFieldMessageBox(void)
|
||||
{
|
||||
sMessageBoxType = 0;
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_HIDDEN;
|
||||
gTextFlags.canABSpeedUpPrint = FALSE;
|
||||
gTextFlags.useAlternateDownArrow = FALSE;
|
||||
gTextFlags.autoScroll = FALSE;
|
||||
}
|
||||
|
||||
static void Task_RunFieldMessageBoxPrinter(u8 taskId)
|
||||
static void Task_DrawFieldMessageBox(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
switch (task->data[0])
|
||||
{
|
||||
case 0:
|
||||
@@ -30,13 +38,9 @@ static void Task_RunFieldMessageBoxPrinter(u8 taskId)
|
||||
TextWindow_LoadTilesStdFrame1(0, 0x200);
|
||||
}
|
||||
else if (!IsMsgSignPost())
|
||||
{
|
||||
LoadStdWindowFrameGfx();
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadSignPostWindowFrameGfx();
|
||||
}
|
||||
task->data[0]++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -46,95 +50,100 @@ static void Task_RunFieldMessageBoxPrinter(u8 taskId)
|
||||
case 2:
|
||||
if (RunTextPrinters_CheckPrinter0Active() != TRUE)
|
||||
{
|
||||
sMessageBoxType = 0;
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_HIDDEN;
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void task_add_textbox(void)
|
||||
static void CreateTask_DrawFieldMessageBox(void)
|
||||
{
|
||||
CreateTask(Task_RunFieldMessageBoxPrinter, 80);
|
||||
CreateTask(Task_DrawFieldMessageBox, 80);
|
||||
}
|
||||
|
||||
static void task_del_textbox(void)
|
||||
static void DestroyTask_DrawFieldMessageBox(void)
|
||||
{
|
||||
u8 taskId = FindTaskIdByFunc(Task_RunFieldMessageBoxPrinter);
|
||||
u8 taskId = FindTaskIdByFunc(Task_DrawFieldMessageBox);
|
||||
if (taskId != 0xFF)
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
bool8 ShowFieldMessage(const u8 *str)
|
||||
{
|
||||
if (sMessageBoxType != 0)
|
||||
if (sMessageBoxType != FIELD_MESSAGE_BOX_HIDDEN)
|
||||
return FALSE;
|
||||
textbox_fdecode_auto_and_task_add(str);
|
||||
sMessageBoxType = 2;
|
||||
ExpandStringAndStartDrawFieldMessageBox(str);
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_NORMAL;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 ShowFieldAutoScrollMessage(const u8 *str)
|
||||
{
|
||||
if (sMessageBoxType != 0)
|
||||
if (sMessageBoxType != FIELD_MESSAGE_BOX_HIDDEN)
|
||||
return FALSE;
|
||||
sMessageBoxType = 3;
|
||||
textbox_fdecode_auto_and_task_add(str);
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_AUTO_SCROLL;
|
||||
ExpandStringAndStartDrawFieldMessageBox(str);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 sub_806948C(const u8 *str)
|
||||
// Unused
|
||||
static bool8 ForceShowFieldAutoScrollMessage(const u8 *str)
|
||||
{
|
||||
sMessageBoxType = 3;
|
||||
textbox_fdecode_auto_and_task_add(str);
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_AUTO_SCROLL;
|
||||
ExpandStringAndStartDrawFieldMessageBox(str);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 sub_80694A4(const u8 *str)
|
||||
// Unused
|
||||
// Same as ShowFieldMessage, but instead of accepting a string argument,
|
||||
// it just prints whatever that's already in gStringVar4
|
||||
static bool8 ShowFieldMessageFromBuffer(void)
|
||||
{
|
||||
if (sMessageBoxType != 0)
|
||||
if (sMessageBoxType != FIELD_MESSAGE_BOX_HIDDEN)
|
||||
return FALSE;
|
||||
sMessageBoxType = 2;
|
||||
textbox_auto_and_task_add();
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_NORMAL;
|
||||
StartDrawFieldMessageBox();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void textbox_fdecode_auto_and_task_add(const u8 *str)
|
||||
static void ExpandStringAndStartDrawFieldMessageBox(const u8 *str)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, str);
|
||||
AddTextPrinterDiffStyle(TRUE);
|
||||
task_add_textbox();
|
||||
CreateTask_DrawFieldMessageBox();
|
||||
}
|
||||
|
||||
static void textbox_auto_and_task_add(void)
|
||||
static void StartDrawFieldMessageBox(void)
|
||||
{
|
||||
AddTextPrinterDiffStyle(TRUE);
|
||||
task_add_textbox();
|
||||
CreateTask_DrawFieldMessageBox();
|
||||
}
|
||||
|
||||
void HideFieldMessageBox(void)
|
||||
{
|
||||
task_del_textbox();
|
||||
DestroyTask_DrawFieldMessageBox();
|
||||
ClearDialogWindowAndFrame(0, TRUE);
|
||||
sMessageBoxType = 0;
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_HIDDEN;
|
||||
}
|
||||
|
||||
u8 textbox_any_visible(void)
|
||||
u8 GetFieldMessageBoxType(void)
|
||||
{
|
||||
return sMessageBoxType;
|
||||
}
|
||||
|
||||
bool8 IsFieldMessageBoxHidden(void)
|
||||
{
|
||||
if (sMessageBoxType == 0)
|
||||
if (sMessageBoxType == FIELD_MESSAGE_BOX_HIDDEN)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void sub_8069538(void)
|
||||
// Unused
|
||||
static void ReplaceFieldMessageWithFrame(void)
|
||||
{
|
||||
task_del_textbox();
|
||||
DestroyTask_DrawFieldMessageBox();
|
||||
DrawStdWindowFrame(0, TRUE);
|
||||
sMessageBoxType = 0;
|
||||
sMessageBoxType = FIELD_MESSAGE_BOX_HIDDEN;
|
||||
}
|
||||
|
||||
+41
-41
@@ -32,7 +32,7 @@ static EWRAM_DATA u8 sTeleportSavedFacingDirection = DIR_NONE;
|
||||
EWRAM_DATA struct ObjectEvent gObjectEvents[OBJECT_EVENTS_COUNT] = {};
|
||||
EWRAM_DATA struct PlayerAvatar gPlayerAvatar = {};
|
||||
|
||||
static u8 ObjectEventCB2_NoMovement2(struct ObjectEvent * object, struct Sprite * sprite);
|
||||
static u8 ObjectEventCB2_NoMovement2(struct ObjectEvent * object, struct Sprite *sprite);
|
||||
static bool8 TryUpdatePlayerSpinDirection(void);
|
||||
static bool8 TryInterruptObjectEventSpecialAnim(struct ObjectEvent * playerObjEvent, u8 direction);
|
||||
static void npc_clear_strange_bits(struct ObjectEvent * playerObjEvent);
|
||||
@@ -58,8 +58,8 @@ static bool8 ForcedMovement_SlideSouth(void);
|
||||
static bool8 ForcedMovement_SlideNorth(void);
|
||||
static bool8 ForcedMovement_SlideWest(void);
|
||||
static bool8 ForcedMovement_SlideEast(void);
|
||||
static bool8 ForcedMovement_0xBB(void);
|
||||
static bool8 ForcedMovement_0xBC(void);
|
||||
static bool8 ForcedMovement_MatJump(void);
|
||||
static bool8 ForcedMovement_MatSpin(void);
|
||||
static u8 CheckMovementInputNotOnBike(u8 direction);
|
||||
static void PlayerNotOnBikeNotMoving(u8 direction, u16 heldKeys);
|
||||
static void PlayerNotOnBikeTurningInPlace(u8 direction, u16 heldKeys);
|
||||
@@ -87,38 +87,38 @@ static bool8 MetatileAtCoordsIsWaterTile(s16 x, s16 y);
|
||||
static void HandleWarpArrowSpriteHideShow(struct ObjectEvent * playerObjEvent);
|
||||
static void StartStrengthAnim(u8 objectEventId, u8 direction);
|
||||
static void Task_BumpBoulder(u8 taskId);
|
||||
static bool8 DoBoulderInit(struct Task * task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj);
|
||||
static bool8 DoBoulderDust(struct Task * task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj);
|
||||
static bool8 DoBoulderFinish(struct Task * task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj);
|
||||
static bool8 DoBoulderInit(struct Task *task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj);
|
||||
static bool8 DoBoulderDust(struct Task *task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj);
|
||||
static bool8 DoBoulderFinish(struct Task *task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj);
|
||||
static void DoPlayerMatJump(void);
|
||||
static void DoPlayerAvatarSecretBaseMatJump(u8 taskId);
|
||||
static bool8 PlayerAvatar_DoSecretBaseMatJump(struct Task * task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_DoSecretBaseMatJump(struct Task *task, struct ObjectEvent * playerObj);
|
||||
static void DoPlayerMatSpin(void);
|
||||
static void PlayerAvatar_DoSecretBaseMatSpin(u8 taskId);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep0(struct Task * task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep1(struct Task * task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep2(struct Task * task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep3(struct Task * task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep0(struct Task *task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep1(struct Task *task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep2(struct Task *task, struct ObjectEvent * playerObj);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep3(struct Task *task, struct ObjectEvent * playerObj);
|
||||
static void CreateStopSurfingTask(u8 direction);
|
||||
static void Task_StopSurfingInit(u8 taskId);
|
||||
static void Task_WaitStopSurfing(u8 taskId);
|
||||
static void Task_Fishing(u8 taskId);
|
||||
static bool8 Fishing1(struct Task * task);
|
||||
static bool8 Fishing2(struct Task * task);
|
||||
static bool8 Fishing3(struct Task * task);
|
||||
static bool8 Fishing4(struct Task * task);
|
||||
static bool8 Fishing5(struct Task * task);
|
||||
static bool8 Fishing6(struct Task * task);
|
||||
static bool8 Fishing7(struct Task * task);
|
||||
static bool8 Fishing8(struct Task * task);
|
||||
static bool8 Fishing9(struct Task * task);
|
||||
static bool8 Fishing10(struct Task * task);
|
||||
static bool8 Fishing11(struct Task * task);
|
||||
static bool8 Fishing12(struct Task * task);
|
||||
static bool8 Fishing13(struct Task * task);
|
||||
static bool8 Fishing14(struct Task * task);
|
||||
static bool8 Fishing15(struct Task * task);
|
||||
static bool8 Fishing16(struct Task * task);
|
||||
static bool8 Fishing1(struct Task *task);
|
||||
static bool8 Fishing2(struct Task *task);
|
||||
static bool8 Fishing3(struct Task *task);
|
||||
static bool8 Fishing4(struct Task *task);
|
||||
static bool8 Fishing5(struct Task *task);
|
||||
static bool8 Fishing6(struct Task *task);
|
||||
static bool8 Fishing7(struct Task *task);
|
||||
static bool8 Fishing8(struct Task *task);
|
||||
static bool8 Fishing9(struct Task *task);
|
||||
static bool8 Fishing10(struct Task *task);
|
||||
static bool8 Fishing11(struct Task *task);
|
||||
static bool8 Fishing12(struct Task *task);
|
||||
static bool8 Fishing13(struct Task *task);
|
||||
static bool8 Fishing14(struct Task *task);
|
||||
static bool8 Fishing15(struct Task *task);
|
||||
static bool8 Fishing16(struct Task *task);
|
||||
static void Task_TeleportWarpOutPlayerAnim(u8 taskId);
|
||||
static void Task_TeleportWarpInPlayerAnim(u8 taskId);
|
||||
static u8 TeleportAnim_RotatePlayer(struct ObjectEvent * object, s16 *timer);
|
||||
@@ -128,7 +128,7 @@ void MovementType_Player(struct Sprite *sprite)
|
||||
UpdateObjectEventCurrentMovement(&gObjectEvents[sprite->data[0]], sprite, ObjectEventCB2_NoMovement2);
|
||||
}
|
||||
|
||||
static u8 ObjectEventCB2_NoMovement2(struct ObjectEvent * object, struct Sprite * sprite)
|
||||
static u8 ObjectEventCB2_NoMovement2(struct ObjectEvent * object, struct Sprite *sprite)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
@@ -225,7 +225,7 @@ static const struct {
|
||||
bool8 (*check)(u8 metatileBehavior);
|
||||
bool8 (*apply)(void);
|
||||
} sForcedMovementFuncs[] = {
|
||||
{MetatileBehavior_IsUnknownMovement48, ForcedMovement_Slip},
|
||||
{MetatileBehavior_IsTrickHouseSlipperyFloor, ForcedMovement_Slip},
|
||||
{MetatileBehavior_IsIce_2, ForcedMovement_Slip},
|
||||
{MetatileBehavior_IsWalkSouth, ForcedMovement_WalkSouth},
|
||||
{MetatileBehavior_IsWalkNorth, ForcedMovement_WalkNorth},
|
||||
@@ -244,8 +244,8 @@ static const struct {
|
||||
{MetatileBehavior_IsSlideWest, ForcedMovement_SlideWest},
|
||||
{MetatileBehavior_IsSlideEast, ForcedMovement_SlideEast},
|
||||
{MetatileBehavior_IsWaterfall, ForcedMovement_PushedSouthByCurrent},
|
||||
{MetatileBehavior_UnusedReturnFalse_7, ForcedMovement_0xBB},
|
||||
{MetatileBehavior_UnusedReturnFalse_8, ForcedMovement_0xBC},
|
||||
{MetatileBehavior_IsSecretBaseJumpMat, ForcedMovement_MatJump},
|
||||
{MetatileBehavior_IsSecretBaseSpinMat, ForcedMovement_MatSpin},
|
||||
{NULL, ForcedMovement_None},
|
||||
};
|
||||
|
||||
@@ -430,13 +430,13 @@ static bool8 ForcedMovement_SlideEast(void)
|
||||
return ForcedMovement_Slide(DIR_EAST, PlayerGoSpeed2);
|
||||
}
|
||||
|
||||
static bool8 ForcedMovement_0xBB(void)
|
||||
static bool8 ForcedMovement_MatJump(void)
|
||||
{
|
||||
DoPlayerMatJump();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static bool8 ForcedMovement_0xBC(void)
|
||||
static bool8 ForcedMovement_MatSpin(void)
|
||||
{
|
||||
DoPlayerMatSpin();
|
||||
return TRUE;
|
||||
@@ -1392,7 +1392,7 @@ static void HandleWarpArrowSpriteHideShow(struct ObjectEvent *objectEvent)
|
||||
SetSpriteInvisible(objectEvent->warpArrowSpriteId);
|
||||
}
|
||||
|
||||
static bool8 (*const sBoulderTaskSteps[])(struct Task * task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj) = {
|
||||
static bool8 (*const sBoulderTaskSteps[])(struct Task *task, struct ObjectEvent * playerObj, struct ObjectEvent * boulderObj) = {
|
||||
DoBoulderInit,
|
||||
DoBoulderDust,
|
||||
DoBoulderFinish
|
||||
@@ -1493,7 +1493,7 @@ static bool8 PlayerAvatar_DoSecretBaseMatJump(struct Task *task, struct ObjectEv
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static bool8 (*const sPlayerAvatarSecretBaseMatSpin[])(struct Task * task, struct ObjectEvent * playerObj) = {
|
||||
static bool8 (*const sPlayerAvatarSecretBaseMatSpin[])(struct Task *task, struct ObjectEvent * playerObj) = {
|
||||
PlayerAvatar_SecretBaseMatSpinStep0,
|
||||
PlayerAvatar_SecretBaseMatSpinStep1,
|
||||
PlayerAvatar_SecretBaseMatSpinStep2,
|
||||
@@ -1619,7 +1619,7 @@ static void Task_StopSurfingInit(u8 taskId)
|
||||
if (!ObjectEventClearHeldMovementIfFinished(playerObjEvent))
|
||||
return;
|
||||
}
|
||||
SetSurfBlob_BobState(playerObjEvent->fieldEffectSpriteId, 2);
|
||||
SetSurfBlob_BobState(playerObjEvent->fieldEffectSpriteId, BOB_MON_ONLY);
|
||||
QL_TryRecordPlayerStepWithDuration0(playerObjEvent, GetJumpSpecialWithEffectMovementAction((u8)gTasks[taskId].data[0]));
|
||||
gTasks[taskId].func = Task_WaitStopSurfing;
|
||||
}
|
||||
@@ -1767,7 +1767,7 @@ static bool8 Fishing5(struct Task *task)
|
||||
}
|
||||
else
|
||||
{
|
||||
AddTextPrinterParameterized(0, 2, dot, task->tNumDots * 12, 1, 0, NULL);
|
||||
AddTextPrinterParameterized(0, FONT_2, dot, task->tNumDots * 12, 1, 0, NULL);
|
||||
task->tNumDots++;
|
||||
}
|
||||
}
|
||||
@@ -1846,7 +1846,7 @@ static bool8 Fishing10(struct Task *task)
|
||||
{
|
||||
AlignFishingAnimationFrames(&gSprites[gPlayerAvatar.spriteId]);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized2(0, 2, gText_PokemonOnHook, 1, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_PokemonOnHook, 1, 0, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
task->tStep++;
|
||||
task->tFrameCounter = 0;
|
||||
return FALSE;
|
||||
@@ -1893,7 +1893,7 @@ static bool8 Fishing12(struct Task *task)
|
||||
AlignFishingAnimationFrames(&gSprites[gPlayerAvatar.spriteId]);
|
||||
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFishingNoCatchDirectionAnimNum(GetPlayerFacingDirection()));
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized2(0, 2, gText_NotEvenANibble, 1, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_NotEvenANibble, 1, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
task->tStep = FISHING_SHOW_RESULT;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -1903,7 +1903,7 @@ static bool8 Fishing13(struct Task *task)
|
||||
{
|
||||
AlignFishingAnimationFrames(&gSprites[gPlayerAvatar.spriteId]);
|
||||
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFishingNoCatchDirectionAnimNum(GetPlayerFacingDirection()));
|
||||
AddTextPrinterParameterized2(0, 2, gText_ItGotAway, 1, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_ItGotAway, 1, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
task->tStep++;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -1952,7 +1952,7 @@ static bool8 Fishing16(struct Task *task)
|
||||
#undef tFrameCounter
|
||||
#undef tFishingRod
|
||||
|
||||
void AlignFishingAnimationFrames(struct Sprite * playerSprite)
|
||||
void AlignFishingAnimationFrames(struct Sprite *playerSprite)
|
||||
{
|
||||
u8 animCmdIndex;
|
||||
u8 animType;
|
||||
|
||||
@@ -367,7 +367,7 @@ static bool8 PrintWhiteOutRecoveryMessage(u8 taskId, const u8 *text, u8 x, u8 y)
|
||||
case 0:
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
||||
StringExpandPlaceholders(gStringVar4, text);
|
||||
AddTextPrinterParameterized4(windowId, 2, x, y, 1, 0, gUnknown_83C68EC, 1, gStringVar4);
|
||||
AddTextPrinterParameterized4(windowId, FONT_2, x, y, 1, 0, gUnknown_83C68EC, 1, gStringVar4);
|
||||
gTextFlags.canABSpeedUpPrint = FALSE;
|
||||
gTasks[taskId].data[2] = 1;
|
||||
break;
|
||||
@@ -396,7 +396,7 @@ static void Task_RushInjuredPokemonToCenter(u8 taskId)
|
||||
Menu_LoadStdPalAt(0xF0);
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
||||
PutWindowTilemap(windowId);
|
||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
loc = GetHealLocation(1);
|
||||
if (gSaveBlock1Ptr->lastHealLocation.mapGroup == loc->group
|
||||
&& gSaveBlock1Ptr->lastHealLocation.mapNum == loc->map
|
||||
|
||||
+15
-15
@@ -544,7 +544,7 @@ void NullFieldSpecial(void)
|
||||
void DoPicboxCancel(void)
|
||||
{
|
||||
u8 t = EOS;
|
||||
AddTextPrinterParameterized(0, 2, &t, 0, 1, 0, NULL);
|
||||
AddTextPrinterParameterized(0, FONT_2, &t, 0, 1, 0, NULL);
|
||||
PicboxCancel();
|
||||
}
|
||||
|
||||
@@ -1098,12 +1098,12 @@ void DrawElevatorCurrentFloorWindow(void)
|
||||
sElevatorCurrentFloorWindowId = AddWindow(&sElevatorCurrentFloorWindowTemplate);
|
||||
TextWindow_SetStdFrame0_WithPal(sElevatorCurrentFloorWindowId, 0x21D, 0xD0);
|
||||
DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 0xD);
|
||||
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, 2, gText_NowOn, 0, 2, 0xFF, NULL);
|
||||
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, FONT_2, gText_NowOn, 0, 2, 0xFF, NULL);
|
||||
floorname = sFloorNamePointers[gSpecialVar_0x8005];
|
||||
strwidth = GetStringWidth(2, floorname, 0);
|
||||
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, 2, floorname, 56 - strwidth, 16, 0xFF, NULL);
|
||||
strwidth = GetStringWidth(FONT_2, floorname, 0);
|
||||
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, FONT_2, floorname, 56 - strwidth, 16, 0xFF, NULL);
|
||||
PutWindowTilemap(sElevatorCurrentFloorWindowId);
|
||||
CopyWindowToVram(sElevatorCurrentFloorWindowId, COPYWIN_BOTH);
|
||||
CopyWindowToVram(sElevatorCurrentFloorWindowId, COPYWIN_FULL);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1165,7 +1165,7 @@ static void Task_AnimateElevatorWindowView(u8 taskId)
|
||||
void ListMenu(void)
|
||||
{
|
||||
u8 taskId;
|
||||
struct Task * task;
|
||||
struct Task *task;
|
||||
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
|
||||
{
|
||||
taskId = CreateTask(Task_CreateScriptListMenu, 8);
|
||||
@@ -1334,7 +1334,7 @@ static void Task_CreateScriptListMenu(u8 taskId)
|
||||
u8 i;
|
||||
s32 width;
|
||||
s32 mwidth;
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
u8 windowId;
|
||||
ScriptContext2_Enable();
|
||||
if (gSpecialVar_0x8004 == LISTMENU_SILPHCO_FLOORS)
|
||||
@@ -1348,7 +1348,7 @@ static void Task_CreateScriptListMenu(u8 taskId)
|
||||
{
|
||||
sListMenuItems[i].label = sListMenuLabels[gSpecialVar_0x8004][i];
|
||||
sListMenuItems[i].index = i;
|
||||
width = GetStringWidth(2, sListMenuItems[i].label, 0);
|
||||
width = GetStringWidth(FONT_2, sListMenuItems[i].label, 0);
|
||||
if (width > mwidth)
|
||||
mwidth = width;
|
||||
}
|
||||
@@ -1364,7 +1364,7 @@ static void Task_CreateScriptListMenu(u8 taskId)
|
||||
Task_CreateMenuRemoveScrollIndicatorArrowPair(taskId);
|
||||
task->data[14] = ListMenuInit(&sFieldSpecialsListMenuTemplate, task->data[7], task->data[8]);
|
||||
PutWindowTilemap(task->data[13]);
|
||||
CopyWindowToVram(task->data[13], COPYWIN_BOTH);
|
||||
CopyWindowToVram(task->data[13], COPYWIN_FULL);
|
||||
gTasks[taskId].func = Task_ListMenuHandleInput;
|
||||
}
|
||||
|
||||
@@ -1386,14 +1386,14 @@ static void CreateScriptListMenu(void)
|
||||
sFieldSpecialsListMenuTemplate.lettersSpacing = 1;
|
||||
sFieldSpecialsListMenuTemplate.itemVerticalPadding = 0;
|
||||
sFieldSpecialsListMenuTemplate.scrollMultiple = 0;
|
||||
sFieldSpecialsListMenuTemplate.fontId = 2;
|
||||
sFieldSpecialsListMenuTemplate.fontId = FONT_2;
|
||||
sFieldSpecialsListMenuTemplate.cursorKind = 0;
|
||||
}
|
||||
|
||||
static void ScriptListMenuMoveCursorFunction(s32 nothing, bool8 is, struct ListMenu * used)
|
||||
{
|
||||
u8 taskId;
|
||||
struct Task * task;
|
||||
struct Task *task;
|
||||
PlaySE(SE_SELECT);
|
||||
taskId = FindTaskIdByFunc(Task_ListMenuHandleInput);
|
||||
if (taskId != 0xFF)
|
||||
@@ -1407,7 +1407,7 @@ static void ScriptListMenuMoveCursorFunction(s32 nothing, bool8 is, struct ListM
|
||||
static void Task_ListMenuHandleInput(u8 taskId)
|
||||
{
|
||||
s32 input;
|
||||
struct Task * task;
|
||||
struct Task *task;
|
||||
|
||||
task = &gTasks[taskId];
|
||||
task++;task--;
|
||||
@@ -1440,7 +1440,7 @@ static void Task_ListMenuHandleInput(u8 taskId)
|
||||
|
||||
static void Task_DestroyListMenu(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
Task_ListMenuRemoveScrollIndicatorArrowPair(taskId);
|
||||
DestroyListMenuTask(task->data[14], NULL, NULL);
|
||||
Free(sListMenuItems);
|
||||
@@ -1484,7 +1484,7 @@ static void Task_RedrawScrollArrowsAndWaitInput(u8 taskId)
|
||||
|
||||
static void Task_CreateMenuRemoveScrollIndicatorArrowPair(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
struct ScrollArrowsTemplate template = {
|
||||
.firstArrowType = 2,
|
||||
.secondArrowType = 3,
|
||||
@@ -1505,7 +1505,7 @@ static void Task_CreateMenuRemoveScrollIndicatorArrowPair(u8 taskId)
|
||||
|
||||
static void Task_ListMenuRemoveScrollIndicatorArrowPair(u8 taskId)
|
||||
{
|
||||
struct Task * task = &gTasks[taskId];
|
||||
struct Task *task = &gTasks[taskId];
|
||||
if (task->data[0] != task->data[1])
|
||||
RemoveScrollIndicatorArrowPair(task->data[12]);
|
||||
}
|
||||
|
||||
+2
-2
@@ -233,7 +233,7 @@ static void AshGrassPerStepCallback(u8 taskId)
|
||||
{
|
||||
data[1] = x;
|
||||
data[2] = y;
|
||||
if (MetatileBehavior_ReturnFalse_4((u8)MapGridGetMetatileBehaviorAt(x, y)))
|
||||
if (MetatileBehavior_IsAshGrass((u8)MapGridGetMetatileBehaviorAt(x, y)))
|
||||
{
|
||||
if (MapGridGetMetatileIdAt(x, y) == 0x20a)
|
||||
StartAshFieldEffect(x, y, 0x212, 4);
|
||||
@@ -267,7 +267,7 @@ static void CrackedFloorPerStepCallback(u8 taskId)
|
||||
{
|
||||
data[2] = x;
|
||||
data[3] = y;
|
||||
if (MetatileBehavior_ReturnFalse_13(behavior))
|
||||
if (MetatileBehavior_IsCrackedFloor(behavior))
|
||||
{
|
||||
if (GetPlayerSpeed() != 4)
|
||||
VarSet(VAR_ICE_STEP_COUNT, 0);
|
||||
|
||||
+2
-2
@@ -763,7 +763,7 @@ void FadeScreen(u8 mode, s8 delay)
|
||||
if (useWeatherPal)
|
||||
CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
|
||||
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, delay, 0, 16, fadeColor);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, delay, 0, 16, fadeColor);
|
||||
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT;
|
||||
}
|
||||
else
|
||||
@@ -772,7 +772,7 @@ void FadeScreen(u8 mode, s8 delay)
|
||||
if (useWeatherPal)
|
||||
gWeatherPtr->fadeScreenCounter = 0;
|
||||
else
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, delay, 16, 0, fadeColor);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, delay, 16, 0, fadeColor);
|
||||
|
||||
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_IN;
|
||||
gWeatherPtr->fadeInActive = 1;
|
||||
|
||||
+3
-3
@@ -889,17 +889,17 @@ static void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u1
|
||||
if (tileset->isSecondary == FALSE)
|
||||
{
|
||||
LoadPalette(&black, destOffset, 2);
|
||||
LoadPalette(((u16*)tileset->palettes) + 1, destOffset + 1, size - 2);
|
||||
LoadPalette(((u16 *)tileset->palettes) + 1, destOffset + 1, size - 2);
|
||||
Fieldmap_ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1);
|
||||
}
|
||||
else if (tileset->isSecondary == TRUE)
|
||||
{
|
||||
LoadPalette(((u16*)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size);
|
||||
LoadPalette(((u16 *)tileset->palettes) + (NUM_PALS_IN_PRIMARY * 16), destOffset, size);
|
||||
Fieldmap_ApplyGlobalTintToPaletteEntries(destOffset, size >> 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadCompressedPalette((u32*)tileset->palettes, destOffset, size);
|
||||
LoadCompressedPalette((u32 *)tileset->palettes, destOffset, size);
|
||||
Fieldmap_ApplyGlobalTintToPaletteEntries(destOffset, size >> 1);
|
||||
}
|
||||
}
|
||||
|
||||
+6
-6
@@ -28,9 +28,9 @@ static void FieldCallback_CutGrass(void);
|
||||
static void FieldCallback_CutTree(void);
|
||||
static void FieldMoveCallback_CutGrass(void);
|
||||
static void SetCutGrassMetatileAt(s16 x, s16 y);
|
||||
static void SpriteCallback_CutGrass_Init(struct Sprite * sprite);
|
||||
static void SpriteCallback_CutGrass_Run(struct Sprite * sprite);
|
||||
static void SpriteCallback_CutGrass_Cleanup(struct Sprite * sprite);
|
||||
static void SpriteCallback_CutGrass_Init(struct Sprite *sprite);
|
||||
static void SpriteCallback_CutGrass_Run(struct Sprite *sprite);
|
||||
static void SpriteCallback_CutGrass_Cleanup(struct Sprite *sprite);
|
||||
static void FieldMoveCallback_CutTree(void);
|
||||
|
||||
static const u16 sCutGrassMetatileMapping[][2] = {
|
||||
@@ -251,7 +251,7 @@ static void SetCutGrassMetatileAt(s16 x, s16 y)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCallback_CutGrass_Init(struct Sprite * sprite)
|
||||
static void SpriteCallback_CutGrass_Init(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = 8;
|
||||
sprite->data[1] = 0;
|
||||
@@ -259,7 +259,7 @@ static void SpriteCallback_CutGrass_Init(struct Sprite * sprite)
|
||||
sprite->callback = SpriteCallback_CutGrass_Run;
|
||||
}
|
||||
|
||||
static void SpriteCallback_CutGrass_Run(struct Sprite * sprite)
|
||||
static void SpriteCallback_CutGrass_Run(struct Sprite *sprite)
|
||||
{
|
||||
sprite->x2 = Sin(sprite->data[2], sprite->data[0]);
|
||||
sprite->y2 = Cos(sprite->data[2], sprite->data[0]);
|
||||
@@ -274,7 +274,7 @@ static void SpriteCallback_CutGrass_Run(struct Sprite * sprite)
|
||||
sprite->callback = SpriteCallback_CutGrass_Cleanup;
|
||||
}
|
||||
|
||||
static void SpriteCallback_CutGrass_Cleanup(struct Sprite * sprite)
|
||||
static void SpriteCallback_CutGrass_Cleanup(struct Sprite *sprite)
|
||||
{
|
||||
u8 i;
|
||||
for (i = 1; i < CUT_GRASS_SPRITE_COUNT; i++)
|
||||
|
||||
+4
-4
@@ -429,21 +429,21 @@ static void Task_MapPreviewScreen_0(u8 taskId)
|
||||
SetVBlankCallback(NULL);
|
||||
MapPreview_InitBgs();
|
||||
MapPreview_LoadGfx(data[3]);
|
||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK);
|
||||
data[0]++;
|
||||
break;
|
||||
case 1:
|
||||
if (!MapPreview_IsGfxLoadFinished())
|
||||
{
|
||||
data[4] = MapPreview_CreateMapNameWindow(data[3]);
|
||||
CopyWindowToVram(data[4], COPYWIN_BOTH);
|
||||
CopyWindowToVram(data[4], COPYWIN_FULL);
|
||||
data[0]++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (!IsDma3ManagerBusyWithBgCopy())
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK);
|
||||
SetVBlankCallback((IntrCallback)GetWordTaskArg(taskId, 5));
|
||||
data[0]++;
|
||||
}
|
||||
@@ -459,7 +459,7 @@ static void Task_MapPreviewScreen_0(u8 taskId)
|
||||
data[1]++;
|
||||
if (data[1] > data[2] || JOY_HELD(B_BUTTON))
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_WHITE);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_WHITE);
|
||||
data[0]++;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -15,7 +15,7 @@ bool8 SetUpFieldMove_Strength(void)
|
||||
{
|
||||
if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) || CheckObjectGraphicsInFrontOfPlayer(OBJ_EVENT_GFX_PUSHABLE_BOULDER) != TRUE)
|
||||
{
|
||||
return FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
+1
-1
@@ -1418,7 +1418,7 @@ static void sub_80B6FC4(u8 taskId)
|
||||
break;
|
||||
case 3:
|
||||
InitBattleAnimBg(2);
|
||||
FillPalette(0, 0x90, 0x20);
|
||||
FillPalette(RGB_BLACK, 0x90, 0x20);
|
||||
SetAnimBgAttribute(2, BG_ANIM_CHAR_BASE_BLOCK, 0);
|
||||
task->data[1] = 12;
|
||||
break;
|
||||
|
||||
+3
-3
@@ -1033,7 +1033,7 @@ const u32 gBattleAnimBgTilemap_Ghost[] = INCBIN_U32("graphics/battle_anims/backg
|
||||
|
||||
const u32 gBattleAnimSpritePal_WhipHit[] = INCBIN_U32("graphics/battle_anims/sprites/whip_hit.gbapal.lz");
|
||||
|
||||
const u32 gBattleAnimBgPalette_Solarbeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.gbapal.lz");
|
||||
const u32 gBattleAnimBgPalette_SolarBeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.gbapal.lz");
|
||||
|
||||
const u32 gFile_graphics_unknown_unknown_E7CFB0_tilemap[] = INCBIN_U32("graphics/unknown/unknown_E7CFB0.bin.lz");
|
||||
|
||||
@@ -1255,8 +1255,8 @@ const u32 gPSSMenu_Gfx[] = INCBIN_U32("graphics/interface/box_tiles.4bpp.lz");
|
||||
|
||||
const u32 gUnknown_8E9CAEC[] = INCBIN_U32("graphics/unknown/unknown_E9CAEC.bin.lz");
|
||||
|
||||
const u16 gUnknown_8E9CB9C[] = INCBIN_U16("graphics/misc/markings2.gbapal");
|
||||
const u16 gUnknown_8E9CBBC[] = INCBIN_U16("graphics/misc/markings2.4bpp");
|
||||
const u16 gMonMarkingsMenu_Pal[] = INCBIN_U16("graphics/misc/markings2.gbapal");
|
||||
const u16 gMonMarkingsMenu_Gfx[] = INCBIN_U16("graphics/misc/markings2.4bpp");
|
||||
|
||||
const u16 gTradeMenu_Pal[] = INCBIN_U16("graphics/trade/menu.gbapal");
|
||||
const u16 gTradeButtons_Pal[] = INCBIN_U16("graphics/trade/unknown_DDB444.gbapal");
|
||||
|
||||
+49
-47
@@ -26,13 +26,16 @@
|
||||
#include "constants/songs.h"
|
||||
#include "constants/maps.h"
|
||||
|
||||
#define HALL_OF_FAME_MAX_TEAMS 50
|
||||
#define HALL_OF_FAME_BG_PAL RGB(22, 24, 29)
|
||||
|
||||
struct HallofFameMon
|
||||
{
|
||||
u32 tid;
|
||||
u32 personality;
|
||||
u16 species:9;
|
||||
u16 lvl:7;
|
||||
u8 nick[10];
|
||||
u8 nick[POKEMON_NAME_LENGTH];
|
||||
};
|
||||
|
||||
struct HallofFameTeam
|
||||
@@ -40,6 +43,8 @@ struct HallofFameTeam
|
||||
struct HallofFameMon mon[PARTY_SIZE];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(struct HallofFameTeam) * HALL_OF_FAME_MAX_TEAMS <= SECTOR_DATA_SIZE * NUM_HOF_SECTORS, HallOfFameFreeSpace);
|
||||
|
||||
struct HofGfx
|
||||
{
|
||||
u16 state;
|
||||
@@ -52,9 +57,6 @@ static EWRAM_DATA u32 sSelectedPaletteIndices = 0;
|
||||
static EWRAM_DATA struct HallofFameTeam * sHofMonPtr = NULL;
|
||||
static EWRAM_DATA struct HofGfx * sHofGfxPtr = NULL;
|
||||
|
||||
#define HALL_OF_FAME_MAX_TEAMS 50
|
||||
#define HALL_OF_FAME_BG_PAL (RGB(22, 24, 29))
|
||||
|
||||
static void Task_Hof_InitMonData(u8 taskId);
|
||||
static void Task_Hof_InitTeamSaveData(u8 taskId);
|
||||
static void Task_Hof_TrySaveData(u8 taskId);
|
||||
@@ -87,8 +89,8 @@ static void ClearVramOamPltt_LoadHofPal(void);
|
||||
static void HofInit_ResetGpuBuffersAndLoadConfettiGfx(void);
|
||||
static void Hof_InitBgs(void);
|
||||
static bool8 DrawHofBackground(void);
|
||||
static void SpriteCB_GetOnScreen(struct Sprite * sprite);
|
||||
static void SpriteCB_Confetti(struct Sprite * sprite);
|
||||
static void SpriteCB_GetOnScreen(struct Sprite *sprite);
|
||||
static void SpriteCB_Confetti(struct Sprite *sprite);
|
||||
static bool8 Hof_SpawnConfetti(void);
|
||||
|
||||
static const struct BgTemplate sHof_BgTemplates[] = {
|
||||
@@ -339,7 +341,7 @@ static bool8 InitHallOfFameScreen(void)
|
||||
if (!DrawHofBackground())
|
||||
{
|
||||
SetVBlankCallback(VBlankCB_HofIdle);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
gMain.state++;
|
||||
}
|
||||
break;
|
||||
@@ -425,12 +427,12 @@ static void Task_Hof_InitTeamSaveData(u8 taskId)
|
||||
SaveQuestLogData();
|
||||
if (!gHasHallOfFameRecords)
|
||||
{
|
||||
memset(gDecompressionBuffer, 0, 0x2000);
|
||||
memset(gDecompressionBuffer, 0, SECTOR_SIZE * NUM_HOF_SECTORS);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Save_LoadGameData(SAVE_HALL_OF_FAME) != TRUE)
|
||||
memset(gDecompressionBuffer, 0, 0x2000);
|
||||
if (LoadGameSave(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK)
|
||||
memset(gDecompressionBuffer, 0, SECTOR_SIZE * NUM_HOF_SECTORS);
|
||||
}
|
||||
|
||||
for (i = 0; i < HALL_OF_FAME_MAX_TEAMS; i++, lastSavedTeam++)
|
||||
@@ -440,8 +442,8 @@ static void Task_Hof_InitTeamSaveData(u8 taskId)
|
||||
}
|
||||
if (i >= HALL_OF_FAME_MAX_TEAMS)
|
||||
{
|
||||
struct HallofFameTeam *afterTeam = (struct HallofFameTeam*)(gDecompressionBuffer);
|
||||
struct HallofFameTeam *beforeTeam = (struct HallofFameTeam*)(gDecompressionBuffer);
|
||||
struct HallofFameTeam *afterTeam = (struct HallofFameTeam *)(gDecompressionBuffer);
|
||||
struct HallofFameTeam *beforeTeam = (struct HallofFameTeam *)(gDecompressionBuffer);
|
||||
afterTeam++;
|
||||
for (i = 0; i < HALL_OF_FAME_MAX_TEAMS - 1; i++, beforeTeam++, afterTeam++)
|
||||
{
|
||||
@@ -452,8 +454,8 @@ static void Task_Hof_InitTeamSaveData(u8 taskId)
|
||||
*lastSavedTeam = *sHofMonPtr;
|
||||
|
||||
DrawDialogueFrame(0, 0);
|
||||
AddTextPrinterParameterized2(0, 2, gText_SavingDontTurnOffThePower2, 0, NULL, 2, 1, 3);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
gTasks[taskId].func = Task_Hof_TrySaveData;
|
||||
}
|
||||
|
||||
@@ -523,7 +525,7 @@ static void Task_Hof_PlayMonCryAndPrintInfo(u8 taskId)
|
||||
if (gSprites[gTasks[taskId].data[5 + currMonId]].data[0])
|
||||
{
|
||||
if (currMon->species != SPECIES_EGG)
|
||||
PlayCry1(currMon->species, 0);
|
||||
PlayCry_Normal(currMon->species, 0);
|
||||
HallOfFame_PrintMonInfo(currMon, 0, 14);
|
||||
gTasks[taskId].data[3] = 120;
|
||||
gTasks[taskId].func = Task_Hof_TryDisplayAnotherMon;
|
||||
@@ -560,7 +562,7 @@ static void Task_Hof_PaletteFadeAndPrintWelcomeText(u8 taskId)
|
||||
{
|
||||
u16 i;
|
||||
|
||||
BeginNormalPaletteFade(0xFFFF0000, 0, 0, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_OBJECTS, 0, 0, 0, RGB_BLACK);
|
||||
for (i = 0; i < PARTY_SIZE; i++)
|
||||
{
|
||||
if (gTasks[taskId].data[5 + i] != 0xFF)
|
||||
@@ -591,7 +593,7 @@ static void Task_Hof_ApplauseAndConfetti(u8 taskId)
|
||||
}
|
||||
BeginNormalPaletteFade(sSelectedPaletteIndices, 0, 12, 12, HALL_OF_FAME_BG_PAL);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
gTasks[taskId].data[3] = 7;
|
||||
gTasks[taskId].func = Task_Hof_WaitBorderFadeAway;
|
||||
}
|
||||
@@ -638,8 +640,8 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId)
|
||||
FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20);
|
||||
HallOfFame_PrintPlayerInfo(1, 2);
|
||||
DrawDialogueFrame(0, 0);
|
||||
AddTextPrinterParameterized2(0, 2, gText_LeagueChamp, 0, NULL, 2, 1, 3);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_LeagueChamp, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
gTasks[taskId].func = Task_Hof_ExitOnKeyPressed;
|
||||
}
|
||||
}
|
||||
@@ -656,7 +658,7 @@ static void Task_Hof_ExitOnKeyPressed(u8 taskId)
|
||||
static void Task_Hof_HandlePaletteOnExit(u8 taskId)
|
||||
{
|
||||
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * sizeof(u16));
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 8, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_BLACK);
|
||||
gTasks[taskId].func = Task_Hof_HandleExit;
|
||||
}
|
||||
|
||||
@@ -747,7 +749,7 @@ void CB2_InitHofPC(void)
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 7));
|
||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||
CreateTask(Task_HofPC_CopySaveData, 0);
|
||||
sHofMonPtr = AllocZeroed(0x2000);
|
||||
sHofMonPtr = AllocZeroed(SECTOR_SIZE * NUM_HOF_SECTORS);
|
||||
SetMainCallback2(CB2_HofIdle);
|
||||
break;
|
||||
}
|
||||
@@ -759,13 +761,13 @@ static void Task_HofPC_CopySaveData(u8 taskId)
|
||||
struct HallofFameTeam* savedTeams;
|
||||
|
||||
CreateTopBarWindowLoadPalette(0, 30, 0, 0x0C, 0x226);
|
||||
if (Save_LoadGameData(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK)
|
||||
if (LoadGameSave(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK)
|
||||
{
|
||||
gTasks[taskId].func = Task_HofPC_PrintDataIsCorrupted;
|
||||
}
|
||||
else
|
||||
{
|
||||
CpuCopy16(gDecompressionBuffer, sHofMonPtr, 0x2000);
|
||||
CpuCopy16(gDecompressionBuffer, sHofMonPtr, SECTOR_SIZE * NUM_HOF_SECTORS);
|
||||
savedTeams = sHofMonPtr;
|
||||
for (i = 0; i < HALL_OF_FAME_MAX_TEAMS; i++, savedTeams++)
|
||||
{
|
||||
@@ -874,7 +876,7 @@ static void Task_HofPC_PrintMonInfo(u8 taskId)
|
||||
if (currMon->species != SPECIES_EGG)
|
||||
{
|
||||
StopCryAndClearCrySongs();
|
||||
PlayCry1(currMon->species, 0);
|
||||
PlayCry_Normal(currMon->species, 0);
|
||||
}
|
||||
HallOfFame_PrintMonInfo(currMon, 0, 14);
|
||||
|
||||
@@ -907,7 +909,7 @@ static void Task_HofPC_HandleInput(u8 taskId)
|
||||
if (IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
StopCryAndClearCrySongs();
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
|
||||
}
|
||||
gTasks[taskId].func = Task_HofPC_HandlePaletteOnExit;
|
||||
}
|
||||
@@ -917,7 +919,7 @@ static void Task_HofPC_HandleInput(u8 taskId)
|
||||
if (IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
StopCryAndClearCrySongs();
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
|
||||
}
|
||||
gTasks[taskId].func = Task_HofPC_HandlePaletteOnExit;
|
||||
}
|
||||
@@ -968,8 +970,8 @@ static void Task_HofPC_PrintDataIsCorrupted(u8 taskId)
|
||||
{
|
||||
TopBarWindowPrintString(gText_ABUTTONExit, 8, TRUE);
|
||||
DrawDialogueFrame(0, 0);
|
||||
AddTextPrinterParameterized2(0, 2, gText_HOFCorrupted, 0, NULL, 2, 1, 3);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_HOFCorrupted, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
gTasks[taskId].func = Task_HofPC_ExitOnButtonPress;
|
||||
}
|
||||
|
||||
@@ -981,11 +983,11 @@ static void Task_HofPC_ExitOnButtonPress(u8 taskId)
|
||||
|
||||
static void HallOfFame_PrintWelcomeText(u8 not, u8 used)
|
||||
{
|
||||
u8 x = (0xD0 - GetStringWidth(2, gText_WelcomeToHOF, 0)) / 2;
|
||||
u8 x = (0xD0 - GetStringWidth(FONT_2, gText_WelcomeToHOF, 0)) / 2;
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
PutWindowTilemap(0);
|
||||
AddTextPrinterParameterized3(0, 2, x, 1, sTextColors[0], 0, gText_WelcomeToHOF);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
AddTextPrinterParameterized3(0, FONT_2, x, 1, sTextColors[0], 0, gText_WelcomeToHOF);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u8 unused2)
|
||||
@@ -1019,7 +1021,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u
|
||||
}
|
||||
text[3] = EOS;
|
||||
StringAppend(text2, text);
|
||||
AddTextPrinterParameterized3(0, 2, 0x10, 1, sTextColors[0], 0, text2);
|
||||
AddTextPrinterParameterized3(0, FONT_2, 16, 1, sTextColors[0], 0, text2);
|
||||
}
|
||||
|
||||
// nick, species names, gender and lvl
|
||||
@@ -1032,12 +1034,12 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u
|
||||
}
|
||||
}
|
||||
text[i] = EOS;
|
||||
width = GetStringWidth(2, text, GetFontAttribute(2, FONTATTR_LETTER_SPACING));
|
||||
width = GetStringWidth(FONT_2, text, GetFontAttribute(FONT_2, FONTATTR_LETTER_SPACING));
|
||||
if (currMon->species == SPECIES_EGG)
|
||||
x = 0x80 - width / 2;
|
||||
else
|
||||
x = 0x80 - width;
|
||||
AddTextPrinterParameterized3(0, 2, x, 1, sTextColors[0], 0, text);
|
||||
AddTextPrinterParameterized3(0, FONT_2, x, 1, sTextColors[0], 0, text);
|
||||
if (currMon->species != SPECIES_EGG)
|
||||
{
|
||||
text[0] = CHAR_SLASH;
|
||||
@@ -1061,18 +1063,18 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u
|
||||
}
|
||||
*stringPtr = EOS;
|
||||
|
||||
AddTextPrinterParameterized3(0, 2, 0x80, 1, sTextColors[0], 0, text);
|
||||
AddTextPrinterParameterized3(0, FONT_2, 0x80, 1, sTextColors[0], 0, text);
|
||||
|
||||
stringPtr = StringCopy(text, gText_Level);
|
||||
ConvertIntToDecimalStringN(stringPtr, currMon->lvl, STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
AddTextPrinterParameterized3(0, 2, 0x20, 0x11, sTextColors[0], 0, text);
|
||||
AddTextPrinterParameterized3(0, FONT_2, 0x20, 0x11, sTextColors[0], 0, text);
|
||||
|
||||
stringPtr = StringCopy(text, gText_IDNumber);
|
||||
ConvertIntToDecimalStringN(stringPtr, (u16)(currMon->tid), STR_CONV_MODE_LEADING_ZEROS, 5);
|
||||
AddTextPrinterParameterized3(0, 2, 0x60, 0x11, sTextColors[0], 0, text);
|
||||
AddTextPrinterParameterized3(0, FONT_2, 0x60, 0x11, sTextColors[0], 0, text);
|
||||
|
||||
}
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
|
||||
@@ -1084,21 +1086,21 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||
PutWindowTilemap(1);
|
||||
DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x21D, 0xD);
|
||||
AddTextPrinterParameterized4(1, 2, 4, 3, 0, 0, sTextColors[1], 0, gText_Name);
|
||||
AddTextPrinterParameterized4(1, FONT_2, 4, 3, 0, 0, sTextColors[1], 0, gText_Name);
|
||||
|
||||
AddTextPrinterParameterized3(1, 2, textWidth - GetStringWidth(2, gSaveBlock2Ptr->playerName, 0), 3, sTextColors[1], 0, gSaveBlock2Ptr->playerName);
|
||||
AddTextPrinterParameterized3(1, FONT_2, textWidth - GetStringWidth(FONT_2, gSaveBlock2Ptr->playerName, 0), 3, sTextColors[1], 0, gSaveBlock2Ptr->playerName);
|
||||
|
||||
trainerId = (gSaveBlock2Ptr->playerTrainerId[0]) | (gSaveBlock2Ptr->playerTrainerId[1] << 8);
|
||||
AddTextPrinterParameterized3(1, 2, 4, 18, sTextColors[1], 0, gText_IDNumber);
|
||||
AddTextPrinterParameterized3(1, FONT_2, 4, 18, sTextColors[1], 0, gText_IDNumber);
|
||||
text[0] = (trainerId % 100000) / 10000 + CHAR_0;
|
||||
text[1] = (trainerId % 10000) / 1000 + CHAR_0;
|
||||
text[2] = (trainerId % 1000) / 100 + CHAR_0;
|
||||
text[3] = (trainerId % 100) / 10 + CHAR_0;
|
||||
text[4] = (trainerId % 10) / 1 + CHAR_0;
|
||||
text[5] = EOS;
|
||||
AddTextPrinterParameterized3(1, 2, textWidth - 30, 18, sTextColors[1], 0, text);
|
||||
AddTextPrinterParameterized3(1, FONT_2, textWidth - 30, 18, sTextColors[1], 0, text);
|
||||
|
||||
AddTextPrinterParameterized3(1, 2, 4, 32, sTextColors[1], 0, gText_MainMenuTime);
|
||||
AddTextPrinterParameterized3(1, FONT_2, 4, 32, sTextColors[1], 0, gText_MainMenuTime);
|
||||
text[0] = (gSaveBlock2Ptr->playTimeHours / 100) + CHAR_0;
|
||||
text[1] = (gSaveBlock2Ptr->playTimeHours % 100) / 10 + CHAR_0;
|
||||
text[2] = (gSaveBlock2Ptr->playTimeHours % 10) + CHAR_0;
|
||||
@@ -1113,9 +1115,9 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
|
||||
text[5] = (gSaveBlock2Ptr->playTimeMinutes % 10) + CHAR_0;
|
||||
text[6] = EOS;
|
||||
|
||||
AddTextPrinterParameterized3(1, 2, textWidth - 36, 32, sTextColors[1], 0, text);
|
||||
AddTextPrinterParameterized3(1, FONT_2, textWidth - 36, 32, sTextColors[1], 0, text);
|
||||
|
||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
||||
CopyWindowToVram(1, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void ClearVramOamPltt_LoadHofPal(void)
|
||||
@@ -1213,12 +1215,12 @@ static bool8 DrawHofBackground(void)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void SpriteCB_EndGetOnScreen(struct Sprite * sprite)
|
||||
static void SpriteCB_EndGetOnScreen(struct Sprite *sprite)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
static void SpriteCB_GetOnScreen(struct Sprite * sprite)
|
||||
static void SpriteCB_GetOnScreen(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->x != sprite->data[1]
|
||||
|| sprite->y != sprite->data[2])
|
||||
|
||||
+3
-3
@@ -49,8 +49,8 @@ void DestroyHelpMessageWindow(u8 a0)
|
||||
|
||||
void sub_8112F18(u8 windowId)
|
||||
{
|
||||
const u8* ptr = gUnknown_84566A8;
|
||||
u8* buffer;
|
||||
const u8 *ptr = gUnknown_84566A8;
|
||||
u8 *buffer;
|
||||
u8 i, j;
|
||||
u8 width, height;
|
||||
u8 k;
|
||||
@@ -93,7 +93,7 @@ static const u8 sHelpMessageTextColors[3] = {TEXT_COLOR_TRANSPARENT, TEXT_DYNAMI
|
||||
|
||||
static void PrintHelpMessageText(const u8 *text)
|
||||
{
|
||||
AddTextPrinterParameterized4(sHelpMessageWindowId, 2, 2, 5, 1, 1, sHelpMessageTextColors, -1, text);
|
||||
AddTextPrinterParameterized4(sHelpMessageWindowId, FONT_2, 2, 5, 1, 1, sHelpMessageTextColors, -1, text);
|
||||
}
|
||||
|
||||
void PrintTextOnHelpMessageWindow(const u8 *text, u8 mode)
|
||||
|
||||
+26
-26
@@ -60,7 +60,7 @@ u8 RunHelpSystemCallback(void)
|
||||
m4aMPlayStop(&gMPlayInfo_SE2);
|
||||
PlaySE(SE_HELP_OPEN);
|
||||
if (!gDisableHelpSystemVolumeReduce)
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x80);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x80);
|
||||
SaveCallbacks();
|
||||
sInHelpSystem = 1;
|
||||
sVideoState.state = 1;
|
||||
@@ -122,7 +122,7 @@ u8 RunHelpSystemCallback(void)
|
||||
break;
|
||||
case 7:
|
||||
if (!gDisableHelpSystemVolumeReduce)
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, TRACKS_ALL, 0x100);
|
||||
RestoreMapTextColors();
|
||||
RestoreGPURegs();
|
||||
sVideoState.state = 8;
|
||||
@@ -370,9 +370,9 @@ void HS_ShowOrHideScrollArrows(u8 which, u8 mode)
|
||||
}
|
||||
}
|
||||
|
||||
void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 width, u8 height)
|
||||
void HelpSystemRenderText(u8 fontId, u8 * dest, const u8 * src, u8 x, u8 y, u8 width, u8 height)
|
||||
{
|
||||
// font -> sp+24
|
||||
// fontId -> sp+24
|
||||
// dest -> sp+28
|
||||
// src -> r9
|
||||
// x -> sp+34
|
||||
@@ -408,9 +408,9 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
||||
{
|
||||
break;
|
||||
}
|
||||
DecompressAndRenderGlyph(font, gSaveBlock2Ptr->playerName[i], &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
DecompressAndRenderGlyph(fontId, gSaveBlock2Ptr->playerName[i], &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
// This is required to match a dummy [sp+#0x24] read here
|
||||
if (font == 0)
|
||||
if (fontId == FONT_0)
|
||||
{
|
||||
x += gGlyphInfo.width;
|
||||
}
|
||||
@@ -430,7 +430,7 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
||||
{
|
||||
break;
|
||||
}
|
||||
DecompressAndRenderGlyph(font, gString_Bill[i], &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
DecompressAndRenderGlyph(fontId, gString_Bill[i], &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -438,9 +438,9 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
||||
{
|
||||
break;
|
||||
}
|
||||
DecompressAndRenderGlyph(font, gString_Someone[i], &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
DecompressAndRenderGlyph(fontId, gString_Someone[i], &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
}
|
||||
if (font == 0)
|
||||
if (fontId == FONT_0)
|
||||
{
|
||||
x += gGlyphInfo.width;
|
||||
}
|
||||
@@ -496,7 +496,7 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
||||
destBlit.pixels = dest;
|
||||
destBlit.width = width * 8;
|
||||
destBlit.height = height * 8;
|
||||
FillBitmapRect4Bit(&destBlit, x, y, clearPixels, GetFontAttribute(font, FONTATTR_MAX_LETTER_HEIGHT), 0);
|
||||
FillBitmapRect4Bit(&destBlit, x, y, clearPixels, GetFontAttribute(fontId, FONTATTR_MAX_LETTER_HEIGHT), 0);
|
||||
x += clearPixels;
|
||||
}
|
||||
src++;
|
||||
@@ -522,14 +522,14 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
||||
BlitBitmapRect4Bit(&srcBlit, &destBlit, 0, 0, x, y, GetKeypadIconWidth(curChar), GetKeypadIconHeight(curChar), 0);
|
||||
x += GetKeypadIconWidth(curChar);
|
||||
break;
|
||||
case CHAR_EXTRA_EMOJI:
|
||||
case CHAR_EXTRA_SYMBOL:
|
||||
curChar = *src + 0x100;
|
||||
src++;
|
||||
//fallthrough
|
||||
default:
|
||||
if (curChar == CHAR_SPACE)
|
||||
{
|
||||
if (font == 0)
|
||||
if (fontId == FONT_0)
|
||||
{
|
||||
x += 5;
|
||||
}
|
||||
@@ -540,8 +540,8 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
||||
}
|
||||
else
|
||||
{
|
||||
DecompressAndRenderGlyph(font, curChar, &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
if (font == 0)
|
||||
DecompressAndRenderGlyph(fontId, curChar, &srcBlit, &destBlit, dest, x, y, width, height);
|
||||
if (fontId == FONT_0)
|
||||
{
|
||||
x += gGlyphInfo.width;
|
||||
}
|
||||
@@ -555,11 +555,11 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
||||
}
|
||||
}
|
||||
|
||||
void DecompressAndRenderGlyph(u8 font, u16 glyph, struct Bitmap *srcBlit, struct Bitmap *destBlit, u8 *destBuffer, u8 x, u8 y, u8 width, u8 height)
|
||||
void DecompressAndRenderGlyph(u8 fontId, u16 glyph, struct Bitmap *srcBlit, struct Bitmap *destBlit, u8 *destBuffer, u8 x, u8 y, u8 width, u8 height)
|
||||
{
|
||||
if (font == 0)
|
||||
if (fontId == FONT_0)
|
||||
DecompressGlyphFont0(glyph, FALSE);
|
||||
else if (font == 5)
|
||||
else if (fontId == FONT_5)
|
||||
DecompressGlyphFont5(glyph, FALSE);
|
||||
else
|
||||
DecompressGlyphFont2(glyph, FALSE);
|
||||
@@ -574,27 +574,27 @@ void DecompressAndRenderGlyph(u8 font, u16 glyph, struct Bitmap *srcBlit, struct
|
||||
|
||||
void HelpSystem_PrintTextInTopLeftCorner(const u8 * str)
|
||||
{
|
||||
GenerateFontHalfRowLookupTable(1, 15, 2);
|
||||
GenerateFontHalfRowLookupTable(TEXT_COLOR_WHITE, TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_DARK_GRAY);
|
||||
HelpSystemRenderText(5, gDecompressionBuffer + 0x3D00, str, 6, 2, 7, 2);
|
||||
}
|
||||
|
||||
void HelpSystem_PrintTextRightAlign_Row52(const u8 * str)
|
||||
{
|
||||
s32 left = 0x7C - GetStringWidth(0, str, 0);
|
||||
GenerateFontHalfRowLookupTable(1, 15, 2);
|
||||
s32 left = 0x7C - GetStringWidth(FONT_0, str, 0);
|
||||
GenerateFontHalfRowLookupTable(TEXT_COLOR_WHITE, TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_DARK_GRAY);
|
||||
HelpSystemRenderText(0, gDecompressionBuffer + 0x3400, str, left, 2, 16, 2);
|
||||
}
|
||||
|
||||
void HelpSystem_PrintTextAt(const u8 * str, u8 x, u8 y)
|
||||
{
|
||||
GenerateFontHalfRowLookupTable(1, 15, 2);
|
||||
GenerateFontHalfRowLookupTable(TEXT_COLOR_WHITE, TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_DARK_GRAY);
|
||||
HelpSystemRenderText(2, gDecompressionBuffer + 0x0000, str, x, y, 26, 16);
|
||||
}
|
||||
|
||||
void HelpSystem_PrintQuestionAndAnswerPair(const u8 * question, const u8 * answer)
|
||||
{
|
||||
CpuFill16(0xEEEE, gDecompressionBuffer + 0x0000, 0x3400);
|
||||
GenerateFontHalfRowLookupTable(1, 14, 2);
|
||||
GenerateFontHalfRowLookupTable(TEXT_COLOR_WHITE, TEXT_DYNAMIC_COLOR_5, TEXT_COLOR_DARK_GRAY);
|
||||
HelpSystemRenderText(2, gDecompressionBuffer + 0x0000, question, 0, 0, 26, 16);
|
||||
HelpSystemRenderText(2, gDecompressionBuffer + 0x09C0, answer, 0, 0, 26, 13);
|
||||
}
|
||||
@@ -602,7 +602,7 @@ void HelpSystem_PrintQuestionAndAnswerPair(const u8 * question, const u8 * answe
|
||||
void HelpSystem_PrintTopicMouseoverDescription(const u8 * str)
|
||||
{
|
||||
CpuFill16(0x1111, gDecompressionBuffer + 0x23C0, 0x1040);
|
||||
GenerateFontHalfRowLookupTable(2, 1, 3);
|
||||
GenerateFontHalfRowLookupTable(TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
HelpSystemRenderText(2, gDecompressionBuffer + 0x23C0, str, 2, 6, 26, 5);
|
||||
}
|
||||
|
||||
@@ -713,7 +713,7 @@ void HS_UpdateMenuScrollArrows(void)
|
||||
|
||||
void PrintListMenuItems(void)
|
||||
{
|
||||
u8 glyphHeight = GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 1;
|
||||
u8 glyphHeight = GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 1;
|
||||
s32 i;
|
||||
s32 r5 = gHelpSystemListMenu.itemsAbove;
|
||||
|
||||
@@ -728,7 +728,7 @@ void PrintListMenuItems(void)
|
||||
|
||||
void PlaceListMenuCursor(void)
|
||||
{
|
||||
u8 glyphHeight = GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 1;
|
||||
u8 glyphHeight = GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 1;
|
||||
u8 x = gHelpSystemListMenu.sub.left;
|
||||
u8 y = gHelpSystemListMenu.sub.top + glyphHeight * gHelpSystemListMenu.cursorPos;
|
||||
HelpSystem_PrintTextAt(gText_SelectorArrow2, x, y);
|
||||
@@ -736,7 +736,7 @@ void PlaceListMenuCursor(void)
|
||||
|
||||
void HS_RemoveSelectionCursorAt(u8 i)
|
||||
{
|
||||
u8 glyphHeight = GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 1;
|
||||
u8 glyphHeight = GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 1;
|
||||
u8 x = gHelpSystemListMenu.sub.left;
|
||||
u8 y = gHelpSystemListMenu.sub.top + i * glyphHeight;
|
||||
HelpSystem_PrintTextAt(gString_HelpSystem_ClearTo8, x, y);
|
||||
|
||||
+2
-2
@@ -22,7 +22,7 @@ static void Task_WaitFadeAndSetCallback(u8 taskId)
|
||||
|
||||
void HallOfFamePCBeginFade(void)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||
ScriptContext2_Enable();
|
||||
CreateTask(Task_WaitFadeAndSetCallback, 0);
|
||||
}
|
||||
@@ -39,7 +39,7 @@ static void ReshowPCMenuAfterHallOfFamePC(void)
|
||||
Overworld_PlaySpecialMapMusic();
|
||||
CreatePCMenu();
|
||||
ScriptMenu_DisplayPCStartupPrompt();
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK);
|
||||
CreateTask(Task_WaitForPaletteFade, 10);
|
||||
}
|
||||
|
||||
|
||||
@@ -26,14 +26,14 @@ static void ApplyImageEffect_PersonalityColor(u8);
|
||||
static void ApplyImageEffect_RedChannelGrayscale(u8);
|
||||
static void ApplyImageEffect_RedChannelGrayscaleHighlight(u8);
|
||||
static void AddPointillismPoints(u16);
|
||||
static u16 ConvertColorToGrayscale(u16*);
|
||||
static u16 QuantizePixel_Blur(u16*, u16*, u16*);
|
||||
static u16 QuantizePixel_PersonalityColor(u16*, u8);
|
||||
static u16 QuantizePixel_BlackAndWhite(u16*);
|
||||
static u16 QuantizePixel_BlackOutline(u16*, u16*);
|
||||
static u16 QuantizePixel_Invert(u16*);
|
||||
static u16 QuantizePixel_BlurHard(u16*, u16*, u16*);
|
||||
static u16 QuantizePixel_MotionBlur(u16*, u16*);
|
||||
static u16 ConvertColorToGrayscale(u16 *);
|
||||
static u16 QuantizePixel_Blur(u16 *, u16 *, u16 *);
|
||||
static u16 QuantizePixel_PersonalityColor(u16 *, u8);
|
||||
static u16 QuantizePixel_BlackAndWhite(u16 *);
|
||||
static u16 QuantizePixel_BlackOutline(u16 *, u16 *);
|
||||
static u16 QuantizePixel_Invert(u16 *);
|
||||
static u16 QuantizePixel_BlurHard(u16 *, u16 *, u16 *);
|
||||
static u16 QuantizePixel_MotionBlur(u16 *, u16 *);
|
||||
static u16 GetColorFromPersonality(u8);
|
||||
static void QuantizePalette_Standard(bool8);
|
||||
static void SetPresetPalette_PrimaryColors(void);
|
||||
@@ -44,10 +44,10 @@ static void SetPresetPalette_GrayscaleSmall(void);
|
||||
static void QuantizePalette_GrayscaleSmall(void);
|
||||
static void SetPresetPalette_BlackAndWhite(void);
|
||||
static void QuantizePalette_BlackAndWhite(void);
|
||||
static u16 QuantizePixel_Standard(u16*);
|
||||
static u16 QuantizePixel_GrayscaleSmall(u16*);
|
||||
static u16 QuantizePixel_Grayscale(u16*);
|
||||
static u16 QuantizePixel_PrimaryColors(u16*);
|
||||
static u16 QuantizePixel_Standard(u16 *);
|
||||
static u16 QuantizePixel_GrayscaleSmall(u16 *);
|
||||
static u16 QuantizePixel_Grayscale(u16 *);
|
||||
static u16 QuantizePixel_PrimaryColors(u16 *);
|
||||
|
||||
static const u8 sPointillismPoints[][3] = {
|
||||
{0x00, 0x1d, 0x1c},
|
||||
@@ -4288,7 +4288,7 @@ static u16 QuantizePixel_Standard(u16 *pixel)
|
||||
return RGB2(red, green, blue);
|
||||
}
|
||||
|
||||
static u16 QuantizePixel_PrimaryColors(u16* color)
|
||||
static u16 QuantizePixel_PrimaryColors(u16 *color)
|
||||
{
|
||||
u16 red = *color & 0x1F;
|
||||
u16 green = (*color >> 5) & 0x1F;
|
||||
|
||||
+46
-45
@@ -14,6 +14,7 @@
|
||||
#include "util.h"
|
||||
#include "trig.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/sound.h"
|
||||
|
||||
struct IntroSequenceData;
|
||||
|
||||
@@ -26,12 +27,12 @@ struct IntroSequenceData
|
||||
u8 taskId;
|
||||
bool8 gengarAttackLanded;
|
||||
u16 data[6];
|
||||
struct Sprite * gameFreakLogoArtSprite;
|
||||
struct Sprite * nidorinoAnimSprite;
|
||||
struct Sprite * gengarStaticSprite;
|
||||
struct Sprite * nidorinoStaticSprite;
|
||||
struct Sprite * grassSprite;
|
||||
struct Sprite * gengarBackSpriteArray[4];
|
||||
struct Sprite *gameFreakLogoArtSprite;
|
||||
struct Sprite *nidorinoAnimSprite;
|
||||
struct Sprite *gengarStaticSprite;
|
||||
struct Sprite *nidorinoStaticSprite;
|
||||
struct Sprite *grassSprite;
|
||||
struct Sprite *gengarBackSpriteArray[4];
|
||||
u8 filler_0038[0x4];
|
||||
u8 gamefreakLogoArtSpriteTiles[0x400];
|
||||
u8 gamefreakTextBitmap[0x400];
|
||||
@@ -84,7 +85,7 @@ static void IntroCB_FightScene3(struct IntroSequenceData * ptr);
|
||||
static void FightScene3_StartBg1Scroll(void);
|
||||
static void Task_FightScene3_ForestBgScroll(u8 taskId);
|
||||
static void CreateGrassSprite(struct IntroSequenceData * ptr);
|
||||
static void SpriteCB_Grass(struct Sprite * sprite);
|
||||
static void SpriteCB_Grass(struct Sprite *sprite);
|
||||
static void IntroCB_FightScene4(struct IntroSequenceData * ptr);
|
||||
static void CreateGengarBackSprite(struct IntroSequenceData * ptr);
|
||||
static void FightScene4_StartNidorinoAffineAnim(struct IntroSequenceData * ptr);
|
||||
@@ -95,31 +96,31 @@ static void GameFreakScene_StartTrailingSparkleSpawner(void);
|
||||
static void Task_GameFreakScene_TrailingSparkleSpawner(u8 taskId);
|
||||
static void GameFreakScene_StartRevealGameFreakTextSparklesSpawner(void);
|
||||
static void Task_RevealGameFreakTextSparklesSpawner(u8 taskId);
|
||||
static struct Sprite * CreateGameFreakLogoArtSprite(void);
|
||||
static struct Sprite *CreateGameFreakLogoArtSprite(void);
|
||||
static void FightScene4_StartGengarAttack(struct IntroSequenceData * ptr);
|
||||
static void Task_FightScene4_GengarAttack(u8 taskId);
|
||||
static void FightScene4_CreateGengarSwipeSprites(void);
|
||||
static void SpriteCB_GengarSwipe(struct Sprite * sprite);
|
||||
static void SpriteCB_GengarSwipe(struct Sprite *sprite);
|
||||
static void Task_FightScene3_Bg0Scroll(u8 taskId);
|
||||
static void SpriteCB_LargeStar(struct Sprite * sprite);
|
||||
static void SpriteCB_TrailingSparkles(struct Sprite * sprite);
|
||||
static void SpriteCB_TrailingSparkles2(struct Sprite * sprite);
|
||||
static void SpriteCB_RevealGameFreakTextSparkles(struct Sprite * sprite);
|
||||
static void SpriteCB_LargeStar(struct Sprite *sprite);
|
||||
static void SpriteCB_TrailingSparkles(struct Sprite *sprite);
|
||||
static void SpriteCB_TrailingSparkles2(struct Sprite *sprite);
|
||||
static void SpriteCB_RevealGameFreakTextSparkles(struct Sprite *sprite);
|
||||
static void CreateNidorinoAnimSprite(struct IntroSequenceData * ptr);
|
||||
static void StartNidorinoAnimSpriteSlideIn(struct Sprite * sprite, s16 x0, s16 x1, u16 speed);
|
||||
static void SpriteCB_NidorinoAnimSpriteSlideIn(struct Sprite * sprite);
|
||||
static void StartNidorinoAnimSpriteSlideIn(struct Sprite *sprite, s16 x0, s16 x1, u16 speed);
|
||||
static void SpriteCB_NidorinoAnimSpriteSlideIn(struct Sprite *sprite);
|
||||
static bool32 IsNidorinoAnimSpriteSlideInRunning(struct IntroSequenceData * ptr);
|
||||
static void FightScene4_NidorinoRearsUp(struct IntroSequenceData * ptr);
|
||||
static void SpriteCB_NidorinoRearsUp(struct Sprite * sprite);
|
||||
static void SpriteCB_NidorinoRearsUp(struct Sprite *sprite);
|
||||
static void FightScene4_StartNidorinoRecoilAnim(struct IntroSequenceData * ptr);
|
||||
static void SpriteCB_NidorinoRecoil(struct Sprite * sprite);
|
||||
static void SpriteCB_NidorinoRecoil(struct Sprite *sprite);
|
||||
static bool8 FightScene4_NidorinoAnimIsRunning(struct IntroSequenceData * ptr);
|
||||
static void CreateNidorinoRecoilDustSprites(s16 a1, s16 a2, s16 a3);
|
||||
static void SpriteCB_NidorinoRecoilDust(struct Sprite * sprite);
|
||||
static void StartSpriteHopToPosAnim(struct Sprite * sprite, u16 a1, s16 a2, u8 a3);
|
||||
static void SpriteCB_HopToPos(struct Sprite * sprite);
|
||||
static void SpriteCB_NidorinoRecoilDust(struct Sprite *sprite);
|
||||
static void StartSpriteHopToPosAnim(struct Sprite *sprite, u16 a1, s16 a2, u8 a3);
|
||||
static void SpriteCB_HopToPos(struct Sprite *sprite);
|
||||
static void StartNidorinoAnim_LaunchSelfAtGengarAnim(struct IntroSequenceData * ptr);
|
||||
static void SpriteCB_NidorinoAnim_LaunchSelfAtGengar(struct Sprite * sprite);
|
||||
static void SpriteCB_NidorinoAnim_LaunchSelfAtGengar(struct Sprite *sprite);
|
||||
static void LoadFightSceneSpriteTilesAndPals(void);
|
||||
#if REVISION >= 1
|
||||
static void Rev1_GameFreakScene_CreatePresentsText(void);
|
||||
@@ -811,7 +812,7 @@ static bool8 RunCopyrightScreen(void)
|
||||
ResetTasks();
|
||||
ResetSpriteData();
|
||||
FreeAllSpritePalettes();
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0xFFFF);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, 0xFFFF);
|
||||
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_16COLOR | BGCNT_SCREENBASE(7));
|
||||
EnableInterrupts(INTR_FLAG_VBLANK);
|
||||
SetVBlankCallback(VBlankCB_Copyright);
|
||||
@@ -828,7 +829,7 @@ static bool8 RunCopyrightScreen(void)
|
||||
GameCubeMultiBoot_Main(&sGcmb);
|
||||
if (sGcmb.gcmb_field_2 != 1)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
gMain.state++;
|
||||
}
|
||||
break;
|
||||
@@ -871,7 +872,7 @@ void c2_copyright_1(void)
|
||||
{
|
||||
ResetMenuAndMonGlobals();
|
||||
Save_ResetSaveCounters();
|
||||
Save_LoadGameData(SAVE_NORMAL);
|
||||
LoadGameSave(SAVE_NORMAL);
|
||||
if (gSaveFileStatus == SAVE_STATUS_EMPTY || gSaveFileStatus == SAVE_STATUS_INVALID)
|
||||
Sav2_ClearSetDefault();
|
||||
SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound);
|
||||
@@ -916,7 +917,7 @@ static void CB2_SetUpIntro(void)
|
||||
if (!FreeTempTileDataBuffersIfPossible())
|
||||
{
|
||||
StartIntroSequence();
|
||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||
SetMainCallback2(CB2_Intro);
|
||||
SetVBlankCallback(VBlankCB_Intro);
|
||||
}
|
||||
@@ -991,7 +992,7 @@ static void IntroCB_Init(struct IntroSequenceData * this)
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
BlitBitmapToWindow(0, this->gamefreakTextBitmap, 0, 40, 144, 16);
|
||||
PutWindowTilemap(0);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
this->state++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -1016,7 +1017,7 @@ static void IntroCB_OpenWin1ToTheaterDimensions(struct IntroSequenceData * this)
|
||||
break;
|
||||
case 1:
|
||||
ShowBg(3);
|
||||
BlendPalettes(0xFFFFFFFF, 0x00, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 0x00, RGB_BLACK);
|
||||
this->state++;
|
||||
break;
|
||||
case 2:
|
||||
@@ -1523,7 +1524,7 @@ static void CreateGrassSprite(struct IntroSequenceData * this)
|
||||
this->grassSprite = NULL;
|
||||
}
|
||||
|
||||
static void SpriteCB_Grass(struct Sprite * sprite)
|
||||
static void SpriteCB_Grass(struct Sprite *sprite)
|
||||
{
|
||||
s16 * data = sprite->data;
|
||||
|
||||
@@ -1694,7 +1695,7 @@ static void IntroCB_FightScene4(struct IntroSequenceData * this)
|
||||
}
|
||||
}
|
||||
|
||||
static void FightScene_CalcCenterToCornerVec(struct Sprite * sprite)
|
||||
static void FightScene_CalcCenterToCornerVec(struct Sprite *sprite)
|
||||
{
|
||||
CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode);
|
||||
}
|
||||
@@ -1729,7 +1730,7 @@ static void FightScene4_StartNidorinoAffineAnim(struct IntroSequenceData * this)
|
||||
StartSpriteAffineAnim(this->nidorinoAnimSprite, 1);
|
||||
}
|
||||
|
||||
static void SpriteCB_DummyButNotDummy(struct Sprite * sprite)
|
||||
static void SpriteCB_DummyButNotDummy(struct Sprite *sprite)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1888,7 +1889,7 @@ static void Task_RevealGameFreakTextSparklesSpawner(u8 taskId)
|
||||
data[0] = 0;
|
||||
}
|
||||
|
||||
static struct Sprite * CreateGameFreakLogoArtSprite(void)
|
||||
static struct Sprite *CreateGameFreakLogoArtSprite(void)
|
||||
{
|
||||
u8 spriteId = CreateSprite(&sSpriteTemplate_GameFreakLogoArt, 120, 70, 4);
|
||||
return &gSprites[spriteId];
|
||||
@@ -2008,7 +2009,7 @@ static void FightScene4_CreateGengarSwipeSprites(void)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_GengarSwipe(struct Sprite * sprite)
|
||||
static void SpriteCB_GengarSwipe(struct Sprite *sprite)
|
||||
{
|
||||
sprite->invisible ^= TRUE;
|
||||
if (sprite->animEnded)
|
||||
@@ -2042,7 +2043,7 @@ static void Task_FightScene3_Bg0Scroll(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_LargeStar(struct Sprite * sprite)
|
||||
static void SpriteCB_LargeStar(struct Sprite *sprite)
|
||||
{
|
||||
unsigned v;
|
||||
sprite->data[0] -= sprite->data[2];
|
||||
@@ -2064,7 +2065,7 @@ static void SpriteCB_LargeStar(struct Sprite * sprite)
|
||||
DestroySprite(sprite);
|
||||
}
|
||||
|
||||
static void SpriteCB_TrailingSparkles(struct Sprite * sprite)
|
||||
static void SpriteCB_TrailingSparkles(struct Sprite *sprite)
|
||||
{
|
||||
u32 v;
|
||||
|
||||
@@ -2087,7 +2088,7 @@ static void SpriteCB_TrailingSparkles(struct Sprite * sprite)
|
||||
DestroySprite(sprite);
|
||||
}
|
||||
|
||||
static void SpriteCB_TrailingSparkles2(struct Sprite * sprite)
|
||||
static void SpriteCB_TrailingSparkles2(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[2])
|
||||
{
|
||||
@@ -2136,7 +2137,7 @@ static void SpriteCB_TrailingSparkles2(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_RevealGameFreakTextSparkles(struct Sprite * sprite)
|
||||
static void SpriteCB_RevealGameFreakTextSparkles(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->animEnded)
|
||||
DestroySprite(sprite);
|
||||
@@ -2148,7 +2149,7 @@ static void CreateNidorinoAnimSprite(struct IntroSequenceData * this)
|
||||
this->nidorinoAnimSprite = &gSprites[spriteId];
|
||||
}
|
||||
|
||||
static void StartNidorinoAnimSpriteSlideIn(struct Sprite * sprite, s16 x0, s16 x1, u16 speed)
|
||||
static void StartNidorinoAnimSpriteSlideIn(struct Sprite *sprite, s16 x0, s16 x1, u16 speed)
|
||||
{
|
||||
sprite->data[0] = x0 << 4;
|
||||
sprite->data[1] = ((x1 - x0) << 4) / speed;
|
||||
@@ -2160,7 +2161,7 @@ static void StartNidorinoAnimSpriteSlideIn(struct Sprite * sprite, s16 x0, s16 x
|
||||
sprite->callback = SpriteCB_NidorinoAnimSpriteSlideIn;
|
||||
}
|
||||
|
||||
static void SpriteCB_NidorinoAnimSpriteSlideIn(struct Sprite * sprite)
|
||||
static void SpriteCB_NidorinoAnimSpriteSlideIn(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[4]++;
|
||||
if (sprite->data[4] >= 40)
|
||||
@@ -2191,7 +2192,7 @@ static void FightScene4_NidorinoRearsUp(struct IntroSequenceData * ptr)
|
||||
ptr->nidorinoAnimSprite->callback = SpriteCB_NidorinoRearsUp;
|
||||
}
|
||||
|
||||
static void SpriteCB_NidorinoRearsUp(struct Sprite * sprite)
|
||||
static void SpriteCB_NidorinoRearsUp(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -2205,7 +2206,7 @@ static void SpriteCB_NidorinoRearsUp(struct Sprite * sprite)
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
PlayCry3(SPECIES_NIDORINO, 0x3F, 1);
|
||||
PlayCry_ByMode(SPECIES_NIDORINO, 0x3F, CRY_MODE_DOUBLES);
|
||||
sprite->data[1] = 0;
|
||||
sprite->data[0]++;
|
||||
break;
|
||||
@@ -2243,7 +2244,7 @@ static void FightScene4_StartNidorinoRecoilAnim(struct IntroSequenceData * ptr)
|
||||
ptr->nidorinoAnimSprite->callback = SpriteCB_NidorinoRecoil;
|
||||
}
|
||||
|
||||
static void SpriteCB_NidorinoRecoil(struct Sprite * sprite)
|
||||
static void SpriteCB_NidorinoRecoil(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -2325,7 +2326,7 @@ static void CreateNidorinoRecoilDustSprites(s16 x, s16 y, s16 seed)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_NidorinoRecoilDust(struct Sprite * sprite)
|
||||
static void SpriteCB_NidorinoRecoilDust(struct Sprite *sprite)
|
||||
{
|
||||
s16 * data = sprite->data;
|
||||
|
||||
@@ -2353,7 +2354,7 @@ static void SpriteCB_NidorinoRecoilDust(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void StartSpriteHopToPosAnim(struct Sprite * sprite, u16 a1, s16 a2, u8 a3)
|
||||
static void StartSpriteHopToPosAnim(struct Sprite *sprite, u16 a1, s16 a2, u8 a3)
|
||||
{
|
||||
sprite->data[0] = 0;
|
||||
sprite->data[1] = a1;
|
||||
@@ -2367,7 +2368,7 @@ static void StartSpriteHopToPosAnim(struct Sprite * sprite, u16 a1, s16 a2, u8 a
|
||||
sprite->callback = SpriteCB_HopToPos;
|
||||
}
|
||||
|
||||
static void SpriteCB_HopToPos(struct Sprite * sprite)
|
||||
static void SpriteCB_HopToPos(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -2433,7 +2434,7 @@ static void StartNidorinoAnim_LaunchSelfAtGengarAnim(struct IntroSequenceData *
|
||||
ptr->nidorinoAnimSprite->callback = SpriteCB_NidorinoAnim_LaunchSelfAtGengar;
|
||||
}
|
||||
|
||||
static void SpriteCB_NidorinoAnim_LaunchSelfAtGengar(struct Sprite * sprite)
|
||||
static void SpriteCB_NidorinoAnim_LaunchSelfAtGengar(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
|
||||
+1
-1
@@ -160,7 +160,7 @@ void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopP
|
||||
/*
|
||||
void NoCashGBAPrint(const char *pBuf)
|
||||
{
|
||||
*(volatile u32*)NOCASHGBAPRINTADDR2 = (u32)pBuf;
|
||||
*(volatile u32 *)NOCASHGBAPRINTADDR2 = (u32)pBuf;
|
||||
}
|
||||
|
||||
void NoCashGBAPrintf(const char *pBuf, ...)
|
||||
|
||||
+32
-32
@@ -64,7 +64,7 @@ struct BagSlots
|
||||
|
||||
EWRAM_DATA struct BagStruct gBagMenuState = {};
|
||||
static EWRAM_DATA struct BagMenuAlloc * sBagMenuDisplay = NULL;
|
||||
static EWRAM_DATA void * sBagBgTilemapBuffer = NULL;
|
||||
static EWRAM_DATA void *sBagBgTilemapBuffer = NULL;
|
||||
static EWRAM_DATA struct ListMenuItem * sListMenuItems = NULL;
|
||||
static EWRAM_DATA u8 (*sListMenuItemStrings)[19] = NULL;
|
||||
static EWRAM_DATA u8 sContextMenuItemsBuffer[4] = {};
|
||||
@@ -512,7 +512,7 @@ static bool8 LoadBagMenuGraphics(void)
|
||||
|
||||
static void FadeOutOfBagMenu(void)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||
CreateTask(Task_WaitFadeOutOfBagMenu, 0);
|
||||
SetVBlankCallback(VBlankCB_BagMenuRun);
|
||||
SetMainCallback2(CB2_BagMenuRun);
|
||||
@@ -660,7 +660,7 @@ static void Bag_BuildListMenuTemplate(u8 pocket)
|
||||
gMultiuseListMenuTemplate.itemVerticalPadding = 2;
|
||||
gMultiuseListMenuTemplate.upText_Y = 2;
|
||||
gMultiuseListMenuTemplate.maxShowed = sBagMenuDisplay->maxShowed[pocket];
|
||||
gMultiuseListMenuTemplate.fontId = 2;
|
||||
gMultiuseListMenuTemplate.fontId = FONT_2;
|
||||
gMultiuseListMenuTemplate.cursorPal = 2;
|
||||
gMultiuseListMenuTemplate.fillValue = 0;
|
||||
gMultiuseListMenuTemplate.cursorShadowPal = 3;
|
||||
@@ -718,7 +718,7 @@ static void BagListMenuItemPrintFunc(u8 windowId, u32 itemId, u8 y)
|
||||
{
|
||||
ConvertIntToDecimalStringN(gStringVar1, bagItemQuantity, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BagPrintTextOnWindow(windowId, 0, gStringVar4, 0x6e, y, 0, 0, 0xFF, 1);
|
||||
BagPrintTextOnWindow(windowId, FONT_0, gStringVar4, 0x6e, y, 0, 0, 0xFF, 1);
|
||||
}
|
||||
else if (gSaveBlock1Ptr->registeredItem != ITEM_NONE && gSaveBlock1Ptr->registeredItem == bagItemId)
|
||||
{
|
||||
@@ -736,11 +736,11 @@ static void bag_menu_print_cursor(u8 y, u8 colorIdx)
|
||||
{
|
||||
if (colorIdx == 0xFF)
|
||||
{
|
||||
FillWindowPixelRect(0, PIXEL_FILL(0), 1, y, GetMenuCursorDimensionByFont(2, 0), GetMenuCursorDimensionByFont(2, 1));
|
||||
FillWindowPixelRect(0, PIXEL_FILL(0), 1, y, GetMenuCursorDimensionByFont(FONT_2, 0), GetMenuCursorDimensionByFont(FONT_2, 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
BagPrintTextOnWindow(0, 2, gText_SelectorArrow2, 1, y, 0, 0, 0, colorIdx);
|
||||
BagPrintTextOnWindow(0, FONT_2, gText_SelectorArrow2, 1, y, 0, 0, 0, colorIdx);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -758,7 +758,7 @@ static void PrintItemDescriptionOnMessageWindow(s32 itemIndex)
|
||||
else
|
||||
description = gText_CloseBag;
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(0));
|
||||
BagPrintTextOnWindow(1, 2, description, 0, 3, 2, 0, 0, 0);
|
||||
BagPrintTextOnWindow(1, FONT_2, description, 0, 3, 2, 0, 0, 0);
|
||||
}
|
||||
|
||||
static void CreatePocketScrollArrowPair(void)
|
||||
@@ -897,7 +897,7 @@ static void DestroyBagMenuResources(void)
|
||||
|
||||
void ItemMenu_StartFadeToExitCallback(u8 taskId)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||
gTasks[taskId].func = Task_ItemMenu_WaitFadeAndSwitchToExitCallback;
|
||||
}
|
||||
|
||||
@@ -925,8 +925,8 @@ static void ShowBagOrBeginWin0OpenTask(void)
|
||||
LoadPalette(&paldata, 0x00, 0x02);
|
||||
SetGpuReg(REG_OFFSET_WININ, 0);
|
||||
SetGpuReg(REG_OFFSET_WINOUT, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR);
|
||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
if (gBagMenuState.bagOpen == TRUE)
|
||||
{
|
||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240));
|
||||
@@ -1230,7 +1230,7 @@ static void BeginMovingItemInPocket(u8 taskId, s16 itemIndex)
|
||||
StringCopy(gStringVar1, ItemId_GetName(BagGetItemIdByPocketPosition(gBagMenuState.pocket + 1, data[1])));
|
||||
StringExpandPlaceholders(gStringVar4, gOtherText_WhereShouldTheStrVar1BePlaced);
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(0));
|
||||
BagPrintTextOnWindow(1, 2, gStringVar4, 0, 3, 2, 0, 0, 0);
|
||||
BagPrintTextOnWindow(1, FONT_2, gStringVar4, 0, 3, 2, 0, 0, 0);
|
||||
ItemMenuIcons_MoveInsertIndicatorBar(0, ListMenuGetYCoordForPrintingArrowCursor(data[0]));
|
||||
ItemMenuIcons_ToggleInsertIndicatorBarVisibility(FALSE);
|
||||
BagDestroyPocketSwitchArrowPair();
|
||||
@@ -1315,11 +1315,11 @@ static void InitQuantityToTossOrDeposit(u16 cursorPos, const u8 *str)
|
||||
u8 r5 = ShowBagWindow(6, 2);
|
||||
CopyItemName(BagGetItemIdByPocketPosition(gBagMenuState.pocket + 1, cursorPos), gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, str);
|
||||
BagPrintTextOnWindow(r5, 2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
BagPrintTextOnWindow(r5, FONT_2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
r4 = ShowBagWindow(0, 0);
|
||||
ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BagPrintTextOnWindow(r4, 0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
BagPrintTextOnWindow(r4, FONT_0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
CreateArrowPair_QuantitySelect();
|
||||
}
|
||||
|
||||
@@ -1329,7 +1329,7 @@ static void UpdateQuantityToTossOrDeposit(s16 value, u8 ndigits)
|
||||
FillWindowPixelBuffer(r6, PIXEL_FILL(1));
|
||||
ConvertIntToDecimalStringN(gStringVar1, value, STR_CONV_MODE_LEADING_ZEROS, ndigits);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BagPrintTextOnWindow(r6, 0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
BagPrintTextOnWindow(r6, FONT_0, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
}
|
||||
|
||||
static void CopyBagListBgTileRowToTilemapBuffer(u8 frame)
|
||||
@@ -1422,20 +1422,20 @@ static void OpenContextMenu(u8 taskId)
|
||||
r6 = ShowBagWindow(10, sContextMenuNumItems - 1);
|
||||
AddItemMenuActionTextPrinters(
|
||||
r6,
|
||||
FONT_2,
|
||||
GetMenuCursorDimensionByFont(FONT_2, 0),
|
||||
2,
|
||||
GetMenuCursorDimensionByFont(2, 0),
|
||||
2,
|
||||
GetFontAttribute(2, FONTATTR_LETTER_SPACING),
|
||||
GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 2,
|
||||
GetFontAttribute(FONT_2, FONTATTR_LETTER_SPACING),
|
||||
GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 2,
|
||||
sContextMenuNumItems,
|
||||
sItemMenuContextActions,
|
||||
sContextMenuItemsPtr
|
||||
);
|
||||
Menu_InitCursor(r6, 2, 0, 2, GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 2, sContextMenuNumItems, 0);
|
||||
Menu_InitCursor(r6, FONT_2, 0, 2, GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 2, sContextMenuNumItems, 0);
|
||||
r4 = ShowBagWindow(6, 0);
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gText_Var1IsSelected);
|
||||
BagPrintTextOnWindow(r4, 2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
BagPrintTextOnWindow(r4, FONT_2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
}
|
||||
|
||||
static void Task_ItemContext_FieldOrBattle(u8 taskId)
|
||||
@@ -1507,7 +1507,7 @@ static void Task_ConfirmTossItems(u8 taskId)
|
||||
s16 *data = gTasks[taskId].data;
|
||||
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_ThrowAwayStrVar2OfThisItemQM);
|
||||
BagPrintTextOnWindow(ShowBagWindow(6, 1), 2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
BagPrintTextOnWindow(ShowBagWindow(6, 1), FONT_2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
BagCreateYesNoMenuBottomRight(taskId, &sYesNoMenu_Toss);
|
||||
}
|
||||
|
||||
@@ -1559,7 +1559,7 @@ static void Task_TossItem_Yes(u8 taskId)
|
||||
CopyItemName(BagGetItemIdByPocketPosition(gBagMenuState.pocket + 1, data[1]), gStringVar1);
|
||||
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_ThrewAwayStrVar2StrVar1s);
|
||||
BagPrintTextOnWindow(ShowBagWindow(6, 3), 2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
BagPrintTextOnWindow(ShowBagWindow(6, 3), FONT_2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
gTasks[taskId].func = Task_WaitAB_RedrawAndReturnToBag;
|
||||
}
|
||||
|
||||
@@ -1610,7 +1610,7 @@ static void Task_ItemMenuAction_Give(u8 taskId)
|
||||
PutWindowTilemap(1);
|
||||
CopyWindowToVram(0, COPYWIN_MAP);
|
||||
if (!CanWriteMailHere(itemId))
|
||||
DisplayItemMessageInBag(taskId, 2, gText_CantWriteMailHere, Task_WaitAButtonAndCloseContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gText_CantWriteMailHere, Task_WaitAButtonAndCloseContextMenu);
|
||||
else if (!itemid_is_unique(itemId))
|
||||
{
|
||||
if (CalculatePlayerPartyCount() == 0)
|
||||
@@ -1629,14 +1629,14 @@ static void Task_ItemMenuAction_Give(u8 taskId)
|
||||
|
||||
static void Task_PrintThereIsNoPokemon(u8 taskId)
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gText_ThereIsNoPokemon, Task_WaitAButtonAndCloseContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gText_ThereIsNoPokemon, Task_WaitAButtonAndCloseContextMenu);
|
||||
}
|
||||
|
||||
static void Task_PrintItemCantBeHeld(u8 taskId)
|
||||
{
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gText_ItemCantBeHeld);
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, Task_WaitAButtonAndCloseContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gStringVar4, Task_WaitAButtonAndCloseContextMenu);
|
||||
}
|
||||
|
||||
static void Task_WaitAButtonAndCloseContextMenu(u8 taskId)
|
||||
@@ -1705,7 +1705,7 @@ static void Task_ItemContext_FieldGive(u8 taskId)
|
||||
u16 itemId = BagGetItemIdByPocketPosition(gBagMenuState.pocket + 1, data[1]);
|
||||
if (!CanWriteMailHere(itemId))
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gText_CantWriteMailHere, Task_WaitAButtonAndCloseContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gText_CantWriteMailHere, Task_WaitAButtonAndCloseContextMenu);
|
||||
}
|
||||
else if (itemId == ITEM_TM_CASE)
|
||||
{
|
||||
@@ -1749,7 +1749,7 @@ static void Task_ItemContext_PcBoxGive(u8 taskId)
|
||||
u16 itemId = BagGetItemIdByPocketPosition(gBagMenuState.pocket + 1, data[1]);
|
||||
if (ItemIsMail(itemId) == TRUE)
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gText_CantWriteMailHere, Task_WaitAButtonAndCloseContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gText_CantWriteMailHere, Task_WaitAButtonAndCloseContextMenu);
|
||||
}
|
||||
else if (itemId == ITEM_TM_CASE)
|
||||
{
|
||||
@@ -1872,7 +1872,7 @@ static void Task_InitSaleQuantitySelectInterface(u8 taskId)
|
||||
u8 r4 = ShowBagWindow(0, 1);
|
||||
ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 2);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BagPrintTextOnWindow(r4, 0, gStringVar4, 4, 10, 1, 0, 0xFF, 1);
|
||||
BagPrintTextOnWindow(r4, FONT_0, gStringVar4, 4, 10, 1, 0, 0xFF, 1);
|
||||
UpdateSalePriceDisplay(itemid_get_market_price(BagGetItemIdByPocketPosition(gBagMenuState.pocket + 1, data[1])) / 2 * data[8]);
|
||||
BagPrintMoneyAmount();
|
||||
CreatePocketScrollArrowPair_SellQuantity();
|
||||
@@ -1925,7 +1925,7 @@ static void Task_SellItem_Yes(u8 taskId)
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar1);
|
||||
ConvertIntToDecimalStringN(gStringVar3, itemid_get_market_price(BagGetItemIdByPocketPosition(gBagMenuState.pocket + 1, data[1])) / 2 * data[8], STR_CONV_MODE_LEFT_ALIGN, 6);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TurnedOverItemsWorthYen);
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, Task_FinalizeSaleToShop);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gStringVar4, Task_FinalizeSaleToShop);
|
||||
}
|
||||
|
||||
static void Task_FinalizeSaleToShop(u8 taskId)
|
||||
@@ -2013,12 +2013,12 @@ static void Task_TryDoItemDeposit(u8 taskId)
|
||||
CopyItemName(gSpecialVar_ItemId, gStringVar1);
|
||||
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_DepositedStrVar2StrVar1s);
|
||||
BagPrintTextOnWindow(ShowBagWindow(6, 3), 2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
BagPrintTextOnWindow(ShowBagWindow(6, 3), FONT_2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
gTasks[taskId].func = Task_WaitAB_RedrawAndReturnToBag;
|
||||
}
|
||||
else
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gText_NoRoomToStoreItems, Task_WaitAButtonAndCloseContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gText_NoRoomToStoreItems, Task_WaitAButtonAndCloseContextMenu);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2144,7 +2144,7 @@ static void Task_Bag_OldManTutorial(u8 taskId)
|
||||
|
||||
static void Task_Pokedude_FadeFromBag(u8 taskId)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||
gTasks[taskId].func = Task_Pokedude_WaitFadeAndExitBag;
|
||||
}
|
||||
|
||||
|
||||
+10
-10
@@ -6,11 +6,11 @@
|
||||
#include "constants/items.h"
|
||||
|
||||
static EWRAM_DATA u8 sItemMenuIconSpriteIds[12] = {0};
|
||||
static EWRAM_DATA void * sItemIconTilesBuffer = NULL;
|
||||
static EWRAM_DATA void * sItemIconTilesBufferPadded = NULL;
|
||||
static EWRAM_DATA void *sItemIconTilesBuffer = NULL;
|
||||
static EWRAM_DATA void *sItemIconTilesBufferPadded = NULL;
|
||||
|
||||
static void SpriteCB_BagVisualSwitchingPockets(struct Sprite * sprite);
|
||||
static void SpriteCB_ShakeBagSprite(struct Sprite * sprite);
|
||||
static void SpriteCB_BagVisualSwitchingPockets(struct Sprite *sprite);
|
||||
static void SpriteCB_ShakeBagSprite(struct Sprite *sprite);
|
||||
|
||||
static const struct OamData sOamData_BagOrSatchel = {
|
||||
.affineMode = ST_OAM_AFFINE_NORMAL,
|
||||
@@ -561,13 +561,13 @@ void CreateBagOrSatchelSprite(u8 animNum)
|
||||
|
||||
void SetBagVisualPocketId(u8 animNum)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[sItemMenuIconSpriteIds[0]];
|
||||
struct Sprite *sprite = &gSprites[sItemMenuIconSpriteIds[0]];
|
||||
sprite->y2 = -5;
|
||||
sprite->callback = SpriteCB_BagVisualSwitchingPockets;
|
||||
StartSpriteAnim(sprite, animNum);
|
||||
}
|
||||
|
||||
static void SpriteCB_BagVisualSwitchingPockets(struct Sprite * sprite)
|
||||
static void SpriteCB_BagVisualSwitchingPockets(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->y2 != 0)
|
||||
sprite->y2++;
|
||||
@@ -577,7 +577,7 @@ static void SpriteCB_BagVisualSwitchingPockets(struct Sprite * sprite)
|
||||
|
||||
void ShakeBagSprite(void)
|
||||
{
|
||||
struct Sprite * sprite = &gSprites[sItemMenuIconSpriteIds[0]];
|
||||
struct Sprite *sprite = &gSprites[sItemMenuIconSpriteIds[0]];
|
||||
if (sprite->affineAnimEnded)
|
||||
{
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
@@ -585,7 +585,7 @@ void ShakeBagSprite(void)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCB_ShakeBagSprite(struct Sprite * sprite)
|
||||
static void SpriteCB_ShakeBagSprite(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->affineAnimEnded)
|
||||
{
|
||||
@@ -658,7 +658,7 @@ static bool8 TryAllocItemIconTilesBuffers(void)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void CopyItemIconPicTo4x4Buffer(const void * src, void * dest)
|
||||
void CopyItemIconPicTo4x4Buffer(const void *src, void *dest)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
@@ -760,7 +760,7 @@ void DestroyItemMenuIcon(u8 idx)
|
||||
}
|
||||
}
|
||||
|
||||
const void * GetItemIconGfxPtr(u16 itemId, u8 attrId)
|
||||
const void *GetItemIconGfxPtr(u16 itemId, u8 attrId)
|
||||
{
|
||||
if (itemId > ITEM_N_A)
|
||||
itemId = ITEM_NONE;
|
||||
|
||||
+26
-26
@@ -361,14 +361,14 @@ static bool8 ItemPc_DoGfxSetup(void)
|
||||
case 18:
|
||||
if (sListMenuState.initialized == 1)
|
||||
{
|
||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
||||
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||
}
|
||||
gMain.state++;
|
||||
break;
|
||||
case 19:
|
||||
if (sListMenuState.initialized == 1)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -392,7 +392,7 @@ static bool8 ItemPc_DoGfxSetup(void)
|
||||
|
||||
static void ItemPc_FadeAndBail(void)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
CreateTask(Task_ItemPcWaitFadeAndBail, 0);
|
||||
SetVBlankCallback(ItemPc_VBlankCB);
|
||||
SetMainCallback2(ItemPc_MainCB);
|
||||
@@ -498,7 +498,7 @@ static void ItemPc_BuildListMenuTemplate(void)
|
||||
gMultiuseListMenuTemplate.itemVerticalPadding = 2;
|
||||
gMultiuseListMenuTemplate.upText_Y = 2;
|
||||
gMultiuseListMenuTemplate.maxShowed = sStateDataPtr->maxShowed;
|
||||
gMultiuseListMenuTemplate.fontId = 2;
|
||||
gMultiuseListMenuTemplate.fontId = FONT_2;
|
||||
gMultiuseListMenuTemplate.cursorPal = 2;
|
||||
gMultiuseListMenuTemplate.fillValue = 0;
|
||||
gMultiuseListMenuTemplate.cursorShadowPal = 3;
|
||||
@@ -534,7 +534,7 @@ static void ItemPc_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *
|
||||
}
|
||||
sStateDataPtr->itemMenuIconSlot ^= 1;
|
||||
FillWindowPixelBuffer(1, 0);
|
||||
ItemPc_AddTextPrinterParameterized(1, 2, desc, 0, 3, 2, 0, 0, 3);
|
||||
ItemPc_AddTextPrinterParameterized(1, FONT_2, desc, 0, 3, 2, 0, 0, 3);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -552,7 +552,7 @@ static void ItemPc_ItemPrintFunc(u8 windowId, u32 itemId, u8 y)
|
||||
u16 quantity = ItemPc_GetItemQuantityBySlotId(itemId);
|
||||
ConvertIntToDecimalStringN(gStringVar1, quantity, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
ItemPc_AddTextPrinterParameterized(windowId, 0, gStringVar4, 110, y, 0, 0, 0xFF, 1);
|
||||
ItemPc_AddTextPrinterParameterized(windowId, FONT_0, gStringVar4, 110, y, 0, 0, 0xFF, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -565,19 +565,19 @@ static void ItemPc_PrintOrRemoveCursorAt(u8 y, u8 colorIdx)
|
||||
{
|
||||
if (colorIdx == 0xFF)
|
||||
{
|
||||
u8 maxWidth = GetFontAttribute(2, FONTATTR_MAX_LETTER_WIDTH);
|
||||
u8 maxHeight = GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT);
|
||||
u8 maxWidth = GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_WIDTH);
|
||||
u8 maxHeight = GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT);
|
||||
FillWindowPixelRect(0, 0, 0, y, maxWidth, maxHeight);
|
||||
}
|
||||
else
|
||||
{
|
||||
ItemPc_AddTextPrinterParameterized(0, 2, gText_SelectorArrow2, 0, y, 0, 0, 0, colorIdx);
|
||||
ItemPc_AddTextPrinterParameterized(0, FONT_2, gText_SelectorArrow2, 0, y, 0, 0, 0, colorIdx);
|
||||
}
|
||||
}
|
||||
|
||||
static void ItemPc_PrintWithdrawItem(void)
|
||||
{
|
||||
ItemPc_AddTextPrinterParameterized(2, 0, gText_WithdrawItem, 0, 1, 0, 1, 0, 0);
|
||||
ItemPc_AddTextPrinterParameterized(2, FONT_0, gText_WithdrawItem, 0, 1, 0, 1, 0, 0);
|
||||
}
|
||||
|
||||
static void ItemPc_PlaceTopMenuScrollIndicatorArrows(void)
|
||||
@@ -632,7 +632,7 @@ static void Task_ItemPcTurnOff1(u8 taskId)
|
||||
{
|
||||
if (sListMenuState.initialized == 1)
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -773,7 +773,7 @@ static void ItemPc_MoveItemModeInit(u8 taskId, s16 pos)
|
||||
StringCopy(gStringVar1, ItemId_GetName(ItemPc_GetItemIdBySlotId(data[1])));
|
||||
StringExpandPlaceholders(gStringVar4, gOtherText_WhereShouldTheStrVar1BePlaced);
|
||||
FillWindowPixelBuffer(1, 0x00);
|
||||
ItemPc_AddTextPrinterParameterized(1, 2, gStringVar4, 0, 3, 2, 3, 0, 0);
|
||||
ItemPc_AddTextPrinterParameterized(1, FONT_2, gStringVar4, 0, 3, 2, 3, 0, 0);
|
||||
ItemMenuIcons_MoveInsertIndicatorBar(-32, ListMenuGetYCoordForPrintingArrowCursor(data[0]));
|
||||
ItemMenuIcons_ToggleInsertIndicatorBarVisibility(FALSE);
|
||||
ItemPc_PrintOrRemoveCursor(data[0], 2);
|
||||
@@ -839,11 +839,11 @@ static void Task_ItemPcSubmenuInit(u8 taskId)
|
||||
|
||||
ItemPc_SetBorderStyleOnWindow(4);
|
||||
windowId = ItemPc_GetOrCreateSubwindow(0);
|
||||
PrintTextArray(4, 2, 8, 2, GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 2, 3, sItemPcSubmenuOptions);
|
||||
Menu_InitCursor(4, 2, 0, 2, GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT) + 2, 3, 0);
|
||||
PrintTextArray(4, FONT_2, 8, 2, GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 2, 3, sItemPcSubmenuOptions);
|
||||
Menu_InitCursor(4, FONT_2, 0, 2, GetFontAttribute(FONT_2, FONTATTR_MAX_LETTER_HEIGHT) + 2, 3, 0);
|
||||
CopyItemName(ItemPc_GetItemIdBySlotId(data[1]), gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gText_Var1IsSelected);
|
||||
ItemPc_AddTextPrinterParameterized(windowId, 2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
ItemPc_AddTextPrinterParameterized(windowId, FONT_2, gStringVar4, 0, 2, 1, 0, 0, 1);
|
||||
ScheduleBgCopyTilemapToVram(0);
|
||||
gTasks[taskId].func = Task_ItemPcSubmenuRun;
|
||||
}
|
||||
@@ -901,13 +901,13 @@ static void ItemPc_DoWithdraw(u8 taskId)
|
||||
ConvertIntToDecimalStringN(gStringVar2, data[8], STR_CONV_MODE_LEFT_ALIGN, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_WithdrewQuantItem);
|
||||
windowId = ItemPc_GetOrCreateSubwindow(2);
|
||||
AddTextPrinterParameterized(windowId, 2, gStringVar4, 0, 2, 0, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_2, gStringVar4, 0, 2, 0, NULL);
|
||||
gTasks[taskId].func = Task_ItemPcWaitButtonAndFinishWithdrawMultiple;
|
||||
}
|
||||
else
|
||||
{
|
||||
windowId = ItemPc_GetOrCreateSubwindow(2);
|
||||
AddTextPrinterParameterized(windowId, 2, gText_NoMoreRoomInBag, 0, 2, 0, NULL);
|
||||
AddTextPrinterParameterized(windowId, FONT_2, gText_NoMoreRoomInBag, 0, 2, 0, NULL);
|
||||
gTasks[taskId].func = Task_ItemPcWaitButtonWithdrawMultipleFailed;
|
||||
}
|
||||
}
|
||||
@@ -957,11 +957,11 @@ static void ItemPc_WithdrawMultipleInitWindow(u16 slotId)
|
||||
|
||||
CopyItemName(itemId, gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gText_WithdrawHowMany);
|
||||
AddTextPrinterParameterized(ItemPc_GetOrCreateSubwindow(1), 2, gStringVar4, 0, 2, 0, NULL);
|
||||
AddTextPrinterParameterized(ItemPc_GetOrCreateSubwindow(1), FONT_2, gStringVar4, 0, 2, 0, NULL);
|
||||
ConvertIntToDecimalStringN(gStringVar1, 1, STR_CONV_MODE_LEADING_ZEROS, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
ItemPc_SetBorderStyleOnWindow(3);
|
||||
ItemPc_AddTextPrinterParameterized(3, 0, gStringVar4, 8, 10, 1, 0, 0, 1);
|
||||
ItemPc_AddTextPrinterParameterized(3, FONT_0, gStringVar4, 8, 10, 1, 0, 0, 1);
|
||||
ScheduleBgCopyTilemapToVram(0);
|
||||
}
|
||||
|
||||
@@ -970,7 +970,7 @@ static void UpdateWithdrawQuantityDisplay(s16 quantity)
|
||||
FillWindowPixelRect(3, PIXEL_FILL(1), 10, 10, 28, 12);
|
||||
ConvertIntToDecimalStringN(gStringVar1, quantity, STR_CONV_MODE_LEADING_ZEROS, 3);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
ItemPc_AddTextPrinterParameterized(3, 0, gStringVar4, 8, 10, 1, 0, 0, 1);
|
||||
ItemPc_AddTextPrinterParameterized(3, FONT_0, gStringVar4, 8, 10, 1, 0, 0, 1);
|
||||
}
|
||||
|
||||
static void Task_ItemPcHandleWithdrawMultiple(u8 taskId)
|
||||
@@ -1040,7 +1040,7 @@ static void gTask_ItemPcWaitButtonAndExitSubmenu(u8 taskId)
|
||||
if (JOY_NEW(A_BUTTON))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
ClearDialogWindowAndFrameToTransparent(5, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(5, FALSE);
|
||||
ClearWindowTilemap(5);
|
||||
PutWindowTilemap(1);
|
||||
ItemPc_PrintOrRemoveCursor(data[0], 1);
|
||||
@@ -1090,7 +1090,7 @@ static void unused_ItemPc_AddTextPrinterParameterized(u8 windowId, const u8 * st
|
||||
|
||||
template.currentChar = string;
|
||||
template.windowId = windowId;
|
||||
template.fontId = 3;
|
||||
template.fontId = FONT_3;
|
||||
template.x = x;
|
||||
template.y = y;
|
||||
template.currentX = x;
|
||||
@@ -1098,9 +1098,9 @@ static void unused_ItemPc_AddTextPrinterParameterized(u8 windowId, const u8 * st
|
||||
template.fgColor = 2;
|
||||
template.bgColor = 0;
|
||||
template.shadowColor = 3;
|
||||
template.unk = GetFontAttribute(3, FONTATTR_UNKNOWN);
|
||||
template.letterSpacing = letterSpacing + GetFontAttribute(3, FONTATTR_LETTER_SPACING);
|
||||
template.lineSpacing = lineSpacing + GetFontAttribute(3, FONTATTR_LINE_SPACING);
|
||||
template.unk = GetFontAttribute(FONT_3, FONTATTR_UNKNOWN);
|
||||
template.letterSpacing = letterSpacing + GetFontAttribute(FONT_3, FONTATTR_LETTER_SPACING);
|
||||
template.lineSpacing = lineSpacing + GetFontAttribute(FONT_3, FONTATTR_LINE_SPACING);
|
||||
AddTextPrinter(&template, speed, NULL);
|
||||
}
|
||||
|
||||
@@ -1140,6 +1140,6 @@ static u8 ItemPc_GetSubwindow(u8 idx)
|
||||
|
||||
static void ItemPc_PrintOnWindow5WithContinueTask(u8 taskId, const u8 * str, TaskFunc taskFunc)
|
||||
{
|
||||
DisplayMessageAndContinueTask(taskId, 5, 0x3AC, 0x0B, 2, GetTextSpeedSetting(), str, taskFunc);
|
||||
DisplayMessageAndContinueTask(taskId, 5, 0x3AC, 0x0B, FONT_2, GetTextSpeedSetting(), str, taskFunc);
|
||||
ScheduleBgCopyTilemapToVram(0);
|
||||
}
|
||||
|
||||
+27
-27
@@ -31,7 +31,7 @@
|
||||
#include "teachy_tv.h"
|
||||
#include "tm_case.h"
|
||||
#include "vs_seeker.h"
|
||||
#include "constants/fanfares.h"
|
||||
#include "constants/sound.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/maps.h"
|
||||
#include "constants/moves.h"
|
||||
@@ -178,18 +178,18 @@ static void Task_WaitFadeIn_CallItemUseOnFieldCB(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void DisplayItemMessageInCurrentContext(u8 taskId, bool8 inField, u8 textSpeed, const u8 * str)
|
||||
static void DisplayItemMessageInCurrentContext(u8 taskId, bool8 inField, u8 fontId, const u8 * str)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, str);
|
||||
if (inField == FALSE)
|
||||
DisplayItemMessageInBag(taskId, textSpeed, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, fontId, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
else
|
||||
DisplayItemMessageOnField(taskId, textSpeed, gStringVar4, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
DisplayItemMessageOnField(taskId, fontId, gStringVar4, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
}
|
||||
|
||||
static void PrintNotTheTimeToUseThat(u8 taskId, bool8 inField)
|
||||
{
|
||||
DisplayItemMessageInCurrentContext(taskId, inField, 4, gText_OakForbidsUseOfItemHere);
|
||||
DisplayItemMessageInCurrentContext(taskId, inField, FONT_4, gText_OakForbidsUseOfItemHere);
|
||||
}
|
||||
|
||||
static void Task_ItemUse_CloseMessageBoxAndReturnToField(u8 taskId)
|
||||
@@ -221,7 +221,7 @@ static bool8 sub_80A1194(void)
|
||||
ScriptContext2_Enable();
|
||||
FadeInFromBlack();
|
||||
CreateTask(sub_80A11C0, 10);
|
||||
gUnknown_2031DE0 = 0;
|
||||
gExitStairsMovementDisabled = FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -262,7 +262,7 @@ void FieldUseFunc_MachBike(u8 taskId)
|
||||
|| MetatileBehavior_IsHorizontalRail(behavior) == TRUE
|
||||
|| MetatileBehavior_IsIsolatedVerticalRail(behavior) == TRUE
|
||||
|| MetatileBehavior_IsIsolatedHorizontalRail(behavior) == TRUE)
|
||||
DisplayItemMessageInCurrentContext(taskId, gTasks[taskId].data[3], 2, gUnknown_8416451);
|
||||
DisplayItemMessageInCurrentContext(taskId, gTasks[taskId].data[3], FONT_2, gUnknown_8416451);
|
||||
else if (Overworld_IsBikingAllowed() == TRUE && !IsBikingDisallowedByPlayer())
|
||||
{
|
||||
sItemUseOnFieldCB = ItemUseOnFieldCB_Bicycle;
|
||||
@@ -339,9 +339,9 @@ void FieldUseFunc_CoinCase(u8 taskId)
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_8416537);
|
||||
ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
else
|
||||
DisplayItemMessageOnField(taskId, 2, gStringVar4, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gStringVar4, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
}
|
||||
|
||||
void FieldUseFunc_PowderJar(u8 taskId)
|
||||
@@ -350,9 +350,9 @@ void FieldUseFunc_PowderJar(u8 taskId)
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_8416644);
|
||||
ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
else
|
||||
DisplayItemMessageOnField(taskId, 2, gStringVar4, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gStringVar4, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
}
|
||||
|
||||
void FieldUseFunc_PokeFlute(u8 taskId)
|
||||
@@ -370,23 +370,23 @@ void FieldUseFunc_PokeFlute(u8 taskId)
|
||||
{
|
||||
ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_8416690, sub_80A1648);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gUnknown_8416690, sub_80A1648);
|
||||
else
|
||||
DisplayItemMessageOnField(taskId, 2, gUnknown_8416690, sub_80A1648);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gUnknown_8416690, sub_80A1648);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Now that's a catchy tune!
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_841665C, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gUnknown_841665C, Task_ReturnToBagFromContextMenu);
|
||||
else
|
||||
DisplayItemMessageOnField(taskId, 2, gUnknown_841665C, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gUnknown_841665C, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80A1648(u8 taskId)
|
||||
{
|
||||
PlayFanfareByFanfareNum(FANFARE_POKEFLUTE);
|
||||
PlayFanfareByFanfareNum(FANFARE_POKE_FLUTE);
|
||||
gTasks[taskId].func = sub_80A1674;
|
||||
}
|
||||
|
||||
@@ -395,9 +395,9 @@ static void sub_80A1674(u8 taskId)
|
||||
if (WaitFanfare(FALSE))
|
||||
{
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_84166A7, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gUnknown_84166A7, Task_ReturnToBagFromContextMenu);
|
||||
else
|
||||
DisplayItemMessageOnField(taskId, 2, gUnknown_84166A7, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gUnknown_84166A7, Task_ItemUse_CloseMessageBoxAndReturnToField);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -556,7 +556,7 @@ void FieldUseFunc_SuperRepel(u8 taskId)
|
||||
}
|
||||
else
|
||||
// An earlier repel is still in effect
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_841659E, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gUnknown_841659E, Task_ReturnToBagFromContextMenu);
|
||||
}
|
||||
|
||||
static void sub_80A19E8(u8 taskId)
|
||||
@@ -566,7 +566,7 @@ static void sub_80A19E8(u8 taskId)
|
||||
ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, NULL, gSpecialVar_ItemId, 0xFFFF);
|
||||
VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gSpecialVar_ItemId));
|
||||
sub_80A1A44();
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -607,7 +607,7 @@ static void sub_80A1B48(u8 taskId)
|
||||
if (++gTasks[taskId].data[8] > 7)
|
||||
{
|
||||
PlaySE(SE_GLASS_FLUTE);
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gStringVar4, Task_ReturnToBagFromContextMenu);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -636,7 +636,7 @@ static void sub_80A1C08(u8 taskId)
|
||||
Overworld_ResetStateAfterDigEscRope();
|
||||
sub_80A1A44();
|
||||
gTasks[taskId].data[0] = 0;
|
||||
DisplayItemMessageOnField(taskId, 2, gStringVar4, sub_80A1C44);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gStringVar4, sub_80A1C44);
|
||||
}
|
||||
|
||||
void sub_80A1C44(u8 taskId)
|
||||
@@ -744,7 +744,7 @@ void BattleUseFunc_PokeBallEtc(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gUnknown_8416631, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gUnknown_8416631, Task_ReturnToBagFromContextMenu);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -758,7 +758,7 @@ void BattleUseFunc_GuardSpec(u8 taskId)
|
||||
{
|
||||
if (ExecuteTableBasedItemEffect(&gPlayerParty[gBattlerPartyIndexes[gBattlerInMenuId]], gSpecialVar_ItemId, gBattlerPartyIndexes[gBattlerInMenuId], 0))
|
||||
{
|
||||
DisplayItemMessageInBag(taskId, 2, gText_WontHaveEffect, Task_ReturnToBagFromContextMenu);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gText_WontHaveEffect, Task_ReturnToBagFromContextMenu);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -776,7 +776,7 @@ static void Task_BattleUse_StatBooster_DelayAndPrint(u8 taskId)
|
||||
u16 itemId = gSpecialVar_ItemId;
|
||||
PlaySE(SE_USE_ITEM);
|
||||
RemoveBagItem(itemId, 1);
|
||||
DisplayItemMessageInBag(taskId, 2, Battle_PrintStatBoosterEffectMessage(itemId), Task_BattleUse_StatBooster_WaitButton_ReturnToBattle);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, Battle_PrintStatBoosterEffectMessage(itemId), Task_BattleUse_StatBooster_WaitButton_ReturnToBattle);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -827,7 +827,7 @@ void BattleUseFunc_PokeDoll(u8 taskId)
|
||||
{
|
||||
sub_80A1A44();
|
||||
ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, 0, gSpecialVar_ItemId, 0xFFFF);
|
||||
DisplayItemMessageInBag(taskId, 2, gStringVar4, ItemMenu_StartFadeToExitCallback);
|
||||
DisplayItemMessageInBag(taskId, FONT_2, gStringVar4, ItemMenu_StartFadeToExitCallback);
|
||||
}
|
||||
else
|
||||
PrintNotTheTimeToUseThat(taskId, 0);
|
||||
@@ -907,7 +907,7 @@ void FieldUseFunc_OakStopsYou(u8 taskId)
|
||||
if (GetPocketByItemId(gSpecialVar_ItemId) == POCKET_BERRY_POUCH)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gText_OakForbidsUseOfItemHere);
|
||||
DisplayItemMessageInBerryPouch(taskId, 4, gStringVar4, Task_BerryPouch_DestroyDialogueWindowAndRefreshListMenu);
|
||||
DisplayItemMessageInBerryPouch(taskId, FONT_4, gStringVar4, Task_BerryPouch_DestroyDialogueWindowAndRefreshListMenu);
|
||||
}
|
||||
else
|
||||
PrintNotTheTimeToUseThat(taskId, gTasks[taskId].data[3]);
|
||||
|
||||
+11
-11
@@ -28,11 +28,11 @@ static void Task_ItemfinderUnderfootDigUpItem(u8 taskId);
|
||||
static void DestroyArrowAndStarTiles(void);
|
||||
static void LoadArrowAndStarTiles(void);
|
||||
static void CreateArrowSprite(u8 animNum, u8 direction);
|
||||
static void SpriteCallback_Arrow(struct Sprite * sprite);
|
||||
static void SpriteCallback_DestroyArrow(struct Sprite * sprite);
|
||||
static void SpriteCallback_Arrow(struct Sprite *sprite);
|
||||
static void SpriteCallback_DestroyArrow(struct Sprite *sprite);
|
||||
static u8 CreateStarSprite(void);
|
||||
static void SpriteCallback_Star(struct Sprite * sprite);
|
||||
static void SpriteCallback_DestroyStar(struct Sprite * sprite);
|
||||
static void SpriteCallback_Star(struct Sprite *sprite);
|
||||
static void SpriteCallback_DestroyStar(struct Sprite *sprite);
|
||||
|
||||
#define ARROW_TILE_TAG 2000
|
||||
|
||||
@@ -143,7 +143,7 @@ void ItemUseOnFieldCB_Itemfinder(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
DisplayItemMessageOnField(taskId, 2, gText_NopeTheresNoResponse, Task_NoResponse_CleanUp);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gText_NopeTheresNoResponse, Task_NoResponse_CleanUp);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -479,7 +479,7 @@ static u8 GetPlayerDirectionTowardsHiddenItem(s16 itemX, s16 itemY)
|
||||
|
||||
static void Task_ItemfinderResponsePrintMessage(u8 taskId)
|
||||
{
|
||||
DisplayItemMessageOnField(taskId, 2, gText_ItemfinderResponding, Task_ItemfinderResponseCleanUp);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gText_ItemfinderResponding, Task_ItemfinderResponseCleanUp);
|
||||
}
|
||||
|
||||
static void Task_ItemfinderResponseCleanUp(u8 taskId)
|
||||
@@ -493,7 +493,7 @@ static void Task_ItemfinderResponseCleanUp(u8 taskId)
|
||||
|
||||
static void Task_ItemfinderUnderfootPrintMessage(u8 taskId)
|
||||
{
|
||||
DisplayItemMessageOnField(taskId, 2, gText_ItemfinderShakingWildly, Task_ItemfinderUnderfootDigUpItem);
|
||||
DisplayItemMessageOnField(taskId, FONT_2, gText_ItemfinderShakingWildly, Task_ItemfinderUnderfootDigUpItem);
|
||||
}
|
||||
|
||||
static void Task_ItemfinderUnderfootDigUpItem(u8 taskId)
|
||||
@@ -592,7 +592,7 @@ static void CreateArrowSprite(u8 animNum, u8 direction)
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCallback_Arrow(struct Sprite * sprite)
|
||||
static void SpriteCallback_Arrow(struct Sprite *sprite)
|
||||
{
|
||||
s16 x, y;
|
||||
sprite->spCurX += sprite->spDeltaX;
|
||||
@@ -606,7 +606,7 @@ static void SpriteCallback_Arrow(struct Sprite * sprite)
|
||||
sprite->callback = SpriteCallback_DestroyArrow;
|
||||
}
|
||||
|
||||
static void SpriteCallback_DestroyArrow(struct Sprite * sprite)
|
||||
static void SpriteCallback_DestroyArrow(struct Sprite *sprite)
|
||||
{
|
||||
FreeSpriteOamMatrix(sprite);
|
||||
DestroySprite(sprite);
|
||||
@@ -629,7 +629,7 @@ static u8 CreateStarSprite(void)
|
||||
return spriteId;
|
||||
}
|
||||
|
||||
static void SpriteCallback_Star(struct Sprite * sprite)
|
||||
static void SpriteCallback_Star(struct Sprite *sprite)
|
||||
{
|
||||
s16 x, y;
|
||||
sprite->spCurX += sprite->spDeltaX;
|
||||
@@ -643,7 +643,7 @@ static void SpriteCallback_Star(struct Sprite * sprite)
|
||||
sprite->callback = SpriteCallback_DestroyStar;
|
||||
}
|
||||
|
||||
static void SpriteCallback_DestroyStar(struct Sprite * sprite)
|
||||
static void SpriteCallback_DestroyStar(struct Sprite *sprite)
|
||||
{
|
||||
DestroySprite(sprite);
|
||||
}
|
||||
|
||||
+17
-17
@@ -159,7 +159,7 @@ static void MoveRelearnerStateMachine(void);
|
||||
static void DrawTextBorderOnWindows6and7(void);
|
||||
static void PrintTeachWhichMoveToStrVar1(bool8 onInit);
|
||||
static void InitMoveRelearnerStateVariables(void);
|
||||
static void SpriteCB_ListMenuScrollIndicators(struct Sprite * sprite);
|
||||
static void SpriteCB_ListMenuScrollIndicators(struct Sprite *sprite);
|
||||
static void SpawnListMenuScrollIndicatorSprites(void);
|
||||
static void MoveRelearnerInitListMenuBuffersEtc(void);
|
||||
static void MoveRelearnerMenuHandleInput(void);
|
||||
@@ -353,7 +353,7 @@ static const struct ListMenuTemplate sMoveRelearnerListMenuTemplate = {
|
||||
.lettersSpacing = 1,
|
||||
.itemVerticalPadding = 0,
|
||||
.scrollMultiple = 0,
|
||||
.fontId = 2,
|
||||
.fontId = FONT_2,
|
||||
.cursorKind = 0,
|
||||
};
|
||||
|
||||
@@ -368,7 +368,7 @@ void DisplayMoveTutorMenu(void)
|
||||
{
|
||||
ScriptContext2_Enable();
|
||||
CreateTask(Task_InitMoveRelearnerMenu, 10);
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
}
|
||||
|
||||
static void Task_InitMoveRelearnerMenu(u8 taskId)
|
||||
@@ -480,7 +480,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
switch (sMoveRelearner->state)
|
||||
{
|
||||
case MENU_STATE_FADE_TO_BLACK:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
ShowBg(0);
|
||||
ShowBg(1);
|
||||
LoadMoveInfoUI();
|
||||
@@ -506,7 +506,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
MoveRelearnerMenuHandleInput();
|
||||
break;
|
||||
case MENU_STATE_PRINT_TEACH_MOVE_PROMPT:
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, 3, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, FONT_3, 0, 2, 0x001, 0xE, 0);
|
||||
sMoveRelearner->state++;
|
||||
break;
|
||||
case MENU_STATE_TEACH_MOVE_CONFIRM :
|
||||
@@ -531,7 +531,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
}
|
||||
break;
|
||||
case MENU_STATE_PRINT_GIVE_UP_PROMPT:
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, 3, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, FONT_3, 0, 2, 0x001, 0xE, 0);
|
||||
sMoveRelearner->state++;
|
||||
break;
|
||||
case MENU_STATE_GIVE_UP_CONFIRM:
|
||||
@@ -552,7 +552,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
sMoveRelearner->state++;
|
||||
break;
|
||||
case MENU_STATE_WAIT_FOR_TRYING_TO_LEARN:
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, 3, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, FONT_3, 0, 2, 0x001, 0xE, 0);
|
||||
sMoveRelearner->state = 18;
|
||||
break;
|
||||
case MENU_STATE_CONFIRM_DELETE_OLD_MOVE:
|
||||
@@ -573,7 +573,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
sMoveRelearner->state++;
|
||||
break;
|
||||
case MENU_STATE_WAIT_FOR_STOP_TEACHING:
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, 3, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&gUnknown_83FFA8C, FONT_3, 0, 2, 0x001, 0xE, 0);
|
||||
sMoveRelearner->state = 26;
|
||||
break;
|
||||
case MENU_STATE_CONFIRM_STOP_TEACHING:
|
||||
@@ -593,7 +593,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
break;
|
||||
case MENU_STATE_PRINT_WHICH_MOVE_PROMPT:
|
||||
sMoveRelearner->state = 20;
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
break;
|
||||
case MENU_STATE_SHOW_MOVE_SUMMARY_SCREEN:
|
||||
if (!gPaletteFade.active)
|
||||
@@ -608,10 +608,10 @@ static void MoveRelearnerStateMachine(void)
|
||||
sMoveRelearner->state = 14;
|
||||
break;
|
||||
case 22:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
break;
|
||||
case MENU_STATE_FADE_AND_RETURN:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||
sMoveRelearner->state++;
|
||||
break;
|
||||
case MENU_STATE_RETURN_TO_FIELD:
|
||||
@@ -623,7 +623,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
}
|
||||
break;
|
||||
case MENU_STATE_FADE_FROM_SUMMARY_SCREEN:
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||
ShowBg(0);
|
||||
ShowBg(1);
|
||||
sMoveRelearner->state++;
|
||||
@@ -690,7 +690,7 @@ static void PrintTeachWhichMoveToStrVar1(bool8 onInit)
|
||||
StringExpandPlaceholders(gStringVar4, gText_TeachWhichMoveToMon);
|
||||
PrintTextOnWindow(7, gStringVar4, 0, 2, 0, 2);
|
||||
PutWindowTilemap(7);
|
||||
CopyWindowToVram(7, COPYWIN_BOTH);
|
||||
CopyWindowToVram(7, COPYWIN_FULL);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -711,7 +711,7 @@ static void InitMoveRelearnerStateVariables(void)
|
||||
sMoveRelearner->learnableMoves[i] = MOVE_NONE;
|
||||
}
|
||||
|
||||
static void SpriteCB_ListMenuScrollIndicators(struct Sprite * sprite)
|
||||
static void SpriteCB_ListMenuScrollIndicators(struct Sprite *sprite)
|
||||
{
|
||||
s16 abcissa = (sprite->data[1] * 10) & 0xFF;
|
||||
switch (sprite->data[0])
|
||||
@@ -757,7 +757,7 @@ static void MoveRelearnerInitListMenuBuffersEtc(void)
|
||||
for (i = 0; i < sMoveRelearner->numLearnableMoves; i++)
|
||||
StringCopy(sMoveRelearner->listMenuStrbufs[i], gMoveNames[sMoveRelearner->learnableMoves[i]]);
|
||||
GetMonData(&gPlayerParty[sMoveRelearner->selectedPartyMember], MON_DATA_NICKNAME, nickname);
|
||||
StringCopy10(gStringVar1, nickname);
|
||||
StringCopy_Nickname(gStringVar1, nickname);
|
||||
StringCopy(sMoveRelearner->listMenuStrbufs[sMoveRelearner->numLearnableMoves], gFameCheckerText_Cancel);
|
||||
sMoveRelearner->numLearnableMoves++;
|
||||
for (i = 0; i < count; i++)
|
||||
@@ -880,7 +880,7 @@ static void PrintMoveInfoHandleCancel_CopyToVram(void)
|
||||
CopyWindowToVram(2, COPYWIN_GFX);
|
||||
CopyWindowToVram(2, COPYWIN_GFX);
|
||||
CopyWindowToVram(5, COPYWIN_GFX);
|
||||
CopyWindowToVram(7, COPYWIN_BOTH);
|
||||
CopyWindowToVram(7, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
static void MoveRelearnerMenu_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list)
|
||||
@@ -928,5 +928,5 @@ static void PrintTextOnWindow(u8 windowId, const u8 *str, u8 x, u8 y, s32 speed,
|
||||
}
|
||||
if (colorIdx != 1)
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(sMoveRelearner->textColor[0]));
|
||||
AddTextPrinterParameterized4(windowId, 3, x, y, letterSpacing, lineSpacing, sMoveRelearner->textColor, speed, str);
|
||||
AddTextPrinterParameterized4(windowId, FONT_3, x, y, letterSpacing, lineSpacing, sMoveRelearner->textColor, speed, str);
|
||||
}
|
||||
|
||||
+13
-13
@@ -6,68 +6,68 @@
|
||||
.text
|
||||
|
||||
thumb_func_start ArcTan2
|
||||
ArcTan2: @ 81E3B58
|
||||
ArcTan2:
|
||||
svc 0xA
|
||||
bx lr
|
||||
thumb_func_end ArcTan2
|
||||
|
||||
thumb_func_start BgAffineSet
|
||||
BgAffineSet: @ 81E3B5C
|
||||
BgAffineSet:
|
||||
svc 0xE
|
||||
bx lr
|
||||
thumb_func_end BgAffineSet
|
||||
|
||||
thumb_func_start CpuFastSet
|
||||
CpuFastSet: @ 81E3B60
|
||||
CpuFastSet:
|
||||
svc 0xC
|
||||
bx lr
|
||||
thumb_func_end CpuFastSet
|
||||
|
||||
thumb_func_start CpuSet
|
||||
CpuSet: @ 81E3B64
|
||||
CpuSet:
|
||||
svc 0xB
|
||||
bx lr
|
||||
thumb_func_end CpuSet
|
||||
|
||||
thumb_func_start Div
|
||||
Div: @ 81E3B68
|
||||
Div:
|
||||
svc 0x6
|
||||
bx lr
|
||||
thumb_func_end Div
|
||||
|
||||
thumb_func_start LZ77UnCompVram
|
||||
LZ77UnCompVram: @ 81E3B6C
|
||||
LZ77UnCompVram:
|
||||
svc 0x12
|
||||
bx lr
|
||||
thumb_func_end LZ77UnCompVram
|
||||
|
||||
thumb_func_start LZ77UnCompWram
|
||||
LZ77UnCompWram: @ 81E3B70
|
||||
LZ77UnCompWram:
|
||||
svc 0x11
|
||||
bx lr
|
||||
thumb_func_end LZ77UnCompWram
|
||||
|
||||
thumb_func_start MultiBoot
|
||||
MultiBoot: @ 81E3B74
|
||||
MultiBoot:
|
||||
movs r1, 0x1
|
||||
svc 0x25
|
||||
bx lr
|
||||
thumb_func_end MultiBoot
|
||||
|
||||
thumb_func_start ObjAffineSet
|
||||
ObjAffineSet: @ 81E3B7C
|
||||
ObjAffineSet:
|
||||
svc 0xF
|
||||
bx lr
|
||||
thumb_func_end ObjAffineSet
|
||||
|
||||
thumb_func_start RegisterRamReset
|
||||
RegisterRamReset: @ 81E3B80
|
||||
RegisterRamReset:
|
||||
svc 0x1
|
||||
bx lr
|
||||
thumb_func_end RegisterRamReset
|
||||
|
||||
thumb_func_start SoftReset
|
||||
SoftReset: @ 81E3B84
|
||||
SoftReset:
|
||||
ldr r3, =REG_IME
|
||||
movs r2, 0
|
||||
strb r2, [r3]
|
||||
@@ -79,13 +79,13 @@ SoftReset: @ 81E3B84
|
||||
thumb_func_end SoftReset
|
||||
|
||||
thumb_func_start Sqrt
|
||||
Sqrt: @ 81E3B9C
|
||||
Sqrt:
|
||||
svc 0x8
|
||||
bx lr
|
||||
thumb_func_end Sqrt
|
||||
|
||||
thumb_func_start VBlankIntrWait
|
||||
VBlankIntrWait: @ 81E3BA0
|
||||
VBlankIntrWait:
|
||||
movs r2, 0
|
||||
svc 0x5
|
||||
bx lr
|
||||
|
||||
+15
-15
@@ -40,7 +40,7 @@
|
||||
.text
|
||||
|
||||
thumb_func_start GameCubeMultiBoot_Hash
|
||||
GameCubeMultiBoot_Hash: @ 81DCB38
|
||||
GameCubeMultiBoot_Hash:
|
||||
push {r4,lr}
|
||||
ldr r4, pool_HashVal
|
||||
eors r3, r1
|
||||
@@ -61,7 +61,7 @@ GameCubeMultiBoot_Hash_SkipEor:
|
||||
|
||||
thumb_func_start GameCubeMultiBoot_Main
|
||||
@ void GameCubeMultiBoot_Main(struct GameCubeMultiBoot *mb)@
|
||||
GameCubeMultiBoot_Main: @ 81DCB4C
|
||||
GameCubeMultiBoot_Main:
|
||||
@ If there is no interrupt handler, skip counter manipulation
|
||||
ldr r1, [r0, GCMB_STRUCT_SERIAL_INTR_HANDLER]
|
||||
cmp r1, 0
|
||||
@@ -246,7 +246,7 @@ pool_NintendoLogo: .4byte RomHeaderNintendoLogo
|
||||
|
||||
thumb_func_start GameCubeMultiBoot_ExecuteProgram
|
||||
@ void GameCubeMultiBoot_ExecuteProgram(struct GameCubeMultiBoot *mb)@
|
||||
GameCubeMultiBoot_ExecuteProgram: @ 81DCC4C
|
||||
GameCubeMultiBoot_ExecuteProgram:
|
||||
@ If there's no multiboot image ready, just return to caller
|
||||
ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS]
|
||||
cmp r1, MBPROGRESS_READY_TO_BOOT
|
||||
@@ -265,7 +265,7 @@ GameCubeMultiBoot_ExecuteProgram_Fail:
|
||||
|
||||
thumb_func_start GameCubeMultiBoot_Init
|
||||
@ void GameCubeMultiBoot_Init(struct GameCubeMultiBoot *mb)@
|
||||
GameCubeMultiBoot_Init: @ 81DCC60
|
||||
GameCubeMultiBoot_Init:
|
||||
ldr r3, pool_InterruptRegs
|
||||
|
||||
@ Save IME register.
|
||||
@@ -336,7 +336,7 @@ GameCubeMultiBoot_Init_ClearStructLoop:
|
||||
|
||||
non_word_aligned_thumb_func_start GameCubeMultiBoot_HandleSerialInterrupt
|
||||
@ void GameCubeMultiBoot_HandleSerialInterrupt(struct GameCubeMultiBoot *mb)@
|
||||
GameCubeMultiBoot_HandleSerialInterrupt: @ 81DCCAA
|
||||
GameCubeMultiBoot_HandleSerialInterrupt:
|
||||
ldr r3, pool_SerialRegs
|
||||
|
||||
@ Acknowledge reset/receive/send flags.
|
||||
@@ -400,7 +400,7 @@ GameCubeMultiBoot_BeginHandshake:
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_CheckGameCodeSent: @ 81DCCEC
|
||||
GcMbIntrHandler_CheckGameCodeSent:
|
||||
lsls r1, 31
|
||||
bcc GcMbIntrHandler_Stop @ stop if send failed
|
||||
bmi GameCubeMultiBoot_CheckHandshakeResponse @ branch if receive is complete
|
||||
@@ -412,7 +412,7 @@ GcMbIntrHandler_CheckGameCodeSent: @ 81DCCEC
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_CheckHandshakeResponse: @ 81DCCF8
|
||||
GcMbIntrHandler_CheckHandshakeResponse:
|
||||
lsrs r1, 1 @ is receive complete?
|
||||
bcc GcMbIntrHandler_Stop @ stop if not
|
||||
|
||||
@@ -429,7 +429,7 @@ GameCubeMultiBoot_CheckHandshakeResponse:
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_ReceiveKeyA: @ 81DCD0C
|
||||
GcMbIntrHandler_ReceiveKeyA:
|
||||
lsrs r1, 1 @ is receive complete?
|
||||
bcc GcMbIntrHandler_Stop @ branch if not
|
||||
ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120]
|
||||
@@ -473,7 +473,7 @@ GameCubeMultiBoot_KeyBCheckEnd:
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_CheckKeyBSent: @ 81DCD4C
|
||||
GcMbIntrHandler_CheckKeyBSent:
|
||||
lsls r1, 31
|
||||
bcc GcMbIntrHandler_Stop @ stop if send failed
|
||||
bmi GameCubeMultiBoot_CheckImageSizeResponse @ branch if receive is complete
|
||||
@@ -482,7 +482,7 @@ GcMbIntrHandler_CheckKeyBSent: @ 81DCD4C
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_CheckImageSizeResponse: @ 81DCD58
|
||||
GcMbIntrHandler_CheckImageSizeResponse:
|
||||
lsrs r1, 1 @ is receive complete?
|
||||
bcc GcMbIntrHandler_Stop @ branch if not
|
||||
GameCubeMultiBoot_CheckImageSizeResponse:
|
||||
@@ -505,7 +505,7 @@ GcMbIntrHandler_StopIfNotEqual:
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_CheckImageResponse: @ 81DCD7C
|
||||
GcMbIntrHandler_CheckImageResponse:
|
||||
lsrs r1, 1 @ is receive complete?
|
||||
bcc GcMbIntrHandler_Stop @ branch if not
|
||||
ldr r2, [r0, GCMB_STRUCT_CUR_DEST_PTR]
|
||||
@@ -553,7 +553,7 @@ GcMbIntrHandler_StopIfSendFailed:
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_CheckKeyCDerivationSent: @ 81DCDB8
|
||||
GcMbIntrHandler_CheckKeyCDerivationSent:
|
||||
lsls r1, 31
|
||||
bcc GcMbIntrHandler_StopIfSendFailed @ branch if send failed
|
||||
bmi GameCubeMultiBoot_CheckBootKeyResponse @ branch if receive is complete
|
||||
@@ -562,7 +562,7 @@ GcMbIntrHandler_CheckKeyCDerivationSent: @ 81DCDB8
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_CheckBootKeyResponse: @ 81DCDC4
|
||||
GcMbIntrHandler_CheckBootKeyResponse:
|
||||
lsrs r1, 1 @ is receive complete?
|
||||
bcc GcMbIntrHandler_StopIfSendFailed @ branch if not
|
||||
|
||||
@@ -580,14 +580,14 @@ GameCubeMultiBoot_CheckBootKeyResponse:
|
||||
|
||||
.align 2, 0
|
||||
|
||||
GcMbIntrHandler_StopUnconditionally: @ 81DCDD8
|
||||
GcMbIntrHandler_StopUnconditionally:
|
||||
b GcMbIntrHandler_Stop
|
||||
|
||||
thumb_func_end GameCubeMultiBoot_HandleSerialInterrupt
|
||||
|
||||
non_word_aligned_thumb_func_start GameCubeMultiBoot_Quit
|
||||
@ void GameCubeMultiBoot_Quit()@
|
||||
GameCubeMultiBoot_Quit: @ 81DCDDA
|
||||
GameCubeMultiBoot_Quit:
|
||||
ldr r3, pool_InterruptRegs
|
||||
|
||||
@ Save IME register.
|
||||
|
||||
+16
-16
@@ -40,7 +40,7 @@ static void sio32intr_clock_master(void)
|
||||
{
|
||||
if (gSTWIStatus->reqNext <= gSTWIStatus->reqLength)
|
||||
{
|
||||
REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket->rfuPacket8.data)[gSTWIStatus->reqNext];
|
||||
REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket->rfuPacket8.data)[gSTWIStatus->reqNext];
|
||||
gSTWIStatus->reqNext++;
|
||||
}
|
||||
else
|
||||
@@ -61,7 +61,7 @@ static void sio32intr_clock_master(void)
|
||||
if ((regSIODATA32 & 0xFFFF0000) == 0x99660000)
|
||||
{
|
||||
gSTWIStatus->ackNext = 0;
|
||||
((u32*)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32;
|
||||
((u32 *)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32;
|
||||
gSTWIStatus->ackNext++;
|
||||
gSTWIStatus->ackActiveCommand = regSIODATA32;
|
||||
gSTWIStatus->ackLength = ackLen = regSIODATA32 >> 8;
|
||||
@@ -84,7 +84,7 @@ static void sio32intr_clock_master(void)
|
||||
}
|
||||
else if (gSTWIStatus->state == 2) // master receive ack
|
||||
{
|
||||
((u32*)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32;
|
||||
((u32 *)gSTWIStatus->rxPacket)[gSTWIStatus->ackNext] = regSIODATA32;
|
||||
gSTWIStatus->ackNext++;
|
||||
if (gSTWIStatus->ackLength < gSTWIStatus->ackNext)
|
||||
gSTWIStatus->state = 3; // master done ack
|
||||
@@ -157,7 +157,7 @@ static void sio32intr_clock_slave(void)
|
||||
regSIODATA32 = REG_SIODATA32;
|
||||
if (gSTWIStatus->state == 5) // slave receive req init
|
||||
{
|
||||
((u32*)gSTWIStatus->rxPacket)[0] = regSIODATA32;
|
||||
((u32 *)gSTWIStatus->rxPacket)[0] = regSIODATA32;
|
||||
gSTWIStatus->reqNext = 1;
|
||||
r0 = 0x99660000;
|
||||
// variable reuse required
|
||||
@@ -178,24 +178,24 @@ static void sio32intr_clock_slave(void)
|
||||
)
|
||||
{
|
||||
gSTWIStatus->ackActiveCommand = gSTWIStatus->reqActiveCommand + 0x80;
|
||||
((u32*)gSTWIStatus->txPacket)[0] = 0x99660000 + gSTWIStatus->ackActiveCommand;
|
||||
((u32 *)gSTWIStatus->txPacket)[0] = 0x99660000 + gSTWIStatus->ackActiveCommand;
|
||||
gSTWIStatus->ackLength = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
((u32*)gSTWIStatus->txPacket)[0] = 0x996601EE;
|
||||
((u32 *)gSTWIStatus->txPacket)[0] = 0x996601EE;
|
||||
if (gSTWIStatus->reqActiveCommand >= 0x10 && gSTWIStatus->reqActiveCommand <= 0x3D)
|
||||
{
|
||||
((u32*)gSTWIStatus->txPacket)[1] = 1;
|
||||
((u32 *)gSTWIStatus->txPacket)[1] = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
((u32*)gSTWIStatus->txPacket)[1] = 2;
|
||||
((u32 *)gSTWIStatus->txPacket)[1] = 2;
|
||||
}
|
||||
gSTWIStatus->ackLength = 1;
|
||||
gSTWIStatus->error = ERR_REQ_CMD_ACK_REJECTION;
|
||||
}
|
||||
REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket)[0];
|
||||
REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket)[0];
|
||||
gSTWIStatus->ackNext = 1;
|
||||
gSTWIStatus->state = 7; // slave send ack
|
||||
}
|
||||
@@ -215,7 +215,7 @@ static void sio32intr_clock_slave(void)
|
||||
}
|
||||
else if (gSTWIStatus->state == 6) // slave receive req
|
||||
{
|
||||
((u32*)gSTWIStatus->rxPacket)[gSTWIStatus->reqNext] = regSIODATA32;
|
||||
((u32 *)gSTWIStatus->rxPacket)[gSTWIStatus->reqNext] = regSIODATA32;
|
||||
gSTWIStatus->reqNext++;
|
||||
if (gSTWIStatus->reqLength < gSTWIStatus->reqNext)
|
||||
{
|
||||
@@ -226,24 +226,24 @@ static void sio32intr_clock_slave(void)
|
||||
)
|
||||
{
|
||||
gSTWIStatus->ackActiveCommand = gSTWIStatus->reqActiveCommand + 0x80;
|
||||
((u32*)gSTWIStatus->txPacket)[0] = 0x99660000 | gSTWIStatus->ackActiveCommand;
|
||||
((u32 *)gSTWIStatus->txPacket)[0] = 0x99660000 | gSTWIStatus->ackActiveCommand;
|
||||
gSTWIStatus->ackLength = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
((u32*)gSTWIStatus->txPacket)[0] = 0x996601EE;
|
||||
((u32 *)gSTWIStatus->txPacket)[0] = 0x996601EE;
|
||||
if (gSTWIStatus->reqActiveCommand >= 0x10 && gSTWIStatus->reqActiveCommand <= 0x3D)
|
||||
{
|
||||
((u32*)gSTWIStatus->txPacket)[1] = 1;
|
||||
((u32 *)gSTWIStatus->txPacket)[1] = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
((u32*)gSTWIStatus->txPacket)[1] = 2;
|
||||
((u32 *)gSTWIStatus->txPacket)[1] = 2;
|
||||
}
|
||||
gSTWIStatus->ackLength = 1;
|
||||
gSTWIStatus->error = ERR_REQ_CMD_ACK_REJECTION;
|
||||
}
|
||||
REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket)[0];
|
||||
REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket)[0];
|
||||
gSTWIStatus->ackNext = 1;
|
||||
gSTWIStatus->state = 7; // slave send ack
|
||||
}
|
||||
@@ -262,7 +262,7 @@ static void sio32intr_clock_slave(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
REG_SIODATA32 = ((u32*)gSTWIStatus->txPacket)[gSTWIStatus->ackNext];
|
||||
REG_SIODATA32 = ((u32 *)gSTWIStatus->txPacket)[gSTWIStatus->ackNext];
|
||||
gSTWIStatus->ackNext++;
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -118,7 +118,7 @@ void STWI_init_Callback_S(void)
|
||||
STWI_set_Callback_S(NULL);
|
||||
}
|
||||
|
||||
// The callback can take 2 or 3 arguments.
|
||||
// The callback can take 2 or 3 arguments.
|
||||
void STWI_set_Callback_M(void *callbackM)
|
||||
{
|
||||
gSTWIStatus->callbackM = callbackM;
|
||||
@@ -235,7 +235,7 @@ void STWI_send_SystemConfigREQ(u16 availSlotFlag, u8 maxMFrame, u8 mcTimer)
|
||||
packetBytes += sizeof(u32);
|
||||
*packetBytes++ = mcTimer;
|
||||
*packetBytes++ = maxMFrame;
|
||||
*(u16*)packetBytes = availSlotFlag;
|
||||
*(u16 *)packetBytes = availSlotFlag;
|
||||
STWI_start_Command();
|
||||
}
|
||||
}
|
||||
|
||||
+10
-10
@@ -449,7 +449,7 @@ void LinkTestProcessKeyInput(void)
|
||||
}
|
||||
if (JOY_NEW(L_BUTTON))
|
||||
{
|
||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB(2, 0, 0));
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB(2, 0, 0));
|
||||
}
|
||||
if (JOY_NEW(START_BUTTON))
|
||||
{
|
||||
@@ -1369,7 +1369,7 @@ static void LinkCB_WaitAckCommand5FFF(void)
|
||||
}
|
||||
if (count == linkPlayerCount)
|
||||
{
|
||||
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_ESTABLISHED | 0xFFFF0000);
|
||||
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_IN_BATTLE | 0xFFFF0000);
|
||||
gLinkVSyncDisabled = TRUE;
|
||||
CloseLink();
|
||||
gLinkCallback = NULL;
|
||||
@@ -1461,7 +1461,7 @@ void CB2_LinkError(void)
|
||||
ResetSpriteData();
|
||||
FreeAllSpritePalettes();
|
||||
ResetPaletteFadeControl();
|
||||
FillPalette(0, 0, 2);
|
||||
FillPalette(RGB_BLACK, 0, 2);
|
||||
ResetTasks();
|
||||
ScanlineEffect_Stop();
|
||||
if (gWirelessCommType)
|
||||
@@ -1508,12 +1508,12 @@ void sub_800AE1C(void)
|
||||
LoadPalette(sWirelessLinkDisplayPal, 0, 0x20);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
FillWindowPixelBuffer(2, PIXEL_FILL(0));
|
||||
AddTextPrinterParameterized3(0, 3, 2, 5, sLinkErrorTextColor, 0, gText_CommErrorEllipsis);
|
||||
AddTextPrinterParameterized3(2, 3, 2, 2, sLinkErrorTextColor, 0, gText_MoveCloserToLinkPartner);
|
||||
AddTextPrinterParameterized3(0, FONT_3, 2, 5, sLinkErrorTextColor, 0, gText_CommErrorEllipsis);
|
||||
AddTextPrinterParameterized3(2, FONT_3, 2, 2, sLinkErrorTextColor, 0, gText_MoveCloserToLinkPartner);
|
||||
PutWindowTilemap(0);
|
||||
PutWindowTilemap(2);
|
||||
CopyWindowToVram(0, 0);
|
||||
CopyWindowToVram(2, COPYWIN_BOTH);
|
||||
CopyWindowToVram(2, COPYWIN_FULL);
|
||||
ShowBg(0);
|
||||
ShowBg(1);
|
||||
}
|
||||
@@ -1522,11 +1522,11 @@ void sub_800AED0(void)
|
||||
{
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(0));
|
||||
FillWindowPixelBuffer(2, PIXEL_FILL(0));
|
||||
AddTextPrinterParameterized3(1, 3, 2, 0, sLinkErrorTextColor, 0, gText_CommErrorCheckConnections);
|
||||
AddTextPrinterParameterized3(1, FONT_3, 2, 0, sLinkErrorTextColor, 0, gText_CommErrorCheckConnections);
|
||||
PutWindowTilemap(1);
|
||||
PutWindowTilemap(2);
|
||||
CopyWindowToVram(1, 0);
|
||||
CopyWindowToVram(2, COPYWIN_BOTH);
|
||||
CopyWindowToVram(2, COPYWIN_FULL);
|
||||
ShowBg(0);
|
||||
}
|
||||
|
||||
@@ -1556,11 +1556,11 @@ static void CB2_PrintErrorMessage(void)
|
||||
case 130:
|
||||
if (gWirelessCommType == 2)
|
||||
{
|
||||
AddTextPrinterParameterized3(0, 3, 2, 20, sLinkErrorTextColor, 0, gText_ABtnTitleScreen);
|
||||
AddTextPrinterParameterized3(0, FONT_3, 2, 20, sLinkErrorTextColor, 0, gText_ABtnTitleScreen);
|
||||
}
|
||||
else if (gWirelessCommType == 1)
|
||||
{
|
||||
AddTextPrinterParameterized3(0, 3, 2, 20, sLinkErrorTextColor, 0, gText_ABtnRegistrationCounter);
|
||||
AddTextPrinterParameterized3(0, FONT_3, 2, 20, sLinkErrorTextColor, 0, gText_ABtnRegistrationCounter);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
+9
-9
@@ -61,7 +61,7 @@ static void UpdateChildStatuses(void);
|
||||
static s32 GetRfuRecvStatus(void);
|
||||
static void sub_80FA834(u8 taskId);
|
||||
static void ClearSelectedLinkPlayerIds(u16 disconnectMask);
|
||||
static void ValidateAndReceivePokemonSioInfo(void * a0);
|
||||
static void ValidateAndReceivePokemonSioInfo(void *a0);
|
||||
static void Task_ExchangeLinkPlayers(u8 taskId);
|
||||
static void sub_80FACF0(u8 taskId);
|
||||
static void GetLinkmanErrorParams(u32 msg);
|
||||
@@ -280,7 +280,7 @@ static void Task_LinkLeaderSearchForChildren(u8 taskId)
|
||||
case 1:
|
||||
break;
|
||||
case 2:
|
||||
rfu_LMAN_establishConnection(Rfu.parent_child, 0, 240, (u16*)sAcceptedSerialNos);
|
||||
rfu_LMAN_establishConnection(Rfu.parent_child, 0, 240, (u16 *)sAcceptedSerialNos);
|
||||
Rfu.state = 3;
|
||||
gTasks[taskId].data[1] = 6;
|
||||
break;
|
||||
@@ -371,7 +371,7 @@ static void Task_JoinGroupSearchForParent(u8 taskId)
|
||||
case 1:
|
||||
break;
|
||||
case 6:
|
||||
rfu_LMAN_establishConnection(Rfu.parent_child, 0, 240, (u16*)sAcceptedSerialNos);
|
||||
rfu_LMAN_establishConnection(Rfu.parent_child, 0, 240, (u16 *)sAcceptedSerialNos);
|
||||
Rfu.state = 7;
|
||||
gTasks[taskId].data[1] = 7;
|
||||
break;
|
||||
@@ -456,7 +456,7 @@ static void Task_LinkRfu_UnionRoomListen(u8 taskId)
|
||||
case 1:
|
||||
break;
|
||||
case 17:
|
||||
rfu_LMAN_establishConnection(MODE_P_C_SWITCH, 0, 240, (u16*)sAcceptedSerialNos);
|
||||
rfu_LMAN_establishConnection(MODE_P_C_SWITCH, 0, 240, (u16 *)sAcceptedSerialNos);
|
||||
rfu_LMAN_setMSCCallback(MscCallback_Child);
|
||||
Rfu.state = 18;
|
||||
break;
|
||||
@@ -501,7 +501,7 @@ static void Task_LinkRfu_UnionRoomListen(u8 taskId)
|
||||
|
||||
void LinkRfu_CreateConnectionAsParent(void)
|
||||
{
|
||||
rfu_LMAN_establishConnection(MODE_PARENT, 0, 240, (u16*)sAcceptedSerialNos);
|
||||
rfu_LMAN_establishConnection(MODE_PARENT, 0, 240, (u16 *)sAcceptedSerialNos);
|
||||
}
|
||||
|
||||
void LinkRfu_StopManagerBeforeEnteringChat(void)
|
||||
@@ -1220,7 +1220,7 @@ static void RfuPrepareSendBuffer(u16 command)
|
||||
}
|
||||
}
|
||||
|
||||
void Rfu_SendPacket(void * data)
|
||||
void Rfu_SendPacket(void *data)
|
||||
{
|
||||
if (IsSendCmdComplete() && !RfuHasErrored())
|
||||
{
|
||||
@@ -1373,7 +1373,7 @@ static void WaitAllReadyToCloseLink(void)
|
||||
}
|
||||
if (count == playerCount)
|
||||
{
|
||||
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_ESTABLISHED | 0xFFFF0000);
|
||||
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_IN_BATTLE | 0xFFFF0000);
|
||||
if (Rfu.parent_child == MODE_CHILD)
|
||||
{
|
||||
Rfu.errorState = 3;
|
||||
@@ -2647,7 +2647,7 @@ static void Task_RfuReconnectWithParent(u8 taskId)
|
||||
|
||||
if (ContactedByParentAttemptingToReconnect())
|
||||
{
|
||||
u8 id = GetPartnerIndexByNameAndTrainerID((u8*)data, ReadU16(&data[8]));
|
||||
u8 id = GetPartnerIndexByNameAndTrainerID((u8 *)data, ReadU16(&data[8]));
|
||||
if (id != 0xFF)
|
||||
{
|
||||
if (gRfuLinkStatus->partner[id].slot != 0xFF)
|
||||
@@ -2692,7 +2692,7 @@ void CreateTask_RfuReconnectWithParent(const u8 *trainerName, u16 trainerId)
|
||||
Rfu.status = RFU_STATUS_OK;
|
||||
taskId = CreateTask(Task_RfuReconnectWithParent, 3);
|
||||
data = gTasks[taskId].data;
|
||||
StringCopy((u8*)(data), trainerName);
|
||||
StringCopy((u8 *)(data), trainerName);
|
||||
data[8] = trainerId;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -199,7 +199,7 @@ static const u8 sWireless_RSEtoASCIITable[] = {
|
||||
0x20, 0x20, 0x2b, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
|
||||
[CHAR_DYNAMIC_PLACEHOLDER] = ' ',
|
||||
[CHAR_KEYPAD_ICON] = ' ',
|
||||
[CHAR_EXTRA_EMOJI] = ' ',
|
||||
[CHAR_EXTRA_SYMBOL] = ' ',
|
||||
[CHAR_PROMPT_SCROLL] = ' ',
|
||||
[CHAR_PROMPT_CLEAR] = ' ',
|
||||
[EXT_CTRL_CODE_BEGIN] = ' ',
|
||||
|
||||
+3
-3
@@ -346,7 +346,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y)
|
||||
colors[0] = gListMenuOverride.fillValue;
|
||||
colors[1] = gListMenuOverride.cursorPal;
|
||||
colors[2] = gListMenuOverride.cursorShadowPal;
|
||||
AddTextPrinterParameterized4(list->template.windowId, gListMenuOverride.fontId, x, y, gListMenuOverride.lettersSpacing, 0, colors, TEXT_SPEED_FF, str);
|
||||
AddTextPrinterParameterized4(list->template.windowId, gListMenuOverride.fontId, x, y, gListMenuOverride.lettersSpacing, 0, colors, TEXT_SKIP_DRAW, str);
|
||||
gListMenuOverride.enabled = FALSE;
|
||||
}
|
||||
else
|
||||
@@ -354,7 +354,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y)
|
||||
colors[0] = list->template.fillValue;
|
||||
colors[1] = list->template.cursorPal;
|
||||
colors[2] = list->template.cursorShadowPal;
|
||||
AddTextPrinterParameterized4(list->template.windowId, list->template.fontId, x, y, list->template.lettersSpacing, 0, colors, TEXT_SPEED_FF, str);
|
||||
AddTextPrinterParameterized4(list->template.windowId, list->template.fontId, x, y, list->template.lettersSpacing, 0, colors, TEXT_SKIP_DRAW, str);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -413,7 +413,7 @@ static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind)
|
||||
cursor.rowWidth = GetWindowAttribute(list->template.windowId, WINDOW_WIDTH) * 8 + 2;
|
||||
cursor.rowHeight = GetFontAttribute(list->template.fontId, FONTATTR_MAX_LETTER_HEIGHT) + 2;
|
||||
cursor.tileTag = 0x4000;
|
||||
cursor.palTag = SPRITE_INVALID_TAG;
|
||||
cursor.palTag = TAG_NONE;
|
||||
cursor.palNum = 15;
|
||||
return ListMenuAddCursorObjectInternal(&cursor, cursorKind);
|
||||
}
|
||||
|
||||
+3
-3
@@ -72,9 +72,9 @@ void SetSaveBlocksPointers(void)
|
||||
|
||||
offset = (Random()) & ((SAVEBLOCK_MOVE_RANGE - 1) & ~3);
|
||||
|
||||
gSaveBlock2Ptr = (void*)(&gSaveBlock2) + offset;
|
||||
*sav1_LocalVar = (void*)(&gSaveBlock1) + offset;
|
||||
gPokemonStoragePtr = (void*)(&gPokemonStorage) + offset;
|
||||
gSaveBlock2Ptr = (void *)(&gSaveBlock2) + offset;
|
||||
*sav1_LocalVar = (void *)(&gSaveBlock1) + offset;
|
||||
gPokemonStoragePtr = (void *)(&gPokemonStorage) + offset;
|
||||
|
||||
SetBagPocketsPointers();
|
||||
SetQuestLogRecordAndPlaybackPointers(oldSave);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user