Merge branch 'master' of https://github.com/pret/pokefirered into doc-ql
This commit is contained in:
@@ -20,27 +20,27 @@ static const u8 sTextColors[][3] = {
|
||||
static const struct WindowTemplate sDefaultBagWindowsStd[] = {
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x0b,
|
||||
.tilemapTop = 0x01,
|
||||
.width = 0x12,
|
||||
.height = 0x0c,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 11,
|
||||
.tilemapTop = 1,
|
||||
.width = 18,
|
||||
.height = 12,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x008a
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x05,
|
||||
.tilemapTop = 0x0e,
|
||||
.width = 0x19,
|
||||
.height = 0x06,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 5,
|
||||
.tilemapTop = 14,
|
||||
.width = 25,
|
||||
.height = 6,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x0162
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x01,
|
||||
.width = 0x09,
|
||||
.height = 0x02,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 1,
|
||||
.width = 9,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x01f8
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -48,27 +48,27 @@ static const struct WindowTemplate sDefaultBagWindowsStd[] = {
|
||||
static const struct WindowTemplate sDefaultBagWindowsDeposit[] = {
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x0b,
|
||||
.tilemapTop = 0x01,
|
||||
.width = 0x12,
|
||||
.height = 0x0c,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 11,
|
||||
.tilemapTop = 1,
|
||||
.width = 18,
|
||||
.height = 12,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x008a
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x05,
|
||||
.tilemapTop = 0x0e,
|
||||
.width = 0x19,
|
||||
.height = 0x06,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 5,
|
||||
.tilemapTop = 14,
|
||||
.width = 25,
|
||||
.height = 6,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x0162
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x01,
|
||||
.width = 0x08,
|
||||
.height = 0x02,
|
||||
.paletteNum = 0x0C,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 1,
|
||||
.width = 8,
|
||||
.height = 2,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x01f8
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -80,7 +80,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 5,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x242
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -88,7 +88,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 9,
|
||||
.width = 12,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x242
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -96,7 +96,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 1,
|
||||
.width = 8,
|
||||
.height = 3,
|
||||
.paletteNum = 0xC,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x272
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -104,7 +104,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x28a
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -112,7 +112,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 9,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x28a
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -120,7 +120,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 26,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x2a2
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -128,7 +128,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 14,
|
||||
.height = 4,
|
||||
.paletteNum = 0xC,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x2a2
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -136,7 +136,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 15,
|
||||
.height = 4,
|
||||
.paletteNum = 0xC,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x2da
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -144,7 +144,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 16,
|
||||
.height = 4,
|
||||
.paletteNum = 0xC,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x316
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -152,7 +152,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 23,
|
||||
.height = 4,
|
||||
.paletteNum = 0xC,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x356
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -160,7 +160,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 17,
|
||||
.width = 7,
|
||||
.height = 2,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x20a
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -168,7 +168,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 7,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x20a
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -176,7 +176,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 13,
|
||||
.width = 7,
|
||||
.height = 6,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x20a
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -184,7 +184,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 11,
|
||||
.width = 7,
|
||||
.height = 8,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x20a
|
||||
}
|
||||
};
|
||||
@@ -202,10 +202,10 @@ void InitBagWindows(void)
|
||||
else
|
||||
InitWindows(sDefaultBagWindowsDeposit);
|
||||
DeactivateAllTextPrinters();
|
||||
LoadUserWindowGfx(0, 0x64, 0xE0);
|
||||
LoadMenuMessageWindowGfx(0, 0x6D, 0xD0);
|
||||
LoadStdWindowGfx(0, 0x81, 0xC0);
|
||||
LoadPalette(sBagWindowPalF, 0xF0, 0x20);
|
||||
LoadUserWindowGfx(0, 0x64, BG_PLTT_ID(14));
|
||||
LoadMenuMessageWindowGfx(0, 0x6D, BG_PLTT_ID(13));
|
||||
LoadStdWindowGfx(0, 0x81, BG_PLTT_ID(12));
|
||||
LoadPalette(sBagWindowPalF, BG_PLTT_ID(15), sizeof(sBagWindowPalF));
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
FillWindowPixelBuffer(i, 0x00);
|
||||
@@ -232,7 +232,7 @@ void BagPrintTextOnWin1CenteredColor0(const u8 * str, u8 unused)
|
||||
void BagDrawDepositItemTextBox(void)
|
||||
{
|
||||
u32 x;
|
||||
DrawStdFrameWithCustomTileAndPalette(2, FALSE, 0x081, 0x0C);
|
||||
DrawStdFrameWithCustomTileAndPalette(2, FALSE, 0x081, 12);
|
||||
x = 0x40 - GetStringWidth(FONT_SMALL, gText_DepositItem, 0);
|
||||
AddTextPrinterParameterized(2, FONT_SMALL, gText_DepositItem, x / 2, 1, 0, NULL);
|
||||
}
|
||||
@@ -244,11 +244,11 @@ u8 ShowBagWindow(u8 whichWindow, u8 nItems)
|
||||
sOpenWindows[whichWindow] = AddWindow(&sWindowTemplates[whichWindow + nItems]);
|
||||
if (whichWindow != 6)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x064, 0xE);
|
||||
DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x064, 14);
|
||||
}
|
||||
else
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x081, 0xC);
|
||||
DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x081, 12);
|
||||
}
|
||||
ScheduleBgCopyTilemapToVram(0);
|
||||
}
|
||||
@@ -293,12 +293,12 @@ u8 GetBagWindow(u8 whichWindow)
|
||||
|
||||
void BagCreateYesNoMenuBottomRight(u8 taskId, const struct YesNoFuncTable * ptrs)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[3], FONT_NORMAL, 0, 2, 0x064, 0x0E, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[3], FONT_NORMAL, 0, 2, 0x064, 14, ptrs);
|
||||
}
|
||||
|
||||
void BagCreateYesNoMenuTopRight(u8 taskId, const struct YesNoFuncTable * ptrs)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[4], FONT_NORMAL, 0, 2, 0x064, 0x0E, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[4], FONT_NORMAL, 0, 2, 0x064, 14, ptrs);
|
||||
}
|
||||
|
||||
void BagPrintMoneyAmount(void)
|
||||
@@ -308,5 +308,5 @@ void BagPrintMoneyAmount(void)
|
||||
|
||||
void BagDrawTextBoxOnWindow(u8 windowId)
|
||||
{
|
||||
DrawTextBorderOuter(windowId, 0x064, 0x0E);
|
||||
DrawTextBorderOuter(windowId, 0x064, 14);
|
||||
}
|
||||
|
||||
+7
-17
@@ -654,8 +654,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
|
||||
SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X);
|
||||
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);
|
||||
LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], (void *)(BG_PLTT + animBg.paletteId * PLTT_SIZE_4BPP), PLTT_SIZE_4BPP);
|
||||
|
||||
CopyBattlerSpriteToBg(1, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles,
|
||||
animBg.bgTilemap, animBg.tilesOffset);
|
||||
@@ -679,8 +679,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
|
||||
SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X);
|
||||
SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
|
||||
|
||||
LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + 0x120), 0x20);
|
||||
LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(9), PLTT_SIZE_4BPP);
|
||||
CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], (void *)(BG_PLTT + 9 * PLTT_SIZE_4BPP), PLTT_SIZE_4BPP);
|
||||
|
||||
CopyBattlerSpriteToBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000,
|
||||
animBg.bgTilemap + 0x400, animBg.tilesOffset);
|
||||
@@ -739,25 +739,15 @@ static void Task_InitUpdateMonBg(u8 taskId)
|
||||
|
||||
if (gTasks[taskId].data[5] == 0)
|
||||
{
|
||||
u16 *src;
|
||||
u16 *dst;
|
||||
|
||||
gBattle_BG1_X = x + gTasks[taskId].data[3];
|
||||
gBattle_BG1_Y = y + gTasks[taskId].data[4];
|
||||
src = gPlttBufferFaded + 0x100 + palIndex * 16;
|
||||
dst = gPlttBufferFaded + 0x100 + animBg.paletteId * 16 - 256;
|
||||
CpuCopy32(src, dst, 0x20);
|
||||
CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(palIndex)], &gPlttBufferFaded[BG_PLTT_ID(animBg.paletteId)], PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
u16 *src;
|
||||
u16 *dst;
|
||||
|
||||
gBattle_BG2_X = x + gTasks[taskId].data[3];
|
||||
gBattle_BG2_Y = y + gTasks[taskId].data[4];
|
||||
src = gPlttBufferFaded + 0x100 + palIndex * 16;
|
||||
dst = gPlttBufferFaded + 0x100 - 112;
|
||||
CpuCopy32(src, dst, 0x20);
|
||||
CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(palIndex)], &gPlttBufferFaded[BG_PLTT_ID(9)], PLTT_SIZE_4BPP);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1113,7 +1103,7 @@ static void LoadMoveBg(u16 bgId)
|
||||
{
|
||||
LZDecompressVram(gBattleAnimBackgroundTable[bgId].tilemap, (void *)(BG_SCREEN_ADDR(26)));
|
||||
LZDecompressVram(gBattleAnimBackgroundTable[bgId].image, (void *)(BG_CHAR_ADDR(2)));
|
||||
LoadCompressedPalette(gBattleAnimBackgroundTable[bgId].palette, 32, 32);
|
||||
LoadCompressedPalette(gBattleAnimBackgroundTable[bgId].palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void LoadDefaultBg(void)
|
||||
|
||||
@@ -415,7 +415,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(RGB_BLACK, animBg.paletteId * 16, 32);
|
||||
FillPalette(RGB_BLACK, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
scanlineParams.dmaDest = ®_BG1VOFS;
|
||||
var0 = WINOUT_WIN01_BG1;
|
||||
if (!IsContest())
|
||||
@@ -425,7 +425,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(RGB_BLACK, 144, 32);
|
||||
FillPalette(RGB_BLACK, BG_PLTT_ID(9), PLTT_SIZE_4BPP);
|
||||
scanlineParams.dmaDest = ®_BG2VOFS;
|
||||
var0 = WINOUT_WIN01_BG2;
|
||||
if (!IsContest())
|
||||
@@ -545,12 +545,12 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId)
|
||||
{
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
task->data[10] = gBattle_BG1_Y;
|
||||
FillPalette(RGB_BLACK, animBg.paletteId * 16, 32);
|
||||
FillPalette(RGB_BLACK, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
task->data[10] = gBattle_BG2_Y;
|
||||
FillPalette(RGB_BLACK, 9 * 16, 32);
|
||||
FillPalette(RGB_BLACK, BG_PLTT_ID(9), PLTT_SIZE_4BPP);
|
||||
}
|
||||
SetAllBattlersSpritePriority(3);
|
||||
++task->data[0];
|
||||
@@ -806,14 +806,14 @@ void AnimTask_MetallicShine(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gMetalShineTilemap);
|
||||
AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset);
|
||||
LoadCompressedPalette(gMetalShinePalette, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gMetalShinePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
gBattle_BG1_X = -gSprites[spriteId].x + 96;
|
||||
gBattle_BG1_Y = -gSprites[spriteId].y + 32;
|
||||
paletteNum = 16 + gSprites[spriteId].oam.paletteNum;
|
||||
if (gBattleAnimArgs[1] == 0)
|
||||
SetGreyscaleOrOriginalPalette(paletteNum, FALSE);
|
||||
else
|
||||
BlendPalette(paletteNum * 16, 16, 11, gBattleAnimArgs[2]);
|
||||
BlendPalette(PLTT_ID(paletteNum), 16, 11, gBattleAnimArgs[2]);
|
||||
gTasks[taskId].data[0] = newSpriteId;
|
||||
gTasks[taskId].data[1] = gBattleAnimArgs[0];
|
||||
gTasks[taskId].data[2] = gBattleAnimArgs[1];
|
||||
|
||||
@@ -3672,8 +3672,8 @@ void AnimTask_CycleMagicalLeafPal(u8 taskId)
|
||||
switch (task->data[0])
|
||||
{
|
||||
case 0:
|
||||
task->data[8] = IndexOfSpritePaletteTag(ANIM_TAG_LEAF) * 16 + 256;
|
||||
task->data[12] = IndexOfSpritePaletteTag(ANIM_TAG_RAZOR_LEAF) * 16 + 256;
|
||||
task->data[8] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_LEAF));
|
||||
task->data[12] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_RAZOR_LEAF));
|
||||
task->data[0]++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -3996,7 +3996,7 @@ static void AnimProtect(struct Sprite* sprite)
|
||||
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
|
||||
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
sprite->data[2] = (IndexOfSpritePaletteTag(ANIM_TAG_PROTECT) << 4) + 0x100;
|
||||
sprite->data[2] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_PROTECT));
|
||||
sprite->data[7] = 16;
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16 - sprite->data[7], sprite->data[7]));
|
||||
@@ -4384,7 +4384,7 @@ static void AnimLockOnTarget_Step4(struct Sprite* sprite)
|
||||
int pal;
|
||||
sprite->data[2]++;
|
||||
pal = sprite->oam.paletteNum;
|
||||
LoadPalette(&gPlttBufferUnfaded[0x108 + pal * 16], pal * 16 | 0x101, 4);
|
||||
LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(pal) + 8], OBJ_PLTT_ID(pal) + 1, PLTT_SIZEOF(2));
|
||||
PlaySE12WithPanning(SE_M_LEER, BattleAnimAdjustPanning(SOUND_PAN_TARGET));
|
||||
}
|
||||
else if (sprite->data[1] == 0)
|
||||
@@ -5216,8 +5216,8 @@ void AnimTask_DoubleTeam(u8 taskId)
|
||||
|
||||
task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
|
||||
task->data[1] = AllocSpritePalette(ANIM_TAG_BENT_SPOON);
|
||||
r3 = (task->data[1] * 16) + 0x100;
|
||||
r4 = (gSprites[task->data[0]].oam.paletteNum + 16) << 4;
|
||||
r3 = OBJ_PLTT_ID(task->data[1]);
|
||||
r4 = OBJ_PLTT_ID2(gSprites[task->data[0]].oam.paletteNum);
|
||||
for (i = 1; i < 16; i++)
|
||||
gPlttBufferUnfaded[r3 + i] = gPlttBufferUnfaded[r4 + i];
|
||||
|
||||
@@ -5295,7 +5295,7 @@ void AnimTask_MusicNotesRainbowBlend(u8 taskId)
|
||||
index = IndexOfSpritePaletteTag(sParticlesColorBlendTable[0][0]);
|
||||
if (index != 0xFF)
|
||||
{
|
||||
index = (index << 4) + 0x100;
|
||||
index = OBJ_PLTT_ID(index);
|
||||
for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++)
|
||||
gPlttBufferFaded[index + i] = sParticlesColorBlendTable[0][i];
|
||||
}
|
||||
@@ -5305,7 +5305,7 @@ void AnimTask_MusicNotesRainbowBlend(u8 taskId)
|
||||
index = AllocSpritePalette(sParticlesColorBlendTable[j][0]);
|
||||
if (index != 0xFF)
|
||||
{
|
||||
index = (index << 4) + 0x100;
|
||||
index = OBJ_PLTT_ID(index);
|
||||
for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++)
|
||||
gPlttBufferFaded[index + i] = sParticlesColorBlendTable[j][i];
|
||||
}
|
||||
|
||||
@@ -1744,7 +1744,7 @@ void AnimTask_AirCutterProjectile(u8 taskId)
|
||||
static void AnimVoidLines(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, FALSE);
|
||||
sprite->data[0] = 0x100 + (IndexOfSpritePaletteTag(sVoidLinesSpriteTemplate.paletteTag) << 4);
|
||||
sprite->data[0] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(sVoidLinesSpriteTemplate.paletteTag));
|
||||
sprite->callback = AnimVoidLines_Step;
|
||||
}
|
||||
|
||||
@@ -2687,9 +2687,7 @@ static void AnimUproarRing(struct Sprite *sprite)
|
||||
u8 index = IndexOfSpritePaletteTag(ANIM_TAG_THIN_RING);
|
||||
|
||||
if (index != 0xFF)
|
||||
{
|
||||
BlendPalette(((index << 20) + 0x1010000) >> 16, 15, gBattleAnimArgs[5], gBattleAnimArgs[4]);
|
||||
}
|
||||
BlendPalette(OBJ_PLTT_ID(index) + 1, 15, gBattleAnimArgs[5], gBattleAnimArgs[4]);
|
||||
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
sprite->callback = AnimSpriteOnMonPos;
|
||||
@@ -3045,7 +3043,7 @@ void AnimTask_LoadMusicNotesPals(u8 taskId)
|
||||
gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000);
|
||||
LZDecompressWram(gBattleAnimSpritePal_MusicNotes2, gMonSpritesGfxPtr->multiUseBuffer);
|
||||
for (i = 0; i < NUM_MUSIC_NOTE_PAL_TAGS; i++)
|
||||
LoadPalette(&gMonSpritesGfxPtr->multiUseBuffer[i * 32], (u16)((paletteNums[i] << 4) + 0x100), 32);
|
||||
LoadPalette(&gMonSpritesGfxPtr->multiUseBuffer[i * 32], OBJ_PLTT_ID(paletteNums[i]), PLTT_SIZE_4BPP);
|
||||
|
||||
FREE_AND_SET_NULL(gMonSpritesGfxPtr->multiUseBuffer);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
@@ -3282,7 +3280,7 @@ void AnimTask_HeartsBackground(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBg_AttractTilemap);
|
||||
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBg_AttractGfx, animBg.tilesOffset);
|
||||
LoadCompressedPalette(gBattleAnimBg_AttractPal, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleAnimBg_AttractPal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
if (IsContest())
|
||||
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
|
||||
|
||||
@@ -3370,7 +3368,7 @@ void AnimTask_ScaryFace(u8 taskId)
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBgTilemap_ScaryFaceOpponent);
|
||||
|
||||
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_ScaryFaceGfx, animBg.tilesOffset);
|
||||
LoadCompressedPalette(gBattleAnim_ScaryFacePal, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleAnim_ScaryFacePal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
if (IsContest())
|
||||
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
|
||||
|
||||
|
||||
+14
-14
@@ -1367,11 +1367,11 @@ static void SetPsychicBackground_Step(u8 taskId)
|
||||
|
||||
if (++gTasks[taskId].data[5] == 4)
|
||||
{
|
||||
lastColor = gPlttBufferFaded[paletteIndex * 16 + 11];
|
||||
lastColor = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 11];
|
||||
for (i = 10; i > 0; i--)
|
||||
gPlttBufferFaded[paletteIndex * 16 + i + 1] = gPlttBufferFaded[paletteIndex * 16 + i];
|
||||
gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i + 1] = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i];
|
||||
|
||||
gPlttBufferFaded[paletteIndex * 16 + 1] = lastColor;
|
||||
gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 1] = lastColor;
|
||||
gTasks[taskId].data[5] = 0;
|
||||
}
|
||||
|
||||
@@ -1393,15 +1393,15 @@ static void FadeScreenToWhite_Step(u8 taskId)
|
||||
|
||||
if (++gTasks[taskId].data[5] == 4)
|
||||
{
|
||||
lastColor = gPlttBufferFaded[paletteIndex * 16 + 11];
|
||||
lastColor = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 11];
|
||||
for (i = 10; i > 0; i--)
|
||||
gPlttBufferFaded[paletteIndex * 16 + i + 1] = gPlttBufferFaded[paletteIndex * 16 + i];
|
||||
gPlttBufferFaded[paletteIndex * 16 + 1] = lastColor;
|
||||
gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i + 1] = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i];
|
||||
gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 1] = lastColor;
|
||||
|
||||
lastColor = gPlttBufferUnfaded[paletteIndex * 16 + 11];
|
||||
lastColor = gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + 11];
|
||||
for (i = 10; i > 0; i--)
|
||||
gPlttBufferUnfaded[paletteIndex * 16 + i + 1] = gPlttBufferUnfaded[paletteIndex * 16 + i];
|
||||
gPlttBufferUnfaded[paletteIndex * 16 + 1] = lastColor;
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + i + 1] = gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + i];
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + 1] = lastColor;
|
||||
|
||||
gTasks[taskId].data[5] = 0;
|
||||
}
|
||||
@@ -2329,7 +2329,7 @@ void AnimTask_MorningSunLightBeam(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap);
|
||||
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_MorningSunGfx, animBg.tilesOffset);
|
||||
LoadCompressedPalette(gBattleAnim_MorningSunPal, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleAnim_MorningSunPal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
if (IsContest())
|
||||
{
|
||||
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
|
||||
@@ -2509,7 +2509,7 @@ void AnimTask_DoomDesireLightBeam(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap);
|
||||
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_MorningSunGfx, animBg.tilesOffset);
|
||||
LoadCompressedPalette(gBattleAnim_MorningSunPal, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleAnim_MorningSunPal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
|
||||
if (IsContest())
|
||||
{
|
||||
@@ -3177,7 +3177,7 @@ void AnimTask_RolePlaySilhouette(u8 taskId)
|
||||
spriteId = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, coord1 + xOffset, coord2, 5, personality, otId, gBattleAnimTarget, 1);
|
||||
gSprites[spriteId].oam.priority = priority;
|
||||
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
|
||||
FillPalette(RGB_WHITE, (gSprites[spriteId].oam.paletteNum << 4) + 0x100, 32);
|
||||
FillPalette(RGB_WHITE, OBJ_PLTT_ID(gSprites[spriteId].oam.paletteNum), PLTT_SIZE_4BPP);
|
||||
gSprites[spriteId].oam.priority = priority;
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[1], 16 - gTasks[taskId].data[1]));
|
||||
@@ -3806,7 +3806,7 @@ void AnimTask_FacadeColorBlend(u8 taskId)
|
||||
gTasks[taskId].data[0] = 0;
|
||||
gTasks[taskId].data[1] = gBattleAnimArgs[1];
|
||||
spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
|
||||
gTasks[taskId].data[2] = 0x100 + gSprites[spriteId].oam.paletteNum * 16;
|
||||
gTasks[taskId].data[2] = OBJ_PLTT_ID(gSprites[spriteId].oam.paletteNum);
|
||||
gTasks[taskId].func = AnimTask_FacadeColorBlend_Step;
|
||||
}
|
||||
|
||||
@@ -5025,7 +5025,7 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId)
|
||||
spriteId2 = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, x, GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y), subpriority, personality, otId, gBattleAnimAttacker, 0);
|
||||
|
||||
if (gBattleSpritesDataPtr->battlerData[gBattleAnimAttacker].transformSpecies != SPECIES_NONE)
|
||||
BlendPalette((gSprites[spriteId2].oam.paletteNum * 16) | 0x100, 16, 6, RGB_WHITE);
|
||||
BlendPalette(OBJ_PLTT_ID(gSprites[spriteId2].oam.paletteNum), 16, 6, RGB_WHITE);
|
||||
gTasks[taskId].data[15] = spriteId2;
|
||||
gTasks[taskId].data[0]++;
|
||||
break;
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "util.h"
|
||||
#include "task.h"
|
||||
#include "trig.h"
|
||||
#include "palette.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
static void AnimFireSpiralInward(struct Sprite *sprite);
|
||||
@@ -1239,7 +1240,7 @@ void AnimTask_BlendBackground(u8 taskId)
|
||||
struct BattleAnimBgData animBg;
|
||||
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
BlendPalette(animBg.paletteId * 16, 16, gBattleAnimArgs[0], gBattleAnimArgs[1]);
|
||||
BlendPalette(BG_PLTT_ID(animBg.paletteId), 16, gBattleAnimArgs[0], gBattleAnimArgs[1]);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
|
||||
@@ -395,15 +395,15 @@ static void AnimTask_AnimateGustTornadoPalette_Step(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[10] = 0;
|
||||
data2 = gTasks[taskId].data[2];
|
||||
temp = gPlttBufferFaded[16 * data2 + 0x108];
|
||||
temp = gPlttBufferFaded[OBJ_PLTT_ID(data2) + 8];
|
||||
i = 7;
|
||||
base = data2 * 16;
|
||||
base = PLTT_ID(data2);
|
||||
do
|
||||
{
|
||||
gPlttBufferFaded[base + 0x101 + i] = gPlttBufferFaded[base + 0x100 + i];
|
||||
gPlttBufferFaded[base + OBJ_PLTT_OFFSET + 1 + i] = gPlttBufferFaded[base + OBJ_PLTT_OFFSET + i];
|
||||
} while (--i > 0);
|
||||
|
||||
gPlttBufferFaded[base + 0x101] = temp;
|
||||
gPlttBufferFaded[base + OBJ_PLTT_OFFSET + 1] = temp;
|
||||
}
|
||||
if (--gTasks[taskId].data[0] == 0)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
|
||||
@@ -625,7 +625,7 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId)
|
||||
task->data[2] = 0;
|
||||
task->data[3] = 16;
|
||||
task->data[13] = GetAnimBattlerSpriteId(ANIM_TARGET);
|
||||
task->data[4] = (gSprites[task->data[13]].oam.paletteNum + 16) * 16;
|
||||
task->data[4] = OBJ_PLTT_ID2(gSprites[task->data[13]].oam.paletteNum);
|
||||
if (position == 1)
|
||||
{
|
||||
u16 mask = DISPCNT_BG1_ON;
|
||||
@@ -644,8 +644,8 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId)
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
task->data[14] = (task->data[14] + 16) * 16;
|
||||
CpuCopy32(&gPlttBufferUnfaded[task->data[4]], &gPlttBufferFaded[task->data[14]], 0x20);
|
||||
task->data[14] = OBJ_PLTT_ID2(task->data[14]);
|
||||
CpuCopy32(&gPlttBufferUnfaded[task->data[4]], &gPlttBufferFaded[task->data[14]], PLTT_SIZE_4BPP);
|
||||
BlendPalette(task->data[4], 16, 10, RGB(13, 0, 15));
|
||||
++task->data[15];
|
||||
break;
|
||||
@@ -1290,10 +1290,10 @@ static void AnimTask_GhostGetOut_Step1(u8 taskId)
|
||||
task->data[3] = 16;
|
||||
task->data[4] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
|
||||
task->data[5] = gSprites[task->data[4]].oam.priority;
|
||||
task->data[6] = (gSprites[task->data[4]].oam.paletteNum + 16) << 4;
|
||||
task->data[6] = OBJ_PLTT_ID2(gSprites[task->data[4]].oam.paletteNum);
|
||||
gSprites[task->data[4]].oam.objMode = ST_OAM_OBJ_BLEND;
|
||||
gSprites[task->data[4]].oam.priority = 3;
|
||||
task->data[7] = 128;
|
||||
task->data[7] = BG_PLTT_ID(8);
|
||||
break;
|
||||
case 1:
|
||||
++task->data[1];
|
||||
@@ -1320,7 +1320,7 @@ static void AnimTask_GhostGetOut_Step1(u8 taskId)
|
||||
SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
|
||||
GetBattleAnimBgData(&animBgData, 2);
|
||||
AnimLoadCompressedBgGfx(animBgData.bgId, gBattleAnim_ScaryFaceGfx, animBgData.tilesOffset);
|
||||
LoadCompressedPalette(gBattleAnim_ScaryFacePal, 16 * animBgData.paletteId, 0x20);
|
||||
LoadCompressedPalette(gBattleAnim_ScaryFacePal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 3:
|
||||
GetBattleAnimBgData(&animBgData, 2);
|
||||
@@ -1422,7 +1422,7 @@ static void AnimTask_GhostGetOut_Step3(u8 taskId)
|
||||
break;
|
||||
case 3:
|
||||
InitBattleAnimBg(2);
|
||||
FillPalette(RGB_BLACK, 0x90, 0x20);
|
||||
FillPalette(RGB_BLACK, BG_PLTT_ID(9), PLTT_SIZE_4BPP);
|
||||
SetAnimBgAttribute(2, BG_ANIM_CHAR_BASE_BLOCK, 0);
|
||||
task->data[1] = 12;
|
||||
break;
|
||||
|
||||
@@ -946,7 +946,7 @@ void AnimTask_HazeScrollingFog(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset);
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap);
|
||||
LoadPalette(&gDefaultWeatherSpritePalette, animBg.paletteId * 16, 32);
|
||||
LoadPalette(&gDefaultWeatherSpritePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
if (IsContest())
|
||||
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
|
||||
gTasks[taskId].func = AnimTask_HazeScrollingFog_Step;
|
||||
@@ -1043,7 +1043,7 @@ void AnimTask_MistBallFog(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset);
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap);
|
||||
LoadPalette(&gDefaultWeatherSpritePalette, animBg.paletteId * 16, 32);
|
||||
LoadPalette(&gDefaultWeatherSpritePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
if (IsContest())
|
||||
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
|
||||
gTasks[taskId].data[15] = -1;
|
||||
|
||||
@@ -1291,7 +1291,7 @@ void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor)
|
||||
struct PlttData *destColor;
|
||||
u16 average;
|
||||
|
||||
paletteNum *= 16;
|
||||
paletteNum = PLTT_ID(paletteNum);
|
||||
|
||||
if (!restoreOriginalColor)
|
||||
{
|
||||
@@ -1308,7 +1308,7 @@ void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor)
|
||||
}
|
||||
else
|
||||
{
|
||||
CpuCopy32(&gPlttBufferUnfaded[paletteNum], &gPlttBufferFaded[paletteNum], 32);
|
||||
CpuCopy32(&gPlttBufferUnfaded[paletteNum], &gPlttBufferFaded[paletteNum], PLTT_SIZE_4BPP);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1609,7 +1609,7 @@ void AnimTask_BlendMonInAndOut(u8 task)
|
||||
DestroyAnimVisualTask(task);
|
||||
return;
|
||||
}
|
||||
gTasks[task].data[0] = (gSprites[spriteId].oam.paletteNum * 0x10) + 0x101;
|
||||
gTasks[task].data[0] = OBJ_PLTT_ID(gSprites[spriteId].oam.paletteNum) + 1;
|
||||
AnimTask_BlendMonInAndOutSetup(&gTasks[task]);
|
||||
}
|
||||
|
||||
@@ -1952,7 +1952,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat
|
||||
gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000);
|
||||
if (!isBackpic)
|
||||
{
|
||||
LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), (palette * 0x10) + 0x100, 0x20);
|
||||
LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), OBJ_PLTT_ID(palette), PLTT_SIZE_4BPP);
|
||||
if (ignoreDeoxys == TRUE || ShouldIgnoreDeoxysForm(DEOXYS_CHECK_BATTLE_ANIM, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
|
||||
LoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
|
||||
gMonSpritesGfxPtr->multiUseBuffer,
|
||||
@@ -1968,7 +1968,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), (palette * 0x10) + 0x100, 0x20);
|
||||
LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), OBJ_PLTT_ID(palette), PLTT_SIZE_4BPP);
|
||||
if (ignoreDeoxys == TRUE || ShouldIgnoreDeoxysForm(DEOXYS_CHECK_BATTLE_ANIM, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
|
||||
LoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species],
|
||||
gMonSpritesGfxPtr->multiUseBuffer,
|
||||
@@ -2224,8 +2224,8 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId)
|
||||
task->tPaletteNum = AllocSpritePalette(ANIM_TAG_BENT_SPOON);
|
||||
task->tNumTracesActive = 0;
|
||||
|
||||
dest = (task->tPaletteNum + 16) * 16;
|
||||
src = (gSprites[task->tBattlerSpriteId].oam.paletteNum + 0x10) * 0x10;
|
||||
dest = OBJ_PLTT_ID2(task->tPaletteNum);
|
||||
src = OBJ_PLTT_ID2(gSprites[task->tBattlerSpriteId].oam.paletteNum);
|
||||
|
||||
// Set trace's priority based on battler's subpriority
|
||||
task->tPriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker);
|
||||
@@ -2234,7 +2234,7 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId)
|
||||
else
|
||||
task->tPriority = 3;
|
||||
|
||||
CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], PLTT_SIZE_4BPP);
|
||||
BlendPalette(dest, 16, gBattleAnimArgs[1], gBattleAnimArgs[0]);
|
||||
task->func = AnimTask_AttackerPunchWithTrace_Step;
|
||||
}
|
||||
|
||||
@@ -459,7 +459,7 @@ static void AnimDefensiveWall(struct Sprite *sprite)
|
||||
}
|
||||
if (IsContest())
|
||||
sprite->y += 9;
|
||||
sprite->data[0] = 256 + IndexOfSpritePaletteTag(gBattleAnimArgs[2]) * 16;
|
||||
sprite->data[0] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(gBattleAnimArgs[2]));
|
||||
sprite->callback = AnimDefensiveWall_Step2;
|
||||
sprite->callback(sprite);
|
||||
}
|
||||
|
||||
@@ -404,7 +404,7 @@ void AnimTask_LoadSandstormBackground(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBg);
|
||||
AnimLoadCompressedBgTilemap(animBg.bgId, gFile_graphics_battle_anims_backgrounds_sandstorm_brew_tilemap);
|
||||
AnimLoadCompressedBgGfx(animBg.bgId, gFile_graphics_battle_anims_backgrounds_sandstorm_brew_sheet, animBg.tilesOffset);
|
||||
LoadCompressedPalette(gBattleAnimSpritePal_FlyingDirt, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleAnimSpritePal_FlyingDirt, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
if (IsContest())
|
||||
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
|
||||
if (gBattleAnimArgs[0] && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
|
||||
+11
-11
@@ -438,7 +438,7 @@ void AnimTask_LevelUpHealthBox(u8 taskId)
|
||||
GetBattleAnimBg1Data(&animBgData);
|
||||
AnimLoadCompressedBgTilemap(animBgData.bgId, gUnusedLevelupAnimationTilemap);
|
||||
AnimLoadCompressedBgGfx(animBgData.bgId, gUnusedLevelupAnimationGfx, animBgData.tilesOffset);
|
||||
LoadCompressedPalette(gCureBubblesPal, animBgData.paletteId << 4, 32);
|
||||
LoadCompressedPalette(gCureBubblesPal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
gBattle_BG1_X = -gSprites[spriteId3].x + 32;
|
||||
gBattle_BG1_Y = -gSprites[spriteId3].y - 32;
|
||||
gTasks[taskId].data[1] = 640;
|
||||
@@ -518,10 +518,10 @@ void DoLoadHealthboxPalsForLevelUp(u8 *paletteId1, u8 *paletteId2, u8 battler)
|
||||
spriteId2 = gSprites[healthBoxSpriteId].data[5];
|
||||
*paletteId1 = AllocSpritePalette(TAG_HEALTHBOX_PALS_1);
|
||||
*paletteId2 = AllocSpritePalette(TAG_HEALTHBOX_PALS_2);
|
||||
offset1 = (gSprites[healthBoxSpriteId].oam.paletteNum * 16) + 0x100;
|
||||
offset2 = (gSprites[spriteId2].oam.paletteNum * 16) + 0x100;
|
||||
LoadPalette(&gPlttBufferUnfaded[offset1], *paletteId1 * 16 + 0x100, 0x20);
|
||||
LoadPalette(&gPlttBufferUnfaded[offset2], *paletteId2 * 16 + 0x100, 0x20);
|
||||
offset1 = OBJ_PLTT_ID(gSprites[healthBoxSpriteId].oam.paletteNum);
|
||||
offset2 = OBJ_PLTT_ID(gSprites[spriteId2].oam.paletteNum);
|
||||
LoadPalette(&gPlttBufferUnfaded[offset1], OBJ_PLTT_ID(*paletteId1), PLTT_SIZE_4BPP);
|
||||
LoadPalette(&gPlttBufferUnfaded[offset2], OBJ_PLTT_ID(*paletteId2), PLTT_SIZE_4BPP);
|
||||
gSprites[healthBoxSpriteId].oam.paletteNum = *paletteId1;
|
||||
gSprites[spriteId1].oam.paletteNum = *paletteId1;
|
||||
gSprites[spriteId2].oam.paletteNum = *paletteId2;
|
||||
@@ -584,7 +584,7 @@ static void AnimTask_FlashHealthboxOnLevelUp_Step(u8 taskId)
|
||||
if (gTasks[taskId].data[2] > 16)
|
||||
gTasks[taskId].data[2] = 16;
|
||||
|
||||
paletteOffset = paletteNum * 16 + 0x100;
|
||||
paletteOffset = OBJ_PLTT_ID(paletteNum);
|
||||
BlendPalette(paletteOffset + colorOffset, 1, gTasks[taskId].data[2], RGB(20, 27, 31));
|
||||
if (gTasks[taskId].data[2] == 16)
|
||||
gTasks[taskId].data[1]++;
|
||||
@@ -594,7 +594,7 @@ static void AnimTask_FlashHealthboxOnLevelUp_Step(u8 taskId)
|
||||
if (gTasks[taskId].data[2] < 0)
|
||||
gTasks[taskId].data[2] = 0;
|
||||
|
||||
paletteOffset = paletteNum * 16 + 0x100;
|
||||
paletteOffset = OBJ_PLTT_ID(paletteNum);
|
||||
BlendPalette(paletteOffset + colorOffset, 1, gTasks[taskId].data[2], RGB(20, 27, 31));
|
||||
if (gTasks[taskId].data[2] == 0)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
@@ -1874,12 +1874,12 @@ u8 LaunchBallFadeMonTask(bool8 unfadeLater, u8 battler, u32 selectedPalettes, u8
|
||||
|
||||
if (!unfadeLater)
|
||||
{
|
||||
BlendPalette(battler * 16 + 0x100, 16, 0, sBallOpenFadeColors[ballId]);
|
||||
BlendPalette(OBJ_PLTT_ID(battler), 16, 0, sBallOpenFadeColors[ballId]);
|
||||
gTasks[taskId].data[1] = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
BlendPalette(battler * 16 + 0x100, 16, 16, sBallOpenFadeColors[ballId]);
|
||||
BlendPalette(OBJ_PLTT_ID(battler), 16, 16, sBallOpenFadeColors[ballId]);
|
||||
gTasks[taskId].data[0] = 16;
|
||||
gTasks[taskId].data[1] = -1;
|
||||
gTasks[taskId].func = Task_FadeMon_ToNormal;
|
||||
@@ -1895,7 +1895,7 @@ static void Task_FadeMon_ToBallColor(u8 taskId)
|
||||
|
||||
if (gTasks[taskId].data[2] <= 16)
|
||||
{
|
||||
BlendPalette(gTasks[taskId].data[3] * 16 + 0x100, 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]);
|
||||
BlendPalette(OBJ_PLTT_ID(gTasks[taskId].data[3]), 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]);
|
||||
gTasks[taskId].data[0] += gTasks[taskId].data[1];
|
||||
gTasks[taskId].data[2]++;
|
||||
}
|
||||
@@ -1923,7 +1923,7 @@ static void Task_FadeMon_ToNormal_Step(u8 taskId)
|
||||
|
||||
if (gTasks[taskId].data[2] <= 16)
|
||||
{
|
||||
BlendPalette(gTasks[taskId].data[3] * 16 + 0x100, 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]);
|
||||
BlendPalette(OBJ_PLTT_ID(gTasks[taskId].data[3]), 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]);
|
||||
gTasks[taskId].data[0] += gTasks[taskId].data[1];
|
||||
gTasks[taskId].data[2]++;
|
||||
}
|
||||
|
||||
@@ -284,7 +284,7 @@ static void Task_UpdateFlashingCircleImpacts(u8 taskId)
|
||||
if (gTasks[taskId].data[2] == 2)
|
||||
{
|
||||
gTasks[taskId].data[2] = 0;
|
||||
BlendPalette(0x100 + gTasks[taskId].data[0] * 16, 16, gTasks[taskId].data[4], gTasks[taskId].data[1]);
|
||||
BlendPalette(OBJ_PLTT_ID(gTasks[taskId].data[0]), 16, gTasks[taskId].data[4], gTasks[taskId].data[1]);
|
||||
if (gTasks[taskId].data[5] == 0)
|
||||
{
|
||||
gTasks[taskId].data[4]++;
|
||||
@@ -394,10 +394,10 @@ static void AnimTask_FrozenIceCube_Step2(u8 taskId)
|
||||
{
|
||||
u16 temp;
|
||||
|
||||
temp = gPlttBufferFaded[0x100 + palIndex * 16 + 13];
|
||||
gPlttBufferFaded[0x100 + palIndex * 16 + 13] = gPlttBufferFaded[0x100 + palIndex * 16 + 14];
|
||||
gPlttBufferFaded[0x100 + palIndex * 16 + 14] = gPlttBufferFaded[0x100 + palIndex * 16 + 15];
|
||||
gPlttBufferFaded[0x100 + palIndex * 16 + 15] = temp;
|
||||
temp = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 13];
|
||||
gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 13] = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 14];
|
||||
gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 14] = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 15];
|
||||
gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 15] = temp;
|
||||
|
||||
gTasks[taskId].data[2] = 0;
|
||||
gTasks[taskId].data[3]++;
|
||||
|
||||
@@ -338,7 +338,7 @@ void AnimTask_DrawFallingWhiteLinesOnAttacker(u8 taskId)
|
||||
if (IsContest())
|
||||
RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0);
|
||||
AnimLoadCompressedBgGfx(animBgData.bgId, gFile_graphics_battle_anims_masks_curse_sheet, animBgData.tilesOffset);
|
||||
LoadPalette(sRgbWhite, animBgData.paletteId * 16 + 1, 2);
|
||||
LoadPalette(sRgbWhite, BG_PLTT_ID(animBgData.paletteId) + 1, PLTT_SIZEOF(1));
|
||||
gBattle_BG1_X = -gSprites[spriteId].x + 32;
|
||||
gBattle_BG1_Y = -gSprites[spriteId].y + 32;
|
||||
gTasks[taskId].data[0] = newSpriteId;
|
||||
@@ -465,28 +465,28 @@ static void StatsChangeAnimation_Step2(u8 taskId)
|
||||
switch (sAnimStatsChangeData->data[1])
|
||||
{
|
||||
case 0:
|
||||
LoadCompressedPalette(gBattleStatMask2_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask2_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 1:
|
||||
LoadCompressedPalette(gBattleStatMask1_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask1_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 2:
|
||||
LoadCompressedPalette(gBattleStatMask3_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask3_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 3:
|
||||
LoadCompressedPalette(gBattleStatMask4_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask4_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 4:
|
||||
LoadCompressedPalette(gBattleStatMask6_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask6_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 5:
|
||||
LoadCompressedPalette(gBattleStatMask7_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask7_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 6:
|
||||
LoadCompressedPalette(gBattleStatMask8_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask8_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
default:
|
||||
LoadCompressedPalette(gBattleStatMask5_Pal, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleStatMask5_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
}
|
||||
gBattle_BG1_X = 0;
|
||||
@@ -618,13 +618,13 @@ static void AnimTask_Flash_Step(u8 taskId)
|
||||
{
|
||||
if ((task->data[15] >> i) & 1)
|
||||
{
|
||||
u16 paletteOffset = i * 16;
|
||||
u16 paletteOffset = BG_PLTT_ID(i);
|
||||
BlendPalette(paletteOffset, 16, task->data[2], 0xFFFF);
|
||||
}
|
||||
|
||||
if ((task->data[14] >> i) & 1)
|
||||
{
|
||||
u16 paletteOffset = i * 16 + 0x100;
|
||||
u16 paletteOffset = OBJ_PLTT_ID(i);
|
||||
BlendPalette(paletteOffset, 16, task->data[2], 0);
|
||||
}
|
||||
}
|
||||
@@ -645,7 +645,7 @@ static void SetPalettesToColor(u32 selectedPalettes, u16 color)
|
||||
|
||||
for (i = 0; i < 32; selectedPalettes >>= 1, ++i)
|
||||
if (selectedPalettes & 1)
|
||||
for (curOffset = i * 16, paletteOffset = curOffset; curOffset < paletteOffset + 16; ++curOffset)
|
||||
for (curOffset = PLTT_ID(i), paletteOffset = curOffset; curOffset < paletteOffset + 16; ++curOffset)
|
||||
gPlttBufferFaded[curOffset] = color;
|
||||
}
|
||||
|
||||
@@ -764,7 +764,7 @@ void StartMonScrollingBgMask(u8 taskId, s32 unused, u16 scrollSpeed, u8 battler1
|
||||
if (IsContest())
|
||||
RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0);
|
||||
AnimLoadCompressedBgGfx(animBgData.bgId, gfx, animBgData.tilesOffset);
|
||||
LoadCompressedPalette(palette, animBgData.paletteId * 16, 32);
|
||||
LoadCompressedPalette(palette, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
|
||||
gBattle_BG1_X = 0;
|
||||
gBattle_BG1_Y = 0;
|
||||
gTasks[taskId].data[1] = scrollSpeed;
|
||||
@@ -867,7 +867,7 @@ void AnimTask_CopyPalUnfadedToBackup(u8 taskId)
|
||||
paletteIndex = gBattleAnimAttacker + 16;
|
||||
else if (gBattleAnimArgs[0] == 2)
|
||||
paletteIndex = gBattleAnimTarget + 16;
|
||||
memcpy(&gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], &gPlttBufferUnfaded[paletteIndex * 16], 32);
|
||||
memcpy(&gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], &gPlttBufferUnfaded[PLTT_ID(paletteIndex)], PLTT_SIZE_4BPP);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
@@ -885,7 +885,7 @@ void AnimTask_CopyPalUnfadedFromBackup(u8 taskId)
|
||||
paletteIndex = gBattleAnimAttacker + 16;
|
||||
else if (gBattleAnimArgs[0] == 2)
|
||||
paletteIndex = gBattleAnimTarget + 16;
|
||||
memcpy(&gPlttBufferUnfaded[paletteIndex * 16], &gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], 32);
|
||||
memcpy(&gPlttBufferUnfaded[PLTT_ID(paletteIndex)], &gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], PLTT_SIZE_4BPP);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
@@ -903,7 +903,7 @@ void AnimTask_CopyPalFadedToUnfaded(u8 taskId)
|
||||
paletteIndex = gBattleAnimAttacker + 16;
|
||||
else if (gBattleAnimArgs[0] == 2)
|
||||
paletteIndex = gBattleAnimTarget + 16;
|
||||
memcpy(&gPlttBufferUnfaded[paletteIndex * 16], &gPlttBufferFaded[paletteIndex * 16], 32);
|
||||
memcpy(&gPlttBufferUnfaded[PLTT_ID(paletteIndex)], &gPlttBufferFaded[PLTT_ID(paletteIndex)], PLTT_SIZE_4BPP);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
|
||||
@@ -620,7 +620,7 @@ static void AnimAuroraBeamRings_Step(struct Sprite *sprite)
|
||||
void AnimTask_RotateAuroraRingColors(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[0] = gBattleAnimArgs[0];
|
||||
gTasks[taskId].data[2] = IndexOfSpritePaletteTag(ANIM_TAG_RAINBOW_RINGS) * 16 + 256;
|
||||
gTasks[taskId].data[2] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_RAINBOW_RINGS));
|
||||
gTasks[taskId].func = AnimTask_RotateAuroraRingColors_Step;
|
||||
}
|
||||
static void AnimTask_RotateAuroraRingColors_Step(u8 taskId)
|
||||
@@ -826,9 +826,9 @@ void AnimTask_CreateSurfWave(u8 taskId)
|
||||
}
|
||||
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Surf, animBg.tilesOffset);
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
LoadCompressedPalette(gBattleAnimBgPalette_Surf, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleAnimBgPalette_Surf, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
else
|
||||
LoadCompressedPalette(gBattleAnimBgPalette_MuddyWater, animBg.paletteId * 16, 32);
|
||||
LoadCompressedPalette(gBattleAnimBgPalette_MuddyWater, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
|
||||
taskId2 = CreateTask(AnimTask_SurfWaveScanlineEffect, gTasks[taskId].priority + 1);
|
||||
gTasks[taskId].data[15] = taskId2;
|
||||
gTasks[taskId2].data[0] = 0;
|
||||
|
||||
+20
-17
@@ -648,7 +648,7 @@ static void LoadBattleTerrainGfx(u16 terrain)
|
||||
// Copy to bg3
|
||||
LZDecompressVram(sBattleTerrainTable[terrain].tileset, (void *)BG_CHAR_ADDR(2));
|
||||
LZDecompressVram(sBattleTerrainTable[terrain].tilemap, (void *)BG_SCREEN_ADDR(26));
|
||||
LoadCompressedPalette(sBattleTerrainTable[terrain].palette, 0x20, 0x60);
|
||||
LoadCompressedPalette(sBattleTerrainTable[terrain].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void LoadBattleTerrainEntryGfx(u16 terrain)
|
||||
@@ -690,19 +690,22 @@ void InitBattleBgsVideo(void)
|
||||
|
||||
void LoadBattleMenuWindowGfx(void)
|
||||
{
|
||||
LoadUserWindowGfx(2, 0x012, 0x10);
|
||||
LoadUserWindowGfx(2, 0x022, 0x10);
|
||||
gPlttBufferUnfaded[0x5C] = RGB( 9, 9, 9);
|
||||
gPlttBufferUnfaded[0x5D] = RGB( 9, 9, 9);
|
||||
gPlttBufferUnfaded[0x5E] = RGB(31, 31, 31);
|
||||
gPlttBufferUnfaded[0x5F] = RGB( 26, 26, 25);
|
||||
CpuCopy16(&gPlttBufferUnfaded[0x5C], &gPlttBufferFaded[0x5C], 8);
|
||||
LoadUserWindowGfx(2, 0x012, BG_PLTT_ID(1));
|
||||
LoadUserWindowGfx(2, 0x022, BG_PLTT_ID(1));
|
||||
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(5) + 12] = RGB( 9, 9, 9);
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(5) + 13] = RGB( 9, 9, 9);
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(5) + 14] = RGB(31, 31, 31);
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(5) + 15] = RGB( 26, 26, 25);
|
||||
CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 12], &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(4));
|
||||
|
||||
if (gBattleTypeFlags & (BATTLE_TYPE_FIRST_BATTLE | BATTLE_TYPE_POKEDUDE))
|
||||
{
|
||||
Menu_LoadStdPalAt(0x70);
|
||||
LoadMenuMessageWindowGfx(0, 0x030, 0x70);
|
||||
gPlttBufferUnfaded[0x76] = RGB( 0, 0, 0);
|
||||
CpuCopy16(&gPlttBufferUnfaded[0x76], &gPlttBufferFaded[0x76], 2);
|
||||
Menu_LoadStdPalAt(BG_PLTT_ID(7));
|
||||
LoadMenuMessageWindowGfx(0, 0x030, BG_PLTT_ID(7));
|
||||
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(7) + 6] = RGB( 0, 0, 0);
|
||||
CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(7) + 6], &gPlttBufferFaded[BG_PLTT_ID(7) + 6], PLTT_SIZEOF(1));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -716,7 +719,7 @@ void LoadBattleTextboxAndBackground(void)
|
||||
LZDecompressVram(gBattleInterface_Textbox_Gfx, (void *)BG_CHAR_ADDR(0));
|
||||
CopyToBgTilemapBuffer(0, gBattleInterface_Textbox_Tilemap, 0, 0x000);
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x00, 0x40);
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
|
||||
LoadBattleMenuWindowGfx();
|
||||
DrawMainBattleBackground();
|
||||
}
|
||||
@@ -927,7 +930,7 @@ void InitLinkBattleVsScreen(u8 taskId)
|
||||
break;
|
||||
case 1:
|
||||
palId = AllocSpritePalette(TAG_VS_LETTERS);
|
||||
gPlttBufferUnfaded[palId * 16 + 0x10F] = gPlttBufferFaded[palId * 16 + 0x10F] = RGB(31, 31, 31);
|
||||
gPlttBufferUnfaded[OBJ_PLTT_ID(palId) + 15] = gPlttBufferFaded[OBJ_PLTT_ID(palId) + 15] = RGB_WHITE;
|
||||
gBattleStruct->linkBattleVsSpriteId_V = CreateSprite(&sVsLetter_V_SpriteTemplate, 108, 80, 0);
|
||||
gBattleStruct->linkBattleVsSpriteId_S = CreateSprite(&sVsLetter_S_SpriteTemplate, 132, 80, 0);
|
||||
gSprites[gBattleStruct->linkBattleVsSpriteId_V].invisible = TRUE;
|
||||
@@ -982,7 +985,7 @@ void DrawBattleEntryBackground(void)
|
||||
{
|
||||
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);
|
||||
LoadCompressedPalette(gFile_graphics_battle_transitions_vs_frame_palette, BG_PLTT_ID(6), PLTT_SIZE_4BPP);
|
||||
SetBgAttribute(1, BG_ATTR_SCREENSIZE, 1);
|
||||
SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(28) | BGCNT_TXT512x256);
|
||||
CopyToBgTilemapBuffer(1, gFile_graphics_battle_transitions_vs_frame_tilemap, 0, 0);
|
||||
@@ -1083,7 +1086,7 @@ bool8 LoadChosenBattleElement(u8 caseId)
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
break;
|
||||
case 2:
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x00, 0x40);
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 3:
|
||||
battleScene = GetBattleTerrainOverride();
|
||||
@@ -1095,7 +1098,7 @@ bool8 LoadChosenBattleElement(u8 caseId)
|
||||
break;
|
||||
case 5:
|
||||
battleScene = GetBattleTerrainOverride();
|
||||
LoadCompressedPalette(sBattleTerrainTable[battleScene].palette, 0x20, 0x60);
|
||||
LoadCompressedPalette(sBattleTerrainTable[battleScene].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 6:
|
||||
LoadBattleMenuWindowGfx();
|
||||
|
||||
@@ -1513,7 +1513,7 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void)
|
||||
trainerPicId = gLinkPlayers[GetBattlerMultiplayerId(gActiveBattler)].gender;
|
||||
}
|
||||
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[trainerPicId].data, 0x100 + paletteNum * 16, 32);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[trainerPicId].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP);
|
||||
|
||||
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
|
||||
|
||||
|
||||
@@ -2086,7 +2086,7 @@ static void OakOldManHandleIntroTrainerBallThrow(void)
|
||||
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
|
||||
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
|
||||
paletteNum = AllocSpritePalette(0xD6F8);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, 0x100 + paletteNum * 16, 32);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP);
|
||||
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
|
||||
taskId = CreateTask(Task_StartSendOutAnim, 5);
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
|
||||
@@ -2714,7 +2714,7 @@ static void PlayerHandleIntroTrainerBallThrow(void)
|
||||
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
|
||||
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
|
||||
paletteNum = AllocSpritePalette(0xD6F8);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, 0x100 + paletteNum * 16, 32);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP);
|
||||
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
|
||||
taskId = CreateTask(Task_StartSendOutAnim, 5);
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
|
||||
@@ -1858,7 +1858,7 @@ static void PokedudeHandleIntroTrainerBallThrow(void)
|
||||
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
|
||||
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
|
||||
paletteNum = AllocSpritePalette(0xD6F8);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[TRAINER_BACK_PIC_POKEDUDE].data, 0x100 + paletteNum * 16, 32);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[TRAINER_BACK_PIC_POKEDUDE].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP);
|
||||
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
|
||||
taskId = CreateTask(Task_StartSendOutAnim, 5);
|
||||
gTasks[taskId].data[0] = gActiveBattler;
|
||||
|
||||
+27
-27
@@ -341,27 +341,27 @@ void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
|
||||
HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
|
||||
gMonSpritesGfxPtr->sprites[position],
|
||||
species, currentPersonality);
|
||||
paletteOffset = 0x100 + battlerId * 16;
|
||||
paletteOffset = OBJ_PLTT_ID(battlerId);
|
||||
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
|
||||
lzPaletteData = GetMonFrontSpritePal(mon);
|
||||
else
|
||||
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality);
|
||||
buffer = AllocZeroed(0x400);
|
||||
LZDecompressWram(lzPaletteData, buffer);
|
||||
LoadPalette(buffer, paletteOffset, 0x20);
|
||||
LoadPalette(buffer, 0x80 + battlerId * 16, 0x20);
|
||||
LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
|
||||
LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
|
||||
Free(buffer);
|
||||
if (species == SPECIES_CASTFORM)
|
||||
{
|
||||
paletteOffset = 0x100 + battlerId * 16;
|
||||
paletteOffset = OBJ_PLTT_ID(battlerId);
|
||||
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]);
|
||||
LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20);
|
||||
LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, PLTT_SIZE_4BPP);
|
||||
}
|
||||
// transform's pink color
|
||||
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
|
||||
{
|
||||
BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
|
||||
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
|
||||
CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -395,27 +395,27 @@ void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
|
||||
HandleLoadSpecialPokePic(&gMonBackPicTable[species],
|
||||
gMonSpritesGfxPtr->sprites[position],
|
||||
species, currentPersonality);
|
||||
paletteOffset = 0x100 + battlerId * 16;
|
||||
paletteOffset = OBJ_PLTT_ID(battlerId);
|
||||
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
|
||||
lzPaletteData = GetMonFrontSpritePal(mon);
|
||||
else
|
||||
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality);
|
||||
buffer = AllocZeroed(0x400);
|
||||
LZDecompressWram(lzPaletteData, buffer);
|
||||
LoadPalette(buffer, paletteOffset, 0x20);
|
||||
LoadPalette(buffer, 0x80 + battlerId * 16, 0x20);
|
||||
LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
|
||||
LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
|
||||
Free(buffer);
|
||||
if (species == SPECIES_CASTFORM)
|
||||
{
|
||||
paletteOffset = 0x100 + battlerId * 16;
|
||||
paletteOffset = OBJ_PLTT_ID(battlerId);
|
||||
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]);
|
||||
LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20);
|
||||
LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, PLTT_SIZE_4BPP);
|
||||
}
|
||||
// transform's pink color
|
||||
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
|
||||
{
|
||||
BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
|
||||
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
|
||||
CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -426,11 +426,11 @@ void DecompressGhostFrontPic(struct Pokemon *unused, u8 battlerId)
|
||||
u8 position = GetBattlerPosition(battlerId);
|
||||
|
||||
LZ77UnCompWram(gGhostFrontPic, gMonSpritesGfxPtr->sprites[position]);
|
||||
palOffset = 0x100 + 16 * battlerId;
|
||||
palOffset = OBJ_PLTT_ID(battlerId);
|
||||
buffer = AllocZeroed(0x400);
|
||||
LZDecompressWram(gGhostPalette, buffer);
|
||||
LoadPalette(buffer, palOffset, 0x20);
|
||||
LoadPalette(buffer, 0x80 + 16 * battlerId, 0x20);
|
||||
LoadPalette(buffer, palOffset, PLTT_SIZE_4BPP);
|
||||
LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
|
||||
Free(buffer);
|
||||
}
|
||||
|
||||
@@ -449,7 +449,7 @@ void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId)
|
||||
|
||||
void DecompressTrainerBackPalette(u16 index, u8 palette)
|
||||
{
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[index].data, (palette + 16) * 16, 0x20);
|
||||
LoadCompressedPalette(gTrainerBackPicPaletteTable[index].data, OBJ_PLTT_ID2(palette), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
void BattleGfxSfxDummy3(u8 gender)
|
||||
@@ -675,11 +675,11 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType)
|
||||
src = gMonSpritesGfxPtr->sprites[position];
|
||||
dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32);
|
||||
DmaCopy32(3, src, dst, 0x800);
|
||||
paletteOffset = 0x100 + battlerAtk * 16;
|
||||
paletteOffset = OBJ_PLTT_ID(battlerAtk);
|
||||
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue);
|
||||
buffer = AllocZeroed(0x400);
|
||||
LZDecompressWram(lzPaletteData, buffer);
|
||||
LoadPalette(buffer, paletteOffset, 32);
|
||||
LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
|
||||
Free(buffer);
|
||||
gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
|
||||
StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[battlerAtk]);
|
||||
@@ -690,13 +690,13 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType)
|
||||
else if (transformType) // Castform form change
|
||||
{
|
||||
StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleSpritesDataPtr->animationData->animArg);
|
||||
paletteOffset = 0x100 + battlerAtk * 16;
|
||||
LoadPalette(gBattleStruct->castformPalette[gBattleSpritesDataPtr->animationData->animArg], paletteOffset, 32);
|
||||
paletteOffset = OBJ_PLTT_ID(battlerAtk);
|
||||
LoadPalette(gBattleStruct->castformPalette[gBattleSpritesDataPtr->animationData->animArg], paletteOffset, PLTT_SIZE_4BPP);
|
||||
gBattleMonForms[battlerAtk] = gBattleSpritesDataPtr->animationData->animArg;
|
||||
if (gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies != SPECIES_NONE)
|
||||
{
|
||||
BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
|
||||
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
|
||||
CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP);
|
||||
}
|
||||
gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
|
||||
}
|
||||
@@ -733,19 +733,19 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType)
|
||||
src = gMonSpritesGfxPtr->sprites[position];
|
||||
dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32);
|
||||
DmaCopy32(3, src, dst, 0x800);
|
||||
paletteOffset = 0x100 + battlerAtk * 16;
|
||||
paletteOffset = OBJ_PLTT_ID(battlerAtk);
|
||||
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue);
|
||||
buffer = AllocZeroed(0x400);
|
||||
LZDecompressWram(lzPaletteData, buffer);
|
||||
LoadPalette(buffer, paletteOffset, 32);
|
||||
LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
|
||||
Free(buffer);
|
||||
if (targetSpecies == SPECIES_CASTFORM)
|
||||
{
|
||||
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]);
|
||||
LoadPalette(gBattleStruct->castformPalette[0] + gBattleMonForms[battlerDef] * 16, paletteOffset, 32);
|
||||
LoadPalette(gBattleStruct->castformPalette[0] + gBattleMonForms[battlerDef] * 16, paletteOffset, PLTT_SIZE_4BPP);
|
||||
}
|
||||
BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
|
||||
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
|
||||
CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP);
|
||||
gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies = targetSpecies;
|
||||
gBattleMonForms[battlerAtk] = gBattleMonForms[battlerDef];
|
||||
gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
|
||||
@@ -774,8 +774,8 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
|
||||
--ptr;
|
||||
DmaCopy32Defvars(3, (*ptr)[0], (*ptr)[i], 0x800);
|
||||
}
|
||||
palOffset = (battlerId * 16) + 0x100;
|
||||
LoadCompressedPalette(gSubstituteDollPal, palOffset, 32);
|
||||
palOffset = OBJ_PLTT_ID(battlerId);
|
||||
LoadCompressedPalette(gSubstituteDollPal, palOffset, PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -1663,11 +1663,11 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
|
||||
return;
|
||||
}
|
||||
|
||||
pltAdder = gSprites[healthboxSpriteId].oam.paletteNum * 16;
|
||||
pltAdder = PLTT_ID(gSprites[healthboxSpriteId].oam.paletteNum);
|
||||
pltAdder += battlerId + 12;
|
||||
|
||||
FillPalette(sStatusIconColors[statusPalId], pltAdder + 0x100, 2);
|
||||
CpuCopy16(gPlttBufferUnfaded + 0x100 + pltAdder, (void *)(OBJ_PLTT + pltAdder * 2), 2);
|
||||
FillPalette(sStatusIconColors[statusPalId], pltAdder + OBJ_PLTT_OFFSET, PLTT_SIZEOF(1));
|
||||
CpuCopy16(&gPlttBufferUnfaded[OBJ_PLTT_OFFSET + pltAdder], (u16 *)OBJ_PLTT + pltAdder, PLTT_SIZEOF(1));
|
||||
CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder) * TILE_SIZE_4BPP), 3 * TILE_SIZE_4BPP);
|
||||
if (IsDoubleBattle() == TRUE || GetBattlerSide(battlerId) == B_SIDE_OPPONENT)
|
||||
{
|
||||
|
||||
+1
-1
@@ -1769,7 +1769,7 @@ void CB2_InitEndLinkBattle(void)
|
||||
gBattle_BG3_X = 0;
|
||||
gBattle_BG3_Y = 0;
|
||||
InitBattleBgsVideo();
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0, 64);
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
|
||||
LoadBattleMenuWindowGfx();
|
||||
ResetSpriteData();
|
||||
ResetTasks();
|
||||
|
||||
@@ -2820,11 +2820,11 @@ void SetPpNumbersPaletteInMoveSelection(void)
|
||||
u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBattler]],
|
||||
chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBattler]]);
|
||||
|
||||
gPlttBufferUnfaded[92] = palPtr[(var * 2) + 0];
|
||||
gPlttBufferUnfaded[91] = palPtr[(var * 2) + 1];
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(5) + 12] = palPtr[(var * 2) + 0];
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(5) + 11] = palPtr[(var * 2) + 1];
|
||||
|
||||
CpuCopy16(&gPlttBufferUnfaded[92], &gPlttBufferFaded[92], sizeof(u16));
|
||||
CpuCopy16(&gPlttBufferUnfaded[91], &gPlttBufferFaded[91], sizeof(u16));
|
||||
CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 12], &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(1));
|
||||
CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 11], &gPlttBufferFaded[BG_PLTT_ID(5) + 11], PLTT_SIZEOF(1));
|
||||
}
|
||||
|
||||
u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp)
|
||||
|
||||
@@ -45,7 +45,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 1,
|
||||
.width = 27,
|
||||
.height = 18,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x014
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -109,7 +109,7 @@ static void MainCB2_SetUp(void)
|
||||
break;
|
||||
case 3:
|
||||
LoadFrameGfxOnBg(3);
|
||||
LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
gMain.state++;
|
||||
break;
|
||||
case 4:
|
||||
@@ -564,5 +564,5 @@ static void LoadFrameGfxOnBg(u8 bg)
|
||||
{
|
||||
LoadBgTiles(bg, sTiles, 0xC0, 0);
|
||||
CopyToBgTilemapBufferRect(bg, sTilemap, 0, 0, 32, 32);
|
||||
LoadPalette(sPalette, 0, 0x20);
|
||||
LoadPalette(sPalette, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
@@ -5784,7 +5784,7 @@ static void InitLevelUpBanner(void)
|
||||
gBattle_BG2_Y = 0;
|
||||
gBattle_BG2_X = LEVEL_UP_BANNER_START;
|
||||
|
||||
LoadPalette(sLevelUpBanner_Pal, 0x60, 0x20);
|
||||
LoadPalette(sLevelUpBanner_Pal, BG_PLTT_ID(6), sizeof(sLevelUpBanner_Pal));
|
||||
CopyToWindowPixelBuffer(B_WIN_LEVEL_UP_BANNER, sLevelUpBanner_Gfx, 0, 0);
|
||||
PutWindowTilemap(B_WIN_LEVEL_UP_BANNER);
|
||||
CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_FULL);
|
||||
|
||||
@@ -655,7 +655,7 @@ static void Task_BattleTransition(u8 taskId)
|
||||
static bool8 Transition_StartIntro(struct Task *task)
|
||||
{
|
||||
SetWeatherScreenFadeOut();
|
||||
CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, sizeof(gPlttBufferUnfaded));
|
||||
CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
|
||||
if (sTasks_Intro[task->tTransitionId] != NULL)
|
||||
{
|
||||
CreateTask(sTasks_Intro[task->tTransitionId], 4);
|
||||
@@ -937,7 +937,7 @@ static bool8 BigPokeball_Init(struct Task *task)
|
||||
GetBg0TilesDst(&tilemap, &tileset);
|
||||
CpuFill16(0, tilemap, BG_SCREEN_SIZE);
|
||||
CpuCopy16(sBigPokeball_Gfx, tileset, sizeof(sBigPokeball_Gfx));
|
||||
LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball));
|
||||
LoadPalette(sFieldEffectPal_Pokeball, BG_PLTT_ID(15), sizeof(sFieldEffectPal_Pokeball));
|
||||
task->tState++;
|
||||
return FALSE;
|
||||
}
|
||||
@@ -1108,7 +1108,7 @@ static bool8 PokeballsTrail_Init(struct Task *task)
|
||||
GetBg0TilesDst(&tilemap, &tileset);
|
||||
CpuCopy16(sSlidingPokeball_Tilemap, tileset, sizeof(sSlidingPokeball_Tilemap));
|
||||
CpuFill32(0, tilemap, BG_SCREEN_SIZE);
|
||||
LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball));
|
||||
LoadPalette(sFieldEffectPal_Pokeball, BG_PLTT_ID(15), sizeof(sFieldEffectPal_Pokeball));
|
||||
task->tState++;
|
||||
return FALSE;
|
||||
}
|
||||
@@ -1906,8 +1906,8 @@ static bool8 Mugshot_SetGfx(struct Task *task)
|
||||
|
||||
GetBg0TilesDst(&tilemap, &tileset);
|
||||
CpuCopy16(sMugshotBanner_Gfx, tileset, sizeof(sMugshotBanner_Gfx));
|
||||
LoadPalette(sOpponentMugshotsPals[task->tMugshotId], 0xF0, 0x20);
|
||||
LoadPalette(sPlayerMugshotsPals[gSaveBlock2Ptr->playerGender], 0xFA, 0xC);
|
||||
LoadPalette(sOpponentMugshotsPals[task->tMugshotId], BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
LoadPalette(sPlayerMugshotsPals[gSaveBlock2Ptr->playerGender], BG_PLTT_ID(15) + 10, PLTT_SIZEOF(16 - 10));
|
||||
|
||||
for (i = 0; i < 20; i++)
|
||||
for (j = 0; j < 32; j++, mugshotsMap++)
|
||||
@@ -2588,7 +2588,7 @@ static bool8 GridSquares_Init(struct Task *task)
|
||||
GetBg0TilesDst(&tilemap, &tileset);
|
||||
CpuCopy16(sGridSquare_Gfx, tileset, 0x20);
|
||||
CpuFill16(0xF0 << 8, tilemap, BG_SCREEN_SIZE);
|
||||
LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball));
|
||||
LoadPalette(sFieldEffectPal_Pokeball, BG_PLTT_ID(15), sizeof(sFieldEffectPal_Pokeball));
|
||||
task->tState++;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
+13
-13
@@ -548,7 +548,7 @@ static const struct WindowTemplate sWindowTemplate_BerryCrushRankings = {
|
||||
.tilemapTop = 4,
|
||||
.width = 24,
|
||||
.height = 13,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x001
|
||||
};
|
||||
|
||||
@@ -559,7 +559,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
|
||||
.tilemapTop = 0,
|
||||
.width = 9,
|
||||
.height = 2,
|
||||
.paletteNum = 0x8,
|
||||
.paletteNum = 8,
|
||||
.baseBlock = 0x3ed
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -567,7 +567,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
|
||||
.tilemapTop = 3,
|
||||
.width = 9,
|
||||
.height = 2,
|
||||
.paletteNum = 0x8,
|
||||
.paletteNum = 8,
|
||||
.baseBlock = 0x3db
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -575,7 +575,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
|
||||
.tilemapTop = 6,
|
||||
.width = 9,
|
||||
.height = 2,
|
||||
.paletteNum = 0x8,
|
||||
.paletteNum = 8,
|
||||
.baseBlock = 0x3c9
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -583,7 +583,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
|
||||
.tilemapTop = 3,
|
||||
.width = 9,
|
||||
.height = 2,
|
||||
.paletteNum = 0x8,
|
||||
.paletteNum = 8,
|
||||
.baseBlock = 0x3b7
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -591,7 +591,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
|
||||
.tilemapTop = 6,
|
||||
.width = 9,
|
||||
.height = 2,
|
||||
.paletteNum = 0x8,
|
||||
.paletteNum = 8,
|
||||
.baseBlock = 0x3a5
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -604,7 +604,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = {
|
||||
.tilemapTop = 2,
|
||||
.width = 22,
|
||||
.height = 16,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x001
|
||||
},
|
||||
[STATE_RESULTS_RANDOM - RESULTS_STATE_START] = {
|
||||
@@ -613,7 +613,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = {
|
||||
.tilemapTop = 2,
|
||||
.width = 22,
|
||||
.height = 16,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x001
|
||||
},
|
||||
[STATE_RESULTS_CRUSHING - RESULTS_STATE_START] = {
|
||||
@@ -622,7 +622,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = {
|
||||
.tilemapTop = 2,
|
||||
.width = 24,
|
||||
.height = 16,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x001
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -2551,7 +2551,7 @@ static s32 ShowGameDisplay(void)
|
||||
gPaletteFade.bufferTransferDisabled = TRUE;
|
||||
break;
|
||||
case 7:
|
||||
LoadPalette(gBerryCrush_Crusher_Pal, 0, 0x180);
|
||||
LoadPalette(gBerryCrush_Crusher_Pal, BG_PLTT_ID(0), 12 * PLTT_SIZE_4BPP);
|
||||
CopyToBgTilemapBuffer(1, sCrusherTop_Tilemap, 0, 0);
|
||||
CopyToBgTilemapBuffer(2, sContainerCap_Tilemap, 0, 0);
|
||||
CopyToBgTilemapBuffer(3, sBg_Tilemap, 0, 0);
|
||||
@@ -3046,7 +3046,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame * game, struct BerryCrushG
|
||||
FillWindowPixelBuffer(spriteManager->resultsWindowId, PIXEL_FILL(0));
|
||||
break;
|
||||
case 2:
|
||||
LoadStdWindowGfx(spriteManager->resultsWindowId, 0x21D, 0xD0);
|
||||
LoadStdWindowGfx(spriteManager->resultsWindowId, 0x21D, BG_PLTT_ID(13));
|
||||
DrawStdFrameWithCustomTileAndPalette(spriteManager->resultsWindowId, FALSE, 541, 13);
|
||||
break;
|
||||
case 3:
|
||||
@@ -3105,8 +3105,8 @@ static void Task_ShowBerryCrushRankings(u8 taskId)
|
||||
tWindowId = AddWindow(&sWindowTemplate_BerryCrushRankings);
|
||||
PutWindowTilemap(tWindowId);
|
||||
FillWindowPixelBuffer(tWindowId, PIXEL_FILL(0));
|
||||
LoadStdWindowGfx(tWindowId, 0x21D, 0xD0);
|
||||
DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 0x21D, 0xD);
|
||||
LoadStdWindowGfx(tWindowId, 0x21D, BG_PLTT_ID(13));
|
||||
DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 0x21D, 13);
|
||||
break;
|
||||
case 1:
|
||||
xPos = 96 - GetStringWidth(FONT_NORMAL, gText_BerryCrush2, -1) / 2u;
|
||||
|
||||
+95
-95
@@ -244,116 +244,116 @@ static const struct WindowTemplate sWindowTemplates_Main[] = {
|
||||
|
||||
static const struct WindowTemplate sWindowTemplates_Variable[] = {
|
||||
{
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x18,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x05,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 24,
|
||||
.tilemapTop = 15,
|
||||
.width = 5,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x1d1
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x11,
|
||||
.tilemapTop = 0x09,
|
||||
.width = 0x0c,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 17,
|
||||
.tilemapTop = 9,
|
||||
.width = 12,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x1d1
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x01,
|
||||
.width = 0x08,
|
||||
.height = 0x03,
|
||||
.paletteNum = 0x0c,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 1,
|
||||
.width = 8,
|
||||
.height = 3,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x201
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x17,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x06,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 23,
|
||||
.tilemapTop = 15,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x219
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x15,
|
||||
.tilemapTop = 0x09,
|
||||
.width = 0x06,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 21,
|
||||
.tilemapTop = 9,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x219
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x02,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x1a,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 2,
|
||||
.tilemapTop = 15,
|
||||
.width = 26,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x231
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x06,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x0e,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0c,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 6,
|
||||
.tilemapTop = 15,
|
||||
.width = 14,
|
||||
.height = 4,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x231
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x06,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x0f,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0c,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 6,
|
||||
.tilemapTop = 15,
|
||||
.width = 15,
|
||||
.height = 4,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x269
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x06,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x10,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0c,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 6,
|
||||
.tilemapTop = 15,
|
||||
.width = 16,
|
||||
.height = 4,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x2a5
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x06,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x17,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0c,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 6,
|
||||
.tilemapTop = 15,
|
||||
.width = 23,
|
||||
.height = 4,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x2e5
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x11,
|
||||
.width = 0x07,
|
||||
.height = 0x02,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 17,
|
||||
.width = 7,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x199
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x07,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 15,
|
||||
.width = 7,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x199
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x0d,
|
||||
.width = 0x07,
|
||||
.height = 0x06,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 13,
|
||||
.width = 7,
|
||||
.height = 6,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x199
|
||||
}, {
|
||||
.bg = 0x02,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x0b,
|
||||
.width = 0x07,
|
||||
.height = 0x08,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 2,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 11,
|
||||
.width = 7,
|
||||
.height = 8,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x199
|
||||
}
|
||||
};
|
||||
@@ -619,9 +619,9 @@ static bool8 BerryPouchLoadGfx(void)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
LoadCompressedPalette(gBerryPouchBgPals, 0, 0x60);
|
||||
LoadCompressedPalette(gBerryPouchBgPals, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP);
|
||||
if (gSaveBlock2Ptr->playerGender != MALE)
|
||||
LoadCompressedPalette(gBerryPouchBgPal0FemaleOverride, 0, 0x20);
|
||||
LoadCompressedPalette(gBerryPouchBgPal0FemaleOverride, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
sResources->data[0]++;
|
||||
break;
|
||||
case 3:
|
||||
@@ -1412,10 +1412,10 @@ static void BerryPouchInitWindows(void)
|
||||
u8 i;
|
||||
InitWindows(sWindowTemplates_Main);
|
||||
DeactivateAllTextPrinters();
|
||||
LoadUserWindowGfx(0, 0x001, 0xE0);
|
||||
LoadMenuMessageWindowGfx(0, 0x013, 0xD0);
|
||||
LoadStdWindowGfx(0, 0x00A, 0xC0);
|
||||
LoadPalette(gStandardMenuPalette, 0xF0, 0x20);
|
||||
LoadUserWindowGfx(0, 0x001, BG_PLTT_ID(14));
|
||||
LoadMenuMessageWindowGfx(0, 0x013, BG_PLTT_ID(13));
|
||||
LoadStdWindowGfx(0, 0x00A, BG_PLTT_ID(12));
|
||||
LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
for (i = 0; i < 3; i++)
|
||||
FillWindowPixelBuffer(i, PIXEL_FILL(0));
|
||||
PutWindowTilemap(0);
|
||||
@@ -1439,9 +1439,9 @@ static u8 GetOrCreateVariableWindow(u8 winIdx)
|
||||
{
|
||||
sVariableWindowIds[winIdx] = AddWindow(&sWindowTemplates_Variable[winIdx]);
|
||||
if (winIdx == 2 || winIdx == 6 || winIdx == 7 || winIdx == 8 || winIdx == 9)
|
||||
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x00A, 0xC);
|
||||
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x00A, 12);
|
||||
else
|
||||
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 0xE);
|
||||
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 14);
|
||||
ScheduleBgCopyTilemapToVram(2);
|
||||
retval = sVariableWindowIds[winIdx];
|
||||
}
|
||||
@@ -1450,7 +1450,7 @@ static u8 GetOrCreateVariableWindow(u8 winIdx)
|
||||
|
||||
static void VariableWindowSetAltFrameTileAndPalette(u8 winIdx)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 0xE);
|
||||
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 14);
|
||||
}
|
||||
|
||||
static void DestroyVariableWindow(u8 winIdx)
|
||||
@@ -1491,12 +1491,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], FONT_NORMAL, 0, 2, 0x001, 0xE, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[3], FONT_NORMAL, 0, 2, 0x001, 14, ptrs);
|
||||
}
|
||||
|
||||
static void CreateYesNoMenuWin4(u8 taskId, const struct YesNoFuncTable *ptrs)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[4], FONT_NORMAL, 0, 2, 0x001, 0xE, ptrs);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[4], FONT_NORMAL, 0, 2, 0x001, 14, ptrs);
|
||||
}
|
||||
|
||||
static void PrintMoneyInWin2(void)
|
||||
|
||||
+3
-2
@@ -2,6 +2,7 @@
|
||||
#include "event_data.h"
|
||||
#include "load_save.h"
|
||||
#include "menu.h"
|
||||
#include "palette.h"
|
||||
#include "quest_log.h"
|
||||
#include "script_menu.h"
|
||||
#include "string_util.h"
|
||||
@@ -120,8 +121,8 @@ void DisplayBerryPowderVendorMenu(void)
|
||||
sBerryPowderVendorWindowId = AddWindow(&template);
|
||||
FillWindowPixelBuffer(sBerryPowderVendorWindowId, 0);
|
||||
PutWindowTilemap(sBerryPowderVendorWindowId);
|
||||
LoadStdWindowGfx(sBerryPowderVendorWindowId, 0x21D, 0xD0);
|
||||
DrawPlayerPowderAmount(sBerryPowderVendorWindowId, 0x21D, 0xD, GetBerryPowder());
|
||||
LoadStdWindowGfx(sBerryPowderVendorWindowId, 0x21D, BG_PLTT_ID(13));
|
||||
DrawPlayerPowderAmount(sBerryPowderVendorWindowId, 0x21D, 13, GetBerryPowder());
|
||||
}
|
||||
|
||||
void RemoveBerryPowderVendorMenu(void)
|
||||
|
||||
+6
-6
@@ -338,7 +338,7 @@ void BikeClearState(u32 directionHistory, u32 abStartSelectHistory)
|
||||
gPlayerAvatar.acroBikeState = BIKE_STATE_NORMAL;
|
||||
gPlayerAvatar.newDirBackup = 0;
|
||||
gPlayerAvatar.bikeFrameCounter = 0;
|
||||
gPlayerAvatar.bikeSpeed = SPEED_STANDING;
|
||||
gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING;
|
||||
gPlayerAvatar.directionHistory = directionHistory;
|
||||
gPlayerAvatar.abStartSelectHistory = abStartSelectHistory;
|
||||
gPlayerAvatar.lastSpinTile = 0;
|
||||
@@ -355,21 +355,21 @@ void Bike_UpdateBikeCounterSpeed(u8 counter)
|
||||
static void Bike_SetBikeStill(void)
|
||||
{
|
||||
gPlayerAvatar.bikeFrameCounter = 0;
|
||||
gPlayerAvatar.bikeSpeed = SPEED_STANDING;
|
||||
gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING;
|
||||
}
|
||||
|
||||
s16 GetPlayerSpeed(void)
|
||||
{
|
||||
s16 machBikeSpeeds[] = { SPEED_NORMAL, SPEED_FAST, SPEED_FASTEST };
|
||||
s16 machBikeSpeeds[] = { PLAYER_SPEED_NORMAL, PLAYER_SPEED_FAST, PLAYER_SPEED_FASTEST };
|
||||
|
||||
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_MACH_BIKE)
|
||||
return machBikeSpeeds[gPlayerAvatar.bikeFrameCounter];
|
||||
else if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_ACRO_BIKE)
|
||||
return SPEED_FASTER;
|
||||
return PLAYER_SPEED_FASTER;
|
||||
else if (gPlayerAvatar.flags & (PLAYER_AVATAR_FLAG_SURFING | PLAYER_AVATAR_FLAG_DASH))
|
||||
return SPEED_FAST;
|
||||
return PLAYER_SPEED_FAST;
|
||||
else
|
||||
return SPEED_NORMAL;
|
||||
return PLAYER_SPEED_NORMAL;
|
||||
}
|
||||
|
||||
void Bike_HandleBumpySlopeJump(void)
|
||||
|
||||
+91
-90
@@ -8,61 +8,62 @@
|
||||
#include "new_menu_helpers.h"
|
||||
#include "menu.h"
|
||||
#include "shop.h"
|
||||
#include "palette.h"
|
||||
|
||||
static const struct WindowTemplate sShopBuyMenuWindowTemplatesNormal[] =
|
||||
{
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x1,
|
||||
.tilemapTop = 0x1,
|
||||
.width = 0x8,
|
||||
.height = 0x3,
|
||||
.paletteNum = 0xF,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 1,
|
||||
.width = 8,
|
||||
.height = 3,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x27,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x1,
|
||||
.tilemapTop = 0xB,
|
||||
.width = 0xD,
|
||||
.height = 0x2,
|
||||
.paletteNum = 0xF,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 11,
|
||||
.width = 13,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x3F,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x2,
|
||||
.tilemapTop = 0xF,
|
||||
.width = 0x1A,
|
||||
.height = 0x4,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 2,
|
||||
.tilemapTop = 15,
|
||||
.width = 26,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x59,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x11,
|
||||
.tilemapTop = 0x9,
|
||||
.width = 0xC,
|
||||
.height = 0x4,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 17,
|
||||
.tilemapTop = 9,
|
||||
.width = 12,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0xC1,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0xB,
|
||||
.tilemapTop = 0x1,
|
||||
.width = 0x11,
|
||||
.height = 0xC,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 11,
|
||||
.tilemapTop = 1,
|
||||
.width = 17,
|
||||
.height = 12,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0xF1,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x5,
|
||||
.tilemapTop = 0xE,
|
||||
.width = 0x19,
|
||||
.height = 0x6,
|
||||
.paletteNum = 0xF,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 5,
|
||||
.tilemapTop = 14,
|
||||
.width = 25,
|
||||
.height = 6,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x1BD,
|
||||
},
|
||||
DUMMY_WIN_TEMPLATE,
|
||||
@@ -72,66 +73,66 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplatesNormal[] =
|
||||
static const struct WindowTemplate sShopBuyMenuWindowTemplatesTM[] =
|
||||
{
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x1,
|
||||
.tilemapTop = 0x1,
|
||||
.width = 0x8,
|
||||
.height = 0x3,
|
||||
.paletteNum = 0xF,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 1,
|
||||
.width = 8,
|
||||
.height = 3,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x27,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x1,
|
||||
.tilemapTop = 0xB,
|
||||
.width = 0xD,
|
||||
.height = 0x2,
|
||||
.paletteNum = 0xF,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 11,
|
||||
.width = 13,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x3F,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x2,
|
||||
.tilemapTop = 0xF,
|
||||
.width = 0x1A,
|
||||
.height = 0x4,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 2,
|
||||
.tilemapTop = 15,
|
||||
.width = 26,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x59,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x11,
|
||||
.tilemapTop = 0x9,
|
||||
.width = 0xC,
|
||||
.height = 0x4,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 17,
|
||||
.tilemapTop = 9,
|
||||
.width = 12,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0xC1,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0xB,
|
||||
.tilemapTop = 0x1,
|
||||
.width = 0x11,
|
||||
.height = 0xA,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 11,
|
||||
.tilemapTop = 1,
|
||||
.width = 17,
|
||||
.height = 10,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0xF1,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0xC,
|
||||
.tilemapTop = 0xC,
|
||||
.width = 0x12,
|
||||
.height = 0x8,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 12,
|
||||
.tilemapTop = 12,
|
||||
.width = 18,
|
||||
.height = 8,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x19B,
|
||||
},
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x1,
|
||||
.tilemapTop = 0xE,
|
||||
.width = 0xA,
|
||||
.height = 0x4,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 14,
|
||||
.width = 10,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x22B,
|
||||
},
|
||||
DUMMY_WIN_TEMPLATE,
|
||||
@@ -139,12 +140,12 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplatesTM[] =
|
||||
|
||||
static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplate =
|
||||
{
|
||||
.bg = 0x0,
|
||||
.tilemapLeft = 0x15,
|
||||
.tilemapTop = 0x9,
|
||||
.width = 0x6,
|
||||
.height = 0x4,
|
||||
.paletteNum = 0xE,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 21,
|
||||
.tilemapTop = 9,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0xC1,
|
||||
};
|
||||
|
||||
@@ -162,9 +163,9 @@ void BuyMenuInitWindows(bool32 isSellingTM)
|
||||
else
|
||||
InitWindows(sShopBuyMenuWindowTemplatesTM);
|
||||
DeactivateAllTextPrinters();
|
||||
LoadUserWindowGfx(0, 0x1, 0xD0);
|
||||
LoadMenuMessageWindowGfx(0, 0x13, 0xE0);
|
||||
LoadStdWindowGfx(0, 0xA, 0xF0);
|
||||
LoadUserWindowGfx(0, 0x1, BG_PLTT_ID(13));
|
||||
LoadMenuMessageWindowGfx(0, 0x13, BG_PLTT_ID(14));
|
||||
LoadStdWindowGfx(0, 0xA, BG_PLTT_ID(15));
|
||||
PutWindowTilemap(0);
|
||||
PutWindowTilemap(4);
|
||||
PutWindowTilemap(5);
|
||||
@@ -190,15 +191,15 @@ void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback)
|
||||
|
||||
void BuyMenuQuantityBoxNormalBorder(u8 windowId, bool8 copyToVram)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0x1, 0xD);
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0x1, 13);
|
||||
}
|
||||
|
||||
void BuyMenuQuantityBoxThinBorder(u8 windowId, bool8 copyToVram)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0xA, 0xF);
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0xA, 15);
|
||||
}
|
||||
|
||||
void BuyMenuConfirmPurchase(u8 taskId, const struct YesNoFuncTable *yesNo)
|
||||
{
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sShopBuyMenuYesNoWindowTemplate, FONT_NORMAL, 0, 2, 1, 0xD, yesNo);
|
||||
CreateYesNoMenuWithCallbacks(taskId, &sShopBuyMenuYesNoWindowTemplate, FONT_NORMAL, 0, 2, 1, 13, yesNo);
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 5,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x00A
|
||||
}, {
|
||||
.bg = 0,
|
||||
@@ -48,7 +48,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 23,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x022
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -101,16 +101,16 @@ static void Task_DrawClearSaveDataScreen(u8 taskId)
|
||||
SaveClearScreen_GpuInit();
|
||||
break;
|
||||
case 3:
|
||||
LoadStdWindowGfx(0, 0x001, 0xF0);
|
||||
LoadStdWindowGfx(1, 0x001, 0xF0);
|
||||
LoadStdWindowGfx(0, 0x001, BG_PLTT_ID(15));
|
||||
LoadStdWindowGfx(1, 0x001, BG_PLTT_ID(15));
|
||||
break;
|
||||
case 4:
|
||||
DrawStdFrameWithCustomTileAndPalette(1, TRUE, 0x001, 0xF);
|
||||
DrawStdFrameWithCustomTileAndPalette(1, TRUE, 0x001, 15);
|
||||
AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 3, 1, 1, sTextColor, 0, gText_ClearAllSaveData);
|
||||
CopyWindowToVram(1, COPYWIN_GFX);
|
||||
break;
|
||||
case 5:
|
||||
CreateYesNoMenu(&sWindowTemplates[0], FONT_NORMAL, 0, 2, 0x001, 0xF, 1);
|
||||
CreateYesNoMenu(&sWindowTemplates[0], FONT_NORMAL, 0, 2, 0x001, 15, 1);
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
break;
|
||||
default:
|
||||
|
||||
+2
-2
@@ -84,8 +84,8 @@ void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y)
|
||||
sCoinsWindowId = AddWindow(&template);
|
||||
FillWindowPixelBuffer(sCoinsWindowId, 0);
|
||||
PutWindowTilemap(sCoinsWindowId);
|
||||
LoadStdWindowGfx(sCoinsWindowId, 0x21D, 0xD0);
|
||||
DrawStdFrameWithCustomTileAndPalette(sCoinsWindowId, FALSE, 0x21D, 0xD);
|
||||
LoadStdWindowGfx(sCoinsWindowId, 0x21D, BG_PLTT_ID(13));
|
||||
DrawStdFrameWithCustomTileAndPalette(sCoinsWindowId, FALSE, 0x21D, 13);
|
||||
AddTextPrinterParameterized(sCoinsWindowId, FONT_NORMAL, gText_Coins_2, 0, 0, 0xFF, 0);
|
||||
PrintCoinsString(coinAmount);
|
||||
}
|
||||
|
||||
+17
-17
@@ -803,9 +803,9 @@ static bool32 DoOverworldMapScrollScene(u8 whichMon)
|
||||
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(36, DISPLAY_HEIGHT - 36));
|
||||
SwitchWin1OffWin0On();
|
||||
InitBgDarkenEffect();
|
||||
Menu_LoadStdPalAt(0xF0);
|
||||
gPlttBufferUnfaded[0xFF] = RGB_BLACK;
|
||||
gPlttBufferFaded[0xFF] = RGB_BLACK;
|
||||
Menu_LoadStdPalAt(BG_PLTT_ID(15));
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
|
||||
gPlttBufferFaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
|
||||
return TRUE;
|
||||
default:
|
||||
return FALSE;
|
||||
@@ -827,9 +827,9 @@ static s32 RollCredits(void)
|
||||
case CREDITSSCENE_SETUP_DARKEN_EFFECT:
|
||||
InitBgDarkenEffect();
|
||||
CreateCreditsWindow();
|
||||
Menu_LoadStdPalAt(0xF0);
|
||||
gPlttBufferUnfaded[0xFF] = RGB_BLACK;
|
||||
gPlttBufferFaded[0xFF] = RGB_BLACK;
|
||||
Menu_LoadStdPalAt(BG_PLTT_ID(15));
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
|
||||
gPlttBufferFaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
|
||||
sCreditsMgr->mainseqno = CREDITSSCENE_OPEN_WIN0;
|
||||
return 0;
|
||||
case CREDITSSCENE_OPEN_WIN0:
|
||||
@@ -1128,15 +1128,15 @@ static bool32 DoCreditsMonScene(void)
|
||||
DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tiles, 0x2000, 0, 0);
|
||||
DecompressAndLoadBgGfxUsingHeap(1, gCreditsMonPokeball_Tilemap, 0x500, 0, 1);
|
||||
DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tilemap, 0x400, 0, 1);
|
||||
LoadPalette(gCreditsMonPokeball_Pals[sCreditsMgr->whichMon], 0, 0x20);
|
||||
LoadPalette(sCreditsMonCircle_Pal, 0xF0, 0x20);
|
||||
LoadPalette(gCreditsMonPokeball_Pals[sCreditsMgr->whichMon], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
LoadPalette(sCreditsMonCircle_Pal, BG_PLTT_ID(15), sizeof(sCreditsMonCircle_Pal));
|
||||
LoadCreditsMonPic(sCreditsMgr->whichMon);
|
||||
SetVBlankCallback(VBlankCB);
|
||||
EnableInterrupts(INTR_FLAG_VBLANK);
|
||||
sCreditsMgr->subseqno++;
|
||||
break;
|
||||
case 1:
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, PIXEL_FILL(1));
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 17);
|
||||
PutWindowTilemap(0);
|
||||
CopyBgTilemapBufferToVram(2);
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
@@ -1249,7 +1249,7 @@ static bool32 DoCopyrightOrTheEndGfxScene(void)
|
||||
ChangeBgY(0, 0, BG_COORD_SET);
|
||||
DecompressAndLoadBgGfxUsingHeap(0, sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].tiles, 0x2000, 0, 0);
|
||||
DecompressAndLoadBgGfxUsingHeap(0, sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].map, 0x800, 0, 1);
|
||||
LoadPalette(sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].palette, 0x00, 0x200);
|
||||
LoadPalette(sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].palette, BG_PLTT_ID(0), 16 * PLTT_SIZE_4BPP);
|
||||
SetVBlankCallback(VBlankCB);
|
||||
EnableInterrupts(INTR_FLAG_VBLANK);
|
||||
sCreditsMgr->subseqno++;
|
||||
@@ -1375,7 +1375,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
|
||||
sprSheet.size = 0x3000;
|
||||
sprSheet.tag = data->characterTilesTag;
|
||||
LoadCompressedSpriteSheet(&sprSheet);
|
||||
LoadPalette(sPlayerMale_Pal, 0x1F0, sizeof(sPlayerMale_Pal));
|
||||
LoadPalette(sPlayerMale_Pal, OBJ_PLTT_ID(15), sizeof(sPlayerMale_Pal));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1383,7 +1383,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
|
||||
sprSheet.size = 0x3000;
|
||||
sprSheet.tag = data->characterTilesTag;
|
||||
LoadCompressedSpriteSheet(&sprSheet);
|
||||
LoadPalette(sPlayerFemale_Pal, 0x1F0, sizeof(sPlayerFemale_Pal));
|
||||
LoadPalette(sPlayerFemale_Pal, OBJ_PLTT_ID(15), sizeof(sPlayerFemale_Pal));
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
@@ -1392,7 +1392,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
|
||||
sprSheet.size = 0x3000;
|
||||
sprSheet.tag = data->characterTilesTag;
|
||||
LoadCompressedSpriteSheet(&sprSheet);
|
||||
LoadPalette(sRival_Pal, 0x1F0, sizeof(sRival_Pal));
|
||||
LoadPalette(sRival_Pal, OBJ_PLTT_ID(15), sizeof(sRival_Pal));
|
||||
break;
|
||||
}
|
||||
sprTemplate = sPlayerOrRivalSpriteTemplate;
|
||||
@@ -1410,7 +1410,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
|
||||
sprSheet.size = 0x3000;
|
||||
sprSheet.tag = data->groundTilesTag;
|
||||
LoadCompressedSpriteSheet(&sprSheet);
|
||||
LoadPalette(sGround_Grass_Pal, 0x1E0, sizeof(sGround_Grass_Pal));
|
||||
LoadPalette(sGround_Grass_Pal, OBJ_PLTT_ID(14), sizeof(sGround_Grass_Pal));
|
||||
sprTemplate = sGroundSpriteTemplate_Running;
|
||||
break;
|
||||
case 1:
|
||||
@@ -1418,7 +1418,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
|
||||
sprSheet.size = 0x3000;
|
||||
sprSheet.tag = data->groundTilesTag;
|
||||
LoadCompressedSpriteSheet(&sprSheet);
|
||||
LoadPalette(sGround_Grass_Pal, 0x1E0, sizeof(sGround_Grass_Pal));
|
||||
LoadPalette(sGround_Grass_Pal, OBJ_PLTT_ID(14), sizeof(sGround_Grass_Pal));
|
||||
sprTemplate = sGroundSpriteTemplate_Static;
|
||||
break;
|
||||
case 2:
|
||||
@@ -1426,7 +1426,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
|
||||
sprSheet.size = 0x3000;
|
||||
sprSheet.tag = data->groundTilesTag;
|
||||
LoadCompressedSpriteSheet(&sprSheet);
|
||||
LoadPalette(sGround_Dirt_Pal, 0x1E0, sizeof(sGround_Dirt_Pal));
|
||||
LoadPalette(sGround_Dirt_Pal, OBJ_PLTT_ID(14), sizeof(sGround_Dirt_Pal));
|
||||
sprTemplate = sGroundSpriteTemplate_Running;
|
||||
break;
|
||||
case 3:
|
||||
@@ -1434,7 +1434,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
|
||||
sprSheet.size = 0x3000;
|
||||
sprSheet.tag = data->groundTilesTag;
|
||||
LoadCompressedSpriteSheet(&sprSheet);
|
||||
LoadPalette(sGround_City_Pal, 0x1E0, sizeof(sGround_City_Pal));
|
||||
LoadPalette(sGround_City_Pal, OBJ_PLTT_ID(14), sizeof(sGround_City_Pal));
|
||||
sprTemplate = sGroundSpriteTemplate_Running;
|
||||
break;
|
||||
}
|
||||
|
||||
+507
-466
File diff suppressed because it is too large
Load Diff
@@ -450,7 +450,7 @@ const u8 gTrainerBackPic_OldMan[] = INCBIN_U8("graphics/trainers/back_pics/old_m
|
||||
const u8 gTrainerBackPic_RSBrendan[] = INCBIN_U8("graphics/trainers/back_pics/ruby_sapphire_brendan_back_pic.4bpp");
|
||||
const u8 gTrainerBackPic_RSMay[] = INCBIN_U8("graphics/trainers/back_pics/ruby_sapphire_may_back_pic.4bpp");
|
||||
|
||||
const u32 gTrainerPalette_RedBackPic[] = INCBIN_U32("graphics/trainers/palettes/leaf_back_pic.gbapal.lz");
|
||||
const u32 gTrainerPalette_LeafBackPic[] = INCBIN_U32("graphics/trainers/palettes/red_back_pic.gbapal.lz");
|
||||
const u32 gTrainerPalette_RedBackPic[] = INCBIN_U32("graphics/trainers/palettes/red_back_pic.gbapal.lz");
|
||||
const u32 gTrainerPalette_LeafBackPic[] = INCBIN_U32("graphics/trainers/palettes/leaf_back_pic.gbapal.lz");
|
||||
const u32 gTrainerPalette_PokedudeBackPic[] = INCBIN_U32("graphics/trainers/palettes/pokedude_back_pic.gbapal.lz");
|
||||
const u32 gTrainerPalette_OldManBackPic[] = INCBIN_U32("graphics/trainers/palettes/old_man_back_pic.gbapal.lz");
|
||||
|
||||
+401
-377
@@ -1,379 +1,403 @@
|
||||
static const void *const sItemIconTable[ITEMS_COUNT + 1][2] =
|
||||
static const u32 *const sItemIconTable[ITEMS_COUNT + 1][2] =
|
||||
{
|
||||
[ITEM_NONE] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_MASTER_BALL] = {gFile_graphics_items_icons_master_ball_sheet, gFile_graphics_items_icon_palettes_master_ball_palette},
|
||||
[ITEM_ULTRA_BALL] = {gFile_graphics_items_icons_ultra_ball_sheet, gFile_graphics_items_icon_palettes_ultra_ball_palette},
|
||||
[ITEM_GREAT_BALL] = {gFile_graphics_items_icons_great_ball_sheet, gFile_graphics_items_icon_palettes_great_ball_palette},
|
||||
[ITEM_POKE_BALL] = {gFile_graphics_items_icons_poke_ball_sheet, gFile_graphics_items_icon_palettes_poke_ball_palette},
|
||||
[ITEM_SAFARI_BALL] = {gFile_graphics_items_icons_safari_ball_sheet, gFile_graphics_items_icon_palettes_safari_ball_palette},
|
||||
[ITEM_NET_BALL] = {gFile_graphics_items_icons_net_ball_sheet, gFile_graphics_items_icon_palettes_net_ball_palette},
|
||||
[ITEM_DIVE_BALL] = {gFile_graphics_items_icons_dive_ball_sheet, gFile_graphics_items_icon_palettes_dive_ball_palette},
|
||||
[ITEM_NEST_BALL] = {gFile_graphics_items_icons_nest_ball_sheet, gFile_graphics_items_icon_palettes_nest_ball_palette},
|
||||
[ITEM_REPEAT_BALL] = {gFile_graphics_items_icons_repeat_ball_sheet, gFile_graphics_items_icon_palettes_repeat_ball_palette},
|
||||
[ITEM_TIMER_BALL] = {gFile_graphics_items_icons_timer_ball_sheet, gFile_graphics_items_icon_palettes_repeat_ball_palette},
|
||||
[ITEM_LUXURY_BALL] = {gFile_graphics_items_icons_luxury_ball_sheet, gFile_graphics_items_icon_palettes_luxury_ball_palette},
|
||||
[ITEM_PREMIER_BALL] = {gFile_graphics_items_icons_premier_ball_sheet, gFile_graphics_items_icon_palettes_luxury_ball_palette},
|
||||
[ITEM_POTION] = {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_potion_palette},
|
||||
[ITEM_ANTIDOTE] = {gFile_graphics_items_icons_antidote_sheet, gFile_graphics_items_icon_palettes_antidote_palette},
|
||||
[ITEM_BURN_HEAL] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_burn_heal_palette},
|
||||
[ITEM_ICE_HEAL] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_ice_heal_palette},
|
||||
[ITEM_AWAKENING] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_awakening_palette},
|
||||
[ITEM_PARALYZE_HEAL] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_paralyze_heal_palette},
|
||||
[ITEM_FULL_RESTORE] = {gFile_graphics_items_icons_large_potion_sheet, gFile_graphics_items_icon_palettes_full_restore_palette},
|
||||
[ITEM_MAX_POTION] = {gFile_graphics_items_icons_large_potion_sheet, gFile_graphics_items_icon_palettes_max_potion_palette},
|
||||
[ITEM_HYPER_POTION] = {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_hyper_potion_palette},
|
||||
[ITEM_SUPER_POTION] = {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_super_potion_palette},
|
||||
[ITEM_FULL_HEAL] = {gFile_graphics_items_icons_full_heal_sheet, gFile_graphics_items_icon_palettes_full_heal_palette},
|
||||
[ITEM_REVIVE] = {gFile_graphics_items_icons_revive_sheet, gFile_graphics_items_icon_palettes_revive_palette},
|
||||
[ITEM_MAX_REVIVE] = {gFile_graphics_items_icons_max_revive_sheet, gFile_graphics_items_icon_palettes_revive_palette},
|
||||
[ITEM_FRESH_WATER] = {gFile_graphics_items_icons_fresh_water_sheet, gFile_graphics_items_icon_palettes_fresh_water_palette},
|
||||
[ITEM_SODA_POP] = {gFile_graphics_items_icons_soda_pop_sheet, gFile_graphics_items_icon_palettes_soda_pop_palette},
|
||||
[ITEM_LEMONADE] = {gFile_graphics_items_icons_lemonade_sheet, gFile_graphics_items_icon_palettes_lemonade_palette},
|
||||
[ITEM_MOOMOO_MILK] = {gFile_graphics_items_icons_moomoo_milk_sheet, gFile_graphics_items_icon_palettes_moomoo_milk_palette},
|
||||
[ITEM_ENERGY_POWDER] = {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_energy_powder_palette},
|
||||
[ITEM_ENERGY_ROOT] = {gFile_graphics_items_icons_energy_root_sheet, gFile_graphics_items_icon_palettes_energy_root_palette},
|
||||
[ITEM_HEAL_POWDER] = {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_heal_powder_palette},
|
||||
[ITEM_REVIVAL_HERB] = {gFile_graphics_items_icons_revival_herb_sheet, gFile_graphics_items_icon_palettes_revival_herb_palette},
|
||||
[ITEM_ETHER] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_ether_palette},
|
||||
[ITEM_MAX_ETHER] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_max_ether_palette},
|
||||
[ITEM_ELIXIR] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_elixir_palette},
|
||||
[ITEM_MAX_ELIXIR] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_max_elixir_palette},
|
||||
[ITEM_LAVA_COOKIE] = {gFile_graphics_items_icons_lava_cookie_sheet, gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette},
|
||||
[ITEM_BLUE_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_blue_flute_palette},
|
||||
[ITEM_YELLOW_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_yellow_flute_palette},
|
||||
[ITEM_RED_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_red_flute_palette},
|
||||
[ITEM_BLACK_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_black_flute_palette},
|
||||
[ITEM_WHITE_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_white_flute_palette},
|
||||
[ITEM_BERRY_JUICE] = {gFile_graphics_items_icons_berry_juice_sheet, gFile_graphics_items_icon_palettes_berry_juice_palette},
|
||||
[ITEM_SACRED_ASH] = {gFile_graphics_items_icons_sacred_ash_sheet, gFile_graphics_items_icon_palettes_sacred_ash_palette},
|
||||
[ITEM_SHOAL_SALT] = {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_shoal_salt_palette},
|
||||
[ITEM_SHOAL_SHELL] = {gFile_graphics_items_icons_shoal_shell_sheet, gFile_graphics_items_icon_palettes_shell_palette},
|
||||
[ITEM_RED_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_red_shard_palette},
|
||||
[ITEM_BLUE_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_blue_shard_palette},
|
||||
[ITEM_YELLOW_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_yellow_shard_palette},
|
||||
[ITEM_GREEN_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_green_shard_palette},
|
||||
[ITEM_034] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_035] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_036] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_037] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_038] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_039] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_03A] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_03B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_03C] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_03D] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_03E] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_HP_UP] = {gFile_graphics_items_icons_hp_up_sheet, gFile_graphics_items_icon_palettes_hp_up_palette},
|
||||
[ITEM_PROTEIN] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_protein_palette},
|
||||
[ITEM_IRON] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_iron_palette},
|
||||
[ITEM_CARBOS] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_carbos_palette},
|
||||
[ITEM_CALCIUM] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_calcium_palette},
|
||||
[ITEM_RARE_CANDY] = {gFile_graphics_items_icons_rare_candy_sheet, gFile_graphics_items_icon_palettes_rare_candy_palette},
|
||||
[ITEM_PP_UP] = {gFile_graphics_items_icons_pp_up_sheet, gFile_graphics_items_icon_palettes_pp_up_palette},
|
||||
[ITEM_ZINC] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_zinc_palette},
|
||||
[ITEM_PP_MAX] = {gFile_graphics_items_icons_pp_max_sheet, gFile_graphics_items_icon_palettes_pp_max_palette},
|
||||
[ITEM_048] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_GUARD_SPEC] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_guard_spec_palette},
|
||||
[ITEM_DIRE_HIT] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_dire_hit_palette},
|
||||
[ITEM_X_ATTACK] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_attack_palette},
|
||||
[ITEM_X_DEFEND] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_defend_palette},
|
||||
[ITEM_X_SPEED] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_speed_palette},
|
||||
[ITEM_X_ACCURACY] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_accuracy_palette},
|
||||
[ITEM_X_SPECIAL] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_special_palette},
|
||||
[ITEM_POKE_DOLL] = {gFile_graphics_items_icons_poke_doll_sheet, gFile_graphics_items_icon_palettes_poke_doll_palette},
|
||||
[ITEM_FLUFFY_TAIL] = {gFile_graphics_items_icons_fluffy_tail_sheet, gFile_graphics_items_icon_palettes_fluffy_tail_palette},
|
||||
[ITEM_052] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_SUPER_REPEL] = {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_super_repel_palette},
|
||||
[ITEM_MAX_REPEL] = {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_max_repel_palette},
|
||||
[ITEM_ESCAPE_ROPE] = {gFile_graphics_items_icons_escape_rope_sheet, gFile_graphics_items_icon_palettes_escape_rope_palette},
|
||||
[ITEM_REPEL] = {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_repel_palette},
|
||||
[ITEM_057] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_058] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_059] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_05A] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_05B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_05C] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_SUN_STONE] = {gFile_graphics_items_icons_sun_stone_sheet, gFile_graphics_items_icon_palettes_sun_stone_palette},
|
||||
[ITEM_MOON_STONE] = {gFile_graphics_items_icons_moon_stone_sheet, gFile_graphics_items_icon_palettes_moon_stone_palette},
|
||||
[ITEM_FIRE_STONE] = {gFile_graphics_items_icons_fire_stone_sheet, gFile_graphics_items_icon_palettes_fire_stone_palette},
|
||||
[ITEM_THUNDER_STONE] = {gFile_graphics_items_icons_thunder_stone_sheet, gFile_graphics_items_icon_palettes_thunder_stone_palette},
|
||||
[ITEM_WATER_STONE] = {gFile_graphics_items_icons_water_stone_sheet, gFile_graphics_items_icon_palettes_water_stone_palette},
|
||||
[ITEM_LEAF_STONE] = {gFile_graphics_items_icons_leaf_stone_sheet, gFile_graphics_items_icon_palettes_leaf_stone_palette},
|
||||
[ITEM_063] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_064] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_065] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_066] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_TINY_MUSHROOM] = {gFile_graphics_items_icons_tiny_mushroom_sheet, gFile_graphics_items_icon_palettes_mushroom_palette},
|
||||
[ITEM_BIG_MUSHROOM] = {gFile_graphics_items_icons_big_mushroom_sheet, gFile_graphics_items_icon_palettes_mushroom_palette},
|
||||
[ITEM_069] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_PEARL] = {gFile_graphics_items_icons_pearl_sheet, gFile_graphics_items_icon_palettes_pearl_palette},
|
||||
[ITEM_BIG_PEARL] = {gFile_graphics_items_icons_big_pearl_sheet, gFile_graphics_items_icon_palettes_pearl_palette},
|
||||
[ITEM_STARDUST] = {gFile_graphics_items_icons_stardust_sheet, gFile_graphics_items_icon_palettes_star_palette},
|
||||
[ITEM_STAR_PIECE] = {gFile_graphics_items_icons_star_piece_sheet, gFile_graphics_items_icon_palettes_star_palette},
|
||||
[ITEM_NUGGET] = {gFile_graphics_items_icons_nugget_sheet, gFile_graphics_items_icon_palettes_nugget_palette},
|
||||
[ITEM_HEART_SCALE] = {gFile_graphics_items_icons_heart_scale_sheet, gFile_graphics_items_icon_palettes_heart_scale_palette},
|
||||
[ITEM_070] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_071] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_072] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_073] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_074] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_075] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_076] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_077] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_078] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_ORANGE_MAIL] = {gFile_graphics_items_icons_orange_mail_sheet, gFile_graphics_items_icon_palettes_orange_mail_palette},
|
||||
[ITEM_HARBOR_MAIL] = {gFile_graphics_items_icons_harbor_mail_sheet, gFile_graphics_items_icon_palettes_harbor_mail_palette},
|
||||
[ITEM_GLITTER_MAIL] = {gFile_graphics_items_icons_glitter_mail_sheet, gFile_graphics_items_icon_palettes_glitter_mail_palette},
|
||||
[ITEM_MECH_MAIL] = {gFile_graphics_items_icons_mech_mail_sheet, gFile_graphics_items_icon_palettes_mech_mail_palette},
|
||||
[ITEM_WOOD_MAIL] = {gFile_graphics_items_icons_wood_mail_sheet, gFile_graphics_items_icon_palettes_wood_mail_palette},
|
||||
[ITEM_WAVE_MAIL] = {gFile_graphics_items_icons_wave_mail_sheet, gFile_graphics_items_icon_palettes_wave_mail_palette},
|
||||
[ITEM_BEAD_MAIL] = {gFile_graphics_items_icons_bead_mail_sheet, gFile_graphics_items_icon_palettes_bead_mail_palette},
|
||||
[ITEM_SHADOW_MAIL] = {gFile_graphics_items_icons_shadow_mail_sheet, gFile_graphics_items_icon_palettes_shadow_mail_palette},
|
||||
[ITEM_TROPIC_MAIL] = {gFile_graphics_items_icons_tropic_mail_sheet, gFile_graphics_items_icon_palettes_tropic_mail_palette},
|
||||
[ITEM_DREAM_MAIL] = {gFile_graphics_items_icons_dream_mail_sheet, gFile_graphics_items_icon_palettes_dream_mail_palette},
|
||||
[ITEM_FAB_MAIL] = {gFile_graphics_items_icons_fab_mail_sheet, gFile_graphics_items_icon_palettes_fab_mail_palette},
|
||||
[ITEM_RETRO_MAIL] = {gFile_graphics_items_icons_retro_mail_sheet, gFile_graphics_items_icon_palettes_retro_mail_palette},
|
||||
[ITEM_CHERI_BERRY] = {gFile_graphics_items_icons_cheri_berry_sheet, gFile_graphics_items_icon_palettes_cheri_berry_palette},
|
||||
[ITEM_CHESTO_BERRY] = {gFile_graphics_items_icons_chesto_berry_sheet, gFile_graphics_items_icon_palettes_chesto_berry_palette},
|
||||
[ITEM_PECHA_BERRY] = {gFile_graphics_items_icons_pecha_berry_sheet, gFile_graphics_items_icon_palettes_pecha_berry_palette},
|
||||
[ITEM_RAWST_BERRY] = {gFile_graphics_items_icons_rawst_berry_sheet, gFile_graphics_items_icon_palettes_rawst_berry_palette},
|
||||
[ITEM_ASPEAR_BERRY] = {gFile_graphics_items_icons_aspear_berry_sheet, gFile_graphics_items_icon_palettes_aspear_berry_palette},
|
||||
[ITEM_LEPPA_BERRY] = {gFile_graphics_items_icons_leppa_berry_sheet, gFile_graphics_items_icon_palettes_leppa_berry_palette},
|
||||
[ITEM_ORAN_BERRY] = {gFile_graphics_items_icons_oran_berry_sheet, gFile_graphics_items_icon_palettes_oran_berry_palette},
|
||||
[ITEM_PERSIM_BERRY] = {gFile_graphics_items_icons_persim_berry_sheet, gFile_graphics_items_icon_palettes_persim_berry_palette},
|
||||
[ITEM_LUM_BERRY] = {gFile_graphics_items_icons_lum_berry_sheet, gFile_graphics_items_icon_palettes_lum_berry_palette},
|
||||
[ITEM_SITRUS_BERRY] = {gFile_graphics_items_icons_sitrus_berry_sheet, gFile_graphics_items_icon_palettes_sitrus_berry_palette},
|
||||
[ITEM_FIGY_BERRY] = {gFile_graphics_items_icons_figy_berry_sheet, gFile_graphics_items_icon_palettes_figy_berry_palette},
|
||||
[ITEM_WIKI_BERRY] = {gFile_graphics_items_icons_wiki_berry_sheet, gFile_graphics_items_icon_palettes_wiki_berry_palette},
|
||||
[ITEM_MAGO_BERRY] = {gFile_graphics_items_icons_mago_berry_sheet, gFile_graphics_items_icon_palettes_mago_berry_palette},
|
||||
[ITEM_AGUAV_BERRY] = {gFile_graphics_items_icons_aguav_berry_sheet, gFile_graphics_items_icon_palettes_aguav_berry_palette},
|
||||
[ITEM_IAPAPA_BERRY] = {gFile_graphics_items_icons_iapapa_berry_sheet, gFile_graphics_items_icon_palettes_iapapa_berry_palette},
|
||||
[ITEM_RAZZ_BERRY] = {gFile_graphics_items_icons_razz_berry_sheet, gFile_graphics_items_icon_palettes_razz_berry_palette},
|
||||
[ITEM_BLUK_BERRY] = {gFile_graphics_items_icons_bluk_berry_sheet, gFile_graphics_items_icon_palettes_bluk_berry_palette},
|
||||
[ITEM_NANAB_BERRY] = {gFile_graphics_items_icons_nanab_berry_sheet, gFile_graphics_items_icon_palettes_nanab_berry_palette},
|
||||
[ITEM_WEPEAR_BERRY] = {gFile_graphics_items_icons_wepear_berry_sheet, gFile_graphics_items_icon_palettes_wepear_berry_palette},
|
||||
[ITEM_PINAP_BERRY] = {gFile_graphics_items_icons_pinap_berry_sheet, gFile_graphics_items_icon_palettes_pinap_berry_palette},
|
||||
[ITEM_POMEG_BERRY] = {gFile_graphics_items_icons_pomeg_berry_sheet, gFile_graphics_items_icon_palettes_pomeg_berry_palette},
|
||||
[ITEM_KELPSY_BERRY] = {gFile_graphics_items_icons_kelpsy_berry_sheet, gFile_graphics_items_icon_palettes_kelpsy_berry_palette},
|
||||
[ITEM_QUALOT_BERRY] = {gFile_graphics_items_icons_qualot_berry_sheet, gFile_graphics_items_icon_palettes_qualot_berry_palette},
|
||||
[ITEM_HONDEW_BERRY] = {gFile_graphics_items_icons_hondew_berry_sheet, gFile_graphics_items_icon_palettes_hondew_berry_palette},
|
||||
[ITEM_GREPA_BERRY] = {gFile_graphics_items_icons_grepa_berry_sheet, gFile_graphics_items_icon_palettes_grepa_berry_palette},
|
||||
[ITEM_TAMATO_BERRY] = {gFile_graphics_items_icons_tamato_berry_sheet, gFile_graphics_items_icon_palettes_tamato_berry_palette},
|
||||
[ITEM_CORNN_BERRY] = {gFile_graphics_items_icons_cornn_berry_sheet, gFile_graphics_items_icon_palettes_cornn_berry_palette},
|
||||
[ITEM_MAGOST_BERRY] = {gFile_graphics_items_icons_magost_berry_sheet, gFile_graphics_items_icon_palettes_magost_berry_palette},
|
||||
[ITEM_RABUTA_BERRY] = {gFile_graphics_items_icons_rabuta_berry_sheet, gFile_graphics_items_icon_palettes_rabuta_berry_palette},
|
||||
[ITEM_NOMEL_BERRY] = {gFile_graphics_items_icons_nomel_berry_sheet, gFile_graphics_items_icon_palettes_nomel_berry_palette},
|
||||
[ITEM_SPELON_BERRY] = {gFile_graphics_items_icons_spelon_berry_sheet, gFile_graphics_items_icon_palettes_spelon_berry_palette},
|
||||
[ITEM_PAMTRE_BERRY] = {gFile_graphics_items_icons_pamtre_berry_sheet, gFile_graphics_items_icon_palettes_pamtre_berry_palette},
|
||||
[ITEM_WATMEL_BERRY] = {gFile_graphics_items_icons_watmel_berry_sheet, gFile_graphics_items_icon_palettes_watmel_berry_palette},
|
||||
[ITEM_DURIN_BERRY] = {gFile_graphics_items_icons_durin_berry_sheet, gFile_graphics_items_icon_palettes_durin_berry_palette},
|
||||
[ITEM_BELUE_BERRY] = {gFile_graphics_items_icons_belue_berry_sheet, gFile_graphics_items_icon_palettes_belue_berry_palette},
|
||||
[ITEM_LIECHI_BERRY] = {gFile_graphics_items_icons_liechi_berry_sheet, gFile_graphics_items_icon_palettes_liechi_berry_palette},
|
||||
[ITEM_GANLON_BERRY] = {gFile_graphics_items_icons_ganlon_berry_sheet, gFile_graphics_items_icon_palettes_ganlon_berry_palette},
|
||||
[ITEM_SALAC_BERRY] = {gFile_graphics_items_icons_salac_berry_sheet, gFile_graphics_items_icon_palettes_salac_berry_palette},
|
||||
[ITEM_PETAYA_BERRY] = {gFile_graphics_items_icons_petaya_berry_sheet, gFile_graphics_items_icon_palettes_petaya_berry_palette},
|
||||
[ITEM_APICOT_BERRY] = {gFile_graphics_items_icons_apicot_berry_sheet, gFile_graphics_items_icon_palettes_apicot_berry_palette},
|
||||
[ITEM_LANSAT_BERRY] = {gFile_graphics_items_icons_lansat_berry_sheet, gFile_graphics_items_icon_palettes_lansat_berry_palette},
|
||||
[ITEM_STARF_BERRY] = {gFile_graphics_items_icons_starf_berry_sheet, gFile_graphics_items_icon_palettes_starf_berry_palette},
|
||||
[ITEM_ENIGMA_BERRY] = {gFile_graphics_items_icons_enigma_berry_sheet, gFile_graphics_items_icon_palettes_enigma_berry_palette},
|
||||
[ITEM_0B0] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0B1] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0B2] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_BRIGHT_POWDER] = {gFile_graphics_items_icons_bright_powder_sheet, gFile_graphics_items_icon_palettes_bright_powder_palette},
|
||||
[ITEM_WHITE_HERB] = {gFile_graphics_items_icons_in_battle_herb_sheet, gFile_graphics_items_icon_palettes_white_herb_palette},
|
||||
[ITEM_MACHO_BRACE] = {gFile_graphics_items_icons_macho_brace_sheet, gFile_graphics_items_icon_palettes_macho_brace_palette},
|
||||
[ITEM_EXP_SHARE] = {gFile_graphics_items_icons_exp_share_sheet, gFile_graphics_items_icon_palettes_exp_share_palette},
|
||||
[ITEM_QUICK_CLAW] = {gFile_graphics_items_icons_quick_claw_sheet, gFile_graphics_items_icon_palettes_quick_claw_palette},
|
||||
[ITEM_SOOTHE_BELL] = {gFile_graphics_items_icons_soothe_bell_sheet, gFile_graphics_items_icon_palettes_soothe_bell_palette},
|
||||
[ITEM_MENTAL_HERB] = {gFile_graphics_items_icons_in_battle_herb_sheet, gFile_graphics_items_icon_palettes_mental_herb_palette},
|
||||
[ITEM_CHOICE_BAND] = {gFile_graphics_items_icons_choice_band_sheet, gFile_graphics_items_icon_palettes_choice_band_palette},
|
||||
[ITEM_KINGS_ROCK] = {gFile_graphics_items_icons_kings_rock_sheet, gFile_graphics_items_icon_palettes_kings_rock_palette},
|
||||
[ITEM_SILVER_POWDER] = {gFile_graphics_items_icons_silver_powder_sheet, gFile_graphics_items_icon_palettes_silver_powder_palette},
|
||||
[ITEM_AMULET_COIN] = {gFile_graphics_items_icons_amulet_coin_sheet, gFile_graphics_items_icon_palettes_amulet_coin_palette},
|
||||
[ITEM_CLEANSE_TAG] = {gFile_graphics_items_icons_cleanse_tag_sheet, gFile_graphics_items_icon_palettes_cleanse_tag_palette},
|
||||
[ITEM_SOUL_DEW] = {gFile_graphics_items_icons_soul_dew_sheet, gFile_graphics_items_icon_palettes_soul_dew_palette},
|
||||
[ITEM_DEEP_SEA_TOOTH] = {gFile_graphics_items_icons_deep_sea_tooth_sheet, gFile_graphics_items_icon_palettes_deep_sea_tooth_palette},
|
||||
[ITEM_DEEP_SEA_SCALE] = {gFile_graphics_items_icons_deep_sea_scale_sheet, gFile_graphics_items_icon_palettes_deep_sea_scale_palette},
|
||||
[ITEM_SMOKE_BALL] = {gFile_graphics_items_icons_smoke_ball_sheet, gFile_graphics_items_icon_palettes_smoke_ball_palette},
|
||||
[ITEM_EVERSTONE] = {gFile_graphics_items_icons_everstone_sheet, gFile_graphics_items_icon_palettes_everstone_palette},
|
||||
[ITEM_FOCUS_BAND] = {gFile_graphics_items_icons_focus_band_sheet, gFile_graphics_items_icon_palettes_focus_band_palette},
|
||||
[ITEM_LUCKY_EGG] = {gFile_graphics_items_icons_lucky_egg_sheet, gFile_graphics_items_icon_palettes_lucky_egg_palette},
|
||||
[ITEM_SCOPE_LENS] = {gFile_graphics_items_icons_scope_lens_sheet, gFile_graphics_items_icon_palettes_scope_lens_palette},
|
||||
[ITEM_METAL_COAT] = {gFile_graphics_items_icons_metal_coat_sheet, gFile_graphics_items_icon_palettes_metal_coat_palette},
|
||||
[ITEM_LEFTOVERS] = {gFile_graphics_items_icons_leftovers_sheet, gFile_graphics_items_icon_palettes_leftovers_palette},
|
||||
[ITEM_DRAGON_SCALE] = {gFile_graphics_items_icons_dragon_scale_sheet, gFile_graphics_items_icon_palettes_dragon_scale_palette},
|
||||
[ITEM_LIGHT_BALL] = {gFile_graphics_items_icons_light_ball_sheet, gFile_graphics_items_icon_palettes_light_ball_palette},
|
||||
[ITEM_SOFT_SAND] = {gFile_graphics_items_icons_soft_sand_sheet, gFile_graphics_items_icon_palettes_soft_sand_palette},
|
||||
[ITEM_HARD_STONE] = {gFile_graphics_items_icons_hard_stone_sheet, gFile_graphics_items_icon_palettes_hard_stone_palette},
|
||||
[ITEM_MIRACLE_SEED] = {gFile_graphics_items_icons_miracle_seed_sheet, gFile_graphics_items_icon_palettes_miracle_seed_palette},
|
||||
[ITEM_BLACK_GLASSES] = {gFile_graphics_items_icons_black_glasses_sheet, gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette},
|
||||
[ITEM_BLACK_BELT] = {gFile_graphics_items_icons_black_belt_sheet, gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette},
|
||||
[ITEM_MAGNET] = {gFile_graphics_items_icons_magnet_sheet, gFile_graphics_items_icon_palettes_magnet_palette},
|
||||
[ITEM_MYSTIC_WATER] = {gFile_graphics_items_icons_mystic_water_sheet, gFile_graphics_items_icon_palettes_mystic_water_palette},
|
||||
[ITEM_SHARP_BEAK] = {gFile_graphics_items_icons_sharp_beak_sheet, gFile_graphics_items_icon_palettes_sharp_beak_palette},
|
||||
[ITEM_POISON_BARB] = {gFile_graphics_items_icons_poison_barb_sheet, gFile_graphics_items_icon_palettes_poison_barb_palette},
|
||||
[ITEM_NEVER_MELT_ICE] = {gFile_graphics_items_icons_never_melt_ice_sheet, gFile_graphics_items_icon_palettes_never_melt_ice_palette},
|
||||
[ITEM_SPELL_TAG] = {gFile_graphics_items_icons_spell_tag_sheet, gFile_graphics_items_icon_palettes_spell_tag_palette},
|
||||
[ITEM_TWISTED_SPOON] = {gFile_graphics_items_icons_twisted_spoon_sheet, gFile_graphics_items_icon_palettes_twisted_spoon_palette},
|
||||
[ITEM_CHARCOAL] = {gFile_graphics_items_icons_charcoal_sheet, gFile_graphics_items_icon_palettes_charcoal_palette},
|
||||
[ITEM_DRAGON_FANG] = {gFile_graphics_items_icons_dragon_fang_sheet, gFile_graphics_items_icon_palettes_dragon_fang_palette},
|
||||
[ITEM_SILK_SCARF] = {gFile_graphics_items_icons_silk_scarf_sheet, gFile_graphics_items_icon_palettes_silk_scarf_palette},
|
||||
[ITEM_UP_GRADE] = {gFile_graphics_items_icons_up_grade_sheet, gFile_graphics_items_icon_palettes_up_grade_palette},
|
||||
[ITEM_SHELL_BELL] = {gFile_graphics_items_icons_shell_bell_sheet, gFile_graphics_items_icon_palettes_shell_palette},
|
||||
[ITEM_SEA_INCENSE] = {gFile_graphics_items_icons_sea_incense_sheet, gFile_graphics_items_icon_palettes_sea_incense_palette},
|
||||
[ITEM_LAX_INCENSE] = {gFile_graphics_items_icons_lax_incense_sheet, gFile_graphics_items_icon_palettes_lax_incense_palette},
|
||||
[ITEM_LUCKY_PUNCH] = {gFile_graphics_items_icons_lucky_punch_sheet, gFile_graphics_items_icon_palettes_lucky_punch_palette},
|
||||
[ITEM_METAL_POWDER] = {gFile_graphics_items_icons_metal_powder_sheet, gFile_graphics_items_icon_palettes_metal_powder_palette},
|
||||
[ITEM_THICK_CLUB] = {gFile_graphics_items_icons_thick_club_sheet, gFile_graphics_items_icon_palettes_thick_club_palette},
|
||||
[ITEM_STICK] = {gFile_graphics_items_icons_stick_sheet, gFile_graphics_items_icon_palettes_stick_palette},
|
||||
[ITEM_0E2] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0E3] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0E4] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0E5] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0E6] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0E7] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0E8] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0E9] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0EA] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0EB] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0EC] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0ED] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0EE] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0EF] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F0] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F1] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F2] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F3] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F4] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F5] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F6] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F7] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F8] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0F9] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0FA] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0FB] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0FC] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_0FD] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_RED_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_red_scarf_palette},
|
||||
[ITEM_BLUE_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_blue_scarf_palette},
|
||||
[ITEM_PINK_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_pink_scarf_palette},
|
||||
[ITEM_GREEN_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_green_scarf_palette},
|
||||
[ITEM_YELLOW_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_yellow_scarf_palette},
|
||||
[ITEM_MACH_BIKE] = {gFile_graphics_items_icons_mach_bike_sheet, gFile_graphics_items_icon_palettes_mach_bike_palette},
|
||||
[ITEM_COIN_CASE] = {gFile_graphics_items_icons_coin_case_sheet, gFile_graphics_items_icon_palettes_coin_case_palette},
|
||||
[ITEM_ITEMFINDER] = {gFile_graphics_items_icons_itemfinder_sheet, gFile_graphics_items_icon_palettes_itemfinder_palette},
|
||||
[ITEM_OLD_ROD] = {gFile_graphics_items_icons_old_rod_sheet, gFile_graphics_items_icon_palettes_old_rod_palette},
|
||||
[ITEM_GOOD_ROD] = {gFile_graphics_items_icons_good_rod_sheet, gFile_graphics_items_icon_palettes_good_rod_palette},
|
||||
[ITEM_SUPER_ROD] = {gFile_graphics_items_icons_super_rod_sheet, gFile_graphics_items_icon_palettes_super_rod_palette},
|
||||
[ITEM_SS_TICKET] = {gFile_graphics_items_icons_ss_ticket_sheet, gFile_graphics_items_icon_palettes_ss_ticket_palette},
|
||||
[ITEM_CONTEST_PASS] = {gFile_graphics_items_icons_contest_pass_sheet, gFile_graphics_items_icon_palettes_contest_pass_palette},
|
||||
[ITEM_10B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_WAILMER_PAIL] = {gFile_graphics_items_icons_wailmer_pail_sheet, gFile_graphics_items_icon_palettes_wailmer_pail_palette},
|
||||
[ITEM_DEVON_GOODS] = {gFile_graphics_items_icons_devon_goods_sheet, gFile_graphics_items_icon_palettes_devon_goods_palette},
|
||||
[ITEM_SOOT_SACK] = {gFile_graphics_items_icons_soot_sack_sheet, gFile_graphics_items_icon_palettes_soot_sack_palette},
|
||||
[ITEM_BASEMENT_KEY] = {gFile_graphics_items_icons_basement_key_sheet, gFile_graphics_items_icon_palettes_old_key_palette},
|
||||
[ITEM_ACRO_BIKE] = {gFile_graphics_items_icons_acro_bike_sheet, gFile_graphics_items_icon_palettes_acro_bike_palette},
|
||||
[ITEM_POKEBLOCK_CASE] = {gFile_graphics_items_icons_pokeblock_case_sheet, gFile_graphics_items_icon_palettes_pokeblock_case_palette},
|
||||
[ITEM_LETTER] = {gFile_graphics_items_icons_letter_sheet, gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette},
|
||||
[ITEM_EON_TICKET] = {gFile_graphics_items_icons_eon_ticket_sheet, gFile_graphics_items_icon_palettes_eon_ticket_palette},
|
||||
[ITEM_RED_ORB] = {gFile_graphics_items_icons_orb_sheet, gFile_graphics_items_icon_palettes_red_orb_palette},
|
||||
[ITEM_BLUE_ORB] = {gFile_graphics_items_icons_orb_sheet, gFile_graphics_items_icon_palettes_blue_orb_palette},
|
||||
[ITEM_SCANNER] = {gFile_graphics_items_icons_scanner_sheet, gFile_graphics_items_icon_palettes_scanner_palette},
|
||||
[ITEM_GO_GOGGLES] = {gFile_graphics_items_icons_go_goggles_sheet, gFile_graphics_items_icon_palettes_go_goggles_palette},
|
||||
[ITEM_METEORITE] = {gFile_graphics_items_icons_meteorite_sheet, gFile_graphics_items_icon_palettes_meteorite_palette},
|
||||
[ITEM_ROOM_1_KEY] = {gFile_graphics_items_icons_room1_key_sheet, gFile_graphics_items_icon_palettes_key_palette},
|
||||
[ITEM_ROOM_2_KEY] = {gFile_graphics_items_icons_room2_key_sheet, gFile_graphics_items_icon_palettes_key_palette},
|
||||
[ITEM_ROOM_4_KEY] = {gFile_graphics_items_icons_room4_key_sheet, gFile_graphics_items_icon_palettes_key_palette},
|
||||
[ITEM_ROOM_6_KEY] = {gFile_graphics_items_icons_room6_key_sheet, gFile_graphics_items_icon_palettes_key_palette},
|
||||
[ITEM_STORAGE_KEY] = {gFile_graphics_items_icons_storage_key_sheet, gFile_graphics_items_icon_palettes_old_key_palette},
|
||||
[ITEM_ROOT_FOSSIL] = {gFile_graphics_items_icons_root_fossil_sheet, gFile_graphics_items_icon_palettes_hoenn_fossil_palette},
|
||||
[ITEM_CLAW_FOSSIL] = {gFile_graphics_items_icons_claw_fossil_sheet, gFile_graphics_items_icon_palettes_hoenn_fossil_palette},
|
||||
[ITEM_DEVON_SCOPE] = {gFile_graphics_items_icons_devon_scope_sheet, gFile_graphics_items_icon_palettes_devon_scope_palette},
|
||||
[ITEM_TM01] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette},
|
||||
[ITEM_TM02] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dragon_tm_hm_palette},
|
||||
[ITEM_TM03] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette},
|
||||
[ITEM_TM04] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette},
|
||||
[ITEM_TM05] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM06] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_poison_tm_hm_palette},
|
||||
[ITEM_TM07] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette},
|
||||
[ITEM_TM08] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette},
|
||||
[ITEM_TM09] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette},
|
||||
[ITEM_TM10] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM11] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette},
|
||||
[ITEM_TM12] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette},
|
||||
[ITEM_TM13] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette},
|
||||
[ITEM_TM14] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette},
|
||||
[ITEM_TM15] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM16] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette},
|
||||
[ITEM_TM17] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM18] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette},
|
||||
[ITEM_TM19] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette},
|
||||
[ITEM_TM20] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM21] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM22] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette},
|
||||
[ITEM_TM23] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_steel_tm_hm_palette},
|
||||
[ITEM_TM24] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette},
|
||||
[ITEM_TM25] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette},
|
||||
[ITEM_TM26] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ground_tm_hm_palette},
|
||||
[ITEM_TM27] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM28] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ground_tm_hm_palette},
|
||||
[ITEM_TM29] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette},
|
||||
[ITEM_TM30] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ghost_tm_hm_palette},
|
||||
[ITEM_TM31] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette},
|
||||
[ITEM_TM32] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM33] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette},
|
||||
[ITEM_TM34] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette},
|
||||
[ITEM_TM35] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette},
|
||||
[ITEM_TM36] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_poison_tm_hm_palette},
|
||||
[ITEM_TM37] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_rock_tm_hm_palette},
|
||||
[ITEM_TM38] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette},
|
||||
[ITEM_TM39] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_rock_tm_hm_palette},
|
||||
[ITEM_TM40] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_flying_tm_hm_palette},
|
||||
[ITEM_TM41] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette},
|
||||
[ITEM_TM42] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM43] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM44] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette},
|
||||
[ITEM_TM45] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_TM46] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette},
|
||||
[ITEM_TM47] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_steel_tm_hm_palette},
|
||||
[ITEM_TM48] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette},
|
||||
[ITEM_TM49] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette},
|
||||
[ITEM_TM50] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette},
|
||||
[ITEM_HM01] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_HM02] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_flying_tm_hm_palette},
|
||||
[ITEM_HM03] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette},
|
||||
[ITEM_HM04] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_HM05] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette},
|
||||
[ITEM_HM06] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette},
|
||||
[ITEM_HM07] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette},
|
||||
[ITEM_HM08] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette},
|
||||
[ITEM_15B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_15C] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette},
|
||||
[ITEM_OAKS_PARCEL] = {gFile_graphics_items_icons_oaks_parcel_sheet, gFile_graphics_items_icon_palettes_oaks_parcel_palette},
|
||||
[ITEM_POKE_FLUTE] = {gFile_graphics_items_icons_poke_flute_sheet, gFile_graphics_items_icon_palettes_poke_flute_palette},
|
||||
[ITEM_SECRET_KEY] = {gFile_graphics_items_icons_secret_key_sheet, gFile_graphics_items_icon_palettes_secret_key_palette},
|
||||
[ITEM_BIKE_VOUCHER] = {gFile_graphics_items_icons_bike_voucher_sheet, gFile_graphics_items_icon_palettes_bike_voucher_palette},
|
||||
[ITEM_GOLD_TEETH] = {gFile_graphics_items_icons_gold_teeth_sheet, gFile_graphics_items_icon_palettes_gold_teeth_palette},
|
||||
[ITEM_OLD_AMBER] = {gFile_graphics_items_icons_old_amber_sheet, gFile_graphics_items_icon_palettes_old_amber_palette},
|
||||
[ITEM_CARD_KEY] = {gFile_graphics_items_icons_card_key_sheet, gFile_graphics_items_icon_palettes_card_key_palette},
|
||||
[ITEM_LIFT_KEY] = {gFile_graphics_items_icons_lift_key_sheet, gFile_graphics_items_icon_palettes_key_palette},
|
||||
[ITEM_HELIX_FOSSIL] = {gFile_graphics_items_icons_helix_fossil_sheet, gFile_graphics_items_icon_palettes_kanto_fossil_palette},
|
||||
[ITEM_DOME_FOSSIL] = {gFile_graphics_items_icons_dome_fossil_sheet, gFile_graphics_items_icon_palettes_kanto_fossil_palette},
|
||||
[ITEM_SILPH_SCOPE] = {gFile_graphics_items_icons_silph_scope_sheet, gFile_graphics_items_icon_palettes_silph_scope_palette},
|
||||
[ITEM_BICYCLE] = {gFile_graphics_items_icons_bicycle_sheet, gFile_graphics_items_icon_palettes_bicycle_palette},
|
||||
[ITEM_TOWN_MAP] = {gFile_graphics_items_icons_town_map_sheet, gFile_graphics_items_icon_palettes_town_map_palette},
|
||||
[ITEM_VS_SEEKER] = {gFile_graphics_items_icons_vs_seeker_sheet, gFile_graphics_items_icon_palettes_vs_seeker_palette},
|
||||
[ITEM_FAME_CHECKER] = {gFile_graphics_items_icons_fame_checker_sheet, gFile_graphics_items_icon_palettes_fame_checker_palette},
|
||||
[ITEM_TM_CASE] = {gFile_graphics_items_icons_tm_case_sheet, gFile_graphics_items_icon_palettes_tm_case_palette},
|
||||
[ITEM_BERRY_POUCH] = {gFile_graphics_items_icons_berry_pouch_sheet, gFile_graphics_items_icon_palettes_berry_pouch_palette},
|
||||
[ITEM_TEACHY_TV] = {gFile_graphics_items_icons_teachy_tv_sheet, gFile_graphics_items_icon_palettes_teachy_tv_palette},
|
||||
[ITEM_TRI_PASS] = {gFile_graphics_items_icons_tri_pass_sheet, gFile_graphics_items_icon_palettes_tri_pass_palette},
|
||||
[ITEM_RAINBOW_PASS] = {gFile_graphics_items_icons_rainbow_pass_sheet, gFile_graphics_items_icon_palettes_rainbow_pass_palette},
|
||||
[ITEM_TEA] = {gFile_graphics_items_icons_tea_sheet, gFile_graphics_items_icon_palettes_tea_palette},
|
||||
[ITEM_MYSTIC_TICKET] = {gFile_graphics_items_icons_mystic_ticket_sheet, gFile_graphics_items_icon_palettes_mystic_ticket_palette},
|
||||
[ITEM_AURORA_TICKET] = {gFile_graphics_items_icons_aurora_ticket_sheet, gFile_graphics_items_icon_palettes_aurora_ticket_palette},
|
||||
[ITEM_POWDER_JAR] = {gFile_graphics_items_icons_powder_jar_sheet, gFile_graphics_items_icon_palettes_powder_jar_palette},
|
||||
[ITEM_RUBY] = {gFile_graphics_items_icons_gem_sheet, gFile_graphics_items_icon_palettes_ruby_palette},
|
||||
[ITEM_SAPPHIRE] = {gFile_graphics_items_icons_gem_sheet, gFile_graphics_items_icon_palettes_sapphire_palette},
|
||||
[ITEMS_COUNT] = {gFile_graphics_items_icons_return_to_field_arrow_sheet, gFile_graphics_items_icon_palettes_return_to_field_arrow_palette}
|
||||
[ITEM_NONE] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Pokeballs
|
||||
[ITEM_MASTER_BALL] = {gItemIcon_MasterBall, gItemIconPalette_MasterBall},
|
||||
[ITEM_ULTRA_BALL] = {gItemIcon_UltraBall, gItemIconPalette_UltraBall},
|
||||
[ITEM_GREAT_BALL] = {gItemIcon_GreatBall, gItemIconPalette_GreatBall},
|
||||
[ITEM_POKE_BALL] = {gItemIcon_PokeBall, gItemIconPalette_PokeBall},
|
||||
[ITEM_SAFARI_BALL] = {gItemIcon_SafariBall, gItemIconPalette_SafariBall},
|
||||
[ITEM_NET_BALL] = {gItemIcon_NetBall, gItemIconPalette_NetBall},
|
||||
[ITEM_DIVE_BALL] = {gItemIcon_DiveBall, gItemIconPalette_DiveBall},
|
||||
[ITEM_NEST_BALL] = {gItemIcon_NestBall, gItemIconPalette_NestBall},
|
||||
[ITEM_REPEAT_BALL] = {gItemIcon_RepeatBall, gItemIconPalette_RepeatBall},
|
||||
[ITEM_TIMER_BALL] = {gItemIcon_TimerBall, gItemIconPalette_RepeatBall},
|
||||
[ITEM_LUXURY_BALL] = {gItemIcon_LuxuryBall, gItemIconPalette_LuxuryBall},
|
||||
[ITEM_PREMIER_BALL] = {gItemIcon_PremierBall, gItemIconPalette_LuxuryBall},
|
||||
// Medicine
|
||||
[ITEM_POTION] = {gItemIcon_Potion, gItemIconPalette_Potion},
|
||||
[ITEM_ANTIDOTE] = {gItemIcon_Antidote, gItemIconPalette_Antidote},
|
||||
[ITEM_BURN_HEAL] = {gItemIcon_StatusHeal, gItemIconPalette_BurnHeal},
|
||||
[ITEM_ICE_HEAL] = {gItemIcon_StatusHeal, gItemIconPalette_IceHeal},
|
||||
[ITEM_AWAKENING] = {gItemIcon_StatusHeal, gItemIconPalette_Awakening},
|
||||
[ITEM_PARALYZE_HEAL] = {gItemIcon_StatusHeal, gItemIconPalette_ParalyzeHeal},
|
||||
[ITEM_FULL_RESTORE] = {gItemIcon_LargePotion, gItemIconPalette_FullRestore},
|
||||
[ITEM_MAX_POTION] = {gItemIcon_LargePotion, gItemIconPalette_MaxPotion},
|
||||
[ITEM_HYPER_POTION] = {gItemIcon_Potion, gItemIconPalette_HyperPotion},
|
||||
[ITEM_SUPER_POTION] = {gItemIcon_Potion, gItemIconPalette_SuperPotion},
|
||||
[ITEM_FULL_HEAL] = {gItemIcon_FullHeal, gItemIconPalette_FullHeal},
|
||||
[ITEM_REVIVE] = {gItemIcon_Revive, gItemIconPalette_Revive},
|
||||
[ITEM_MAX_REVIVE] = {gItemIcon_MaxRevive, gItemIconPalette_Revive},
|
||||
[ITEM_FRESH_WATER] = {gItemIcon_FreshWater, gItemIconPalette_FreshWater},
|
||||
[ITEM_SODA_POP] = {gItemIcon_SodaPop, gItemIconPalette_SodaPop},
|
||||
[ITEM_LEMONADE] = {gItemIcon_Lemonade, gItemIconPalette_Lemonade},
|
||||
[ITEM_MOOMOO_MILK] = {gItemIcon_MoomooMilk, gItemIconPalette_MoomooMilk},
|
||||
[ITEM_ENERGY_POWDER] = {gItemIcon_Powder, gItemIconPalette_EnergyPowder},
|
||||
[ITEM_ENERGY_ROOT] = {gItemIcon_EnergyRoot, gItemIconPalette_EnergyRoot},
|
||||
[ITEM_HEAL_POWDER] = {gItemIcon_Powder, gItemIconPalette_HealPowder},
|
||||
[ITEM_REVIVAL_HERB] = {gItemIcon_RevivalHerb, gItemIconPalette_RevivalHerb},
|
||||
[ITEM_ETHER] = {gItemIcon_Ether, gItemIconPalette_Ether},
|
||||
[ITEM_MAX_ETHER] = {gItemIcon_Ether, gItemIconPalette_MaxEther},
|
||||
[ITEM_ELIXIR] = {gItemIcon_Ether, gItemIconPalette_Elixir},
|
||||
[ITEM_MAX_ELIXIR] = {gItemIcon_Ether, gItemIconPalette_MaxElixir},
|
||||
[ITEM_LAVA_COOKIE] = {gItemIcon_LavaCookie, gItemIconPalette_LavaCookieAndLetter},
|
||||
[ITEM_BLUE_FLUTE] = {gItemIcon_Flute, gItemIconPalette_BlueFlute},
|
||||
[ITEM_YELLOW_FLUTE] = {gItemIcon_Flute, gItemIconPalette_YellowFlute},
|
||||
[ITEM_RED_FLUTE] = {gItemIcon_Flute, gItemIconPalette_RedFlute},
|
||||
[ITEM_BLACK_FLUTE] = {gItemIcon_Flute, gItemIconPalette_BlackFlute},
|
||||
[ITEM_WHITE_FLUTE] = {gItemIcon_Flute, gItemIconPalette_WhiteFlute},
|
||||
[ITEM_BERRY_JUICE] = {gItemIcon_BerryJuice, gItemIconPalette_BerryJuice},
|
||||
[ITEM_SACRED_ASH] = {gItemIcon_SacredAsh, gItemIconPalette_SacredAsh},
|
||||
// Collectibles
|
||||
[ITEM_SHOAL_SALT] = {gItemIcon_Powder, gItemIconPalette_ShoalSalt},
|
||||
[ITEM_SHOAL_SHELL] = {gItemIcon_ShoalShell, gItemIconPalette_Shell},
|
||||
[ITEM_RED_SHARD] = {gItemIcon_Shard, gItemIconPalette_RedShard},
|
||||
[ITEM_BLUE_SHARD] = {gItemIcon_Shard, gItemIconPalette_BlueShard},
|
||||
[ITEM_YELLOW_SHARD] = {gItemIcon_Shard, gItemIconPalette_YellowShard},
|
||||
[ITEM_GREEN_SHARD] = {gItemIcon_Shard, gItemIconPalette_GreenShard},
|
||||
// ????????
|
||||
[ITEM_034] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_035] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_036] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_037] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_038] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_039] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_03A] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_03B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_03C] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_03D] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_03E] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Vitamins
|
||||
[ITEM_HP_UP] = {gItemIcon_HPUp, gItemIconPalette_HPUp},
|
||||
[ITEM_PROTEIN] = {gItemIcon_Vitamin, gItemIconPalette_Protein},
|
||||
[ITEM_IRON] = {gItemIcon_Vitamin, gItemIconPalette_Iron},
|
||||
[ITEM_CARBOS] = {gItemIcon_Vitamin, gItemIconPalette_Carbos},
|
||||
[ITEM_CALCIUM] = {gItemIcon_Vitamin, gItemIconPalette_Calcium},
|
||||
[ITEM_RARE_CANDY] = {gItemIcon_RareCandy, gItemIconPalette_RareCandy},
|
||||
[ITEM_PP_UP] = {gItemIcon_PPUp, gItemIconPalette_PPUp},
|
||||
[ITEM_ZINC] = {gItemIcon_Vitamin, gItemIconPalette_Zinc},
|
||||
[ITEM_PP_MAX] = {gItemIcon_PPMax, gItemIconPalette_PPMax},
|
||||
// ????????
|
||||
[ITEM_048] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Battle items
|
||||
[ITEM_GUARD_SPEC] = {gItemIcon_BattleStatItem, gItemIconPalette_GuardSpec},
|
||||
[ITEM_DIRE_HIT] = {gItemIcon_BattleStatItem, gItemIconPalette_DireHit},
|
||||
[ITEM_X_ATTACK] = {gItemIcon_BattleStatItem, gItemIconPalette_XAttack},
|
||||
[ITEM_X_DEFEND] = {gItemIcon_BattleStatItem, gItemIconPalette_XDefend},
|
||||
[ITEM_X_SPEED] = {gItemIcon_BattleStatItem, gItemIconPalette_XSpeed},
|
||||
[ITEM_X_ACCURACY] = {gItemIcon_BattleStatItem, gItemIconPalette_XAccuracy},
|
||||
[ITEM_X_SPECIAL] = {gItemIcon_BattleStatItem, gItemIconPalette_XSpecial},
|
||||
[ITEM_POKE_DOLL] = {gItemIcon_PokeDoll, gItemIconPalette_PokeDoll},
|
||||
[ITEM_FLUFFY_TAIL] = {gItemIcon_FluffyTail, gItemIconPalette_FluffyTail},
|
||||
// ????????
|
||||
[ITEM_052] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Field items
|
||||
[ITEM_SUPER_REPEL] = {gItemIcon_Repel, gItemIconPalette_SuperRepel},
|
||||
[ITEM_MAX_REPEL] = {gItemIcon_Repel, gItemIconPalette_MaxRepel},
|
||||
[ITEM_ESCAPE_ROPE] = {gItemIcon_EscapeRope, gItemIconPalette_EscapeRope},
|
||||
[ITEM_REPEL] = {gItemIcon_Repel, gItemIconPalette_Repel},
|
||||
// ????????
|
||||
[ITEM_057] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_058] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_059] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_05A] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_05B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_05C] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Evolution stones
|
||||
[ITEM_SUN_STONE] = {gItemIcon_SunStone, gItemIconPalette_SunStone},
|
||||
[ITEM_MOON_STONE] = {gItemIcon_MoonStone, gItemIconPalette_MoonStone},
|
||||
[ITEM_FIRE_STONE] = {gItemIcon_FireStone, gItemIconPalette_FireStone},
|
||||
[ITEM_THUNDER_STONE] = {gItemIcon_ThunderStone, gItemIconPalette_ThunderStone},
|
||||
[ITEM_WATER_STONE] = {gItemIcon_WaterStone, gItemIconPalette_WaterStone},
|
||||
[ITEM_LEAF_STONE] = {gItemIcon_LeafStone, gItemIconPalette_LeafStone},
|
||||
// ????????
|
||||
[ITEM_063] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_064] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_065] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_066] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Valuables
|
||||
[ITEM_TINY_MUSHROOM] = {gItemIcon_TinyMushroom, gItemIconPalette_Mushroom},
|
||||
[ITEM_BIG_MUSHROOM] = {gItemIcon_BigMushroom, gItemIconPalette_Mushroom},
|
||||
[ITEM_069] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_PEARL] = {gItemIcon_Pearl, gItemIconPalette_Pearl},
|
||||
[ITEM_BIG_PEARL] = {gItemIcon_BigPearl, gItemIconPalette_Pearl},
|
||||
[ITEM_STARDUST] = {gItemIcon_Stardust, gItemIconPalette_Star},
|
||||
[ITEM_STAR_PIECE] = {gItemIcon_StarPiece, gItemIconPalette_Star},
|
||||
[ITEM_NUGGET] = {gItemIcon_Nugget, gItemIconPalette_Nugget},
|
||||
[ITEM_HEART_SCALE] = {gItemIcon_HeartScale, gItemIconPalette_HeartScale},
|
||||
// ????????
|
||||
[ITEM_070] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_071] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_072] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_073] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_074] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_075] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_076] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_077] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_078] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Mail
|
||||
[ITEM_ORANGE_MAIL] = {gItemIcon_OrangeMail, gItemIconPalette_OrangeMail},
|
||||
[ITEM_HARBOR_MAIL] = {gItemIcon_HarborMail, gItemIconPalette_HarborMail},
|
||||
[ITEM_GLITTER_MAIL] = {gItemIcon_GlitterMail, gItemIconPalette_GlitterMail},
|
||||
[ITEM_MECH_MAIL] = {gItemIcon_MechMail, gItemIconPalette_MechMail},
|
||||
[ITEM_WOOD_MAIL] = {gItemIcon_WoodMail, gItemIconPalette_WoodMail},
|
||||
[ITEM_WAVE_MAIL] = {gItemIcon_WaveMail, gItemIconPalette_WaveMail},
|
||||
[ITEM_BEAD_MAIL] = {gItemIcon_BeadMail, gItemIconPalette_BeadMail},
|
||||
[ITEM_SHADOW_MAIL] = {gItemIcon_ShadowMail, gItemIconPalette_ShadowMail},
|
||||
[ITEM_TROPIC_MAIL] = {gItemIcon_TropicMail, gItemIconPalette_TropicMail},
|
||||
[ITEM_DREAM_MAIL] = {gItemIcon_DreamMail, gItemIconPalette_DreamMail},
|
||||
[ITEM_FAB_MAIL] = {gItemIcon_FabMail, gItemIconPalette_FabMail},
|
||||
[ITEM_RETRO_MAIL] = {gItemIcon_RetroMail, gItemIconPalette_RetroMail},
|
||||
// Berries
|
||||
[ITEM_CHERI_BERRY] = {gItemIcon_CheriBerry, gItemIconPalette_CheriBerry},
|
||||
[ITEM_CHESTO_BERRY] = {gItemIcon_ChestoBerry, gItemIconPalette_ChestoBerry},
|
||||
[ITEM_PECHA_BERRY] = {gItemIcon_PechaBerry, gItemIconPalette_PechaBerry},
|
||||
[ITEM_RAWST_BERRY] = {gItemIcon_RawstBerry, gItemIconPalette_RawstBerry},
|
||||
[ITEM_ASPEAR_BERRY] = {gItemIcon_AspearBerry, gItemIconPalette_AspearBerry},
|
||||
[ITEM_LEPPA_BERRY] = {gItemIcon_LeppaBerry, gItemIconPalette_LeppaBerry},
|
||||
[ITEM_ORAN_BERRY] = {gItemIcon_OranBerry, gItemIconPalette_OranBerry},
|
||||
[ITEM_PERSIM_BERRY] = {gItemIcon_PersimBerry, gItemIconPalette_PersimBerry},
|
||||
[ITEM_LUM_BERRY] = {gItemIcon_LumBerry, gItemIconPalette_LumBerry},
|
||||
[ITEM_SITRUS_BERRY] = {gItemIcon_SitrusBerry, gItemIconPalette_SitrusBerry},
|
||||
[ITEM_FIGY_BERRY] = {gItemIcon_FigyBerry, gItemIconPalette_FigyBerry},
|
||||
[ITEM_WIKI_BERRY] = {gItemIcon_WikiBerry, gItemIconPalette_WikiBerry},
|
||||
[ITEM_MAGO_BERRY] = {gItemIcon_MagoBerry, gItemIconPalette_MagoBerry},
|
||||
[ITEM_AGUAV_BERRY] = {gItemIcon_AguavBerry, gItemIconPalette_AguavBerry},
|
||||
[ITEM_IAPAPA_BERRY] = {gItemIcon_IapapaBerry, gItemIconPalette_IapapaBerry},
|
||||
[ITEM_RAZZ_BERRY] = {gItemIcon_RazzBerry, gItemIconPalette_RazzBerry},
|
||||
[ITEM_BLUK_BERRY] = {gItemIcon_BlukBerry, gItemIconPalette_BlukBerry},
|
||||
[ITEM_NANAB_BERRY] = {gItemIcon_NanabBerry, gItemIconPalette_NanabBerry},
|
||||
[ITEM_WEPEAR_BERRY] = {gItemIcon_WepearBerry, gItemIconPalette_WepearBerry},
|
||||
[ITEM_PINAP_BERRY] = {gItemIcon_PinapBerry, gItemIconPalette_PinapBerry},
|
||||
[ITEM_POMEG_BERRY] = {gItemIcon_PomegBerry, gItemIconPalette_PomegBerry},
|
||||
[ITEM_KELPSY_BERRY] = {gItemIcon_KelpsyBerry, gItemIconPalette_KelpsyBerry},
|
||||
[ITEM_QUALOT_BERRY] = {gItemIcon_QualotBerry, gItemIconPalette_QualotBerry},
|
||||
[ITEM_HONDEW_BERRY] = {gItemIcon_HondewBerry, gItemIconPalette_HondewBerry},
|
||||
[ITEM_GREPA_BERRY] = {gItemIcon_GrepaBerry, gItemIconPalette_GrepaBerry},
|
||||
[ITEM_TAMATO_BERRY] = {gItemIcon_TamatoBerry, gItemIconPalette_TamatoBerry},
|
||||
[ITEM_CORNN_BERRY] = {gItemIcon_CornnBerry, gItemIconPalette_CornnBerry},
|
||||
[ITEM_MAGOST_BERRY] = {gItemIcon_MagostBerry, gItemIconPalette_MagostBerry},
|
||||
[ITEM_RABUTA_BERRY] = {gItemIcon_RabutaBerry, gItemIconPalette_RabutaBerry},
|
||||
[ITEM_NOMEL_BERRY] = {gItemIcon_NomelBerry, gItemIconPalette_NomelBerry},
|
||||
[ITEM_SPELON_BERRY] = {gItemIcon_SpelonBerry, gItemIconPalette_SpelonBerry},
|
||||
[ITEM_PAMTRE_BERRY] = {gItemIcon_PamtreBerry, gItemIconPalette_PamtreBerry},
|
||||
[ITEM_WATMEL_BERRY] = {gItemIcon_WatmelBerry, gItemIconPalette_WatmelBerry},
|
||||
[ITEM_DURIN_BERRY] = {gItemIcon_DurinBerry, gItemIconPalette_DurinBerry},
|
||||
[ITEM_BELUE_BERRY] = {gItemIcon_BelueBerry, gItemIconPalette_BelueBerry},
|
||||
[ITEM_LIECHI_BERRY] = {gItemIcon_LiechiBerry, gItemIconPalette_LiechiBerry},
|
||||
[ITEM_GANLON_BERRY] = {gItemIcon_GanlonBerry, gItemIconPalette_GanlonBerry},
|
||||
[ITEM_SALAC_BERRY] = {gItemIcon_SalacBerry, gItemIconPalette_SalacBerry},
|
||||
[ITEM_PETAYA_BERRY] = {gItemIcon_PetayaBerry, gItemIconPalette_PetayaBerry},
|
||||
[ITEM_APICOT_BERRY] = {gItemIcon_ApicotBerry, gItemIconPalette_ApicotBerry},
|
||||
[ITEM_LANSAT_BERRY] = {gItemIcon_LansatBerry, gItemIconPalette_LansatBerry},
|
||||
[ITEM_STARF_BERRY] = {gItemIcon_StarfBerry, gItemIconPalette_StarfBerry},
|
||||
[ITEM_ENIGMA_BERRY] = {gItemIcon_EnigmaBerry, gItemIconPalette_EnigmaBerry},
|
||||
[ITEM_UNUSED_BERRY_1] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_UNUSED_BERRY_2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_UNUSED_BERRY_3] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Hold items
|
||||
[ITEM_BRIGHT_POWDER] = {gItemIcon_BrightPowder, gItemIconPalette_BrightPowder},
|
||||
[ITEM_WHITE_HERB] = {gItemIcon_InBattleHerb, gItemIconPalette_WhiteHerb},
|
||||
[ITEM_MACHO_BRACE] = {gItemIcon_MachoBrace, gItemIconPalette_MachoBrace},
|
||||
[ITEM_EXP_SHARE] = {gItemIcon_ExpShare, gItemIconPalette_ExpShare},
|
||||
[ITEM_QUICK_CLAW] = {gItemIcon_QuickClaw, gItemIconPalette_QuickClaw},
|
||||
[ITEM_SOOTHE_BELL] = {gItemIcon_SootheBell, gItemIconPalette_SootheBell},
|
||||
[ITEM_MENTAL_HERB] = {gItemIcon_InBattleHerb, gItemIconPalette_MentalHerb},
|
||||
[ITEM_CHOICE_BAND] = {gItemIcon_ChoiceBand, gItemIconPalette_ChoiceBand},
|
||||
[ITEM_KINGS_ROCK] = {gItemIcon_KingsRock, gItemIconPalette_KingsRock},
|
||||
[ITEM_SILVER_POWDER] = {gItemIcon_SilverPowder, gItemIconPalette_SilverPowder},
|
||||
[ITEM_AMULET_COIN] = {gItemIcon_AmuletCoin, gItemIconPalette_AmuletCoin},
|
||||
[ITEM_CLEANSE_TAG] = {gItemIcon_CleanseTag, gItemIconPalette_CleanseTag},
|
||||
[ITEM_SOUL_DEW] = {gItemIcon_SoulDew, gItemIconPalette_SoulDew},
|
||||
[ITEM_DEEP_SEA_TOOTH] = {gItemIcon_DeepSeaTooth, gItemIconPalette_DeepSeaTooth},
|
||||
[ITEM_DEEP_SEA_SCALE] = {gItemIcon_DeepSeaScale, gItemIconPalette_DeepSeaScale},
|
||||
[ITEM_SMOKE_BALL] = {gItemIcon_SmokeBall, gItemIconPalette_SmokeBall},
|
||||
[ITEM_EVERSTONE] = {gItemIcon_Everstone, gItemIconPalette_Everstone},
|
||||
[ITEM_FOCUS_BAND] = {gItemIcon_FocusBand, gItemIconPalette_FocusBand},
|
||||
[ITEM_LUCKY_EGG] = {gItemIcon_LuckyEgg, gItemIconPalette_LuckyEgg},
|
||||
[ITEM_SCOPE_LENS] = {gItemIcon_ScopeLens, gItemIconPalette_ScopeLens},
|
||||
[ITEM_METAL_COAT] = {gItemIcon_MetalCoat, gItemIconPalette_MetalCoat},
|
||||
[ITEM_LEFTOVERS] = {gItemIcon_Leftovers, gItemIconPalette_Leftovers},
|
||||
[ITEM_DRAGON_SCALE] = {gItemIcon_DragonScale, gItemIconPalette_DragonScale},
|
||||
[ITEM_LIGHT_BALL] = {gItemIcon_LightBall, gItemIconPalette_LightBall},
|
||||
[ITEM_SOFT_SAND] = {gItemIcon_SoftSand, gItemIconPalette_SoftSand},
|
||||
[ITEM_HARD_STONE] = {gItemIcon_HardStone, gItemIconPalette_HardStone},
|
||||
[ITEM_MIRACLE_SEED] = {gItemIcon_MiracleSeed, gItemIconPalette_MiracleSeed},
|
||||
[ITEM_BLACK_GLASSES] = {gItemIcon_BlackGlasses, gItemIconPalette_BlackTypeEnhancingItem},
|
||||
[ITEM_BLACK_BELT] = {gItemIcon_BlackBelt, gItemIconPalette_BlackTypeEnhancingItem},
|
||||
[ITEM_MAGNET] = {gItemIcon_Magnet, gItemIconPalette_Magnet},
|
||||
[ITEM_MYSTIC_WATER] = {gItemIcon_MysticWater, gItemIconPalette_MysticWater},
|
||||
[ITEM_SHARP_BEAK] = {gItemIcon_SharpBeak, gItemIconPalette_SharpBeak},
|
||||
[ITEM_POISON_BARB] = {gItemIcon_PoisonBarb, gItemIconPalette_PoisonBarb},
|
||||
[ITEM_NEVER_MELT_ICE] = {gItemIcon_NeverMeltIce, gItemIconPalette_NeverMeltIce},
|
||||
[ITEM_SPELL_TAG] = {gItemIcon_SpellTag, gItemIconPalette_SpellTag},
|
||||
[ITEM_TWISTED_SPOON] = {gItemIcon_TwistedSpoon, gItemIconPalette_TwistedSpoon},
|
||||
[ITEM_CHARCOAL] = {gItemIcon_Charcoal, gItemIconPalette_Charcoal},
|
||||
[ITEM_DRAGON_FANG] = {gItemIcon_DragonFang, gItemIconPalette_DragonFang},
|
||||
[ITEM_SILK_SCARF] = {gItemIcon_SilkScarf, gItemIconPalette_SilkScarf},
|
||||
[ITEM_UP_GRADE] = {gItemIcon_UpGrade, gItemIconPalette_UpGrade},
|
||||
[ITEM_SHELL_BELL] = {gItemIcon_ShellBell, gItemIconPalette_Shell},
|
||||
[ITEM_SEA_INCENSE] = {gItemIcon_SeaIncense, gItemIconPalette_SeaIncense},
|
||||
[ITEM_LAX_INCENSE] = {gItemIcon_LaxIncense, gItemIconPalette_LaxIncense},
|
||||
[ITEM_LUCKY_PUNCH] = {gItemIcon_LuckyPunch, gItemIconPalette_LuckyPunch},
|
||||
[ITEM_METAL_POWDER] = {gItemIcon_MetalPowder, gItemIconPalette_MetalPowder},
|
||||
[ITEM_THICK_CLUB] = {gItemIcon_ThickClub, gItemIconPalette_ThickClub},
|
||||
[ITEM_STICK] = {gItemIcon_Stick, gItemIconPalette_Stick},
|
||||
// ????????
|
||||
[ITEM_0E2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0E3] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0E4] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0E5] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0E6] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0E7] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0E8] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0E9] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0EA] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0EB] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0EC] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0ED] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0EE] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0EF] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F0] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F1] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F3] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F4] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F5] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F6] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F7] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F8] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0F9] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0FA] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0FB] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0FC] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_0FD] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// Contest hold items
|
||||
[ITEM_RED_SCARF] = {gItemIcon_Scarf, gItemIconPalette_RedScarf},
|
||||
[ITEM_BLUE_SCARF] = {gItemIcon_Scarf, gItemIconPalette_BlueScarf},
|
||||
[ITEM_PINK_SCARF] = {gItemIcon_Scarf, gItemIconPalette_PinkScarf},
|
||||
[ITEM_GREEN_SCARF] = {gItemIcon_Scarf, gItemIconPalette_GreenScarf},
|
||||
[ITEM_YELLOW_SCARF] = {gItemIcon_Scarf, gItemIconPalette_YellowScarf},
|
||||
// Key items
|
||||
[ITEM_MACH_BIKE] = {gItemIcon_MachBike, gItemIconPalette_MachBike},
|
||||
[ITEM_COIN_CASE] = {gItemIcon_CoinCase, gItemIconPalette_CoinCase},
|
||||
[ITEM_ITEMFINDER] = {gItemIcon_Itemfinder, gItemIconPalette_Itemfinder},
|
||||
[ITEM_OLD_ROD] = {gItemIcon_OldRod, gItemIconPalette_OldRod},
|
||||
[ITEM_GOOD_ROD] = {gItemIcon_GoodRod, gItemIconPalette_GoodRod},
|
||||
[ITEM_SUPER_ROD] = {gItemIcon_SuperRod, gItemIconPalette_SuperRod},
|
||||
[ITEM_SS_TICKET] = {gItemIcon_SSTicket, gItemIconPalette_SSTicket},
|
||||
[ITEM_CONTEST_PASS] = {gItemIcon_ContestPass, gItemIconPalette_ContestPass},
|
||||
[ITEM_10B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_WAILMER_PAIL] = {gItemIcon_WailmerPail, gItemIconPalette_WailmerPail},
|
||||
[ITEM_DEVON_GOODS] = {gItemIcon_DevonGoods, gItemIconPalette_DevonGoods},
|
||||
[ITEM_SOOT_SACK] = {gItemIcon_SootSack, gItemIconPalette_SootSack},
|
||||
[ITEM_BASEMENT_KEY] = {gItemIcon_BasementKey, gItemIconPalette_OldKey},
|
||||
[ITEM_ACRO_BIKE] = {gItemIcon_AcroBike, gItemIconPalette_AcroBike},
|
||||
[ITEM_POKEBLOCK_CASE] = {gItemIcon_PokeblockCase, gItemIconPalette_PokeblockCase},
|
||||
[ITEM_LETTER] = {gItemIcon_Letter, gItemIconPalette_LavaCookieAndLetter},
|
||||
[ITEM_EON_TICKET] = {gItemIcon_EonTicket, gItemIconPalette_EonTicket},
|
||||
[ITEM_RED_ORB] = {gItemIcon_Orb, gItemIconPalette_RedOrb},
|
||||
[ITEM_BLUE_ORB] = {gItemIcon_Orb, gItemIconPalette_BlueOrb},
|
||||
[ITEM_SCANNER] = {gItemIcon_Scanner, gItemIconPalette_Scanner},
|
||||
[ITEM_GO_GOGGLES] = {gItemIcon_GoGoggles, gItemIconPalette_GoGoggles},
|
||||
[ITEM_METEORITE] = {gItemIcon_Meteorite, gItemIconPalette_Meteorite},
|
||||
[ITEM_ROOM_1_KEY] = {gItemIcon_Room1Key, gItemIconPalette_Key},
|
||||
[ITEM_ROOM_2_KEY] = {gItemIcon_Room2Key, gItemIconPalette_Key},
|
||||
[ITEM_ROOM_4_KEY] = {gItemIcon_Room4Key, gItemIconPalette_Key},
|
||||
[ITEM_ROOM_6_KEY] = {gItemIcon_Room6Key, gItemIconPalette_Key},
|
||||
[ITEM_STORAGE_KEY] = {gItemIcon_StorageKey, gItemIconPalette_OldKey},
|
||||
[ITEM_ROOT_FOSSIL] = {gItemIcon_RootFossil, gItemIconPalette_HoennFossil},
|
||||
[ITEM_CLAW_FOSSIL] = {gItemIcon_ClawFossil, gItemIconPalette_HoennFossil},
|
||||
[ITEM_DEVON_SCOPE] = {gItemIcon_DevonScope, gItemIconPalette_DevonScope},
|
||||
// TMs / HMs
|
||||
[ITEM_TM01] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_TM02] = {gItemIcon_TMHM, gItemIconPalette_DragonTMHM},
|
||||
[ITEM_TM03] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_TM04] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM05] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM06] = {gItemIcon_TMHM, gItemIconPalette_PoisonTMHM},
|
||||
[ITEM_TM07] = {gItemIcon_TMHM, gItemIconPalette_IceTMHM},
|
||||
[ITEM_TM08] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_TM09] = {gItemIcon_TMHM, gItemIconPalette_GrassTMHM},
|
||||
[ITEM_TM10] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM11] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_TM12] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM13] = {gItemIcon_TMHM, gItemIconPalette_IceTMHM},
|
||||
[ITEM_TM14] = {gItemIcon_TMHM, gItemIconPalette_IceTMHM},
|
||||
[ITEM_TM15] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM16] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM17] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM18] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_TM19] = {gItemIcon_TMHM, gItemIconPalette_GrassTMHM},
|
||||
[ITEM_TM20] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM21] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM22] = {gItemIcon_TMHM, gItemIconPalette_GrassTMHM},
|
||||
[ITEM_TM23] = {gItemIcon_TMHM, gItemIconPalette_SteelTMHM},
|
||||
[ITEM_TM24] = {gItemIcon_TMHM, gItemIconPalette_ElectricTMHM},
|
||||
[ITEM_TM25] = {gItemIcon_TMHM, gItemIconPalette_ElectricTMHM},
|
||||
[ITEM_TM26] = {gItemIcon_TMHM, gItemIconPalette_GroundTMHM},
|
||||
[ITEM_TM27] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM28] = {gItemIcon_TMHM, gItemIconPalette_GroundTMHM},
|
||||
[ITEM_TM29] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM30] = {gItemIcon_TMHM, gItemIconPalette_GhostTMHM},
|
||||
[ITEM_TM31] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_TM32] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM33] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM34] = {gItemIcon_TMHM, gItemIconPalette_ElectricTMHM},
|
||||
[ITEM_TM35] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_TM36] = {gItemIcon_TMHM, gItemIconPalette_PoisonTMHM},
|
||||
[ITEM_TM37] = {gItemIcon_TMHM, gItemIconPalette_RockTMHM},
|
||||
[ITEM_TM38] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_TM39] = {gItemIcon_TMHM, gItemIconPalette_RockTMHM},
|
||||
[ITEM_TM40] = {gItemIcon_TMHM, gItemIconPalette_FlyingTMHM},
|
||||
[ITEM_TM41] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM42] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM43] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM44] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM45] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_TM46] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM47] = {gItemIcon_TMHM, gItemIconPalette_SteelTMHM},
|
||||
[ITEM_TM48] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM},
|
||||
[ITEM_TM49] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM},
|
||||
[ITEM_TM50] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM},
|
||||
[ITEM_HM01] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_HM02] = {gItemIcon_TMHM, gItemIconPalette_FlyingTMHM},
|
||||
[ITEM_HM03] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_HM04] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_HM05] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM},
|
||||
[ITEM_HM06] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM},
|
||||
[ITEM_HM07] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM},
|
||||
[ITEM_HM08] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM},
|
||||
// ????????
|
||||
[ITEM_15B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
[ITEM_15C] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark},
|
||||
// FireRed/LeafGreen key items
|
||||
[ITEM_OAKS_PARCEL] = {gItemIcon_OaksParcel, gItemIconPalette_OaksParcel},
|
||||
[ITEM_POKE_FLUTE] = {gItemIcon_PokeFlute, gItemIconPalette_PokeFlute},
|
||||
[ITEM_SECRET_KEY] = {gItemIcon_SecretKey, gItemIconPalette_SecretKey},
|
||||
[ITEM_BIKE_VOUCHER] = {gItemIcon_BikeVoucher, gItemIconPalette_BikeVoucher},
|
||||
[ITEM_GOLD_TEETH] = {gItemIcon_GoldTeeth, gItemIconPalette_GoldTeeth},
|
||||
[ITEM_OLD_AMBER] = {gItemIcon_OldAmber, gItemIconPalette_OldAmber},
|
||||
[ITEM_CARD_KEY] = {gItemIcon_CardKey, gItemIconPalette_CardKey},
|
||||
[ITEM_LIFT_KEY] = {gItemIcon_LiftKey, gItemIconPalette_Key},
|
||||
[ITEM_HELIX_FOSSIL] = {gItemIcon_HelixFossil, gItemIconPalette_KantoFossil},
|
||||
[ITEM_DOME_FOSSIL] = {gItemIcon_DomeFossil, gItemIconPalette_KantoFossil},
|
||||
[ITEM_SILPH_SCOPE] = {gItemIcon_SilphScope, gItemIconPalette_SilphScope},
|
||||
[ITEM_BICYCLE] = {gItemIcon_Bicycle, gItemIconPalette_Bicycle},
|
||||
[ITEM_TOWN_MAP] = {gItemIcon_TownMap, gItemIconPalette_TownMap},
|
||||
[ITEM_VS_SEEKER] = {gItemIcon_VSSeeker, gItemIconPalette_VSSeeker},
|
||||
[ITEM_FAME_CHECKER] = {gItemIcon_FameChecker, gItemIconPalette_FameChecker},
|
||||
[ITEM_TM_CASE] = {gItemIcon_TMCase, gItemIconPalette_TMCase},
|
||||
[ITEM_BERRY_POUCH] = {gItemIcon_BerryPouch, gItemIconPalette_BerryPouch},
|
||||
[ITEM_TEACHY_TV] = {gItemIcon_TeachyTV, gItemIconPalette_TeachyTV},
|
||||
[ITEM_TRI_PASS] = {gItemIcon_TriPass, gItemIconPalette_TriPass},
|
||||
[ITEM_RAINBOW_PASS] = {gItemIcon_RainbowPass, gItemIconPalette_RainbowPass},
|
||||
[ITEM_TEA] = {gItemIcon_Tea, gItemIconPalette_Tea},
|
||||
[ITEM_MYSTIC_TICKET] = {gItemIcon_MysticTicket, gItemIconPalette_MysticTicket},
|
||||
[ITEM_AURORA_TICKET] = {gItemIcon_AuroraTicket, gItemIconPalette_AuroraTicket},
|
||||
[ITEM_POWDER_JAR] = {gItemIcon_PowderJar, gItemIconPalette_PowderJar},
|
||||
[ITEM_RUBY] = {gItemIcon_Gem, gItemIconPalette_Ruby},
|
||||
[ITEM_SAPPHIRE] = {gItemIcon_Gem, gItemIconPalette_Sapphire},
|
||||
// Return to field arrow
|
||||
[ITEMS_COUNT] = {gItemIcon_ReturnToFieldArrow, gItemIconPalette_ReturnToFieldArrow},
|
||||
};
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -30,7 +30,7 @@ static const struct WindowTemplate sWindowTemplate_BButtonCancel = {
|
||||
.tilemapTop = 0,
|
||||
.width = 30,
|
||||
.height = 2,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x008
|
||||
};
|
||||
|
||||
|
||||
+4
-4
@@ -1810,7 +1810,7 @@ static void CB2_EggHatch_0(void)
|
||||
case 2:
|
||||
DecompressAndLoadBgGfxUsingHeap(0, gBattleInterface_Textbox_Gfx, 0, 0, 0);
|
||||
CopyToBgTilemapBuffer(0, gBattleInterface_Textbox_Tilemap, 0, 0);
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0, 0x20);
|
||||
LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
gMain.state++;
|
||||
break;
|
||||
case 3:
|
||||
@@ -1834,7 +1834,7 @@ static void CB2_EggHatch_0(void)
|
||||
break;
|
||||
case 7:
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP);
|
||||
LoadPalette(gTradeGba2_Pal, 0x10, 0xA0);
|
||||
LoadPalette(gTradeGba2_Pal, BG_PLTT_ID(1), 5 * PLTT_SIZE_4BPP);
|
||||
LoadBgTiles(1, gTradeGba_Gfx, 0x1420, 0);
|
||||
CopyToBgTilemapBuffer(1, gTradeOrHatchMonShadowTilemap, 0x1000, 0);
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
@@ -1948,8 +1948,8 @@ static void CB2_EggHatch_1(void)
|
||||
case 9:
|
||||
if (!IsTextPrinterActive(sEggHatchData->windowId))
|
||||
{
|
||||
LoadUserWindowGfx2(sEggHatchData->windowId, 0x140, 0xE0);
|
||||
CreateYesNoMenu(&sYesNoWinTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x140, 0xE, 0);
|
||||
LoadUserWindowGfx2(sEggHatchData->windowId, 0x140, BG_PLTT_ID(14));
|
||||
CreateYesNoMenu(&sYesNoWinTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x140, 14, 0);
|
||||
sEggHatchData->CB2_state++;
|
||||
}
|
||||
break;
|
||||
|
||||
+1
-1
@@ -243,7 +243,7 @@ static bool8 DiplomaLoadGfx(void)
|
||||
return FALSE;
|
||||
break;
|
||||
case 3:
|
||||
LoadPalette(sDiplomaPal, 0, sizeof(sDiplomaPal));
|
||||
LoadPalette(sDiplomaPal, BG_PLTT_ID(0), sizeof(sDiplomaPal));
|
||||
// fallthrough
|
||||
default:
|
||||
// Finished
|
||||
|
||||
@@ -3002,8 +3002,8 @@ static void PrintRecordsText(u8 windowId)
|
||||
recordNums[1] = gSaveBlock2Ptr->berryPick.bestScore;
|
||||
recordNums[2] = gSaveBlock2Ptr->berryPick.berriesPickedInRow;
|
||||
|
||||
LoadStdWindowGfx(windowId, 0x21D, 0xD0);
|
||||
DrawTextBorderOuter(windowId, 0x21D, 0xD);
|
||||
LoadStdWindowGfx(windowId, 0x21D, BG_PLTT_ID(13));
|
||||
DrawTextBorderOuter(windowId, 0x21D, 13);
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[0], 1, 1, TEXT_SKIP_DRAW, NULL);
|
||||
for (i = 0; i < NUM_RECORD_TYPES; i++)
|
||||
@@ -4161,12 +4161,12 @@ static void ResetBerryAndStatusBarSprites(void)
|
||||
static void LoadWindowFrameGfx(u8 frameId)
|
||||
{
|
||||
LoadBgTiles(BG_INTERFACE, GetUserWindowGraphics(frameId)->tiles, 0x120, 1);
|
||||
LoadPalette(GetUserWindowGraphics(frameId)->palette, 0xA0, 0x20);
|
||||
LoadPalette(GetUserWindowGraphics(frameId)->palette, BG_PLTT_ID(10), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void DBP_LoadStdWindowGfx(void)
|
||||
{
|
||||
LoadStdWindowGfx(0, 0xA, 0xB0);
|
||||
LoadStdWindowGfx(0, 0xA, BG_PLTT_ID(11));
|
||||
}
|
||||
|
||||
static void ResetGfxState(void)
|
||||
@@ -4926,7 +4926,7 @@ static bool32 LoadBgGfx(void)
|
||||
switch (sGfx->loadState)
|
||||
{
|
||||
case 0:
|
||||
LoadPalette(sBg_Pal, 0, sizeof(sBg_Pal));
|
||||
LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal));
|
||||
break;
|
||||
case 1:
|
||||
ResetTempTileDataBuffers();
|
||||
@@ -4942,7 +4942,7 @@ static bool32 LoadBgGfx(void)
|
||||
return FALSE;
|
||||
break;
|
||||
case 5:
|
||||
LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
default:
|
||||
sGfx->loadState = 0;
|
||||
|
||||
+8
-8
@@ -1319,13 +1319,13 @@ static void SetGpuRegsForEasyChatInit(void)
|
||||
static void LoadEasyChatPals(void)
|
||||
{
|
||||
ResetPaletteFade();
|
||||
LoadPalette(gEasyChatWindow_Pal, 0, 32);
|
||||
LoadPalette(sTextInputFrameOrange_Pal, 1 * 16, 32);
|
||||
LoadPalette(sTextInputFrameGreen_Pal, 4 * 16, 32);
|
||||
LoadPalette(sTitleText_Pal, 10 * 16, 8);
|
||||
LoadPalette(sText_Pal, 11 * 16, 10);
|
||||
LoadPalette(sText_Pal, 15 * 16, 10);
|
||||
LoadPalette(sText_Pal, 3 * 16, 10);
|
||||
LoadPalette(gEasyChatWindow_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
LoadPalette(sTextInputFrameOrange_Pal, BG_PLTT_ID(1), sizeof(sTextInputFrameOrange_Pal));
|
||||
LoadPalette(sTextInputFrameGreen_Pal, BG_PLTT_ID(4), sizeof(sTextInputFrameGreen_Pal));
|
||||
LoadPalette(sTitleText_Pal, BG_PLTT_ID(10), sizeof(sTitleText_Pal));
|
||||
LoadPalette(sText_Pal, BG_PLTT_ID(11), sizeof(sText_Pal));
|
||||
LoadPalette(sText_Pal, BG_PLTT_ID(15), sizeof(sText_Pal));
|
||||
LoadPalette(sText_Pal, BG_PLTT_ID(3), sizeof(sText_Pal));
|
||||
}
|
||||
|
||||
static void PrintTitleText(void)
|
||||
@@ -1363,7 +1363,7 @@ static void EC_AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *st
|
||||
static void PrintECInstructionsText(void)
|
||||
{
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17);
|
||||
LoadUserWindowGfx(1, 1, 0xE0);
|
||||
LoadUserWindowGfx(1, 1, BG_PLTT_ID(14));
|
||||
DrawTextBorderOuter(1, 1, 14);
|
||||
PrintECInterfaceTextById(0);
|
||||
PutWindowTilemap(1);
|
||||
|
||||
@@ -2175,7 +2175,7 @@ void PatchObjectPalette(u16 paletteTag, u8 paletteSlot)
|
||||
{
|
||||
u8 paletteIndex = FindObjectEventPaletteIndexByTag(paletteTag);
|
||||
|
||||
LoadPalette(sObjectEventSpritePalettes[paletteIndex].data, 16 * paletteSlot + 0x100, 0x20);
|
||||
LoadPalette(sObjectEventSpritePalettes[paletteIndex].data, OBJ_PLTT_ID(paletteSlot), PLTT_SIZE_4BPP);
|
||||
ApplyGlobalFieldPaletteTint(paletteSlot);
|
||||
}
|
||||
|
||||
|
||||
@@ -397,7 +397,7 @@ static void EvoTask_PostEvoSparklesSet2Init(u8 taskId)
|
||||
SetEvoSparklesMatrices();
|
||||
gTasks[taskId].data[15] = 0;
|
||||
IsMovingBackgroundTaskRunning();
|
||||
CpuCopy16(&gPlttBufferFaded[32], &gPlttBufferUnfaded[32], 96);
|
||||
CpuCopy16(&gPlttBufferFaded[BG_PLTT_ID(2)], &gPlttBufferUnfaded[BG_PLTT_ID(2)], 3 * PLTT_SIZE_4BPP);
|
||||
BeginNormalPaletteFade(0xFFF90F1C, 0, 0, 16, RGB_WHITE);
|
||||
gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2;
|
||||
PlaySE(SE_M_PETAL_DANCE);
|
||||
@@ -448,7 +448,7 @@ static void EvoTask_PostEvoSparklesSet2TradeInit(u8 taskId)
|
||||
SetEvoSparklesMatrices();
|
||||
gTasks[taskId].data[15] = 0;
|
||||
IsMovingBackgroundTaskRunning();
|
||||
CpuCopy16(&gPlttBufferFaded[32], &gPlttBufferUnfaded[32], 96);
|
||||
CpuCopy16(&gPlttBufferFaded[BG_PLTT_ID(2)], &gPlttBufferUnfaded[BG_PLTT_ID(2)], 3 * PLTT_SIZE_4BPP);
|
||||
BeginNormalPaletteFade(0xFFF90F00, 0, 0, 16, RGB_WHITE);
|
||||
gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2Trade;
|
||||
PlaySE(SE_M_PETAL_DANCE);
|
||||
@@ -511,12 +511,12 @@ u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId)
|
||||
gSprites[preEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL;
|
||||
gSprites[preEvoSpriteId].oam.matrixNum = 30;
|
||||
gSprites[preEvoSpriteId].invisible = FALSE;
|
||||
CpuCopy16(palette, &gPlttBufferFaded[256 + 16 * gSprites[preEvoSpriteId].oam.paletteNum], 32);
|
||||
CpuCopy16(palette, &gPlttBufferFaded[OBJ_PLTT_ID(gSprites[preEvoSpriteId].oam.paletteNum)], PLTT_SIZE_4BPP);
|
||||
gSprites[postEvoSpriteId].callback = SpriteCallbackDummy_MonSprites;
|
||||
gSprites[postEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL;
|
||||
gSprites[postEvoSpriteId].oam.matrixNum = 31;
|
||||
gSprites[postEvoSpriteId].invisible = FALSE;
|
||||
CpuCopy16(palette, &gPlttBufferFaded[256 + 16 * gSprites[postEvoSpriteId].oam.paletteNum], 32);
|
||||
CpuCopy16(palette, &gPlttBufferFaded[OBJ_PLTT_ID(gSprites[postEvoSpriteId].oam.paletteNum)], PLTT_SIZE_4BPP);
|
||||
gTasks[taskId].EvoGraphicsTaskEvoStop = FALSE;
|
||||
return taskId;
|
||||
}
|
||||
|
||||
+15
-15
@@ -264,7 +264,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u
|
||||
gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_LEFT],
|
||||
currSpecies);
|
||||
pokePal = GetMonSpritePalStructFromOtIdPersonality(currSpecies, trainerId, personality);
|
||||
LoadCompressedPalette(pokePal->data, 0x110, 0x20);
|
||||
LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
|
||||
SetMultiuseSpriteTemplateToPokemon(currSpecies, B_POSITION_OPPONENT_LEFT);
|
||||
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
|
||||
@@ -279,7 +279,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u
|
||||
gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT],
|
||||
postEvoSpecies);
|
||||
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality);
|
||||
LoadCompressedPalette(pokePal->data, 0x120, 0x20);
|
||||
LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
|
||||
SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT);
|
||||
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
|
||||
@@ -299,7 +299,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u
|
||||
gTasks[id].tEvoWasStopped = FALSE;
|
||||
gTasks[id].tPartyId = partyId;
|
||||
|
||||
memcpy(&sEvoStructPtr->savedPalette, &gPlttBufferUnfaded[0x20], sizeof(sEvoStructPtr->savedPalette));
|
||||
memcpy(&sEvoStructPtr->savedPalette, &gPlttBufferUnfaded[BG_PLTT_ID(2)], sizeof(sEvoStructPtr->savedPalette));
|
||||
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_1D_MAP);
|
||||
|
||||
@@ -358,7 +358,7 @@ static void CB2_EvolutionSceneLoadGraphics(void)
|
||||
postEvoSpecies);
|
||||
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality);
|
||||
|
||||
LoadCompressedPalette(pokePal->data, 0x120, 0x20);
|
||||
LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
|
||||
SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT);
|
||||
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
|
||||
@@ -416,7 +416,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void)
|
||||
gMain.state++;
|
||||
break;
|
||||
case 3:
|
||||
FillBgTilemapBufferRect(1, 0, 0, 0, 0x20, 0x20, 0x11);
|
||||
FillBgTilemapBufferRect(1, 0, 0, 0, 0x20, 0x20, 17);
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
gMain.state++;
|
||||
break;
|
||||
@@ -429,7 +429,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void)
|
||||
gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT],
|
||||
postEvoSpecies);
|
||||
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality);
|
||||
LoadCompressedPalette(pokePal->data, 0x120, 0x20);
|
||||
LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
gMain.state++;
|
||||
}
|
||||
break;
|
||||
@@ -494,7 +494,7 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit
|
||||
postEvoSpecies);
|
||||
|
||||
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality);
|
||||
LoadCompressedPalette(pokePal->data, 0x120, 0x20);
|
||||
LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
|
||||
SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_LEFT);
|
||||
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
|
||||
@@ -756,7 +756,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
if (IsSEPlaying())
|
||||
{
|
||||
m4aMPlayAllStop();
|
||||
memcpy(&gPlttBufferUnfaded[0x20], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette));
|
||||
memcpy(&gPlttBufferUnfaded[BG_PLTT_ID(2)], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette));
|
||||
RestoreBgAfterAnim();
|
||||
BeginNormalPaletteFade(0x1C, 0, 0x10, 0, RGB_BLACK);
|
||||
gTasks[taskId].tState++;
|
||||
@@ -1199,7 +1199,7 @@ static void Task_TradeEvolutionScene(u8 taskId)
|
||||
{
|
||||
// Free(sBgAnimPal);
|
||||
PlayCry_Normal(gTasks[taskId].tPostEvoSpecies, 0);
|
||||
memcpy(&gPlttBufferUnfaded[0x20], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette));
|
||||
memcpy(&gPlttBufferUnfaded[BG_PLTT_ID(2)], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette));
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
@@ -1331,8 +1331,8 @@ static void Task_TradeEvolutionScene(u8 taskId)
|
||||
case T_MVSTATE_PRINT_YES_NO:
|
||||
if (!IsTextPrinterActive(0) && !IsSEPlaying())
|
||||
{
|
||||
LoadUserWindowGfx2(0, 0xA8, 0xE0);
|
||||
CreateYesNoMenu(&gTradeEvolutionSceneYesNoWindowTemplate, FONT_NORMAL_COPY_2, 0, 2, 0xA8, 0xE, 0);
|
||||
LoadUserWindowGfx2(0, 0xA8, BG_PLTT_ID(14));
|
||||
CreateYesNoMenu(&gTradeEvolutionSceneYesNoWindowTemplate, FONT_NORMAL_COPY_2, 0, 2, 0xA8, 14, 0);
|
||||
sEvoCursorPos = 0;
|
||||
gTasks[taskId].tLearnMoveState++;
|
||||
sEvoCursorPos = 0;
|
||||
@@ -1537,7 +1537,7 @@ static void Task_UpdateBgPalette(u8 taskId)
|
||||
else
|
||||
{
|
||||
// Haven't reached final palette in current stage, load the current palette
|
||||
LoadPalette(&sBgAnimPal[tPalStage * 16], 0xA0, 0x20);
|
||||
LoadPalette(&sBgAnimPal[tPalStage * 16], BG_PLTT_ID(10), PLTT_SIZE_4BPP);
|
||||
tCycleTimer = 0;
|
||||
tPalStage++;
|
||||
}
|
||||
@@ -1635,7 +1635,7 @@ static void StartBgAnimation(bool8 isLink)
|
||||
else
|
||||
innerBgId = 1, outerBgId = 3;
|
||||
|
||||
LoadPalette(sBlackPalette, 0xA0, 0x20);
|
||||
LoadPalette(sBlackPalette, BG_PLTT_ID(10), sizeof(sBlackPalette));
|
||||
|
||||
DecompressAndLoadBgGfxUsingHeap(1, sMovingBackgroundTiles, FALSE, 0, 0);
|
||||
CopyToBgTilemapBuffer(1, sMovingBackgroundMap1, 0, 0);
|
||||
@@ -1673,7 +1673,7 @@ void IsMovingBackgroundTaskRunning(void) // unused
|
||||
if (taskId != TASK_NONE)
|
||||
gTasks[taskId].tPaused = TRUE;
|
||||
|
||||
FillPalette(RGB_BLACK, 0xA0, 0x20);
|
||||
FillPalette(RGB_BLACK, BG_PLTT_ID(10), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
#undef tPaused
|
||||
@@ -1687,7 +1687,7 @@ static void StopBgAnimation(void)
|
||||
if ((taskId = FindTaskIdByFunc(Task_AnimateBg)) != TASK_NONE)
|
||||
DestroyTask(taskId);
|
||||
|
||||
FillPalette(RGB_BLACK, 0xA0, 0x20);
|
||||
FillPalette(RGB_BLACK, BG_PLTT_ID(10), PLTT_SIZE_4BPP);
|
||||
RestoreBgAfterAnim();
|
||||
}
|
||||
|
||||
|
||||
+21
-17
@@ -663,11 +663,11 @@ static void MainCB2_LoadFameChecker(void)
|
||||
case 3:
|
||||
LoadBgTiles(3, gFameCheckerBgTiles, sizeof(gFameCheckerBgTiles), 0);
|
||||
CopyToBgTilemapBufferRect(3, gFameCheckerBg3Tilemap, 0, 0, 32, 32);
|
||||
LoadPalette(gFameCheckerBgPals + 0x00, 0x00, 0x40);
|
||||
LoadPalette(gFameCheckerBgPals + 0x10, 0x10, 0x20);
|
||||
LoadPalette(&gFameCheckerBgPals[0], BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
|
||||
LoadPalette(&gFameCheckerBgPals[1], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
CopyToBgTilemapBufferRect(2, gFameCheckerBg2Tilemap, 0, 0, 32, 32);
|
||||
CopyToBgTilemapBufferRect_ChangePalette(1, sFameCheckerTilemap, 30, 0, 32, 32, 0x11);
|
||||
LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
gMain.state++;
|
||||
break;
|
||||
case 4:
|
||||
@@ -1335,40 +1335,44 @@ static void SpriteCB_FCSpinningPokeball(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
#define PERSON_PAL_NUM 6
|
||||
#define PERSON_X 148
|
||||
#define PERSON_Y 66
|
||||
|
||||
static u8 CreatePersonPicSprite(u8 fcPersonIdx)
|
||||
{
|
||||
u8 spriteId;
|
||||
if (fcPersonIdx == FAMECHECKER_DAISY)
|
||||
{
|
||||
spriteId = CreateSprite(&sDaisySpriteTemplate, 0x94, 0x42, 0);
|
||||
LoadPalette(sDaisySpritePalette, 0x160, 0x20);
|
||||
gSprites[spriteId].oam.paletteNum = 6;
|
||||
spriteId = CreateSprite(&sDaisySpriteTemplate, PERSON_X, PERSON_Y, 0);
|
||||
LoadPalette(sDaisySpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sDaisySpritePalette));
|
||||
gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
|
||||
}
|
||||
else if (fcPersonIdx == FAMECHECKER_MRFUJI)
|
||||
{
|
||||
spriteId = CreateSprite(&sFujiSpriteTemplate, 0x94, 0x42, 0);
|
||||
LoadPalette(sFujiSpritePalette, 0x160, 0x20);
|
||||
gSprites[spriteId].oam.paletteNum = 6;
|
||||
spriteId = CreateSprite(&sFujiSpriteTemplate, PERSON_X, PERSON_Y, 0);
|
||||
LoadPalette(sFujiSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sFujiSpritePalette));
|
||||
gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
|
||||
}
|
||||
else if (fcPersonIdx == FAMECHECKER_OAK)
|
||||
{
|
||||
spriteId = CreateSprite(&sOakSpriteTemplate, 0x94, 0x42, 0);
|
||||
LoadPalette(sOakSpritePalette, 0x160, 0x20);
|
||||
gSprites[spriteId].oam.paletteNum = 6;
|
||||
spriteId = CreateSprite(&sOakSpriteTemplate, PERSON_X, PERSON_Y, 0);
|
||||
LoadPalette(sOakSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sOakSpritePalette));
|
||||
gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
|
||||
}
|
||||
else if (fcPersonIdx == FAMECHECKER_BILL)
|
||||
{
|
||||
spriteId = CreateSprite(&sBillSpriteTemplate, 0x94, 0x42, 0);
|
||||
LoadPalette(sBillSpritePalette, 0x160, 0x20);
|
||||
gSprites[spriteId].oam.paletteNum = 6;
|
||||
spriteId = CreateSprite(&sBillSpriteTemplate, PERSON_X, PERSON_Y, 0);
|
||||
LoadPalette(sBillSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sBillSpritePalette));
|
||||
gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
|
||||
}
|
||||
else
|
||||
{
|
||||
spriteId = CreateTrainerPicSprite(sFameCheckerTrainerPicIdxs[fcPersonIdx], 1, 0x94, 0x42, 6, 0xFFFF);
|
||||
spriteId = CreateTrainerPicSprite(sFameCheckerTrainerPicIdxs[fcPersonIdx], TRUE, PERSON_X, PERSON_Y, PERSON_PAL_NUM, TAG_NONE);
|
||||
}
|
||||
gSprites[spriteId].callback = SpriteCB_FCSpinningPokeball;
|
||||
if (gSaveBlock1Ptr->fameChecker[fcPersonIdx].pickState == FCPICKSTATE_SILHOUETTE)
|
||||
LoadPalette(sSilhouettePalette, 0x160, 0x20);
|
||||
LoadPalette(sSilhouettePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sSilhouettePalette));
|
||||
return spriteId;
|
||||
}
|
||||
|
||||
|
||||
@@ -103,7 +103,7 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys)
|
||||
}
|
||||
if ((tileTransitionState == T_TILE_CENTER && forcedMove == FALSE) || tileTransitionState == T_NOT_MOVING)
|
||||
{
|
||||
if (GetPlayerSpeed() != 4)
|
||||
if (GetPlayerSpeed() != PLAYER_SPEED_FASTEST)
|
||||
{
|
||||
if ((newKeys & START_BUTTON) && !(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_FORCED))
|
||||
input->pressedStartButton = TRUE;
|
||||
|
||||
+23
-22
@@ -106,7 +106,7 @@ static const struct OamData sNewGameOakOamAttributes = {
|
||||
.size = SPRITE_SIZE(64x64),
|
||||
.tileNum = 0x000,
|
||||
.priority = 0,
|
||||
.paletteNum = 0x0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
@@ -122,7 +122,7 @@ static const struct OamData sOamData_8x8 = {
|
||||
.size = SPRITE_SIZE(8x8),
|
||||
.tileNum = 0x000,
|
||||
.priority = 0,
|
||||
.paletteNum = 0x0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
@@ -138,7 +138,7 @@ static const struct OamData sOamData_16x16 = {
|
||||
.size = SPRITE_SIZE(16x16),
|
||||
.tileNum = 0x000,
|
||||
.priority = 0,
|
||||
.paletteNum = 0x0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
@@ -189,7 +189,7 @@ static const struct OamData sOamData_32x16 = {
|
||||
.size = SPRITE_SIZE(32x16),
|
||||
.tileNum = 0x000,
|
||||
.priority = 0,
|
||||
.paletteNum = 0x0,
|
||||
.paletteNum = 0,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
@@ -442,19 +442,19 @@ void ApplyGlobalFieldPaletteTint(u8 paletteIdx)
|
||||
case 0:
|
||||
return;
|
||||
case 1:
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10);
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16);
|
||||
break;
|
||||
case 2:
|
||||
TintPalette_SepiaTone(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10);
|
||||
TintPalette_SepiaTone(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16);
|
||||
break;
|
||||
case 3:
|
||||
QuestLog_BackUpPalette((paletteIdx + 16) * 16, 0x10);
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10);
|
||||
QuestLog_BackUpPalette(OBJ_PLTT_ID2(paletteIdx), 16);
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16);
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
CpuFastCopy(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], &gPlttBufferFaded[(paletteIdx + 16) * 16], 0x20);
|
||||
CpuFastCopy(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], &gPlttBufferFaded[OBJ_PLTT_ID2(paletteIdx)], PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void FieldEffectScript_LoadFadedPal(const u8 **script)
|
||||
@@ -591,10 +591,11 @@ u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buf
|
||||
return CreateSprite(&spriteTemplate, x, y, subpriority);
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void LoadTrainerGfx_TrainerCard(u8 gender, u16 palOffset, u8 *dest)
|
||||
{
|
||||
LZDecompressVram(gTrainerFrontPicTable[gender].data, dest);
|
||||
LoadCompressedPalette(gTrainerFrontPicPaletteTable[gender].data, palOffset, 0x20);
|
||||
LoadCompressedPalette(gTrainerFrontPicPaletteTable[gender].data, palOffset, PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
// Unused
|
||||
@@ -945,14 +946,14 @@ static void PokeballGlowEffect_FlashFirstThree(struct Sprite *sprite)
|
||||
sprite->sNumFlashed++;
|
||||
}
|
||||
phase = (sprite->sCounter + 3) & 3;
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x108, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 8, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
phase = (sprite->sCounter + 2) & 3;
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x106, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 6, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
phase = (sprite->sCounter + 1) & 3;
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x102, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 2, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
phase = sprite->sCounter;
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 5, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 3, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
if (sprite->sNumFlashed >= 3)
|
||||
{
|
||||
sprite->sState++;
|
||||
@@ -976,11 +977,11 @@ static void PokeballGlowEffect_FlashLast(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
phase = sprite->sCounter;
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x108, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x106, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x102, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 8, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 6, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 2, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 5, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 3, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
|
||||
}
|
||||
|
||||
static void PokeballGlowEffect_WaitAfterFlash(struct Sprite *sprite)
|
||||
@@ -2625,7 +2626,7 @@ static void ShowMonEffect_Outdoors_2(struct Task *task)
|
||||
u16 screenbase = ((GetGpuReg(REG_OFFSET_BG0CNT) >> 8) << 11);
|
||||
CpuCopy16(sFieldMoveStreaksOutdoors_Gfx, (void *)(VRAM + charbase), 0x200);
|
||||
CpuFill32(0, (void *)(VRAM + screenbase), 0x800);
|
||||
LoadPalette(sFieldMoveStreaksOutdoors_Pal, 0xf0, 0x20);
|
||||
LoadPalette(sFieldMoveStreaksOutdoors_Pal, BG_PLTT_ID(15), sizeof(sFieldMoveStreaksOutdoors_Pal));
|
||||
LoadFieldMoveStreaksTilemapToVram(screenbase);
|
||||
task->data[0]++;
|
||||
}
|
||||
@@ -2776,7 +2777,7 @@ static void ShowMonEffect_Indoors_2(struct Task *task)
|
||||
task->data[12] = screenbase;
|
||||
CpuCopy16(sFieldMoveStreaksIndoors_Gfx, (void *)(VRAM + charbase), 0x80);
|
||||
CpuFill32(0, (void *)(VRAM + screenbase), 0x800);
|
||||
LoadPalette(sFieldMoveStreaksIndoors_Pal, 0xf0, 0x20);
|
||||
LoadPalette(sFieldMoveStreaksIndoors_Pal, BG_PLTT_ID(15), sizeof(sFieldMoveStreaksIndoors_Pal));
|
||||
task->data[0]++;
|
||||
}
|
||||
|
||||
|
||||
@@ -81,18 +81,12 @@ static void LoadObjectRegularReflectionPalette(struct ObjectEvent * objectEvent,
|
||||
graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
|
||||
if (graphicsInfo->reflectionPaletteTag != OBJ_EVENT_PAL_TAG_NONE)
|
||||
{
|
||||
if (graphicsInfo->paletteSlot == 0)
|
||||
{
|
||||
if (graphicsInfo->paletteSlot == PALSLOT_PLAYER)
|
||||
LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex);
|
||||
}
|
||||
else if (graphicsInfo->paletteSlot == 10)
|
||||
{
|
||||
else if (graphicsInfo->paletteSlot == PALSLOT_NPC_SPECIAL)
|
||||
LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
PatchObjectPalette(GetObjectPaletteTag(paletteIndex), paletteIndex);
|
||||
}
|
||||
UpdateSpritePaletteWithWeather(paletteIndex);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,12 +43,12 @@ static bool8 WaitStairExitMovementFinished(s16 *speedX, s16 *speedY, s16 *offset
|
||||
|
||||
void palette_bg_faded_fill_white(void)
|
||||
{
|
||||
CpuFastFill16(RGB_WHITE, gPlttBufferFaded, 0x400);
|
||||
CpuFastFill16(RGB_WHITE, gPlttBufferFaded, PLTT_SIZE);
|
||||
}
|
||||
|
||||
void palette_bg_faded_fill_black(void)
|
||||
{
|
||||
CpuFastFill16(RGB_BLACK, gPlttBufferFaded, 0x400);
|
||||
CpuFastFill16(RGB_BLACK, gPlttBufferFaded, PLTT_SIZE);
|
||||
}
|
||||
|
||||
void WarpFadeInScreen(void)
|
||||
|
||||
@@ -394,7 +394,7 @@ static void Task_RushInjuredPokemonToCenter(u8 taskId)
|
||||
case 0:
|
||||
windowId = AddWindow(&sWindowTemplate_WhiteoutText);
|
||||
gTasks[taskId].tWindowId = windowId;
|
||||
Menu_LoadStdPalAt(0xF0);
|
||||
Menu_LoadStdPalAt(BG_PLTT_ID(15));
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
||||
PutWindowTilemap(windowId);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
|
||||
+11
-15
@@ -730,7 +730,7 @@ static const struct WindowTemplate sElevatorCurrentFloorWindowTemplate = {
|
||||
.tilemapTop = 1,
|
||||
.width = 7,
|
||||
.height = 4,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x008
|
||||
};
|
||||
|
||||
@@ -1100,8 +1100,8 @@ void DrawElevatorCurrentFloorWindow(void)
|
||||
return;
|
||||
|
||||
sElevatorCurrentFloorWindowId = AddWindow(&sElevatorCurrentFloorWindowTemplate);
|
||||
LoadStdWindowGfx(sElevatorCurrentFloorWindowId, 0x21D, 0xD0);
|
||||
DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 0xD);
|
||||
LoadStdWindowGfx(sElevatorCurrentFloorWindowId, 0x21D, BG_PLTT_ID(13));
|
||||
DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 13);
|
||||
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, FONT_NORMAL, gText_NowOn, 0, 2, 0xFF, NULL);
|
||||
floorname = sFloorNamePointers[gSpecialVar_0x8005];
|
||||
strwidth = GetStringWidth(FONT_NORMAL, floorname, 0);
|
||||
@@ -2144,13 +2144,13 @@ void DoPokemonLeagueLightingEffect(void)
|
||||
{
|
||||
data[0] = sChampionRoomLightingTimers[0];
|
||||
data[2] = 8;
|
||||
LoadPalette(sChampionRoomLightingPalettes[0], 0x70, 0x20);
|
||||
LoadPalette(sChampionRoomLightingPalettes[0], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
data[0] = sEliteFourLightingTimers[0];
|
||||
data[2] = 11;
|
||||
LoadPalette(sEliteFourLightingPalettes[0], 0x70, 0x20);
|
||||
LoadPalette(sEliteFourLightingPalettes[0], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
|
||||
}
|
||||
data[1] = 0;
|
||||
ApplyGlobalTintToPaletteSlot(7, 1);
|
||||
@@ -2173,12 +2173,12 @@ static void Task_RunPokemonLeagueLightingEffect(u8 taskId)
|
||||
if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM))
|
||||
{
|
||||
data[0] = sChampionRoomLightingTimers[data[1]];
|
||||
LoadPalette(sChampionRoomLightingPalettes[data[1]], 0x70, 0x20);
|
||||
LoadPalette(sChampionRoomLightingPalettes[data[1]], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
data[0] = sEliteFourLightingTimers[data[1]];
|
||||
LoadPalette(sEliteFourLightingPalettes[data[1]], 0x70, 0x20);
|
||||
LoadPalette(sEliteFourLightingPalettes[data[1]], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
|
||||
}
|
||||
ApplyGlobalTintToPaletteSlot(7, 1);
|
||||
}
|
||||
@@ -2190,13 +2190,9 @@ static void Task_CancelPokemonLeagueLightingEffect(u8 taskId)
|
||||
if (FlagGet(FLAG_TEMP_4) != FALSE)
|
||||
{
|
||||
if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM))
|
||||
{
|
||||
LoadPalette(sChampionRoomLightingPalettes[8], 0x70, 0x20);
|
||||
}
|
||||
LoadPalette(sChampionRoomLightingPalettes[8], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
|
||||
else
|
||||
{
|
||||
LoadPalette(sEliteFourLightingPalettes[11], 0x70, 0x20);
|
||||
}
|
||||
LoadPalette(sEliteFourLightingPalettes[11], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
|
||||
ApplyGlobalTintToPaletteSlot(7, 1);
|
||||
if (gPaletteFade.active)
|
||||
{
|
||||
@@ -2409,7 +2405,7 @@ static void Task_DoDeoxysTriangleInteraction(u8 taskId)
|
||||
static void MoveDeoxysObject(u8 num)
|
||||
{
|
||||
u8 mapObjId;
|
||||
LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08);
|
||||
LoadPalette(sDeoxysObjectPals[num], OBJ_PLTT_ID(10), PLTT_SIZEOF(4));
|
||||
ApplyGlobalFieldPaletteTint(10);
|
||||
TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &mapObjId);
|
||||
if (num == 0)
|
||||
@@ -2455,7 +2451,7 @@ void IncrementBirthIslandRockStepCount(void)
|
||||
void SetDeoxysTrianglePalette(void)
|
||||
{
|
||||
u8 num = VarGet(VAR_DEOXYS_INTERACTION_NUM);
|
||||
LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08);
|
||||
LoadPalette(sDeoxysObjectPals[num], OBJ_PLTT_ID(10), PLTT_SIZEOF(4));
|
||||
ApplyGlobalFieldPaletteTint(10);
|
||||
}
|
||||
|
||||
|
||||
+166
-111
@@ -15,7 +15,20 @@
|
||||
#include "constants/metatile_labels.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
// TODO: Metatile IDs in this file
|
||||
/* This file handles some persistent tasks that run in the overworld.
|
||||
* - Task_RunTimeBasedEvents: Triggers ambient cries. In RSE, this also periodically updates local time and RTC events.
|
||||
* - Task_RunPerStepCallback: Calls one of the functions in sPerStepCallbacks, listed below...
|
||||
* . DummyPerStepCallback: Default, does nothing. Includes functionality from RS that was removed.
|
||||
* . AshGrassPerStepCallback: Leftover from RS. Removes the ash from ash-covered grass that the player steps on.
|
||||
* . IcefallCaveIcePerStepCallback: Cracks/breaks ice in Icefall Cave that the player steps on.
|
||||
* . CrackedFloorPerStepCallback: Leftover from RS. Breaks cracked floors that the player steps on.
|
||||
*
|
||||
* NOTE: "PerStep" is perhaps misleading. One function in sPerStepCallbacks is called
|
||||
* every frame while in the overworld by Task_RunPerStepCallback regardless of
|
||||
* whether or not steps are being taken. However, nearly all of the functions in
|
||||
* the table check if the player has moved from their previous position before
|
||||
* doing anything else.
|
||||
*/
|
||||
|
||||
static void DummyPerStepCallback(u8 taskId);
|
||||
static void AshGrassPerStepCallback(u8 taskId);
|
||||
@@ -34,7 +47,8 @@ static const TaskFunc sPerStepCallbacks[] =
|
||||
[STEP_CB_CRACKED_FLOOR] = CrackedFloorPerStepCallback
|
||||
};
|
||||
|
||||
static const u8 sIcefallCaveIceTileCoords[][2] =
|
||||
// The positions of each map space with crackable ice in Icefall Cave.
|
||||
static const u8 sIcefallCaveIceCoords[][2] =
|
||||
{
|
||||
{ 8, 3 },
|
||||
{ 10, 5 },
|
||||
@@ -47,56 +61,53 @@ static const u8 sIcefallCaveIceTileCoords[][2] =
|
||||
{ 8, 14 }
|
||||
};
|
||||
|
||||
#define tCallbackId data[0]
|
||||
|
||||
static void Task_RunPerStepCallback(u8 taskId)
|
||||
{
|
||||
int idx = gTasks[taskId].data[0];
|
||||
int idx = gTasks[taskId].tCallbackId;
|
||||
sPerStepCallbacks[idx](taskId);
|
||||
}
|
||||
|
||||
#define tAmbientCryState data[1]
|
||||
#define tAmbientCryDelay data[2]
|
||||
|
||||
// RTC functionality from RS was removed here.
|
||||
static void Task_RunTimeBasedEvents(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
if (!ArePlayerFieldControlsLocked())
|
||||
{
|
||||
if (!QL_IS_PLAYBACK_STATE)
|
||||
{
|
||||
UpdateAmbientCry(&data[1], &data[2]);
|
||||
}
|
||||
}
|
||||
if (!ArePlayerFieldControlsLocked() && !QL_IS_PLAYBACK_STATE)
|
||||
UpdateAmbientCry(&tAmbientCryState, &tAmbientCryDelay);
|
||||
}
|
||||
|
||||
void SetUpFieldTasks(void)
|
||||
{
|
||||
if (!FuncIsActiveTask(Task_RunPerStepCallback))
|
||||
{
|
||||
u8 taskId = CreateTask(Task_RunPerStepCallback, 0x50);
|
||||
gTasks[taskId].data[0] = 0;
|
||||
u8 taskId = CreateTask(Task_RunPerStepCallback, 80);
|
||||
gTasks[taskId].tCallbackId = STEP_CB_DUMMY;
|
||||
}
|
||||
|
||||
if (!FuncIsActiveTask(Task_RunTimeBasedEvents))
|
||||
CreateTask(Task_RunTimeBasedEvents, 0x50);
|
||||
CreateTask(Task_RunTimeBasedEvents, 80);
|
||||
}
|
||||
|
||||
void ActivatePerStepCallback(u8 callbackId)
|
||||
{
|
||||
u8 taskId = FindTaskIdByFunc(Task_RunPerStepCallback);
|
||||
if (taskId != 0xff)
|
||||
if (taskId != TASK_NONE)
|
||||
{
|
||||
s32 i;
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
for (i = 0; i < 16; i++)
|
||||
for (i = 0; i < NUM_TASK_DATA; i++)
|
||||
data[i] = 0;
|
||||
|
||||
if (callbackId >= NELEMS(sPerStepCallbacks))
|
||||
{
|
||||
data[0] = 0;
|
||||
}
|
||||
if (callbackId >= ARRAY_COUNT(sPerStepCallbacks))
|
||||
tCallbackId = STEP_CB_DUMMY;
|
||||
else
|
||||
{
|
||||
data[0] = callbackId;
|
||||
}
|
||||
tCallbackId = callbackId;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,29 +117,31 @@ void ResetFieldTasksArgs(void)
|
||||
s16 *data;
|
||||
|
||||
taskId = FindTaskIdByFunc(Task_RunPerStepCallback);
|
||||
if (taskId != 0xff)
|
||||
{
|
||||
if (taskId != TASK_NONE)
|
||||
data = gTasks[taskId].data;
|
||||
}
|
||||
|
||||
taskId = FindTaskIdByFunc(Task_RunTimeBasedEvents);
|
||||
if (taskId != 0xff)
|
||||
if (taskId != TASK_NONE)
|
||||
{
|
||||
data = gTasks[taskId].data;
|
||||
data[1] = 0;
|
||||
data[2] = 0;
|
||||
tAmbientCryState = 0;
|
||||
tAmbientCryDelay = 0;
|
||||
}
|
||||
}
|
||||
|
||||
#undef tAmbientCryState
|
||||
#undef tAmbientCryDelay
|
||||
|
||||
static void DummyPerStepCallback(u8 taskId)
|
||||
{
|
||||
}
|
||||
|
||||
static void MarkIcefallCaveCoordVisited(s16 x, s16 y)
|
||||
static void MarkIcePuzzleCoordVisited(s16 x, s16 y)
|
||||
{
|
||||
u8 i = 0;
|
||||
for (; i < NELEMS(sIcefallCaveIceTileCoords); ++i)
|
||||
u8 i;
|
||||
for (i = 0; i < ARRAY_COUNT(sIcefallCaveIceCoords); i++)
|
||||
{
|
||||
if (sIcefallCaveIceTileCoords[i][0] + 7 == x && sIcefallCaveIceTileCoords[i][1] + 7 == y)
|
||||
if (sIcefallCaveIceCoords[i][0] + MAP_OFFSET == x && sIcefallCaveIceCoords[i][1] + MAP_OFFSET == y)
|
||||
{
|
||||
FlagSet(i + 1);
|
||||
break;
|
||||
@@ -138,118 +151,156 @@ static void MarkIcefallCaveCoordVisited(s16 x, s16 y)
|
||||
|
||||
void SetIcefallCaveCrackedIceMetatiles(void)
|
||||
{
|
||||
u8 i = 0;
|
||||
for (; i < NELEMS(sIcefallCaveIceTileCoords); ++i)
|
||||
u8 i;
|
||||
for (i = 0; i < ARRAY_COUNT(sIcefallCaveIceCoords); i++)
|
||||
{
|
||||
if (FlagGet(i + 1) == TRUE)
|
||||
{
|
||||
int x = sIcefallCaveIceTileCoords[i][0] + 7;
|
||||
int y = sIcefallCaveIceTileCoords[i][1] + 7;
|
||||
int x = sIcefallCaveIceCoords[i][0] + MAP_OFFSET;
|
||||
int y = sIcefallCaveIceCoords[i][1] + MAP_OFFSET;
|
||||
MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_CrackedIce);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#define tState data[1]
|
||||
#define tPrevX data[2]
|
||||
#define tPrevY data[3]
|
||||
#define tIceX data[4]
|
||||
#define tIceY data[5]
|
||||
#define tDelay data[6]
|
||||
|
||||
static void IcefallCaveIcePerStepCallback(u8 taskId)
|
||||
{
|
||||
s16 x, y;
|
||||
u8 tileBehavior;
|
||||
u16 *iceStepCount;
|
||||
s16 *data = gTasks[taskId].data;
|
||||
switch (data[1])
|
||||
switch (tState)
|
||||
{
|
||||
case 0:
|
||||
PlayerGetDestCoords(&x, &y);
|
||||
data[2] = x;
|
||||
data[3] = y;
|
||||
data[1] = 1;
|
||||
tPrevX = x;
|
||||
tPrevY = y;
|
||||
tState = 1;
|
||||
break;
|
||||
case 1:
|
||||
PlayerGetDestCoords(&x, &y);
|
||||
if (x != data[2] || y != data[3])
|
||||
// End if player hasn't moved
|
||||
if (x == tPrevX && y == tPrevY)
|
||||
return;
|
||||
|
||||
tPrevX = x;
|
||||
tPrevY = y;
|
||||
tileBehavior = MapGridGetMetatileBehaviorAt(x, y);
|
||||
if (MetatileBehavior_IsThinIce(tileBehavior) == TRUE)
|
||||
{
|
||||
data[2] = x;
|
||||
data[3] = y;
|
||||
tileBehavior = MapGridGetMetatileBehaviorAt(x, y);
|
||||
if (MetatileBehavior_IsThinIce(tileBehavior) == TRUE)
|
||||
{
|
||||
MarkIcefallCaveCoordVisited(x, y);
|
||||
data[6] = 4;
|
||||
data[1] = 2;
|
||||
data[4] = x;
|
||||
data[5] = y;
|
||||
}
|
||||
else if (MetatileBehavior_IsCrackedIce(tileBehavior) == TRUE)
|
||||
{
|
||||
data[6] = 4;
|
||||
data[1] = 3;
|
||||
data[4] = x;
|
||||
data[5] = y;
|
||||
}
|
||||
// Thin ice, set it to cracked ice
|
||||
MarkIcePuzzleCoordVisited(x, y);
|
||||
tDelay = 4;
|
||||
tState = 2;
|
||||
tIceX = x;
|
||||
tIceY = y;
|
||||
}
|
||||
else if (MetatileBehavior_IsCrackedIce(tileBehavior) == TRUE)
|
||||
{
|
||||
// Cracked ice, set it to broken ice
|
||||
tDelay = 4;
|
||||
tState = 3;
|
||||
tIceX = x;
|
||||
tIceY = y;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (data[6] != 0)
|
||||
if (tDelay != 0)
|
||||
{
|
||||
data[6]--;
|
||||
tDelay--;
|
||||
}
|
||||
else
|
||||
{
|
||||
x = data[4];
|
||||
y = data[5];
|
||||
// Crack ice
|
||||
x = tIceX;
|
||||
y = tIceY;
|
||||
PlaySE(SE_ICE_CRACK);
|
||||
MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_CrackedIce);
|
||||
CurrentMapDrawMetatileAt(x, y);
|
||||
data[1] = 1;
|
||||
tState = 1;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (data[6] != 0)
|
||||
if (tDelay != 0)
|
||||
{
|
||||
data[6]--;
|
||||
tDelay--;
|
||||
}
|
||||
else
|
||||
{
|
||||
x = data[4];
|
||||
y = data[5];
|
||||
// Break ice
|
||||
x = tIceX;
|
||||
y = tIceY;
|
||||
PlaySE(SE_ICE_BREAK);
|
||||
MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_IceHole);
|
||||
CurrentMapDrawMetatileAt(x, y);
|
||||
VarSet(VAR_TEMP_1, 1);
|
||||
data[1] = 1;
|
||||
tState = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// This is leftover from pokeruby and effectively a no-op.
|
||||
#undef tState
|
||||
#undef tPrevX
|
||||
#undef tPrevY
|
||||
#undef tIceX
|
||||
#undef tIceY
|
||||
#undef tDelay
|
||||
|
||||
#define tPrevX data[1]
|
||||
#define tPrevY data[2]
|
||||
|
||||
// Unused. For some reason this was not dummied out like the other RSE-exclusive step callbacks.
|
||||
static void AshGrassPerStepCallback(u8 taskId)
|
||||
{
|
||||
s16 x, y;
|
||||
u16 *ashGatherCount;
|
||||
s16 *data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&x, &y);
|
||||
if (x != data[1] || y != data[2])
|
||||
|
||||
// End if player hasn't moved
|
||||
if (x == tPrevX && y == tPrevY)
|
||||
return;
|
||||
|
||||
tPrevX = x;
|
||||
tPrevY = y;
|
||||
if (MetatileBehavior_IsAshGrass((u8)MapGridGetMetatileBehaviorAt(x, y)))
|
||||
{
|
||||
data[1] = x;
|
||||
data[2] = y;
|
||||
if (MetatileBehavior_IsAshGrass((u8)MapGridGetMetatileBehaviorAt(x, y)))
|
||||
{
|
||||
if (MapGridGetMetatileIdAt(x, y) == 0x20a)
|
||||
StartAshFieldEffect(x, y, 0x212, 4);
|
||||
else
|
||||
StartAshFieldEffect(x, y, 0x206, 4);
|
||||
}
|
||||
// Remove ash from grass
|
||||
if (MapGridGetMetatileIdAt(x, y) == METATILE_Fallarbor_AshGrass)
|
||||
StartAshFieldEffect(x, y, METATILE_Fallarbor_NormalGrass, 4);
|
||||
else
|
||||
StartAshFieldEffect(x, y, METATILE_Lavaridge_NormalGrass, 4);
|
||||
}
|
||||
}
|
||||
|
||||
#undef tPrevX
|
||||
#undef tPrevY
|
||||
|
||||
// Unused. For some reason these were not dummied out like the other RSE-exclusive step callbacks.
|
||||
static void SetCrackedFloorHoleMetatile(s16 x, s16 y)
|
||||
{
|
||||
MapGridSetMetatileIdAt(x, y, MapGridGetMetatileIdAt(x, y) == 0x22f ? 0x206 : 0x237);
|
||||
MapGridSetMetatileIdAt(x, y, MapGridGetMetatileIdAt(x, y) == METATILE_RSCave_CrackedFloor ? METATILE_RSCave_CrackedFloor_Hole : METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole);
|
||||
CurrentMapDrawMetatileAt(x, y);
|
||||
}
|
||||
|
||||
// This is leftover from pokeruby and effectively a no-op.
|
||||
#define tPrevX data[2]
|
||||
#define tPrevY data[3]
|
||||
#define tFloor1Delay data[4]
|
||||
#define tFloor1X data[5]
|
||||
#define tFloor1Y data[6]
|
||||
#define tFloor2Delay data[7]
|
||||
#define tFloor2X data[8]
|
||||
#define tFloor2Y data[9]
|
||||
|
||||
// Unused. See above.
|
||||
static void CrackedFloorPerStepCallback(u8 taskId)
|
||||
{
|
||||
s16 x, y;
|
||||
@@ -257,40 +308,44 @@ static void CrackedFloorPerStepCallback(u8 taskId)
|
||||
s16 *data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&x, &y);
|
||||
behavior = MapGridGetMetatileBehaviorAt(x, y);
|
||||
if (data[4] != 0 && (--data[4]) == 0)
|
||||
SetCrackedFloorHoleMetatile(data[5], data[6]);
|
||||
|
||||
if (data[7] != 0 && (--data[7]) == 0)
|
||||
SetCrackedFloorHoleMetatile(data[8], data[9]);
|
||||
// Update up to 2 previous cracked floor spaces
|
||||
if (tFloor1Delay != 0 && (--tFloor1Delay) == 0)
|
||||
SetCrackedFloorHoleMetatile(tFloor1X, tFloor1Y);
|
||||
if (tFloor2Delay != 0 && (--tFloor2Delay) == 0)
|
||||
SetCrackedFloorHoleMetatile(tFloor2X, tFloor2Y);
|
||||
|
||||
if ((x != data[2] || y != data[3]))
|
||||
// End if player hasn't moved
|
||||
if (x == tPrevX && y == tPrevY)
|
||||
return;
|
||||
|
||||
tPrevX = x;
|
||||
tPrevY = y;
|
||||
if (MetatileBehavior_IsCrackedFloor(behavior))
|
||||
{
|
||||
data[2] = x;
|
||||
data[3] = y;
|
||||
if (MetatileBehavior_IsCrackedFloor(behavior))
|
||||
{
|
||||
if (GetPlayerSpeed() != 4)
|
||||
VarSet(VAR_ICE_STEP_COUNT, 0);
|
||||
if (GetPlayerSpeed() != PLAYER_SPEED_FASTEST)
|
||||
VarSet(VAR_ICE_STEP_COUNT, 0); // this var does double duty
|
||||
|
||||
if (data[4] == 0)
|
||||
{
|
||||
data[4] = 3;
|
||||
data[5] = x;
|
||||
data[6] = y;
|
||||
}
|
||||
else if (data[7] == 0)
|
||||
{
|
||||
data[7] = 3;
|
||||
data[8] = x;
|
||||
data[9] = y;
|
||||
}
|
||||
if (tFloor1Delay == 0)
|
||||
{
|
||||
tFloor1Delay = 3;
|
||||
tFloor1X = x;
|
||||
tFloor1Y = y;
|
||||
}
|
||||
else if (tFloor2Delay == 0)
|
||||
{
|
||||
tFloor2Delay = 3;
|
||||
tFloor2X = x;
|
||||
tFloor2Y = y;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Unused
|
||||
static void SetHasPokedexAndPokemon(void)
|
||||
{
|
||||
FlagSet(FLAG_SYS_POKEDEX_GET);
|
||||
FlagSet(FLAG_SYS_POKEMON_GET);
|
||||
}
|
||||
#undef tPrevX
|
||||
#undef tPrevY
|
||||
#undef tFloor1Delay
|
||||
#undef tFloor1X
|
||||
#undef tFloor1Y
|
||||
#undef tFloor2Delay
|
||||
#undef tFloor2X
|
||||
#undef tFloor2Y
|
||||
|
||||
+14
-40
@@ -146,7 +146,7 @@ void StartWeather(void)
|
||||
if (!FuncIsActiveTask(Task_WeatherMain))
|
||||
{
|
||||
u8 index = AllocSpritePalette(0x1200);
|
||||
CpuCopy32(gDefaultWeatherSpritePalette, &gPlttBufferUnfaded[0x100 + index * 16], 32);
|
||||
CpuCopy32(gDefaultWeatherSpritePalette, &gPlttBufferUnfaded[OBJ_PLTT_ID(index)], PLTT_SIZE_4BPP);
|
||||
ApplyGlobalFieldPaletteTint(index);
|
||||
BuildGammaShiftTables();
|
||||
gWeatherPtr->altGammaSpritePalIndex = index;
|
||||
@@ -449,7 +449,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex)
|
||||
if (gammaIndex > 0)
|
||||
{
|
||||
gammaIndex--;
|
||||
palOffset = startPalIndex * 16;
|
||||
palOffset = PLTT_ID(startPalIndex);
|
||||
numPalettes += startPalIndex;
|
||||
curPalIndex = startPalIndex;
|
||||
|
||||
@@ -459,7 +459,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex)
|
||||
if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE)
|
||||
{
|
||||
// No palette change.
|
||||
CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16));
|
||||
CpuFastCopy(&gPlttBufferUnfaded[palOffset], &gPlttBufferFaded[palOffset], PLTT_SIZE_4BPP);
|
||||
palOffset += 16;
|
||||
}
|
||||
else
|
||||
@@ -489,37 +489,11 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex)
|
||||
{
|
||||
// A negative gammIndex value means that the blending will come from the special Drought weather's palette tables.
|
||||
// Dummied out in FRLG
|
||||
|
||||
// gammaIndex = -gammaIndex - 1;
|
||||
// palOffset = startPalIndex * 16;
|
||||
// numPalettes += startPalIndex;
|
||||
// curPalIndex = startPalIndex;
|
||||
//
|
||||
// CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16));
|
||||
// while (curPalIndex < numPalettes)
|
||||
// {
|
||||
// if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE)
|
||||
// {
|
||||
// // No palette change.
|
||||
// palOffset += 16;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
//
|
||||
// for (i = 0; i < 16; i++)
|
||||
// {
|
||||
// gPlttBufferFaded[palOffset] = sDroughtWeatherColors[gammaIndex][DROUGHT_COLOR_INDEX(gPlttBufferUnfaded[palOffset])];
|
||||
// palOffset++;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// curPalIndex++;
|
||||
// }
|
||||
}
|
||||
else
|
||||
{
|
||||
// No palette blending.
|
||||
CpuFastCopy(gPlttBufferUnfaded + startPalIndex * 16, gPlttBufferFaded + startPalIndex * 16, numPalettes * 16 * sizeof(u16));
|
||||
CpuFastCopy(&gPlttBufferUnfaded[PLTT_ID(startPalIndex)], &gPlttBufferFaded[PLTT_ID(startPalIndex)], numPalettes * PLTT_SIZE_4BPP);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -533,7 +507,7 @@ static void ApplyGammaShiftWithBlend(u8 startPalIndex, u8 numPalettes, s8 gammaI
|
||||
u8 gBlend = color.g;
|
||||
u8 bBlend = color.b;
|
||||
|
||||
palOffset = startPalIndex * 16;
|
||||
palOffset = PLTT_ID(startPalIndex);
|
||||
numPalettes += startPalIndex;
|
||||
gammaIndex--;
|
||||
curPalIndex = startPalIndex;
|
||||
@@ -641,8 +615,8 @@ static void ApplyFogBlend(u8 blendCoeff, u16 blendColor)
|
||||
{
|
||||
if (LightenSpritePaletteInFog(curPalIndex))
|
||||
{
|
||||
u16 palEnd = (curPalIndex + 1) * 16;
|
||||
u16 palOffset = curPalIndex * 16;
|
||||
u16 palEnd = PLTT_ID(curPalIndex + 1);
|
||||
u16 palOffset = PLTT_ID(curPalIndex);
|
||||
|
||||
while (palOffset < palEnd)
|
||||
{
|
||||
@@ -665,7 +639,7 @@ static void ApplyFogBlend(u8 blendCoeff, u16 blendColor)
|
||||
}
|
||||
else
|
||||
{
|
||||
BlendPalette(curPalIndex * 16, 16, blendCoeff, blendColor);
|
||||
BlendPalette(PLTT_ID(curPalIndex), 16, blendCoeff, blendColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -829,7 +803,7 @@ void FadeSelectedPals(u8 mode, s8 delay, u32 selectedPalettes)
|
||||
if (fadeOut)
|
||||
{
|
||||
if (useWeatherPal)
|
||||
CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, 0x400);
|
||||
CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
|
||||
|
||||
BeginNormalPaletteFade(selectedPalettes, delay, 0, 16, fadeColor);
|
||||
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT;
|
||||
@@ -868,14 +842,14 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex)
|
||||
{
|
||||
if (gWeatherPtr->currWeather == WEATHER_FOG_HORIZONTAL)
|
||||
MarkFogSpritePalToLighten(paletteIndex);
|
||||
paletteIndex *= 16;
|
||||
paletteIndex = PLTT_ID(paletteIndex);
|
||||
for (i = 0; i < 16; i++)
|
||||
gPlttBufferFaded[paletteIndex + i] = gWeatherPtr->fadeDestColor;
|
||||
}
|
||||
break;
|
||||
case WEATHER_PAL_STATE_SCREEN_FADING_OUT:
|
||||
paletteIndex *= 16;
|
||||
CpuFastCopy(gPlttBufferFaded + paletteIndex, gPlttBufferUnfaded + paletteIndex, 32);
|
||||
paletteIndex = PLTT_ID(paletteIndex);
|
||||
CpuFastCopy(&gPlttBufferFaded[paletteIndex], &gPlttBufferUnfaded[paletteIndex], PLTT_SIZE_4BPP);
|
||||
BlendPalette(paletteIndex, 16, gPaletteFade.y, gPaletteFade.blendColor);
|
||||
break;
|
||||
// WEATHER_PAL_STATE_CHANGING_WEATHER
|
||||
@@ -887,7 +861,7 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex)
|
||||
}
|
||||
else
|
||||
{
|
||||
paletteIndex *= 16;
|
||||
paletteIndex = PLTT_ID(paletteIndex);
|
||||
BlendPalette(paletteIndex, 16, 12, RGB(28, 31, 28));
|
||||
}
|
||||
break;
|
||||
@@ -909,7 +883,7 @@ static u8 IsWeatherFadingIn(void)
|
||||
|
||||
void LoadCustomWeatherSpritePalette(const u16 *palette)
|
||||
{
|
||||
LoadPalette(palette, 0x100 + gWeatherPtr->weatherPicSpritePalIndex * 16, 32);
|
||||
LoadPalette(palette, OBJ_PLTT_ID(gWeatherPtr->weatherPicSpritePalIndex), PLTT_SIZE_4BPP);
|
||||
UpdateSpritePaletteWithWeather(gWeatherPtr->weatherPicSpritePalIndex);
|
||||
}
|
||||
|
||||
|
||||
+13
-13
@@ -845,19 +845,19 @@ static void ApplyGlobalTintToPaletteEntries(u16 offset, u16 size)
|
||||
case QL_TINT_NONE:
|
||||
return;
|
||||
case QL_TINT_GRAYSCALE:
|
||||
TintPalette_GrayScale(gPlttBufferUnfaded + offset, size);
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[offset], size);
|
||||
break;
|
||||
case QL_TINT_SEPIA:
|
||||
TintPalette_SepiaTone(gPlttBufferUnfaded + offset, size);
|
||||
TintPalette_SepiaTone(&gPlttBufferUnfaded[offset], size);
|
||||
break;
|
||||
case QL_TINT_BACKUP_GRAYSCALE:
|
||||
QuestLog_BackUpPalette(offset, size);
|
||||
TintPalette_GrayScale(gPlttBufferUnfaded + offset, size);
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[offset], size);
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
CpuCopy16(gPlttBufferUnfaded + offset, gPlttBufferFaded + offset, size * sizeof(u16));
|
||||
CpuCopy16(&gPlttBufferUnfaded[offset], &gPlttBufferFaded[offset], PLTT_SIZEOF(size));
|
||||
}
|
||||
|
||||
void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count)
|
||||
@@ -867,19 +867,19 @@ void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count)
|
||||
case QL_TINT_NONE:
|
||||
return;
|
||||
case QL_TINT_GRAYSCALE:
|
||||
TintPalette_GrayScale(gPlttBufferUnfaded + slot * 16, count * 16);
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16);
|
||||
break;
|
||||
case QL_TINT_SEPIA:
|
||||
TintPalette_SepiaTone(gPlttBufferUnfaded + slot * 16, count * 16);
|
||||
TintPalette_SepiaTone(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16);
|
||||
break;
|
||||
case QL_TINT_BACKUP_GRAYSCALE:
|
||||
QuestLog_BackUpPalette(slot * 16, count * 16);
|
||||
TintPalette_GrayScale(gPlttBufferUnfaded + slot * 16, count * 16);
|
||||
QuestLog_BackUpPalette(BG_PLTT_ID(slot), count * 16);
|
||||
TintPalette_GrayScale(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16);
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
CpuFastCopy(gPlttBufferUnfaded + slot * 16, gPlttBufferFaded + slot * 16, count * 16 * sizeof(u16));
|
||||
CpuFastCopy(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], &gPlttBufferFaded[BG_PLTT_ID(slot)], count * PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u16 size)
|
||||
@@ -890,8 +890,8 @@ static void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u1
|
||||
{
|
||||
if (tileset->isSecondary == FALSE)
|
||||
{
|
||||
LoadPalette(&black, destOffset, 2);
|
||||
LoadPalette(tileset->palettes[0] + 1, destOffset + 1, size - 2);
|
||||
LoadPalette(&black, destOffset, PLTT_SIZEOF(1));
|
||||
LoadPalette(tileset->palettes[0] + 1, destOffset + 1, size - PLTT_SIZEOF(1));
|
||||
ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1);
|
||||
}
|
||||
else if (tileset->isSecondary == TRUE)
|
||||
@@ -924,12 +924,12 @@ void CopySecondaryTilesetToVramUsingHeap(const struct MapLayout *mapLayout)
|
||||
|
||||
static void LoadPrimaryTilesetPalette(const struct MapLayout *mapLayout)
|
||||
{
|
||||
LoadTilesetPalette(mapLayout->primaryTileset, 0, NUM_PALS_IN_PRIMARY * 16 * 2);
|
||||
LoadTilesetPalette(mapLayout->primaryTileset, BG_PLTT_ID(0), NUM_PALS_IN_PRIMARY * PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
void LoadSecondaryTilesetPalette(const struct MapLayout *mapLayout)
|
||||
{
|
||||
LoadTilesetPalette(mapLayout->secondaryTileset, NUM_PALS_IN_PRIMARY * 16, (NUM_PALS_TOTAL - NUM_PALS_IN_PRIMARY) * 16 * 2);
|
||||
LoadTilesetPalette(mapLayout->secondaryTileset, BG_PLTT_ID(NUM_PALS_IN_PRIMARY), (NUM_PALS_TOTAL - NUM_PALS_IN_PRIMARY) * PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
void CopyMapTilesetsToVram(struct MapLayout const *mapLayout)
|
||||
|
||||
+1
-1
@@ -79,7 +79,7 @@ static const struct OamData sOamData_FldEff_CutGrass = {
|
||||
.size = SPRITE_SIZE(8x8),
|
||||
.tileNum = 0x001,
|
||||
.priority = 1,
|
||||
.paletteNum = 0x1,
|
||||
.paletteNum = 1,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
|
||||
+20
-19
@@ -154,11 +154,13 @@ static const struct FlashStruct sTransitionTypes[] = {
|
||||
}, {0}
|
||||
};
|
||||
|
||||
static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/field_effects/flash_white.gbapal");
|
||||
static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/field_effects/flash_black.gbapal");
|
||||
static const u16 sCaveTransitionPalette_Gradient[] = INCBIN_U16("graphics/field_effects/flash_gradient.gbapal");
|
||||
static const u32 sCaveTransitionTilemap[] = INCBIN_U32("graphics/field_effects/flash_effect_map.bin.lz");
|
||||
static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/field_effects/flash_effect_tiles.4bpp.lz");
|
||||
static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/cave_transition/white.gbapal");
|
||||
static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/cave_transition/black.gbapal");
|
||||
|
||||
static const u16 sCaveTransitionPalette_Enter[] = INCBIN_U16("graphics/cave_transition/enter.gbapal");
|
||||
static const u16 sCaveTransitionPalette_Exit[] = INCBIN_U16("graphics/cave_transition/exit.gbapal");
|
||||
static const u32 sCaveTransitionTilemap[] = INCBIN_U32("graphics/cave_transition/tilemap.bin.lz");
|
||||
static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/cave_transition/tiles.4bpp.lz");
|
||||
|
||||
bool8 SetUpFieldMove_Flash(void)
|
||||
{
|
||||
@@ -299,8 +301,8 @@ static void Task_FlashTransition_Exit_1(u8 taskId)
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, 0);
|
||||
LZ77UnCompVram(sCaveTransitionTiles, (void *)BG_CHAR_ADDR(3));
|
||||
LZ77UnCompVram(sCaveTransitionTilemap, (void *)BG_SCREEN_ADDR(31));
|
||||
LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20);
|
||||
LoadPalette(sCaveTransitionPalette_Gradient + 8, 0xE0, 0x10);
|
||||
LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_White));
|
||||
LoadPalette(sCaveTransitionPalette_Exit, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_Exit));
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, 0);
|
||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||
@@ -328,17 +330,17 @@ static void Task_FlashTransition_Exit_2(u8 taskId)
|
||||
|
||||
static void Task_FlashTransition_Exit_3(u8 taskId)
|
||||
{
|
||||
u16 r4;
|
||||
u16 count;
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, (16 << 8) + 16);
|
||||
r4 = gTasks[taskId].data[2];
|
||||
if (r4 < 8)
|
||||
count = gTasks[taskId].data[2];
|
||||
if (count < 8)
|
||||
{
|
||||
gTasks[taskId].data[2]++;
|
||||
LoadPalette(sCaveTransitionPalette_Gradient + 8 + r4, 0xE0, 0x10 - 2 * r4);
|
||||
LoadPalette(&sCaveTransitionPalette_Exit[count], BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_Exit) - PLTT_SIZEOF(count));
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadPalette(sCaveTransitionPalette_White, 0x00, 0x20);
|
||||
LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_White));
|
||||
gTasks[taskId].func = Task_FlashTransition_Exit_4;
|
||||
gTasks[taskId].data[2] = 8;
|
||||
}
|
||||
@@ -372,8 +374,8 @@ static void Task_FlashTransition_Enter_1(u8 taskId)
|
||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(3) | BGCNT_SCREENBASE(31));
|
||||
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_OBJ_ON);
|
||||
LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20);
|
||||
LoadPalette(sCaveTransitionPalette_Black, 0, 0x20);
|
||||
LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_White));
|
||||
LoadPalette(sCaveTransitionPalette_Black, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_Black));
|
||||
gTasks[taskId].func = Task_FlashTransition_Enter_2;
|
||||
gTasks[taskId].data[0] = 16;
|
||||
gTasks[taskId].data[1] = 0;
|
||||
@@ -382,13 +384,12 @@ static void Task_FlashTransition_Enter_1(u8 taskId)
|
||||
|
||||
static void Task_FlashTransition_Enter_2(u8 taskId)
|
||||
{
|
||||
u16 r4;
|
||||
r4 = gTasks[taskId].data[2];
|
||||
if (r4 < 16)
|
||||
u16 count = gTasks[taskId].data[2];
|
||||
if (count < 16)
|
||||
{
|
||||
gTasks[taskId].data[2]++;
|
||||
gTasks[taskId].data[2]++;
|
||||
LoadPalette(&sCaveTransitionPalette_Gradient[16 - (r4 + 1)], 0xE0, 2 * (r4 + 1));
|
||||
LoadPalette(&sCaveTransitionPalette_Enter[15 - count], BG_PLTT_ID(14), PLTT_SIZEOF(count + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -408,7 +409,7 @@ static void Task_FlashTransition_Enter_3(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadPalette(sCaveTransitionPalette_Black, 0x00, 0x20);
|
||||
LoadPalette(sCaveTransitionPalette_Black, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_Black));
|
||||
SetMainCallback2(gMain.savedCallback);
|
||||
}
|
||||
}
|
||||
|
||||
+10
-10
@@ -1078,8 +1078,8 @@ const u32 gStatusPal_Icons[] = INCBIN_U32("graphics/interface/status_icons.gbapa
|
||||
const u32 gBagBg_Gfx[] = INCBIN_U32("graphics/item_menu/bg.4bpp.lz");
|
||||
const u32 gBagBg_Tilemap[] = INCBIN_U32("graphics/item_menu/bg.bin.lz");
|
||||
const u32 gBagBg_ItemPC_Tilemap[] = INCBIN_U32("graphics/item_menu/bg_item_pc.bin.lz");
|
||||
const u32 gBagBgPalette[] = INCBIN_U32("graphics/item_menu/bag_pal1.gbapal.lz"); // palette 1 (Boy + misc Pal)
|
||||
const u32 gBagBgPalette_FemaleOverride[] = INCBIN_U32("graphics/item_menu/bag_pal2.gbapal.lz"); // palette 2 (Girl)
|
||||
const u32 gBagBgPalette[] = INCBIN_U32("graphics/item_menu/bg.gbapal.lz"); // palette 1 (Boy + misc Pal)
|
||||
const u32 gBagBgPalette_FemaleOverride[] = INCBIN_U32("graphics/item_menu/bg_female.gbapal.lz"); // palette 2 (Girl)
|
||||
|
||||
const u32 gBagMale_Gfx[] = INCBIN_U32("graphics/interface/bag_male.4bpp.lz");
|
||||
const u32 gBagFemale_Gfx[] = INCBIN_U32("graphics/interface/bag_female.4bpp.lz");
|
||||
@@ -1137,9 +1137,9 @@ const u32 gGhostFrontPic[] = INCBIN_U32("graphics/pokemon/ghost/front.4bpp.lz");
|
||||
|
||||
#include "data/graphics/mail.h"
|
||||
|
||||
const u16 gFireRedMenuElements1_Pal[] = INCBIN_U16("graphics/interface/dex_caught_pokeball.gbapal");
|
||||
const u16 gFireRedMenuElements2_Pal[] = INCBIN_U16("graphics/interface/pokemon_types.gbapal");
|
||||
const u8 gFireRedMenuElements_Gfx[] = INCBIN_U8("graphics/interface/dex_caught_pokeball_and_pokemon_types.4bpp");
|
||||
const u16 gMenuInfoElements1_Pal[] = INCBIN_U16("graphics/interface/dex_caught_pokeball.gbapal");
|
||||
const u16 gMenuInfoElements2_Pal[] = INCBIN_U16("graphics/interface/pokemon_types.gbapal");
|
||||
const u8 gMenuInfoElements_Gfx[] = INCBIN_U8("graphics/interface/menu_info.4bpp");
|
||||
|
||||
const u16 gMoveRelearner_Pal[] = INCBIN_U16("graphics/interface/learn_move.gbapal");
|
||||
const u32 gMoveRelearner_Gfx[] = INCBIN_U32("graphics/interface/learn_move.4bpp.lz");
|
||||
@@ -1178,10 +1178,10 @@ const u32 gNamingScreenUnderscore_Gfx[] = INCBIN_U32("graphics/naming_screen
|
||||
|
||||
const u8 gTMCaseHM_Gfx[] = INCBIN_U8("graphics/tm_case/hm.4bpp");
|
||||
|
||||
const u16 gKantoTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star.gbapal");
|
||||
const u32 gKantoTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card.4bpp.lz");
|
||||
const u16 gHoennTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star_em.gbapal");
|
||||
const u32 gHoennTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card_em.4bpp.lz");
|
||||
const u16 gKantoTrainerCardBlue_Pal[] = INCBIN_U16("graphics/trainer_card/blue.gbapal");
|
||||
const u32 gKantoTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/tiles.4bpp.lz");
|
||||
const u16 gHoennTrainerCardGreen_Pal[] = INCBIN_U16("graphics/trainer_card/rse/green.gbapal");
|
||||
const u32 gHoennTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/rse/tiles.4bpp.lz");
|
||||
|
||||
const u16 gEasyChatWindow_Pal[] = INCBIN_U16("graphics/easy_chat/window.gbapal");
|
||||
const u32 gEasyChatWindow_Gfx[] = INCBIN_U32("graphics/easy_chat/window.4bpp.lz");
|
||||
@@ -1227,7 +1227,7 @@ const u16 gTradeUnused_Tilemap[] = INCBIN_U16("graphics/trade/unused.bin");
|
||||
const u16 gTradeMenu_Tilemap[] = INCBIN_U16("graphics/trade/menu.bin");
|
||||
const u16 gTradeMenuMonBox_Tilemap[] = INCBIN_U16("graphics/trade/menu_mon_box.bin");
|
||||
|
||||
const u16 gFameCheckerBgPals[] = INCBIN_U16("graphics/fame_checker/bg.gbapal");
|
||||
const u16 gFameCheckerBgPals[][16] = INCBIN_U16("graphics/fame_checker/bg.gbapal");
|
||||
const u16 gFameCheckerBgTiles[] = INCBIN_U16("graphics/fame_checker/bg.4bpp");
|
||||
const u16 gFameCheckerBg3Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap3.bin");
|
||||
const u16 gFameCheckerBg2Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap2.bin");
|
||||
|
||||
+5
-5
@@ -620,7 +620,7 @@ static void Task_Hof_SpawnPlayerPic(u8 taskId)
|
||||
ShowBg(3);
|
||||
gTasks[taskId].data[4] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender, TRUE), TRUE, 0x78, 0x48, 6, 0xFFFF);
|
||||
AddWindow(&sWindowTemplate);
|
||||
LoadStdWindowGfx(1, 0x21D, 0xD0);
|
||||
LoadStdWindowGfx(1, 0x21D, BG_PLTT_ID(13));
|
||||
gTasks[taskId].data[3] = 120;
|
||||
gTasks[taskId].func = Task_Hof_WaitAndPrintPlayerInfo;
|
||||
}
|
||||
@@ -657,7 +657,7 @@ static void Task_Hof_ExitOnKeyPressed(u8 taskId)
|
||||
|
||||
static void Task_Hof_HandlePaletteOnExit(u8 taskId)
|
||||
{
|
||||
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * sizeof(u16));
|
||||
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
|
||||
BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_BLACK);
|
||||
gTasks[taskId].func = Task_Hof_HandleExit;
|
||||
}
|
||||
@@ -938,7 +938,7 @@ static void Task_HofPC_HandlePaletteOnExit(u8 taskId)
|
||||
{
|
||||
struct HallofFameTeam* fameTeam;
|
||||
|
||||
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, 0x400);
|
||||
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
|
||||
BeginPCScreenEffect_TurnOff(0, 0, 0);
|
||||
gTasks[taskId].func = Task_HofPC_HandleExit;
|
||||
}
|
||||
@@ -1085,7 +1085,7 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
|
||||
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||
PutWindowTilemap(1);
|
||||
DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x21D, 0xD);
|
||||
DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x21D, 13);
|
||||
AddTextPrinterParameterized4(1, FONT_NORMAL, 4, 3, 0, 0, sTextColors[1], 0, gText_Name);
|
||||
|
||||
AddTextPrinterParameterized3(1, FONT_NORMAL, textWidth - GetStringWidth(FONT_NORMAL, gSaveBlock2Ptr->playerName, 0), 3, sTextColors[1], 0, gSaveBlock2Ptr->playerName);
|
||||
@@ -1148,7 +1148,7 @@ static void ClearVramOamPltt_LoadHofPal(void)
|
||||
DmaFill16(3, 0, plttOffset, plttSize);
|
||||
|
||||
ResetPaletteFade();
|
||||
LoadPalette(sHallOfFame_Pal, 0, 0x20);
|
||||
LoadPalette(sHallOfFame_Pal, BG_PLTT_ID(0), sizeof(sHallOfFame_Pal));
|
||||
}
|
||||
|
||||
static void HofInit_ResetGpuBuffersAndLoadConfettiGfx(void)
|
||||
|
||||
+15
-15
@@ -405,7 +405,7 @@ static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = {
|
||||
.tilemapTop = 4,
|
||||
.width = 18,
|
||||
.height = 9,
|
||||
.paletteNum = 0xD,
|
||||
.paletteNum = 13,
|
||||
.baseBlock = 0x000
|
||||
},
|
||||
[WIN_COUNT] = DUMMY_WIN_TEMPLATE
|
||||
@@ -930,7 +930,7 @@ static bool8 SetUpCopyrightScreen(void)
|
||||
DmaFill32(3, 0, OAM, OAM_SIZE);
|
||||
DmaFill16(3, 0, PLTT + sizeof(vu16), PLTT_SIZE - sizeof(vu16));
|
||||
ResetPaletteFade();
|
||||
LoadCopyrightGraphics(0 * BG_CHAR_SIZE, 7 * BG_SCREEN_SIZE, 0);
|
||||
LoadCopyrightGraphics(0 * BG_CHAR_SIZE, 7 * BG_SCREEN_SIZE, BG_PLTT_ID(0));
|
||||
ScanlineEffect_Stop();
|
||||
ResetTasks();
|
||||
ResetSpriteData();
|
||||
@@ -1025,15 +1025,15 @@ static void CB2_SetUpIntro(void)
|
||||
DmaFill16(3, 0, VRAM, VRAM_SIZE);
|
||||
DmaFill32(3, 0, OAM, OAM_SIZE);
|
||||
DmaFill16(3, 0, PLTT, PLTT_SIZE);
|
||||
FillPalette(RGB_BLACK, 0, 0x400);
|
||||
FillPalette(RGB_BLACK, 0, PLTT_SIZE);
|
||||
ResetBgsAndClearDma3BusyFlags(FALSE);
|
||||
InitBgsFromTemplates(0, sBgTemplates_GameFreakScene, ARRAY_COUNT(sBgTemplates_GameFreakScene));
|
||||
break;
|
||||
case 1:
|
||||
LoadPalette(sGameFreakBg_Pal, 0x00, sizeof(sGameFreakBg_Pal));
|
||||
LoadPalette(sGameFreakBg_Pal, BG_PLTT_ID(0), sizeof(sGameFreakBg_Pal));
|
||||
DecompressAndCopyTileDataToVram(BG_GF_BACKGROUND, sGameFreakBg_Gfx, 0, 0, 0);
|
||||
DecompressAndCopyTileDataToVram(BG_GF_BACKGROUND, sGameFreakBg_Map, 0, 0, 1);
|
||||
LoadPalette(sGameFreakLogo_Pal, 0xD0, sizeof(sGameFreakLogo_Pal));
|
||||
LoadPalette(sGameFreakLogo_Pal, BG_PLTT_ID(13), sizeof(sGameFreakLogo_Pal));
|
||||
break;
|
||||
case 2:
|
||||
if (!FreeTempTileDataBuffersIfPossible())
|
||||
@@ -1113,7 +1113,7 @@ static void IntroCB_Init(struct IntroSequenceData * this)
|
||||
InitWindows(sWindowTemplates);
|
||||
LZ77UnCompWram(sGameFreakText_Gfx, this->gameFreakTextGfx);
|
||||
LZ77UnCompWram(sGameFreakLogo_Gfx, this->gameFreakLogoGfx);
|
||||
FillBgTilemapBufferRect(BG_GF_TEXT_LOGO, 0x000, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(BG_GF_TEXT_LOGO, 0x000, 0, 0, 32, 32, 17);
|
||||
FillWindowPixelBuffer(WIN_GF_TEXT_LOGO, PIXEL_FILL(0));
|
||||
BlitBitmapToWindow(WIN_GF_TEXT_LOGO, this->gameFreakTextGfx, 0, 40, 144, 16);
|
||||
PutWindowTilemap(WIN_GF_TEXT_LOGO);
|
||||
@@ -1293,8 +1293,8 @@ static void IntroCB_Scene1(struct IntroSequenceData * this)
|
||||
{
|
||||
case 0:
|
||||
SetVBlankCallback(NULL);
|
||||
LoadPalette(sScene1_Grass_Pal, 16 * PALSLOT_SCENE1_GRASS, sizeof(sScene1_Grass_Pal));
|
||||
LoadPalette(sScene1_Bg_Pal, 16 * PALSLOT_SCENE1_BG, sizeof(sScene1_Bg_Pal));
|
||||
LoadPalette(sScene1_Grass_Pal, BG_PLTT_ID(PALSLOT_SCENE1_GRASS), sizeof(sScene1_Grass_Pal));
|
||||
LoadPalette(sScene1_Bg_Pal, BG_PLTT_ID(PALSLOT_SCENE1_BG), sizeof(sScene1_Bg_Pal));
|
||||
BlendPalettes((1 << PALSLOT_SCENE1_GRASS) | (1 << PALSLOT_SCENE1_BG), 16, RGB_WHITE);
|
||||
InitBgsFromTemplates(0, sBgTemplates_Scene1, ARRAY_COUNT(sBgTemplates_Scene1));
|
||||
DecompressAndCopyTileDataToVram(BG_SCENE1_BACKGROUND, sScene1_Bg_Gfx, 0, 0, 0);
|
||||
@@ -1439,9 +1439,9 @@ static void IntroCB_Scene2(struct IntroSequenceData * this)
|
||||
if (!FreeTempTileDataBuffersIfPossible())
|
||||
{
|
||||
SetVBlankCallback(NULL);
|
||||
LoadPalette(sScene2_Bg_Pal, 0x10, sizeof(sScene2_Bg_Pal));
|
||||
LoadPalette(sGengar_Pal, 0x50, sizeof(sGengar_Pal));
|
||||
LoadPalette(sScene2_NidorinoClose_Pal, 0x60, sizeof(sScene2_NidorinoClose_Pal));
|
||||
LoadPalette(sScene2_Bg_Pal, BG_PLTT_ID(1), sizeof(sScene2_Bg_Pal));
|
||||
LoadPalette(sGengar_Pal, BG_PLTT_ID(5), sizeof(sGengar_Pal));
|
||||
LoadPalette(sScene2_NidorinoClose_Pal, BG_PLTT_ID(6), sizeof(sScene2_NidorinoClose_Pal));
|
||||
BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE);
|
||||
DecompressAndCopyTileDataToVram(BG_SCENE2_PLANTS, sScene2_Plants_Gfx, 0, 0, 0);
|
||||
DecompressAndCopyTileDataToVram(BG_SCENE2_PLANTS, sScene2_Plants_Map, 0, 0, 1);
|
||||
@@ -1553,8 +1553,8 @@ static void IntroCB_Scene3_Entrance(struct IntroSequenceData * this)
|
||||
switch (this->state)
|
||||
{
|
||||
case 0:
|
||||
LoadPalette(sScene3_Bg_Pal, 0x10, sizeof(sScene3_Bg_Pal));
|
||||
LoadPalette(sGengar_Pal, 0x50, sizeof(sGengar_Pal));
|
||||
LoadPalette(sScene3_Bg_Pal, BG_PLTT_ID(1), sizeof(sScene3_Bg_Pal));
|
||||
LoadPalette(sGengar_Pal, BG_PLTT_ID(5), sizeof(sGengar_Pal));
|
||||
BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE);
|
||||
InitBgsFromTemplates(0, sBgTemplates_Scene3, ARRAY_COUNT(sBgTemplates_Scene3));
|
||||
DecompressAndCopyTileDataToVram(BG_SCENE3_BACKGROUND, sScene3_Bg_Gfx, 0, 0, 0);
|
||||
@@ -1831,7 +1831,7 @@ static void IntroCB_Scene3_Fight(struct IntroSequenceData * this)
|
||||
case 13:
|
||||
if (++this->timer > 8)
|
||||
{
|
||||
CpuFill16(RGB_WHITE, gPlttBufferUnfaded + 16, 64);
|
||||
CpuFill16(RGB_WHITE, &gPlttBufferUnfaded[BG_PLTT_ID(1)], 2 * PLTT_SIZE_4BPP);
|
||||
BeginNormalPaletteFade(PALETTES_ALL & ~1, -2, 0, 16, RGB_BLACK);
|
||||
this->state++;
|
||||
}
|
||||
@@ -1916,7 +1916,7 @@ static void IntroCB_ExitToTitleScreen(struct IntroSequenceData * this)
|
||||
switch (this->state)
|
||||
{
|
||||
case 0:
|
||||
FillPalette(RGB_BLACK, 0, 0x400);
|
||||
FillPalette(RGB_BLACK, 0, PLTT_SIZE);
|
||||
this->state++;
|
||||
break;
|
||||
case 1:
|
||||
|
||||
+36
-40
@@ -110,7 +110,7 @@ static void BeginMovingItemInPocket(u8 taskId, s16 itemIndex);
|
||||
static void Task_MoveItemInPocket_HandleInput(u8 taskId);
|
||||
static void ExecuteMoveItemInPocket(u8 taskId, u32 itemIndex);
|
||||
static void AbortMovingItemInPocket(u8 taskId, u32 itemIndex);
|
||||
static void CopyBagListBgTileRowToTilemapBuffer(u8 a0);
|
||||
static void DrawItemListRow(u8 row);
|
||||
static void Task_ItemContext_FieldOrBattle(u8 taskId);
|
||||
static void Task_FieldItemContextMenuHandleInput(u8 taskId);
|
||||
static void Task_ItemMenuAction_Use(u8 taskId);
|
||||
@@ -186,20 +186,10 @@ static const u8 *const sPocketNames[] = {
|
||||
gText_PokeBalls2
|
||||
};
|
||||
|
||||
static const u16 sBagListBgTiles[][18] = {
|
||||
INCBIN_U16("graphics/item_menu/bagmap_0.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_1.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_2.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_3.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_4.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_5.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_6.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_7.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_8.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_9.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_A.bin"),
|
||||
INCBIN_U16("graphics/item_menu/bagmap_B.bin")
|
||||
};
|
||||
#define LIST_TILES_WIDTH 18
|
||||
#define LIST_TILES_HEIGHT 12
|
||||
|
||||
static const u16 sItemListTilemap[LIST_TILES_WIDTH * LIST_TILES_HEIGHT] = INCBIN_U16("graphics/item_menu/list.bin");
|
||||
|
||||
static const struct MenuAction sItemMenuContextActions[] = {
|
||||
[ITEMMENUACTION_USE] = {gOtherText_Use, {.void_u8 = Task_ItemMenuAction_Use}},
|
||||
@@ -310,6 +300,10 @@ static const struct ScrollArrowsTemplate sPocketSwitchArrowPairTemplate = {
|
||||
|
||||
static const u8 sBlit_SelectButton[] = INCBIN_U8("graphics/interface/select_button.4bpp");
|
||||
|
||||
#define tSwitchDir data[11]
|
||||
#define tSwitchCounter data[12]
|
||||
#define tSwitchState data[13]
|
||||
|
||||
void GoToBagMenu(u8 location, u8 pocket, MainCallback bagCallback)
|
||||
{
|
||||
u8 i;
|
||||
@@ -328,8 +322,8 @@ void GoToBagMenu(u8 location, u8 pocket, MainCallback bagCallback)
|
||||
sBagMenuDisplay->itemOriginalLocation = 0xFF;
|
||||
sBagMenuDisplay->itemMenuIcon = 0;
|
||||
sBagMenuDisplay->inhibitItemDescriptionPrint = FALSE;
|
||||
sBagMenuDisplay->pocketScrollArrowsTask = 0xFF;
|
||||
sBagMenuDisplay->pocketSwitchArrowsTask = 0xFF;
|
||||
sBagMenuDisplay->pocketScrollArrowsTask = TASK_NONE;
|
||||
sBagMenuDisplay->pocketSwitchArrowsTask = TASK_NONE;
|
||||
if (location == ITEMMENULOCATION_ITEMPC)
|
||||
sBagMenuDisplay->pocketSwitchMode = 1;
|
||||
else if (location == ITEMMENULOCATION_OLD_MAN)
|
||||
@@ -577,9 +571,9 @@ static bool8 DoLoadBagGraphics(void)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
LoadCompressedPalette(gBagBgPalette, 0x00, 0x60);
|
||||
LoadCompressedPalette(gBagBgPalette, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP);
|
||||
if (!BagIsTutorial() && gSaveBlock2Ptr->playerGender != MALE)
|
||||
LoadCompressedPalette(gBagBgPalette_FemaleOverride, 0x00, 0x20);
|
||||
LoadCompressedPalette(gBagBgPalette_FemaleOverride, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
sBagMenuDisplay->data[0]++;
|
||||
break;
|
||||
case 3:
|
||||
@@ -923,20 +917,20 @@ static void ShowBagOrBeginWin0OpenTask(void)
|
||||
u16 paldata = RGB_BLACK;
|
||||
u8 taskId;
|
||||
|
||||
LoadPalette(&paldata, 0x00, 0x02);
|
||||
SetBackdropFromPalette(&paldata);
|
||||
SetGpuReg(REG_OFFSET_WININ, 0);
|
||||
SetGpuReg(REG_OFFSET_WINOUT, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR);
|
||||
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));
|
||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH));
|
||||
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 0));
|
||||
}
|
||||
else
|
||||
{
|
||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240));
|
||||
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 160));
|
||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH));
|
||||
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, DISPLAY_HEIGHT));
|
||||
taskId = CreateTask(Task_AnimateWin0v, 0);
|
||||
gTasks[taskId].data[0] = 192;
|
||||
gTasks[taskId].data[1] = -16;
|
||||
@@ -1153,9 +1147,9 @@ static u8 ProcessPocketSwitchInput(u8 taskId, u8 pocketId)
|
||||
static void SwitchPockets(u8 taskId, s16 direction, bool16 a2)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
data[13] = 0;
|
||||
data[12] = 0;
|
||||
data[11] = direction;
|
||||
tSwitchState = 0;
|
||||
tSwitchCounter = 0;
|
||||
tSwitchDir = direction;
|
||||
if (!a2)
|
||||
{
|
||||
ClearWindowTilemap(0);
|
||||
@@ -1177,35 +1171,36 @@ static void Task_AnimateSwitchPockets(u8 taskId)
|
||||
s16 *data = gTasks[taskId].data;
|
||||
if (!MenuHelpers_IsLinkActive() && !BagIsTutorial())
|
||||
{
|
||||
switch (ProcessPocketSwitchInput(taskId, gBagMenuState.pocket + data[11]))
|
||||
switch (ProcessPocketSwitchInput(taskId, gBagMenuState.pocket + tSwitchDir))
|
||||
{
|
||||
case 1:
|
||||
gBagMenuState.pocket += data[11];
|
||||
gBagMenuState.pocket += tSwitchDir;
|
||||
SwitchTaskToFollowupFunc(taskId);
|
||||
SwitchPockets(taskId, -1, TRUE);
|
||||
return;
|
||||
case 2:
|
||||
gBagMenuState.pocket += data[11];
|
||||
gBagMenuState.pocket += tSwitchDir;
|
||||
SwitchTaskToFollowupFunc(taskId);
|
||||
SwitchPockets(taskId, 1, TRUE);
|
||||
return;
|
||||
}
|
||||
}
|
||||
switch (data[13])
|
||||
switch (tSwitchState)
|
||||
{
|
||||
case 0:
|
||||
if (data[12] != 0x7FFF)
|
||||
// Animate the item list being revealed from the bottom row up
|
||||
if (tSwitchCounter != SHRT_MAX)
|
||||
{
|
||||
data[12]++;
|
||||
CopyBagListBgTileRowToTilemapBuffer(data[12]);
|
||||
if (data[12] == 12)
|
||||
data[12] = 0x7FFF;
|
||||
tSwitchCounter++;
|
||||
DrawItemListRow(tSwitchCounter);
|
||||
if (tSwitchCounter == LIST_TILES_HEIGHT)
|
||||
tSwitchCounter = SHRT_MAX;
|
||||
}
|
||||
if (data[12] == 0x7FFF)
|
||||
data[13]++;
|
||||
if (tSwitchCounter == SHRT_MAX)
|
||||
tSwitchState++;
|
||||
break;
|
||||
case 1:
|
||||
gBagMenuState.pocket += data[11];
|
||||
gBagMenuState.pocket += tSwitchDir;
|
||||
PrintBagPocketName();
|
||||
Bag_BuildListMenuTemplate(gBagMenuState.pocket);
|
||||
data[0] = ListMenuInit(&gMultiuseListMenuTemplate, gBagMenuState.cursorPos[gBagMenuState.pocket], gBagMenuState.itemsAbove[gBagMenuState.pocket]);
|
||||
@@ -1333,9 +1328,10 @@ static void UpdateQuantityToTossOrDeposit(s16 value, u8 ndigits)
|
||||
BagPrintTextOnWindow(r6, FONT_SMALL, gStringVar4, 4, 10, 1, 0, 0, 1);
|
||||
}
|
||||
|
||||
static void CopyBagListBgTileRowToTilemapBuffer(u8 frame)
|
||||
// row of 0 is the bottom row in the list, up to LIST_TILES_HEIGHT at the top
|
||||
static void DrawItemListRow(u8 row)
|
||||
{
|
||||
CopyToBgTilemapBufferRect(1, sBagListBgTiles[12 - frame], 11, 13 - frame, 18, 1);
|
||||
CopyToBgTilemapBufferRect(1, &sItemListTilemap[(LIST_TILES_HEIGHT - row) * LIST_TILES_WIDTH], 11, 1 + LIST_TILES_HEIGHT - row, LIST_TILES_WIDTH, 1);
|
||||
ScheduleBgCopyTilemapToVram(1);
|
||||
}
|
||||
|
||||
|
||||
@@ -327,14 +327,14 @@ u8 AddItemIconObject(u16 tilesTag, u16 paletteTag, u16 itemId)
|
||||
if (!TryAllocItemIconTilesBuffers())
|
||||
return MAX_SPRITES;
|
||||
|
||||
LZDecompressWram(GetItemIconGfxPtr(itemId, 0), sItemIconTilesBuffer);
|
||||
LZDecompressWram(GetItemIconGfxPtr(itemId, ITEMICON_TILES), sItemIconTilesBuffer);
|
||||
CopyItemIconPicTo4x4Buffer(sItemIconTilesBuffer, sItemIconTilesBufferPadded);
|
||||
spriteSheet.data = sItemIconTilesBufferPadded;
|
||||
spriteSheet.size = 0x200;
|
||||
spriteSheet.tag = tilesTag;
|
||||
LoadSpriteSheet(&spriteSheet);
|
||||
|
||||
spritePalette.data = GetItemIconGfxPtr(itemId, 1);
|
||||
spritePalette.data = GetItemIconGfxPtr(itemId, ITEMICON_PAL);
|
||||
spritePalette.tag = paletteTag;
|
||||
LoadCompressedSpritePalette(&spritePalette);
|
||||
|
||||
@@ -358,14 +358,14 @@ u8 AddItemIconObjectWithCustomObjectTemplate(const struct SpriteTemplate * origT
|
||||
if (!TryAllocItemIconTilesBuffers())
|
||||
return MAX_SPRITES;
|
||||
|
||||
LZDecompressWram(GetItemIconGfxPtr(itemId, 0), sItemIconTilesBuffer);
|
||||
LZDecompressWram(GetItemIconGfxPtr(itemId, ITEMICON_TILES), sItemIconTilesBuffer);
|
||||
CopyItemIconPicTo4x4Buffer(sItemIconTilesBuffer, sItemIconTilesBufferPadded);
|
||||
spriteSheet.data = sItemIconTilesBufferPadded;
|
||||
spriteSheet.size = 0x200;
|
||||
spriteSheet.tag = tilesTag;
|
||||
LoadSpriteSheet(&spriteSheet);
|
||||
|
||||
spritePalette.data = GetItemIconGfxPtr(itemId, 1);
|
||||
spritePalette.data = GetItemIconGfxPtr(itemId, ITEMICON_PAL);
|
||||
spritePalette.tag = paletteTag;
|
||||
LoadCompressedSpritePalette(&spritePalette);
|
||||
|
||||
@@ -410,7 +410,8 @@ void DestroyItemMenuIcon(u8 idx)
|
||||
}
|
||||
}
|
||||
|
||||
const void *GetItemIconGfxPtr(u16 itemId, u8 attrId)
|
||||
// attrId is either ITEMICON_TILES or ITEMICON_PAL
|
||||
const u32 *GetItemIconGfxPtr(u16 itemId, u8 attrId)
|
||||
{
|
||||
if (itemId > ITEMS_COUNT)
|
||||
itemId = ITEM_NONE;
|
||||
|
||||
+53
-53
@@ -130,51 +130,51 @@ static const u8 sTextColors[][3] = {
|
||||
static const struct WindowTemplate sWindowTemplates[] = {
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x07,
|
||||
.tilemapTop = 0x01,
|
||||
.width = 0x13,
|
||||
.height = 0x0c,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 7,
|
||||
.tilemapTop = 1,
|
||||
.width = 19,
|
||||
.height = 12,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x02bf
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x05,
|
||||
.tilemapTop = 0x0e,
|
||||
.width = 0x19,
|
||||
.height = 0x06,
|
||||
.paletteNum = 0x0d,
|
||||
.tilemapLeft = 5,
|
||||
.tilemapTop = 14,
|
||||
.width = 25,
|
||||
.height = 6,
|
||||
.paletteNum = 13,
|
||||
.baseBlock = 0x0229
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x01,
|
||||
.width = 0x05,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 1,
|
||||
.width = 5,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x0215
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x18,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x05,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 24,
|
||||
.tilemapTop = 15,
|
||||
.width = 5,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x0201
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x0d,
|
||||
.width = 0x07,
|
||||
.height = 0x06,
|
||||
.paletteNum = 0x0f,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 13,
|
||||
.width = 7,
|
||||
.height = 6,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x01d7
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x02,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x1a,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0b,
|
||||
.tilemapLeft = 2,
|
||||
.tilemapTop = 15,
|
||||
.width = 26,
|
||||
.height = 4,
|
||||
.paletteNum = 11,
|
||||
.baseBlock = 0x016f
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -182,27 +182,27 @@ static const struct WindowTemplate sWindowTemplates[] = {
|
||||
static const struct WindowTemplate sSubwindowTemplates[] = {
|
||||
{
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x06,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x0e,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0c,
|
||||
.tilemapLeft = 6,
|
||||
.tilemapTop = 15,
|
||||
.width = 14,
|
||||
.height = 4,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x0137
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x06,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x10,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0c,
|
||||
.tilemapLeft = 6,
|
||||
.tilemapTop = 15,
|
||||
.width = 16,
|
||||
.height = 4,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x0137
|
||||
}, {
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0x06,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x17,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0c,
|
||||
.tilemapLeft = 6,
|
||||
.tilemapTop = 15,
|
||||
.width = 23,
|
||||
.height = 4,
|
||||
.paletteNum = 12,
|
||||
.baseBlock = 0x009b
|
||||
}
|
||||
};
|
||||
@@ -443,7 +443,7 @@ static bool8 ItemPc_LoadGraphics(void)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
LoadCompressedPalette(gItemPcBgPals, 0x00, 0x60);
|
||||
LoadCompressedPalette(gItemPcBgPals, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP);
|
||||
sStateDataPtr->data[0]++;
|
||||
break;
|
||||
case 3:
|
||||
@@ -1069,11 +1069,11 @@ static void ItemPc_InitWindows(void)
|
||||
|
||||
InitWindows(sWindowTemplates);
|
||||
DeactivateAllTextPrinters();
|
||||
LoadUserWindowGfx(0, 0x3C0, 0xE0);
|
||||
LoadStdWindowGfx(0, 0x3A3, 0xC0);
|
||||
LoadMenuMessageWindowGfx(0, 0x3AC, 0xB0);
|
||||
LoadPalette(GetTextWindowPalette(2), 0xD0, 0x20);
|
||||
LoadPalette(gStandardMenuPalette, 0xF0, 0x20);
|
||||
LoadUserWindowGfx(0, 0x3C0, BG_PLTT_ID(14));
|
||||
LoadStdWindowGfx(0, 0x3A3, BG_PLTT_ID(12));
|
||||
LoadMenuMessageWindowGfx(0, 0x3AC, BG_PLTT_ID(11));
|
||||
LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
|
||||
LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
FillWindowPixelBuffer(i, 0x00);
|
||||
@@ -1111,7 +1111,7 @@ static void ItemPc_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8
|
||||
|
||||
static void ItemPc_SetBorderStyleOnWindow(u8 windowId)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x3C0, 0x0E);
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x3C0, 14);
|
||||
}
|
||||
|
||||
static u8 ItemPc_GetOrCreateSubwindow(u8 idx)
|
||||
@@ -1119,7 +1119,7 @@ static u8 ItemPc_GetOrCreateSubwindow(u8 idx)
|
||||
if (sSubmenuWindowIds[idx] == 0xFF)
|
||||
{
|
||||
sSubmenuWindowIds[idx] = AddWindow(&sSubwindowTemplates[idx]);
|
||||
DrawStdFrameWithCustomTileAndPalette(sSubmenuWindowIds[idx], TRUE, 0x3A3, 0x0C);
|
||||
DrawStdFrameWithCustomTileAndPalette(sSubmenuWindowIds[idx], TRUE, 0x3A3, 12);
|
||||
}
|
||||
|
||||
return sSubmenuWindowIds[idx];
|
||||
|
||||
+25
-25
@@ -258,7 +258,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 0,
|
||||
.width = 6,
|
||||
.height = 7,
|
||||
.paletteNum = 0x0d,
|
||||
.paletteNum = 13,
|
||||
.baseBlock = 0x014
|
||||
},
|
||||
{
|
||||
@@ -267,7 +267,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 0,
|
||||
.width = 5,
|
||||
.height = 5,
|
||||
.paletteNum = 0x0d,
|
||||
.paletteNum = 13,
|
||||
.baseBlock = 0x03e
|
||||
},
|
||||
{
|
||||
@@ -276,7 +276,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 0,
|
||||
.width = 5,
|
||||
.height = 2,
|
||||
.paletteNum = 0x0d,
|
||||
.paletteNum = 13,
|
||||
.baseBlock = 0x057
|
||||
},
|
||||
{
|
||||
@@ -285,7 +285,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 0,
|
||||
.width = 3,
|
||||
.height = 5,
|
||||
.paletteNum = 0x0f,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x061
|
||||
},
|
||||
{
|
||||
@@ -294,7 +294,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 2,
|
||||
.width = 3,
|
||||
.height = 3,
|
||||
.paletteNum = 0x0f,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x070
|
||||
},
|
||||
{
|
||||
@@ -303,7 +303,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 6,
|
||||
.width = 15,
|
||||
.height = 8,
|
||||
.paletteNum = 0x0f,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x079
|
||||
},
|
||||
{
|
||||
@@ -312,7 +312,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 1,
|
||||
.width = 10,
|
||||
.height = 12,
|
||||
.paletteNum = 0x0f,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x0f1
|
||||
},
|
||||
{
|
||||
@@ -321,7 +321,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
|
||||
.tilemapTop = 15,
|
||||
.width = 26,
|
||||
.height = 4,
|
||||
.paletteNum = 0x0f,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x169
|
||||
}, DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
@@ -332,7 +332,7 @@ static const struct WindowTemplate sMoveRelearnerYesNoMenuTemplate = {
|
||||
.tilemapTop = 8,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 0x0f,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x1d1
|
||||
};
|
||||
|
||||
@@ -396,11 +396,11 @@ static void MoveRelearnerLoadBgGfx(void)
|
||||
FillWindowPixelBuffer(i, PIXEL_FILL(0));
|
||||
}
|
||||
FillWindowPixelBuffer(7, PIXEL_FILL(1));
|
||||
FillBgTilemapBufferRect(0, 0x000, 0, 0, 30, 20, 0xF);
|
||||
FillBgTilemapBufferRect(0, 0x000, 0, 0, 30, 20, 15);
|
||||
SetBgTilemapBuffer(1, sMoveRelearner->bg1TilemapBuffer);
|
||||
LoadUserWindowGfx(0, 1, 0xE0);
|
||||
ListMenuLoadStdPalAt(0xD0, 1);
|
||||
LoadPalette(gMoveRelearner_Pal, 0x00, 0x20);
|
||||
LoadUserWindowGfx(0, 1, BG_PLTT_ID(14));
|
||||
ListMenuLoadStdPalAt(BG_PLTT_ID(13), 1);
|
||||
LoadPalette(gMoveRelearner_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
DecompressAndLoadBgGfxUsingHeap(1, gMoveRelearner_Gfx, 0, 0, 0);
|
||||
CopyToBgTilemapBuffer(1, gMoveRelearner_Tilemap, 0, 0);
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
@@ -442,7 +442,7 @@ static void CB2_MoveRelearner_Resume(void)
|
||||
SetVBlankCallback(VBlankCB_MoveRelearner);
|
||||
MoveRelearnerLoadBgGfx();
|
||||
SpawnListMenuScrollIndicatorSprites();
|
||||
FillPalette(RGB_BLACK, 0, 2);
|
||||
SetBackdropFromColor(RGB_BLACK);
|
||||
|
||||
RunTasks();
|
||||
AnimateSprites();
|
||||
@@ -506,7 +506,7 @@ static void MoveRelearnerStateMachine(void)
|
||||
MoveRelearnerMenuHandleInput();
|
||||
break;
|
||||
case MENU_STATE_PRINT_TEACH_MOVE_PROMPT:
|
||||
CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 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(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 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(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 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(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0);
|
||||
CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 0);
|
||||
sMoveRelearner->state = 26;
|
||||
break;
|
||||
case MENU_STATE_CONFIRM_STOP_TEACHING:
|
||||
@@ -680,7 +680,7 @@ static void DrawTextBorderOnWindows6and7(void)
|
||||
{
|
||||
int i;
|
||||
for (i = 6; i < 8; i++)
|
||||
DrawTextBorderOuter(i, 0x001, 0xE);
|
||||
DrawTextBorderOuter(i, 0x001, 14);
|
||||
}
|
||||
|
||||
static void PrintTeachWhichMoveToStrVar1(bool8 onInit)
|
||||
@@ -816,7 +816,7 @@ static void MoveLearnerInitListMenu(void)
|
||||
static void PrintMoveInfo(u16 move)
|
||||
{
|
||||
u8 buffer[50];
|
||||
BlitMoveInfoIcon(2, gBattleMoves[move].type + 1, 1, 4);
|
||||
BlitMenuInfoIcon(2, gBattleMoves[move].type + 1, 1, 4);
|
||||
|
||||
if (gBattleMoves[move].power < 2)
|
||||
{
|
||||
@@ -844,11 +844,11 @@ static void PrintMoveInfo(u16 move)
|
||||
|
||||
static void LoadMoveInfoUI(void)
|
||||
{
|
||||
BlitMoveInfoIcon(0, 19, 1, 4);
|
||||
BlitMoveInfoIcon(1, 20, 0, 4);
|
||||
BlitMoveInfoIcon(1, 21, 0, 19);
|
||||
BlitMoveInfoIcon(0, 22, 1, 19);
|
||||
BlitMoveInfoIcon(0, 23, 1, 34);
|
||||
BlitMenuInfoIcon(0, MENU_INFO_ICON_TYPE, 1, 4);
|
||||
BlitMenuInfoIcon(1, MENU_INFO_ICON_POWER, 0, 4);
|
||||
BlitMenuInfoIcon(1, MENU_INFO_ICON_ACCURACY, 0, 19);
|
||||
BlitMenuInfoIcon(0, MENU_INFO_ICON_PP, 1, 19);
|
||||
BlitMenuInfoIcon(0, MENU_INFO_ICON_EFFECT, 1, 34);
|
||||
PutWindowTilemap(0);
|
||||
PutWindowTilemap(1);
|
||||
PutWindowTilemap(4);
|
||||
|
||||
+5
-5
@@ -242,7 +242,7 @@ void Task_DestroySelf(u8 taskId)
|
||||
|
||||
void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock, u16 baseChar)
|
||||
{
|
||||
LoadPalette(sLinkTestFontPal, paletteNum * 16, 0x20);
|
||||
LoadPalette(sLinkTestFontPal, BG_PLTT_ID(paletteNum), PLTT_SIZE_4BPP);
|
||||
DmaCopy16(3, sLinkTestFontGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock) + (16 * baseChar), sizeof sLinkTestFontGfx);
|
||||
gLinkTestBGInfo.screenBaseBlock = screenBaseBlock;
|
||||
gLinkTestBGInfo.paletteNum = paletteNum;
|
||||
@@ -266,7 +266,7 @@ void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBloc
|
||||
// Unused
|
||||
static void LoadLinkTestBgGfx(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock)
|
||||
{
|
||||
LoadPalette(sLinkTestFontPal, paletteNum * 16, 0x20);
|
||||
LoadPalette(sLinkTestFontPal, BG_PLTT_ID(paletteNum), PLTT_SIZE_4BPP);
|
||||
DmaCopy16(3, sLinkTestFontGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock), sizeof sLinkTestFontGfx);
|
||||
gLinkTestBGInfo.screenBaseBlock = screenBaseBlock;
|
||||
gLinkTestBGInfo.paletteNum = paletteNum;
|
||||
@@ -1382,7 +1382,7 @@ void CB2_LinkError(void)
|
||||
ResetSpriteData();
|
||||
FreeAllSpritePalettes();
|
||||
ResetPaletteFadeControl();
|
||||
FillPalette(RGB_BLACK, 0, 2);
|
||||
SetBackdropFromColor(RGB_BLACK);
|
||||
ResetTasks();
|
||||
ScanlineEffect_Stop();
|
||||
if (gWirelessCommType)
|
||||
@@ -1407,7 +1407,7 @@ void CB2_LinkError(void)
|
||||
SetGpuReg(REG_OFFSET_BG1HOFS, 0);
|
||||
SetGpuReg(REG_OFFSET_BG1VOFS, 0);
|
||||
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJWIN_ON);
|
||||
LoadPalette(gStandardMenuPalette, 0xf0, 0x20);
|
||||
LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
gSoftResetDisabled = FALSE;
|
||||
CreateTask(Task_DestroySelf, 0);
|
||||
StopMapMusic();
|
||||
@@ -1425,7 +1425,7 @@ static void ErrorMsg_MoveCloserToPartner(void)
|
||||
DecompressAndLoadBgGfxUsingHeap(1, sWirelessLinkDisplayGfx, FALSE, 0, 0);
|
||||
CopyToBgTilemapBuffer(1, sWirelessLinkDisplayTilemap, 0, 0);
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
LoadPalette(sWirelessLinkDisplayPal, 0, 0x20);
|
||||
LoadPalette(sWirelessLinkDisplayPal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
FillWindowPixelBuffer(2, PIXEL_FILL(0));
|
||||
AddTextPrinterParameterized3(0, FONT_NORMAL_COPY_2, 2, 5, sLinkErrorTextColor, 0, gText_CommErrorEllipsis);
|
||||
|
||||
+35
-35
@@ -49,39 +49,39 @@ static void ListMenuDrawCursor(struct ListMenu *list);
|
||||
static void ListMenuCallSelectionChangedCallback(struct ListMenu *list, u8 onInit);
|
||||
static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind);
|
||||
|
||||
const struct MoveMenuInfoIcon gMoveMenuInfoIcons[] =
|
||||
{
|
||||
{ 12, 12, 0x00 }, // Unused
|
||||
{ 32, 12, 0x20 }, // Normal icon
|
||||
{ 32, 12, 0x64 }, // Fight icon
|
||||
{ 32, 12, 0x60 }, // Flying icon
|
||||
{ 32, 12, 0x80 }, // Poison icon
|
||||
{ 32, 12, 0x48 }, // Ground icon
|
||||
{ 32, 12, 0x44 }, // Rock icon
|
||||
{ 32, 12, 0x6C }, // Bug icon
|
||||
{ 32, 12, 0x68 }, // Ghost icon
|
||||
{ 32, 12, 0x88 }, // Steel icon
|
||||
{ 32, 12, 0xA4 }, // ??? (Mystery) icon
|
||||
{ 32, 12, 0x24 }, // Fire icon
|
||||
{ 32, 12, 0x28 }, // Water icon
|
||||
{ 32, 12, 0x2C }, // Grass icon
|
||||
{ 32, 12, 0x40 }, // Electric icon
|
||||
{ 32, 12, 0x84 }, // Psychic icon
|
||||
{ 32, 12, 0x4C }, // Ice icon
|
||||
{ 32, 12, 0xA0 }, // Dragon icon
|
||||
{ 32, 12, 0x8C }, // Dark icon
|
||||
{ 40, 12, 0xA8 }, // -Type- icon
|
||||
{ 40, 12, 0xC0 }, // -Power- icon
|
||||
{ 40, 12, 0xC8 }, // -Accuracy- icon
|
||||
{ 40, 12, 0xE0 }, // -PP- icon
|
||||
{ 40, 12, 0xE8 }, // -Effect- icon
|
||||
static const struct MoveMenuInfoIcon sMenuInfoIcons[] =
|
||||
{ // { width, height, offset }
|
||||
[MENU_INFO_ICON_CAUGHT] = { 12, 12, 0x00 },
|
||||
[TYPE_NORMAL + 1] = { 32, 12, 0x20 },
|
||||
[TYPE_FIGHTING + 1] = { 32, 12, 0x64 },
|
||||
[TYPE_FLYING + 1] = { 32, 12, 0x60 },
|
||||
[TYPE_POISON + 1] = { 32, 12, 0x80 },
|
||||
[TYPE_GROUND + 1] = { 32, 12, 0x48 },
|
||||
[TYPE_ROCK + 1] = { 32, 12, 0x44 },
|
||||
[TYPE_BUG + 1] = { 32, 12, 0x6C },
|
||||
[TYPE_GHOST + 1] = { 32, 12, 0x68 },
|
||||
[TYPE_STEEL + 1] = { 32, 12, 0x88 },
|
||||
[TYPE_MYSTERY + 1] = { 32, 12, 0xA4 },
|
||||
[TYPE_FIRE + 1] = { 32, 12, 0x24 },
|
||||
[TYPE_WATER + 1] = { 32, 12, 0x28 },
|
||||
[TYPE_GRASS + 1] = { 32, 12, 0x2C },
|
||||
[TYPE_ELECTRIC + 1] = { 32, 12, 0x40 },
|
||||
[TYPE_PSYCHIC + 1] = { 32, 12, 0x84 },
|
||||
[TYPE_ICE + 1] = { 32, 12, 0x4C },
|
||||
[TYPE_DRAGON + 1] = { 32, 12, 0xA0 },
|
||||
[TYPE_DARK + 1] = { 32, 12, 0x8C },
|
||||
[MENU_INFO_ICON_TYPE] = { 40, 12, 0xA8 },
|
||||
[MENU_INFO_ICON_POWER] = { 40, 12, 0xC0 },
|
||||
[MENU_INFO_ICON_ACCURACY] = { 40, 12, 0xC8 },
|
||||
[MENU_INFO_ICON_PP] = { 40, 12, 0xE0 },
|
||||
[MENU_INFO_ICON_EFFECT] = { 40, 12, 0xE8 },
|
||||
};
|
||||
|
||||
static void ListMenuDummyTask(u8 taskId)
|
||||
{
|
||||
}
|
||||
|
||||
u32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 arg2, u16 tileNum, u16 palNum)
|
||||
u32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 arg2, u16 tileNum, u16 palOffset)
|
||||
{
|
||||
switch (sMysteryGiftLinkMenu.state)
|
||||
{
|
||||
@@ -91,9 +91,9 @@ u32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const str
|
||||
switch (arg2)
|
||||
{
|
||||
case 2:
|
||||
LoadUserWindowGfx(sMysteryGiftLinkMenu.windowId, tileNum, palNum);
|
||||
LoadUserWindowGfx(sMysteryGiftLinkMenu.windowId, tileNum, palOffset);
|
||||
case 1:
|
||||
DrawTextBorderOuter(sMysteryGiftLinkMenu.windowId, tileNum, palNum / 16);
|
||||
DrawTextBorderOuter(sMysteryGiftLinkMenu.windowId, tileNum, palOffset / 16);
|
||||
break;
|
||||
}
|
||||
gMultiuseListMenuTemplate = *listMenuTemplate;
|
||||
@@ -727,7 +727,7 @@ void ListMenuSetTemplateField(u8 taskId, u8 field, s32 value)
|
||||
|
||||
void ListMenu_LoadMonIconPalette(u8 palOffset, u16 speciesId)
|
||||
{
|
||||
LoadPalette(GetValidMonIconPalettePtr(speciesId), palOffset, 0x20);
|
||||
LoadPalette(GetValidMonIconPalettePtr(speciesId), palOffset, PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
void ListMenu_DrawMonIconGraphics(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y)
|
||||
@@ -743,16 +743,16 @@ void ListMenuLoadStdPalAt(u8 palOffset, u8 palId)
|
||||
{
|
||||
case 0:
|
||||
default:
|
||||
palette = gFireRedMenuElements1_Pal;
|
||||
palette = gMenuInfoElements1_Pal;
|
||||
break;
|
||||
case 1:
|
||||
palette = gFireRedMenuElements2_Pal;
|
||||
palette = gMenuInfoElements2_Pal;
|
||||
break;
|
||||
}
|
||||
LoadPalette(palette, palOffset, 0x20);
|
||||
LoadPalette(palette, palOffset, PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
void BlitMoveInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y)
|
||||
void BlitMenuInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y)
|
||||
{
|
||||
BlitBitmapRectToWindow(windowId, gFireRedMenuElements_Gfx + gMoveMenuInfoIcons[iconId].offset * 32, 0, 0, 128, 128, x, y, gMoveMenuInfoIcons[iconId].width, gMoveMenuInfoIcons[iconId].height);
|
||||
BlitBitmapRectToWindow(windowId, &gMenuInfoElements_Gfx[sMenuInfoIcons[iconId].offset * TILE_SIZE_4BPP], 0, 0, 128, 128, x, y, sMenuInfoIcons[iconId].width, sMenuInfoIcons[iconId].height);
|
||||
}
|
||||
|
||||
+11
-10
@@ -560,16 +560,17 @@ static bool8 DoInitMailView(void)
|
||||
CopyBgTilemapBufferToVram(2);
|
||||
break;
|
||||
case 12:
|
||||
LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20);
|
||||
gPlttBufferUnfaded[15 * 16 + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0];
|
||||
gPlttBufferFaded[15 * 16 + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0];
|
||||
gPlttBufferUnfaded[15 * 16 + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1];
|
||||
gPlttBufferFaded[15 * 16 + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1];
|
||||
LoadPalette(sGfxHeaders[sMailViewResources->mailType].pal, 0x00, 0x20);
|
||||
gPlttBufferUnfaded[0 * 16 + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0];
|
||||
gPlttBufferFaded[0 * 16 + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0];
|
||||
gPlttBufferUnfaded[0 * 16 + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1];
|
||||
gPlttBufferFaded[0 * 16 + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1];
|
||||
LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(15) + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0];
|
||||
gPlttBufferFaded[BG_PLTT_ID(15) + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0];
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(15) + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1];
|
||||
gPlttBufferFaded[BG_PLTT_ID(15) + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1];
|
||||
|
||||
LoadPalette(sGfxHeaders[sMailViewResources->mailType].pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(0) + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0];
|
||||
gPlttBufferFaded[BG_PLTT_ID(0) + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0];
|
||||
gPlttBufferUnfaded[BG_PLTT_ID(0) + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1];
|
||||
gPlttBufferFaded[BG_PLTT_ID(0) + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1];
|
||||
break;
|
||||
case 13:
|
||||
if (sMailViewResources->messageExists)
|
||||
|
||||
+5
-5
@@ -196,8 +196,8 @@ static bool32 MainMenuGpuInit(u8 a0)
|
||||
ChangeBgY(2, 0, 0);
|
||||
InitWindows(sWindowTemplate);
|
||||
DeactivateAllTextPrinters();
|
||||
LoadPalette(sBg_Pal, 0x00, 0x20);
|
||||
LoadPalette(sTextbox_Pal, 0xF0, 0x20);
|
||||
LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal));
|
||||
LoadPalette(sTextbox_Pal, BG_PLTT_ID(15), sizeof(sTextbox_Pal));
|
||||
SetGpuReg(REG_OFFSET_WIN0H, 0);
|
||||
SetGpuReg(REG_OFFSET_WIN0V, 0);
|
||||
SetGpuReg(REG_OFFSET_WININ, 0);
|
||||
@@ -343,7 +343,7 @@ static void Task_PrintMainMenuText(u8 taskId)
|
||||
pal = RGB(4, 16, 31);
|
||||
else
|
||||
pal = RGB(31, 3, 21);
|
||||
LoadPalette(&pal, 0xF1, 2);
|
||||
LoadPalette(&pal, BG_PLTT_ID(15) + 1, PLTT_SIZEOF(1));
|
||||
switch (gTasks[taskId].tMenuType)
|
||||
{
|
||||
case MAIN_MENU_NEWGAME:
|
||||
@@ -678,13 +678,13 @@ static void PrintBadgeCount(void)
|
||||
static void LoadUserFrameToBg(u8 bgId)
|
||||
{
|
||||
LoadBgTiles(bgId, GetUserWindowGraphics(gSaveBlock2Ptr->optionsWindowFrameType)->tiles, 0x120, 0x1B1);
|
||||
LoadPalette(GetUserWindowGraphics(gSaveBlock2Ptr->optionsWindowFrameType)->palette, 0x20, 0x20);
|
||||
LoadPalette(GetUserWindowGraphics(gSaveBlock2Ptr->optionsWindowFrameType)->palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
MainMenu_EraseWindow(&sWindowTemplate[MAIN_MENU_WINDOW_ERROR]);
|
||||
}
|
||||
|
||||
static void SetStdFrame0OnBg(u8 bgId)
|
||||
{
|
||||
LoadStdWindowGfx(MAIN_MENU_WINDOW_NEWGAME_ONLY, 0x1B1, 0x20);
|
||||
LoadStdWindowGfx(MAIN_MENU_WINDOW_NEWGAME_ONLY, 0x1B1, BG_PLTT_ID(2));
|
||||
MainMenu_EraseWindow(&sWindowTemplate[MAIN_MENU_WINDOW_ERROR]);
|
||||
}
|
||||
|
||||
|
||||
+18
-18
@@ -7,6 +7,8 @@
|
||||
#include "region_map.h"
|
||||
#include "strings.h"
|
||||
|
||||
#define FLOOR_ROOFTOP 127
|
||||
|
||||
static void Task_MapNamePopup(u8 taskId);
|
||||
static u16 MapNamePopupCreateWindow(bool32 palIntoFadedBuffer);
|
||||
static void MapNamePopupPrintMapNameOnWindow(u16 windowId);
|
||||
@@ -28,7 +30,7 @@ void ShowMapNamePopup(bool32 palIntoFadedBuffer)
|
||||
if (FlagGet(FLAG_DONT_SHOW_MAP_NAME_POPUP) != TRUE && !QL_IS_PLAYBACK_STATE)
|
||||
{
|
||||
taskId = FindTaskIdByFunc(Task_MapNamePopup);
|
||||
if (taskId == 0xFF)
|
||||
if (taskId == TASK_NONE)
|
||||
{
|
||||
taskId = CreateTask(Task_MapNamePopup, 90);
|
||||
ChangeBgX(0, 0x0000, 0);
|
||||
@@ -129,7 +131,7 @@ void DismissMapNamePopup(void)
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
taskId = FindTaskIdByFunc(Task_MapNamePopup);
|
||||
if (taskId != 0xFF)
|
||||
if (taskId != TASK_NONE)
|
||||
{
|
||||
data = gTasks[taskId].data;
|
||||
if (tState < 6)
|
||||
@@ -139,9 +141,11 @@ void DismissMapNamePopup(void)
|
||||
|
||||
bool32 IsMapNamePopupTaskActive(void)
|
||||
{
|
||||
return FindTaskIdByFunc(Task_MapNamePopup) != 0xFF ? TRUE : FALSE;
|
||||
return FindTaskIdByFunc(Task_MapNamePopup) != TASK_NONE ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
#define WIN_PAL_NUM 13
|
||||
|
||||
static u16 MapNamePopupCreateWindow(bool32 palintoFadedBuffer)
|
||||
{
|
||||
struct WindowTemplate windowTemplate = {
|
||||
@@ -150,36 +154,32 @@ static u16 MapNamePopupCreateWindow(bool32 palintoFadedBuffer)
|
||||
.tilemapTop = 29,
|
||||
.width = 14,
|
||||
.height = 2,
|
||||
.paletteNum = 0xD,
|
||||
.paletteNum = WIN_PAL_NUM,
|
||||
.baseBlock = 0x001
|
||||
};
|
||||
u16 windowId;
|
||||
u16 r6 = 0x01D;
|
||||
u16 tileNum = 0x01D;
|
||||
if (gMapHeader.floorNum != 0)
|
||||
{
|
||||
if (gMapHeader.floorNum != 0x7F)
|
||||
if (gMapHeader.floorNum != FLOOR_ROOFTOP)
|
||||
{
|
||||
windowTemplate.width += 5;
|
||||
r6 = 0x027;
|
||||
tileNum = 0x027;
|
||||
}
|
||||
else
|
||||
{
|
||||
// ROOFTOP
|
||||
windowTemplate.width += 8;
|
||||
r6 = 0x02D;
|
||||
tileNum = 0x02D;
|
||||
}
|
||||
}
|
||||
windowId = AddWindow(&windowTemplate);
|
||||
if (palintoFadedBuffer)
|
||||
{
|
||||
LoadPalette(GetTextWindowPalette(3), 0xd0, 0x20);
|
||||
}
|
||||
LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(WIN_PAL_NUM), PLTT_SIZE_4BPP);
|
||||
else
|
||||
{
|
||||
CpuCopy16(GetTextWindowPalette(3), &gPlttBufferUnfaded[0xd0], 0x20);
|
||||
}
|
||||
LoadStdWindowTiles(windowId, r6);
|
||||
DrawTextBorderOuter(windowId, r6, 0xD);
|
||||
CpuCopy16(GetTextWindowPalette(3), &gPlttBufferUnfaded[BG_PLTT_ID(WIN_PAL_NUM)], PLTT_SIZE_4BPP);
|
||||
LoadStdWindowTiles(windowId, tileNum);
|
||||
DrawTextBorderOuter(windowId, tileNum, WIN_PAL_NUM);
|
||||
PutWindowTilemap(windowId);
|
||||
MapNamePopupPrintMapNameOnWindow(windowId);
|
||||
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||
@@ -195,7 +195,7 @@ static void MapNamePopupPrintMapNameOnWindow(u16 windowId)
|
||||
if (gMapHeader.floorNum != 0)
|
||||
{
|
||||
ptr = MapNamePopupAppendFloorNum(ptr, gMapHeader.floorNum);
|
||||
maxWidth = gMapHeader.floorNum != 0x7F ? 152 : 176;
|
||||
maxWidth = gMapHeader.floorNum != FLOOR_ROOFTOP ? 152 : 176;
|
||||
}
|
||||
xpos = (maxWidth - GetStringWidth(FONT_NORMAL, mapName, -1)) / 2;
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||
@@ -207,7 +207,7 @@ static u8 *MapNamePopupAppendFloorNum(u8 *dest, s8 floorNum)
|
||||
if (floorNum == 0)
|
||||
return dest;
|
||||
*dest++ = CHAR_SPACE;
|
||||
if (floorNum == 0x7F)
|
||||
if (floorNum == FLOOR_ROOFTOP)
|
||||
return StringCopy(dest, gText_Rooftop2);
|
||||
if (floorNum < 0)
|
||||
{
|
||||
|
||||
@@ -386,7 +386,7 @@ void MapPreview_LoadGfx(u8 mapsec)
|
||||
if (idx != MPS_COUNT)
|
||||
{
|
||||
ResetTempTileDataBuffers();
|
||||
LoadPalette(sMapPreviewScreenData[idx].palptr, 0xD0, 0x60);
|
||||
LoadPalette(sMapPreviewScreenData[idx].palptr, BG_PLTT_ID(13), 3 * PLTT_SIZE_4BPP);
|
||||
DecompressAndCopyTileDataToVram(0, sMapPreviewScreenData[idx].tilesptr, 0, 0, 0);
|
||||
if (GetBgTilemapBuffer(0) == NULL)
|
||||
{
|
||||
|
||||
+3
-3
@@ -177,10 +177,10 @@ u8 CreateTopBarWindowLoadPalette(u8 bg, u8 width, u8 yPos, u8 palette, u16 baseT
|
||||
window.baseBlock = baseTile;
|
||||
sTopBarWindowId = AddWindow(&window);
|
||||
if (palette > 15)
|
||||
palette = 15 * 16;
|
||||
palette = BG_PLTT_ID(15);
|
||||
else
|
||||
palette *= 16;
|
||||
LoadPalette(GetTextWindowPalette(2), palette, 0x20);
|
||||
palette = BG_PLTT_ID(palette);
|
||||
LoadPalette(GetTextWindowPalette(2), palette, PLTT_SIZE_4BPP);
|
||||
return sTopBarWindowId;
|
||||
}
|
||||
|
||||
|
||||
@@ -333,7 +333,7 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16
|
||||
LoadCompressedSpriteSheet(&spriteSheet);
|
||||
if (arrowInfo->palTag == TAG_NONE)
|
||||
{
|
||||
LoadPalette(sRedArrowPal, (16 * arrowInfo->palNum) + 0x100, 0x20);
|
||||
LoadPalette(sRedArrowPal, OBJ_PLTT_ID(arrowInfo->palNum), sizeof(sRedArrowPal));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -539,7 +539,7 @@ u8 ListMenuAddRedOutlineCursorObject(const struct CursorStruct *cursor)
|
||||
LoadCompressedSpriteSheet(&spriteSheet);
|
||||
if (cursor->palTag == TAG_NONE)
|
||||
{
|
||||
LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20);
|
||||
LoadPalette(sRedArrowPal, OBJ_PLTT_ID(cursor->palNum), sizeof(sRedArrowPal));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -612,7 +612,7 @@ static u8 ListMenuAddRedArrowCursorObject(const struct CursorStruct *cursor)
|
||||
LoadCompressedSpriteSheet(&spriteSheet);
|
||||
if (cursor->palTag == TAG_NONE)
|
||||
{
|
||||
LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20);
|
||||
LoadPalette(sRedArrowPal, OBJ_PLTT_ID(cursor->palNum), sizeof(sRedArrowPal));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
+3
-3
@@ -104,9 +104,9 @@ void PrintMoneyAmount(u8 windowId, u8 x, u8 y, int amount, u8 speed)
|
||||
AddTextPrinterParameterized(windowId, FONT_SMALL, gStringVar4, x, y, speed, NULL);
|
||||
}
|
||||
|
||||
void PrintMoneyAmountInMoneyBoxWithBorder(u8 windowId, u16 tileStart, u8 pallete, int amount)
|
||||
void PrintMoneyAmountInMoneyBoxWithBorder(u8 windowId, u16 tileStart, u8 paletteNum, int amount)
|
||||
{
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, tileStart, pallete);
|
||||
DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, tileStart, paletteNum);
|
||||
AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_TrainerCardMoney, 0, 0, 0xFF, 0);
|
||||
PrintMoneyAmountInMoneyBox(windowId, amount, 0);
|
||||
}
|
||||
@@ -124,7 +124,7 @@ void DrawMoneyBox(int amount, u8 x, u8 y)
|
||||
sMoneyBoxWindowId = AddWindow(&template);
|
||||
FillWindowPixelBuffer(sMoneyBoxWindowId, 0);
|
||||
PutWindowTilemap(sMoneyBoxWindowId);
|
||||
LoadStdWindowGfx(sMoneyBoxWindowId, 0x21D, 0xD0);
|
||||
LoadStdWindowGfx(sMoneyBoxWindowId, 0x21D, BG_PLTT_ID(13));
|
||||
PrintMoneyAmountInMoneyBoxWithBorder(sMoneyBoxWindowId, 0x21D, 13, amount);
|
||||
}
|
||||
|
||||
|
||||
+87
-87
@@ -87,110 +87,110 @@ static const struct BgTemplate sBGTemplates[] = {
|
||||
|
||||
static const struct WindowTemplate sMainWindows[] = {
|
||||
{
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x00,
|
||||
.tilemapTop = 0x00,
|
||||
.width = 0x1e,
|
||||
.height = 0x02,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0,
|
||||
.tilemapTop = 0,
|
||||
.width = 30,
|
||||
.height = 2,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x0013
|
||||
}, {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x1c,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 15,
|
||||
.width = 28,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x004f
|
||||
}, {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x00,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x1e,
|
||||
.height = 0x05,
|
||||
.paletteNum = 0x0d,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 0,
|
||||
.tilemapTop = 15,
|
||||
.width = 30,
|
||||
.height = 5,
|
||||
.paletteNum = 13,
|
||||
.baseBlock = 0x004f
|
||||
},
|
||||
DUMMY_WIN_TEMPLATE
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_YesNoMsg_Wide = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x1c,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 15,
|
||||
.width = 28,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x00e5
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_YesNoMsg = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x14,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 15,
|
||||
.width = 20,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x00e5
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_GiftSelect = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x01,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x13,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0f,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 1,
|
||||
.tilemapTop = 15,
|
||||
.width = 19,
|
||||
.height = 4,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x00e5
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_ThreeOptions = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x08,
|
||||
.tilemapTop = 0x05,
|
||||
.width = 0x0e,
|
||||
.height = 0x05,
|
||||
.paletteNum = 0x0e,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 8,
|
||||
.tilemapTop = 5,
|
||||
.width = 14,
|
||||
.height = 5,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x0155
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_YesNoBox = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x17,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x06,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0e,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 23,
|
||||
.tilemapTop = 15,
|
||||
.width = 6,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x0155
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_GiftSelect_3Options = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x0c,
|
||||
.width = 0x07,
|
||||
.height = 0x07,
|
||||
.paletteNum = 0x0e,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 12,
|
||||
.width = 7,
|
||||
.height = 7,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x0155
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_GiftSelect_2Options = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x0e,
|
||||
.width = 0x07,
|
||||
.height = 0x05,
|
||||
.paletteNum = 0x0e,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 14,
|
||||
.width = 7,
|
||||
.height = 5,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x0155
|
||||
};
|
||||
|
||||
static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = {
|
||||
.bg = 0x00,
|
||||
.tilemapLeft = 0x16,
|
||||
.tilemapTop = 0x0f,
|
||||
.width = 0x07,
|
||||
.height = 0x04,
|
||||
.paletteNum = 0x0e,
|
||||
.bg = 0,
|
||||
.tilemapLeft = 22,
|
||||
.tilemapTop = 15,
|
||||
.width = 7,
|
||||
.height = 4,
|
||||
.paletteNum = 14,
|
||||
.baseBlock = 0x0155
|
||||
};
|
||||
|
||||
@@ -392,8 +392,8 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader)
|
||||
SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE));
|
||||
SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE));
|
||||
|
||||
LoadUserWindowGfx2(0, 10, 0xE0);
|
||||
LoadStdWindowGfxOnBg(0, 1, 0xF0);
|
||||
LoadUserWindowGfx2(0, 10, BG_PLTT_ID(14));
|
||||
LoadStdWindowGfxOnBg(0, 1, BG_PLTT_ID(15));
|
||||
DecompressAndLoadBgGfxUsingHeap(3, sTextboxBorder_Gfx, 0x100, 0, 0);
|
||||
InitWindows(sMainWindows);
|
||||
DeactivateAllTextPrinters();
|
||||
@@ -404,11 +404,11 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader)
|
||||
gMain.state++;
|
||||
break;
|
||||
case 1:
|
||||
LoadPalette(sTextboxBorder_Pal, 0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(2), 0xd0, 0x20);
|
||||
FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11);
|
||||
LoadPalette(sTextboxBorder_Pal, BG_PLTT_ID(0), sizeof(sTextboxBorder_Pal));
|
||||
LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
|
||||
FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 17);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
|
||||
FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 17);
|
||||
MG_DrawCheckerboardPattern();
|
||||
PrintMysteryGiftOrEReaderTopMenu(isEReader, FALSE);
|
||||
gMain.state++;
|
||||
@@ -486,23 +486,23 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel)
|
||||
|
||||
void MG_DrawTextBorder(u8 windowId)
|
||||
{
|
||||
DrawTextBorderOuter(windowId, 0x01, 0xF);
|
||||
DrawTextBorderOuter(windowId, 0x01, 15);
|
||||
}
|
||||
|
||||
void MG_DrawCheckerboardPattern(void)
|
||||
{
|
||||
s32 i = 0, j;
|
||||
|
||||
FillBgTilemapBufferRect(3, 0x003, 0, 0, 32, 2, 0x11);
|
||||
FillBgTilemapBufferRect(3, 0x003, 0, 0, 32, 2, 17);
|
||||
|
||||
for (i = 0; i < 18; i++)
|
||||
{
|
||||
for (j = 0; j < 32; j++)
|
||||
{
|
||||
if ((i & 1) != (j & 1))
|
||||
FillBgTilemapBufferRect(3, 1, j, i + 2, 1, 1, 0x11);
|
||||
FillBgTilemapBufferRect(3, 1, j, i + 2, 1, 1, 17);
|
||||
else
|
||||
FillBgTilemapBufferRect(3, 2, j, i + 2, 1, 1, 0x11);
|
||||
FillBgTilemapBufferRect(3, 2, j, i + 2, 1, 1, 17);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -512,10 +512,10 @@ void ClearScreenInBg0(bool32 ignoreTopTwoRows)
|
||||
switch (ignoreTopTwoRows)
|
||||
{
|
||||
case 0:
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 17);
|
||||
break;
|
||||
case 1:
|
||||
FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 0x11);
|
||||
FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 17);
|
||||
break;
|
||||
}
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
@@ -526,7 +526,7 @@ void AddTextPrinterToWindow1(const u8 *str)
|
||||
StringExpandPlaceholders(gStringVar4, str);
|
||||
FillWindowPixelBuffer(1, 0x11);
|
||||
AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4);
|
||||
DrawTextBorderOuter(1, 0x001, 0xF);
|
||||
DrawTextBorderOuter(1, 0x001, 15);
|
||||
PutWindowTilemap(1);
|
||||
CopyWindowToVram(1, COPYWIN_FULL);
|
||||
}
|
||||
@@ -637,7 +637,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi
|
||||
finalWidth = (((width + 9) / 8) + 2) & ~1;
|
||||
windowTemplate.width = finalWidth;
|
||||
windowTemplate.tilemapLeft = (30 - finalWidth) / 2;
|
||||
response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, 0xE0);
|
||||
response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, BG_PLTT_ID(14));
|
||||
if (response != LIST_NOTHING_CHOSEN)
|
||||
{
|
||||
ClearWindowTilemap(2);
|
||||
@@ -662,7 +662,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c
|
||||
*windowId = AddWindow(&sWindowTemplate_YesNoMsg);
|
||||
FillWindowPixelBuffer(*windowId, 0x11);
|
||||
AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4);
|
||||
DrawTextBorderOuter(*windowId, 0x001, 0x0F);
|
||||
DrawTextBorderOuter(*windowId, 0x001, 15);
|
||||
CopyWindowToVram(*windowId, COPYWIN_GFX);
|
||||
PutWindowTilemap(*windowId);
|
||||
(*textState)++;
|
||||
@@ -719,7 +719,7 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann
|
||||
*windowId = AddWindow(&sWindowTemplate_GiftSelect);
|
||||
FillWindowPixelBuffer(*windowId, 0x11);
|
||||
AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4);
|
||||
DrawTextBorderOuter(*windowId, 0x001, 0x0F);
|
||||
DrawTextBorderOuter(*windowId, 0x001, 15);
|
||||
CopyWindowToVram(*windowId, COPYWIN_GFX);
|
||||
PutWindowTilemap(*windowId);
|
||||
(*textState)++;
|
||||
@@ -729,16 +729,16 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann
|
||||
if (cannotSend)
|
||||
{
|
||||
if (!cannotToss)
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveToss, 1, 0x00A, 0xE0);
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveToss, 1, 0x00A, BG_PLTT_ID(14));
|
||||
else
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_1Option, &sListMenu_Receive, 1, 0x00A, 0xE0);
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_1Option, &sListMenu_Receive, 1, 0x00A, BG_PLTT_ID(14));
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!cannotToss)
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_3Options, &sListMenu_ReceiveSendToss, 1, 0x00A, 0xE0);
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_3Options, &sListMenu_ReceiveSendToss, 1, 0x00A, BG_PLTT_ID(14));
|
||||
else
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveSend, 1, 0x00A, 0xE0);
|
||||
input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveSend, 1, 0x00A, BG_PLTT_ID(14));
|
||||
}
|
||||
if (input != LIST_NOTHING_CHOSEN)
|
||||
{
|
||||
|
||||
@@ -215,7 +215,7 @@ s32 WonderCard_Enter(void)
|
||||
if (FreeTempTileDataBuffersIfPossible())
|
||||
return 0;
|
||||
gPaletteFade.bufferTransferDisabled = TRUE;
|
||||
LoadPalette(sWonderCardData->gfx->pal, 0x10, 0x20);
|
||||
LoadPalette(sWonderCardData->gfx->pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
LZ77UnCompWram(sWonderCardData->gfx->map, sWonderCardData->bgTilemapBuffer);
|
||||
CopyRectToBgTilemapBufferRect(2, sWonderCardData->bgTilemapBuffer, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0);
|
||||
CopyBgTilemapBufferToVram(2);
|
||||
|
||||
@@ -171,7 +171,7 @@ s32 WonderNews_Enter(void)
|
||||
if (FreeTempTileDataBuffersIfPossible())
|
||||
return 0;
|
||||
gPaletteFade.bufferTransferDisabled = TRUE;
|
||||
LoadPalette(sWonderNewsData->gfx->pal, 0x10, 0x20);
|
||||
LoadPalette(sWonderNewsData->gfx->pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
LZ77UnCompWram(sWonderNewsData->gfx->map, sWonderNewsData->bgTilemapBuffer);
|
||||
CopyRectToBgTilemapBufferRect(1, sWonderNewsData->bgTilemapBuffer, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0);
|
||||
CopyRectToBgTilemapBufferRect(3, sWonderNewsData->bgTilemapBuffer, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0);
|
||||
|
||||
+8
-8
@@ -978,10 +978,10 @@ static u16 GetButtonPalOffset(u8 button)
|
||||
{
|
||||
const u16 palOffsets[BUTTON_COUNT + 1] =
|
||||
{
|
||||
[BUTTON_PAGE] = IndexOfSpritePaletteTag(PALTAG_PAGE_SWAP) * 16 + 0x10E,
|
||||
[BUTTON_BACK] = IndexOfSpritePaletteTag(PALTAG_BACK_BUTTON) * 16 + 0x10E,
|
||||
[BUTTON_OK] = IndexOfSpritePaletteTag(PALTAG_OK_BUTTON) * 16 + 0x10E,
|
||||
[BUTTON_COUNT] = IndexOfSpritePaletteTag(PALTAG_OK_BUTTON) * 16 + 0x101,
|
||||
[BUTTON_PAGE] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_PAGE_SWAP)) + 14,
|
||||
[BUTTON_BACK] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_BACK_BUTTON)) + 14,
|
||||
[BUTTON_OK] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_OK_BUTTON)) + 14,
|
||||
[BUTTON_COUNT] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_OK_BUTTON)) + 1,
|
||||
};
|
||||
|
||||
return palOffsets[button];
|
||||
@@ -1060,7 +1060,7 @@ static void SpriteCB_Cursor(struct Sprite *sprite)
|
||||
{
|
||||
s8 gb = sprite->sColor;
|
||||
s8 r = sprite->sColor >> 1;
|
||||
u16 index = IndexOfSpritePaletteTag(PALTAG_CURSOR) * 16 + 0x0101;
|
||||
u16 index = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_CURSOR)) + 1;
|
||||
|
||||
MultiplyInvertedPaletteRGBComponents(index, r, gb, gb);
|
||||
}
|
||||
@@ -1872,9 +1872,9 @@ static void CreateHelperTasks(void)
|
||||
|
||||
static void LoadPalettes(void)
|
||||
{
|
||||
LoadPalette(gNamingScreenMenu_Pal, 0, sizeof(gNamingScreenMenu_Pal));
|
||||
LoadPalette(gNamingScreenKeyboard_Pal, 0xA0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(2), 0xB0, 0x20);
|
||||
LoadPalette(gNamingScreenMenu_Pal, BG_PLTT_ID(0), sizeof(gNamingScreenMenu_Pal));
|
||||
LoadPalette(gNamingScreenKeyboard_Pal, BG_PLTT_ID(10), PLTT_SIZE_4BPP);
|
||||
LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(11), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void DecompressToBgTilemapBuffer(u8 bg, const u32 *src)
|
||||
|
||||
+10
-10
@@ -457,9 +457,9 @@ void LoadStdWindowFrameGfx(void)
|
||||
else
|
||||
{
|
||||
Menu_LoadStdPal();
|
||||
LoadMenuMessageWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM * 0x10);
|
||||
LoadMenuMessageWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM));
|
||||
}
|
||||
LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM * 0x10);
|
||||
LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(STD_WINDOW_PALETTE_NUM));
|
||||
}
|
||||
|
||||
void DrawDialogueFrame(u8 windowId, bool8 copyToVram)
|
||||
@@ -591,7 +591,7 @@ static void WindowFunc_ClearDialogWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilem
|
||||
|
||||
void EraseFieldMessageBox(bool8 copyToVram)
|
||||
{
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 0x20, 0x20, 0x11);
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 0x20, 0x20, 17);
|
||||
if (copyToVram == TRUE)
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
}
|
||||
@@ -610,19 +610,19 @@ void LoadMessageBoxAndFrameGfx(u8 windowId, bool8 copyToVram)
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadMenuMessageWindowGfx(windowId, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM * 0x10);
|
||||
LoadMenuMessageWindowGfx(windowId, DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM));
|
||||
}
|
||||
DrawDialogFrameWithCustomTileAndPalette(windowId, copyToVram, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM);
|
||||
}
|
||||
|
||||
void Menu_LoadStdPal(void)
|
||||
{
|
||||
LoadPalette(gStandardMenuPalette, STD_WINDOW_PALETTE_NUM * 0x10, 0x14);
|
||||
LoadPalette(gStandardMenuPalette, BG_PLTT_ID(STD_WINDOW_PALETTE_NUM), PLTT_SIZEOF(10));
|
||||
}
|
||||
|
||||
void Menu_LoadStdPalAt(u16 offset)
|
||||
{
|
||||
LoadPalette(gStandardMenuPalette, offset, 0x14);
|
||||
LoadPalette(gStandardMenuPalette, offset, PLTT_SIZEOF(10));
|
||||
}
|
||||
|
||||
// Unused
|
||||
@@ -633,7 +633,7 @@ static const u16 *GetStdMenuPalette(void)
|
||||
|
||||
static u16 GetStdPalColor(u8 colorNum)
|
||||
{
|
||||
if (colorNum > 0xF)
|
||||
if (colorNum > 15)
|
||||
colorNum = 0;
|
||||
return gStandardMenuPalette[colorNum];
|
||||
}
|
||||
@@ -700,7 +700,7 @@ u16 GetStdWindowBaseTileNum(void)
|
||||
|
||||
void DrawHelpMessageWindowWithText(const u8 * text)
|
||||
{
|
||||
LoadHelpMessageWindowGfx(CreateHelpMessageWindow(), DLG_WINDOW_BASE_TILE_NUM, 0x10 * DLG_WINDOW_PALETTE_NUM);
|
||||
LoadHelpMessageWindowGfx(CreateHelpMessageWindow(), DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM));
|
||||
PrintTextOnHelpMessageWindow(text, 2);
|
||||
}
|
||||
|
||||
@@ -712,8 +712,8 @@ void DestroyHelpMessageWindow_(void)
|
||||
void LoadSignpostWindowFrameGfx(void)
|
||||
{
|
||||
Menu_LoadStdPal();
|
||||
LoadSignpostWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, 0x10 * DLG_WINDOW_PALETTE_NUM);
|
||||
LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, 0x10 * STD_WINDOW_PALETTE_NUM);
|
||||
LoadSignpostWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM));
|
||||
LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(STD_WINDOW_PALETTE_NUM));
|
||||
}
|
||||
|
||||
void SetDefaultFontsPointer(void)
|
||||
|
||||
+24
-16
@@ -17,6 +17,8 @@
|
||||
#include "data.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
#define INTRO_SPECIES SPECIES_NIDORAN_F
|
||||
|
||||
enum
|
||||
{
|
||||
WIN_INTRO_TEXTBOX,
|
||||
@@ -751,9 +753,9 @@ static void Task_NewGameScene(u8 taskId)
|
||||
gPaletteFade.bufferTransferDisabled = TRUE;
|
||||
InitStandardTextBoxWindows();
|
||||
InitTextBoxGfxAndPrinters();
|
||||
Menu_LoadStdPalAt(0xD0);
|
||||
LoadPalette(sOakSpeech_Background_Pals, 0, 0x80);
|
||||
LoadPalette(GetTextWindowPalette(2) + 15, 0, 2);
|
||||
Menu_LoadStdPalAt(BG_PLTT_ID(13));
|
||||
LoadPalette(sOakSpeech_Background_Pals, BG_PLTT_ID(0), sizeof(sOakSpeech_Background_Pals));
|
||||
LoadPalette(GetTextWindowPalette(2) + 15, BG_PLTT_ID(0), PLTT_SIZEOF(1));
|
||||
break;
|
||||
case 5:
|
||||
sOakSpeechResources->textSpeed = GetTextSpeedSetting();
|
||||
@@ -919,7 +921,7 @@ static void Task_ControlsGuide_Clear(u8 taskId)
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
DestroyTextCursorSprite(gTasks[taskId].tTextCursorSpriteId);
|
||||
sOakSpeechResources->windowIds[0] = RGB_BLACK;
|
||||
LoadPalette(sOakSpeechResources->windowIds, 0, 2);
|
||||
LoadPalette(sOakSpeechResources->windowIds, BG_PLTT_ID(0), PLTT_SIZEOF(1));
|
||||
gTasks[taskId].tTimer = 32;
|
||||
gTasks[taskId].func = Task_PikachuIntro_LoadPage1;
|
||||
}
|
||||
@@ -1191,7 +1193,7 @@ static void Task_OakSpeech_IsInhabitedFarAndWide(u8 taskId)
|
||||
if (gTasks[taskId].tTimer == 32)
|
||||
{
|
||||
OakSpeechPrintMessage(gOakSpeech_Text_IsInhabitedFarAndWide, sOakSpeechResources->textSpeed);
|
||||
PlayCry_Normal(SPECIES_NIDORAN_F, 0);
|
||||
PlayCry_Normal(INTRO_SPECIES, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1737,7 +1739,7 @@ static void Task_OakSpeech_FadePlayerPicWhite(u8 taskId)
|
||||
{
|
||||
if (tUnderflowingTimer <= 0 && tSecondaryTimer != 0)
|
||||
tSecondaryTimer--;
|
||||
BlendPalette(0x40, 0x20, tBlendCoefficient, RGB_WHITE);
|
||||
BlendPalette(BG_PLTT_ID(4), 0x20, tBlendCoefficient, RGB_WHITE);
|
||||
tBlendCoefficient++;
|
||||
tUnderflowingTimer--;
|
||||
tPlayerPicFadeWhiteTimer = tSecondaryTimer;
|
||||
@@ -1745,8 +1747,8 @@ static void Task_OakSpeech_FadePlayerPicWhite(u8 taskId)
|
||||
{
|
||||
for (i = 0; i < 32; i++)
|
||||
{
|
||||
gPlttBufferFaded[i + 0x40] = RGB_WHITE;
|
||||
gPlttBufferUnfaded[i + 0x40] = RGB_WHITE;
|
||||
gPlttBufferFaded[i + BG_PLTT_ID(4)] = RGB_WHITE;
|
||||
gPlttBufferUnfaded[i + BG_PLTT_ID(4)] = RGB_WHITE;
|
||||
}
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
@@ -1823,7 +1825,13 @@ static void CB2_ReturnFromNamingScreen(void)
|
||||
FreeAllWindowBuffers();
|
||||
InitStandardTextBoxWindows();
|
||||
InitTextBoxGfxAndPrinters();
|
||||
LoadPalette(sOakSpeech_Background_Pals, 0, 0xE0);
|
||||
// Below is reading 48 colors beyond the background palette (into the tiles that follow it).
|
||||
// This color range is used by the player and rival pic, which will overwrite them with the correct colors.
|
||||
#ifdef BUGFIX
|
||||
LoadPalette(sOakSpeech_Background_Pals, BG_PLTT_ID(0), sizeof(sOakSpeech_Background_Pals));
|
||||
#else
|
||||
LoadPalette(sOakSpeech_Background_Pals, BG_PLTT_ID(0), sizeof(sOakSpeech_Background_Pals) + PLTT_SIZEOF(48));
|
||||
#endif
|
||||
break;
|
||||
case 4:
|
||||
DecompressAndCopyTileDataToVram(1, sOakSpeech_Background_Tiles, 0, 0, 0);
|
||||
@@ -1876,9 +1884,9 @@ static void CreateNidoranFSprite(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
DecompressPicFromTable(&gMonFrontPicTable[SPECIES_NIDORAN_F], MonSpritesGfxManager_GetSpritePtr(0), SPECIES_NIDORAN_F);
|
||||
LoadCompressedSpritePaletteUsingHeap(&gMonPaletteTable[SPECIES_NIDORAN_F]);
|
||||
SetMultiuseSpriteTemplateToPokemon(SPECIES_NIDORAN_F, 0);
|
||||
DecompressPicFromTable(&gMonFrontPicTable[INTRO_SPECIES], MonSpritesGfxManager_GetSpritePtr(0), INTRO_SPECIES);
|
||||
LoadCompressedSpritePaletteUsingHeap(&gMonPaletteTable[INTRO_SPECIES]);
|
||||
SetMultiuseSpriteTemplateToPokemon(INTRO_SPECIES, 0);
|
||||
spriteId = CreateSprite(&gMultiuseSpriteTemplate, 96, 96, 1);
|
||||
gSprites[spriteId].callback = SpriteCallbackDummy;
|
||||
gSprites[spriteId].oam.priority = 1;
|
||||
@@ -1962,19 +1970,19 @@ static void LoadTrainerPic(u16 whichPic, u16 tileOffset)
|
||||
switch (whichPic)
|
||||
{
|
||||
case MALE_PLAYER_PIC:
|
||||
LoadPalette(sOakSpeech_Red_Pal, 0x40, 0x40);
|
||||
LoadPalette(sOakSpeech_Red_Pal, BG_PLTT_ID(4), sizeof(sOakSpeech_Red_Pal));
|
||||
LZ77UnCompVram(sOakSpeech_Red_Tiles, (void *)VRAM + 0x600 + tileOffset);
|
||||
break;
|
||||
case FEMALE_PLAYER_PIC:
|
||||
LoadPalette(sOakSpeech_Leaf_Pal, 0x40, 0x40);
|
||||
LoadPalette(sOakSpeech_Leaf_Pal, BG_PLTT_ID(4), sizeof(sOakSpeech_Leaf_Pal));
|
||||
LZ77UnCompVram(sOakSpeech_Leaf_Tiles, (void *)VRAM + 0x600 + tileOffset);
|
||||
break;
|
||||
case RIVAL_PIC:
|
||||
LoadPalette(sOakSpeech_Rival_Pal, 0x60, 0x40);
|
||||
LoadPalette(sOakSpeech_Rival_Pal, BG_PLTT_ID(6), sizeof(sOakSpeech_Rival_Pal));
|
||||
LZ77UnCompVram(sOakSpeech_Rival_Tiles, (void *)VRAM + 0x600 + tileOffset);
|
||||
break;
|
||||
case OAK_PIC:
|
||||
LoadPalette(sOakSpeech_Oak_Pal, 0x60, 0x40);
|
||||
LoadPalette(sOakSpeech_Oak_Pal, BG_PLTT_ID(6), sizeof(sOakSpeech_Oak_Pal));
|
||||
LZ77UnCompVram(sOakSpeech_Oak_Tiles, (void *)VRAM + 0x600 + tileOffset);
|
||||
break;
|
||||
default:
|
||||
|
||||
+6
-6
@@ -93,7 +93,7 @@ static const struct WindowTemplate sOptionMenuWinTemplates[] =
|
||||
.tilemapTop = 0,
|
||||
.width = 30,
|
||||
.height = 2,
|
||||
.paletteNum = 0xF,
|
||||
.paletteNum = 15,
|
||||
.baseBlock = 0x16e
|
||||
},
|
||||
DUMMY_WIN_TEMPLATE
|
||||
@@ -340,14 +340,14 @@ static bool8 LoadOptionMenuPalette(void)
|
||||
LoadBgTiles(1, GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->tiles, 0x120, 0x1AA);
|
||||
break;
|
||||
case 1:
|
||||
LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, 0x20, 0x20);
|
||||
LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 2:
|
||||
LoadPalette(sOptionMenuPalette, 0x10, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20);
|
||||
LoadPalette(sOptionMenuPalette, BG_PLTT_ID(1), sizeof(sOptionMenuPalette));
|
||||
LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 3:
|
||||
LoadStdWindowGfxOnBg(1, 0x1B3, 0x30);
|
||||
LoadStdWindowGfxOnBg(1, 0x1B3, BG_PLTT_ID(3));
|
||||
break;
|
||||
default:
|
||||
return TRUE;
|
||||
@@ -382,7 +382,7 @@ static void Task_OptionMenu(u8 taskId)
|
||||
break;
|
||||
case 2:
|
||||
LoadBgTiles(1, GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->tiles, 0x120, 0x1AA);
|
||||
LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, 0x20, 0x20);
|
||||
LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
BufferOptionMenuString(sOptionMenuPtr->cursorPos);
|
||||
break;
|
||||
case 3:
|
||||
|
||||
+7
-7
@@ -59,7 +59,7 @@ ALIGNED(4) EWRAM_DATA u16 gPlttBufferFaded[PLTT_BUFFER_SIZE] = {0};
|
||||
static EWRAM_DATA struct PaletteStruct sPaletteStructs[NUM_PALETTE_STRUCTS] = {0};
|
||||
EWRAM_DATA struct PaletteFadeControl gPaletteFade = {0};
|
||||
static EWRAM_DATA u32 sPlttBufferTransferPending = 0;
|
||||
EWRAM_DATA u8 gPaletteDecompressionBuffer[PLTT_DECOMP_BUFFER_SIZE] = {0};
|
||||
EWRAM_DATA u8 gPaletteDecompressionBuffer[PLTT_SIZE] = {0};
|
||||
|
||||
static const struct PaletteStructTemplate sDummyPaletteStructTemplate =
|
||||
{
|
||||
@@ -141,7 +141,7 @@ void ReadPlttIntoBuffers(void)
|
||||
u16 i;
|
||||
u16 *pltt = (u16 *)PLTT;
|
||||
|
||||
for (i = 0; i < PLTT_SIZE / 2; ++i)
|
||||
for (i = 0; i < PLTT_BUFFER_SIZE; ++i)
|
||||
{
|
||||
gPlttBufferUnfaded[i] = pltt[i];
|
||||
gPlttBufferFaded[i] = pltt[i];
|
||||
@@ -420,7 +420,7 @@ static u8 UpdateNormalPaletteFade(void)
|
||||
else
|
||||
{
|
||||
selectedPalettes = gPaletteFade_selectedPalettes >> 16;
|
||||
paletteOffset = 256;
|
||||
paletteOffset = OBJ_PLTT_OFFSET;
|
||||
}
|
||||
while (selectedPalettes)
|
||||
{
|
||||
@@ -559,13 +559,13 @@ static u8 UpdateFastPaletteFade(void)
|
||||
return gPaletteFade.active ? PALETTE_FADE_STATUS_ACTIVE : PALETTE_FADE_STATUS_DONE;
|
||||
if (gPaletteFade.objPaletteToggle)
|
||||
{
|
||||
paletteOffsetStart = 256;
|
||||
paletteOffsetEnd = 512;
|
||||
paletteOffsetStart = OBJ_PLTT_OFFSET;
|
||||
paletteOffsetEnd = PLTT_BUFFER_SIZE;
|
||||
}
|
||||
else
|
||||
{
|
||||
paletteOffsetStart = 0;
|
||||
paletteOffsetEnd = 256;
|
||||
paletteOffsetEnd = OBJ_PLTT_OFFSET;
|
||||
}
|
||||
switch (gPaletteFade_submode)
|
||||
{
|
||||
@@ -791,7 +791,7 @@ void BlendPalettes(u32 selectedPalettes, u8 coeff, u16 color)
|
||||
void BlendPalettesUnfaded(u32 selectedPalettes, u8 coeff, u16 color)
|
||||
{
|
||||
// This copy is done via DMA in both RUBY and EMERALD
|
||||
CpuFastCopy(gPlttBufferUnfaded, gPlttBufferFaded, 0x400);
|
||||
CpuFastCopy(gPlttBufferUnfaded, gPlttBufferFaded, PLTT_SIZE);
|
||||
BlendPalettes(selectedPalettes, coeff, color);
|
||||
}
|
||||
|
||||
|
||||
+34
-34
@@ -670,8 +670,8 @@ static bool8 AllocPartyMenuBgGfx(void)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
LoadCompressedPalette(gPartyMenuBg_Pal, 0, 0x160);
|
||||
CpuCopy16(gPlttBufferUnfaded, sPartyMenuInternal->palBuffer, 0x160);
|
||||
LoadCompressedPalette(gPartyMenuBg_Pal, BG_PLTT_ID(0), 11 * PLTT_SIZE_4BPP);
|
||||
CpuCopy16(gPlttBufferUnfaded, sPartyMenuInternal->palBuffer, 11 * PLTT_SIZE_4BPP);
|
||||
++sPartyMenuInternal->data[0];
|
||||
break;
|
||||
case 3:
|
||||
@@ -702,9 +702,9 @@ static bool8 AllocPartyMenuBgGfx(void)
|
||||
|
||||
static void PartyPaletteBufferCopy(u8 offset)
|
||||
{
|
||||
offset *= 16;
|
||||
CpuCopy16(&gPlttBufferUnfaded[0x30], &gPlttBufferUnfaded[offset], 32);
|
||||
CpuCopy16(&gPlttBufferUnfaded[0x30], &gPlttBufferFaded[offset], 32);
|
||||
offset = PLTT_ID(offset);
|
||||
CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(3)], &gPlttBufferUnfaded[offset], PLTT_SIZE_4BPP);
|
||||
CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(3)], &gPlttBufferFaded[offset], PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void FreePartyPointers(void)
|
||||
@@ -2006,8 +2006,8 @@ static void Task_FirstBattleEnterParty_WaitFadeNormal(u8 taskId)
|
||||
{
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
LoadUserWindowGfx(0, 0x4F, 0xD0);
|
||||
LoadStdWindowGfx(0, 0x58, 0xF0);
|
||||
LoadUserWindowGfx(0, 0x4F, BG_PLTT_ID(13));
|
||||
LoadStdWindowGfx(0, 0x58, BG_PLTT_ID(15));
|
||||
if (gPartyMenu.action == PARTY_ACTION_USE_ITEM)
|
||||
DisplayPartyMenuStdMessage(PARTY_MSG_USE_ON_WHICH_MON);
|
||||
else
|
||||
@@ -2117,10 +2117,10 @@ static void InitPartyMenuWindows(u8 layout)
|
||||
DeactivateAllTextPrinters();
|
||||
for (i = 0; i < PARTY_SIZE; ++i)
|
||||
FillWindowPixelBuffer(i, PIXEL_FILL(0));
|
||||
LoadUserWindowGfx(0, 0x4F, 0xD0);
|
||||
LoadStdWindowGfx(0, 0x58, 0xF0);
|
||||
LoadPalette(GetTextWindowPalette(2), 0xC0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(0), 0xE0, 0x20);
|
||||
LoadUserWindowGfx(0, 0x4F, BG_PLTT_ID(13));
|
||||
LoadStdWindowGfx(0, 0x58, BG_PLTT_ID(15));
|
||||
LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(12), PLTT_SIZE_4BPP);
|
||||
LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(14), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void CreateCancelConfirmWindows(bool8 chooseMultiple)
|
||||
@@ -2215,16 +2215,16 @@ static void DrawEmptySlot(u8 windowId)
|
||||
BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideEmpty, 18, 0, 0, 18, 3);
|
||||
}
|
||||
|
||||
#define LOAD_PARTY_BOX_PAL(paletteIds, paletteOffsets) \
|
||||
{ \
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[0]), paletteOffsets[0] + palNum, 2); \
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[1]), paletteOffsets[1] + palNum, 2); \
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[2]), paletteOffsets[2] + palNum, 2); \
|
||||
#define LOAD_PARTY_BOX_PAL(paletteIds, paletteOffsets) \
|
||||
{ \
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[0]), paletteOffsets[0] + palOffset, PLTT_SIZEOF(1)); \
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[1]), paletteOffsets[1] + palOffset, PLTT_SIZEOF(1)); \
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[2]), paletteOffsets[2] + palOffset, PLTT_SIZEOF(1)); \
|
||||
}
|
||||
|
||||
static void LoadPartyBoxPalette(struct PartyMenuBox *menuBox, u8 palFlags)
|
||||
{
|
||||
u8 palNum = GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM) * 16;
|
||||
u8 palOffset = BG_PLTT_ID(GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM));
|
||||
|
||||
if (palFlags & PARTY_PAL_TO_SOFTBOIL)
|
||||
{
|
||||
@@ -2349,7 +2349,7 @@ static void DisplayPartyPokemonGenderNidoranCheck(struct Pokemon *mon, struct Pa
|
||||
|
||||
static void DisplayPartyPokemonGender(u8 gender, u16 species, u8 *nickname, struct PartyMenuBox *menuBox)
|
||||
{
|
||||
u8 palNum = GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM) * 16;
|
||||
u8 palOffset = BG_PLTT_ID(GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM));
|
||||
|
||||
if (species == SPECIES_NONE)
|
||||
return;
|
||||
@@ -2358,13 +2358,13 @@ static void DisplayPartyPokemonGender(u8 gender, u16 species, u8 *nickname, stru
|
||||
switch (gender)
|
||||
{
|
||||
case MON_MALE:
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[0]), sGenderPalOffsets[0] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[1]), sGenderPalOffsets[1] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[0]), sGenderPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[1]), sGenderPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
|
||||
DisplayPartyPokemonBarDetail(menuBox->windowId, gText_MaleSymbol, 2, &menuBox->infoRects->dimensions[8]);
|
||||
break;
|
||||
case MON_FEMALE:
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[0]), sGenderPalOffsets[0] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[1]), sGenderPalOffsets[1] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[0]), sGenderPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[1]), sGenderPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
|
||||
DisplayPartyPokemonBarDetail(menuBox->windowId, gText_FemaleSymbol, 2, &menuBox->infoRects->dimensions[8]);
|
||||
break;
|
||||
}
|
||||
@@ -2417,23 +2417,23 @@ static void DisplayPartyPokemonHPBarCheck(struct Pokemon *mon, struct PartyMenuB
|
||||
|
||||
static void DisplayPartyPokemonHPBar(u16 hp, u16 maxhp, struct PartyMenuBox *menuBox)
|
||||
{
|
||||
u8 palNum = GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM) * 16;
|
||||
u8 palOffset = BG_PLTT_ID(GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM));
|
||||
u8 hpFraction;
|
||||
|
||||
switch (GetHPBarLevel(hp, maxhp))
|
||||
{
|
||||
case HP_BAR_GREEN:
|
||||
case HP_BAR_FULL:
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[0]), sHPBarPalOffsets[0] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[1]), sHPBarPalOffsets[1] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
|
||||
break;
|
||||
case HP_BAR_YELLOW:
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[0]), sHPBarPalOffsets[0] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[1]), sHPBarPalOffsets[1] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
|
||||
break;
|
||||
default:
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[0]), sHPBarPalOffsets[0] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[1]), sHPBarPalOffsets[1] + palNum, 2);
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
|
||||
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
|
||||
break;
|
||||
}
|
||||
hpFraction = GetScaledHPFraction(hp, maxhp, menuBox->infoRects->dimensions[22]);
|
||||
@@ -2503,7 +2503,7 @@ void DisplayPartyMenuStdMessage(u32 stringId)
|
||||
else if (!ShouldUseChooseMonText())
|
||||
stringId = PARTY_MSG_CHOOSE_MON_OR_CANCEL;
|
||||
}
|
||||
DrawStdFrameWithCustomTileAndPalette(*windowPtr, FALSE, 0x58, 0xF);
|
||||
DrawStdFrameWithCustomTileAndPalette(*windowPtr, FALSE, 0x58, 15);
|
||||
StringExpandPlaceholders(gStringVar4, sActionStringTable[stringId]);
|
||||
AddTextPrinterParameterized(*windowPtr, FONT_NORMAL, gStringVar4, 0, 2, 0, 0);
|
||||
ScheduleBgCopyTilemapToVram(2);
|
||||
@@ -2603,7 +2603,7 @@ static bool8 FirstBattleEnterParty_CreateWindowAndMsg1Printer(void)
|
||||
{
|
||||
u8 windowId = AddWindow(&sWindowTemplate_FirstBattleOakVoiceover);
|
||||
|
||||
LoadMenuMessageWindowGfx(windowId, 0x4F, 0xE0);
|
||||
LoadMenuMessageWindowGfx(windowId, 0x4F, BG_PLTT_ID(14));
|
||||
DrawDialogFrameWithCustomTileAndPalette(windowId, 1, 0x4F, 0xE);
|
||||
PartyMenu_Oak_PrintText(windowId, gText_OakImportantToGetToKnowPokemonThroughly);
|
||||
return windowId;
|
||||
@@ -4285,7 +4285,7 @@ static void CB2_UseItem(void)
|
||||
{
|
||||
GiveMoveToMon(&gPlayerParty[gPartyMenu.slotId], ItemIdToBattleMoveId(gSpecialVar_ItemId));
|
||||
AdjustFriendship(&gPlayerParty[gPartyMenu.slotId], FRIENDSHIP_EVENT_LEARN_TMHM);
|
||||
if (gSpecialVar_ItemId <= ITEM_TM50)
|
||||
if (gSpecialVar_ItemId < ITEM_HM01)
|
||||
RemoveBagItem(gSpecialVar_ItemId, 1);
|
||||
SetMainCallback2(gPartyMenu.exitCallback);
|
||||
}
|
||||
@@ -4305,7 +4305,7 @@ static void CB2_UseTMHMAfterForgettingMove(void)
|
||||
SetMonMoveSlot(mon, ItemIdToBattleMoveId(gSpecialVar_ItemId), moveIdx);
|
||||
AdjustFriendship(mon, FRIENDSHIP_EVENT_LEARN_TMHM);
|
||||
ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, mon, gSpecialVar_ItemId, move);
|
||||
if (gSpecialVar_ItemId <= ITEM_TM50)
|
||||
if (gSpecialVar_ItemId < ITEM_HM01)
|
||||
RemoveBagItem(gSpecialVar_ItemId, 1);
|
||||
SetMainCallback2(gPartyMenu.exitCallback);
|
||||
}
|
||||
@@ -4809,7 +4809,7 @@ static void Task_LearnedMove(u8 taskId)
|
||||
if (learnMoveMethod == LEARN_VIA_TMHM)
|
||||
{
|
||||
AdjustFriendship(mon, FRIENDSHIP_EVENT_LEARN_TMHM);
|
||||
if (item <= ITEM_TM50)
|
||||
if (item < ITEM_HM01)
|
||||
RemoveBagItem(item, 1);
|
||||
}
|
||||
GetMonNickname(mon, gStringVar1);
|
||||
|
||||
@@ -83,7 +83,7 @@ static void Task_PCScreenEffect_TurnOn(u8 taskId)
|
||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, task->tBldCntBak);
|
||||
BlendPalettes(PALETTES_ALL, 0, RGB_BLACK);
|
||||
gPlttBufferFaded[0] = 0;
|
||||
gPlttBufferFaded[BG_PLTT_ID(0)] = 0;
|
||||
}
|
||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(task->tWin0Left, task->tWin0Right));
|
||||
if (task->tWin0Left)
|
||||
@@ -117,7 +117,7 @@ static void Task_PCScreenEffect_TurnOff(u8 taskId)
|
||||
switch (task->tState)
|
||||
{
|
||||
case 0:
|
||||
gPlttBufferFaded[0] = 0;
|
||||
gPlttBufferFaded[BG_PLTT_ID(0)] = 0;
|
||||
break;
|
||||
case 1:
|
||||
task->tWin0Left = 0;
|
||||
@@ -152,7 +152,7 @@ static void Task_PCScreenEffect_TurnOff(u8 taskId)
|
||||
task->tWin0Left = 120;
|
||||
task->tWin0Right = 120;
|
||||
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK);
|
||||
gPlttBufferFaded[0] = 0;
|
||||
gPlttBufferFaded[BG_PLTT_ID(0)] = 0;
|
||||
}
|
||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(task->tWin0Left, task->tWin0Right));
|
||||
if (task->tWin0Left != 120)
|
||||
|
||||
@@ -201,7 +201,7 @@ u8 CreatePokedexAreaMarkers(u16 species, u16 tilesTag, u8 palIdx, u8 y)
|
||||
spriteSheet.size = 0x4A0;
|
||||
spriteSheet.tag = tilesTag;
|
||||
LoadCompressedSpriteSheet(&spriteSheet);
|
||||
LoadPalette(sMarkerPal, 0x100 + 16 * palIdx, 0x20);
|
||||
LoadPalette(sMarkerPal, OBJ_PLTT_ID(palIdx), sizeof(sMarkerPal));
|
||||
|
||||
// Get marker subsprites
|
||||
taskId = CreateTask(Task_ShowAreaMarkers, 0);
|
||||
|
||||
+37
-37
@@ -922,15 +922,15 @@ void DexScreen_LoadResources(void)
|
||||
ChangeBgY(3, 0, 0);
|
||||
gPaletteFade.bufferTransferDisabled = TRUE;
|
||||
if (natDex)
|
||||
LoadPalette(sNationalDexPalette, 0, 0x200);
|
||||
LoadPalette(sNationalDexPalette, BG_PLTT_ID(0), sizeof(sNationalDexPalette));
|
||||
else
|
||||
LoadPalette(sKantoDexPalette, 0, 0x200);
|
||||
FillBgTilemapBufferRect(3, 0x001, 0, 0, 32, 32, 0x00);
|
||||
FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(0, 0x003, 0, 0, 32, 2, 0x0F);
|
||||
FillBgTilemapBufferRect(0, 0x000, 0, 2, 32, 16, 0x11);
|
||||
FillBgTilemapBufferRect(0, 0x003, 0, 18, 32, 2, 0x0F);
|
||||
LoadPalette(sKantoDexPalette, BG_PLTT_ID(0), sizeof(sKantoDexPalette));
|
||||
FillBgTilemapBufferRect(3, 0x001, 0, 0, 32, 32, 0);
|
||||
FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 17);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
|
||||
FillBgTilemapBufferRect(0, 0x003, 0, 0, 32, 2, 15);
|
||||
FillBgTilemapBufferRect(0, 0x000, 0, 2, 32, 16, 17);
|
||||
FillBgTilemapBufferRect(0, 0x003, 0, 18, 32, 2, 15);
|
||||
}
|
||||
|
||||
void CB2_OpenPokedexFromStartMenu(void)
|
||||
@@ -1124,9 +1124,9 @@ static void Task_PokedexScreen(u8 taskId)
|
||||
static void DexScreen_InitGfxForTopMenu(void)
|
||||
{
|
||||
struct ListMenuTemplate listMenuTemplate;
|
||||
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00);
|
||||
FillBgTilemapBufferRect(2, 0x000, 0, 0, 30, 20, 0x11);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 30, 20, 0x11);
|
||||
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0);
|
||||
FillBgTilemapBufferRect(2, 0x000, 0, 0, 30, 20, 17);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 30, 20, 17);
|
||||
sPokedexScreenData->modeSelectWindowId = AddWindow(&sWindowTemplate_ModeSelect);
|
||||
sPokedexScreenData->selectionIconWindowId = AddWindow(&sWindowTemplate_SelectionIcon);
|
||||
sPokedexScreenData->dexCountsWindowId = AddWindow(&sWindowTemplate_DexCounts);
|
||||
@@ -1177,12 +1177,12 @@ static void MoveCursorFunc_DexModeSelect(s32 itemIndex, bool8 onInit, struct Lis
|
||||
if (itemIndex == LIST_CANCEL)
|
||||
{
|
||||
CopyToWindowPixelBuffer(sPokedexScreenData->selectionIconWindowId, sTopMenuSelectionIconTiles_Cancel, 0x000, 0x000);
|
||||
LoadPalette(sTopMenuSelectionIconPals_Cancel, 0x10, 0x20);
|
||||
LoadPalette(sTopMenuSelectionIconPals_Cancel, BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
CopyToWindowPixelBuffer(sPokedexScreenData->selectionIconWindowId, sTopMenuSelectionIconGfxPtrs[itemIndex].tiles, 0x000, 0x000);
|
||||
LoadPalette(sTopMenuSelectionIconGfxPtrs[itemIndex].pal, 0x10, 0x20);
|
||||
LoadPalette(sTopMenuSelectionIconGfxPtrs[itemIndex].pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
}
|
||||
PutWindowTilemap(sPokedexScreenData->selectionIconWindowId);
|
||||
CopyWindowToVram(sPokedexScreenData->selectionIconWindowId, COPYWIN_GFX);
|
||||
@@ -1201,8 +1201,8 @@ static void Task_DexScreen_NumericalOrder(u8 taskId)
|
||||
switch (sPokedexScreenData->state)
|
||||
{
|
||||
case 0:
|
||||
ListMenuLoadStdPalAt(0x10, 0);
|
||||
ListMenuLoadStdPalAt(0x20, 1);
|
||||
ListMenuLoadStdPalAt(BG_PLTT_ID(1), 0);
|
||||
ListMenuLoadStdPalAt(BG_PLTT_ID(2), 1);
|
||||
sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId);
|
||||
sPokedexScreenData->state = 2;
|
||||
break;
|
||||
@@ -1266,8 +1266,8 @@ static void Task_DexScreen_NumericalOrder(u8 taskId)
|
||||
static void DexScreen_InitGfxForNumericalOrderList(void)
|
||||
{
|
||||
struct ListMenuTemplate template;
|
||||
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
|
||||
sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu);
|
||||
template = sListMenuTemplate_OrderedListMenu;
|
||||
template.items = sPokedexScreenData->listItems;
|
||||
@@ -1287,8 +1287,8 @@ static void Task_DexScreen_CharacteristicOrder(u8 taskId)
|
||||
switch (sPokedexScreenData->state)
|
||||
{
|
||||
case 0:
|
||||
ListMenuLoadStdPalAt(0x10, 0);
|
||||
ListMenuLoadStdPalAt(0x20, 1);
|
||||
ListMenuLoadStdPalAt(BG_PLTT_ID(1), 0);
|
||||
ListMenuLoadStdPalAt(BG_PLTT_ID(2), 1);
|
||||
sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId);
|
||||
sPokedexScreenData->state = 2;
|
||||
break;
|
||||
@@ -1352,8 +1352,8 @@ static void Task_DexScreen_CharacteristicOrder(u8 taskId)
|
||||
static void DexScreen_CreateCharacteristicListMenu(void)
|
||||
{
|
||||
struct ListMenuTemplate template;
|
||||
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11);
|
||||
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0);
|
||||
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
|
||||
sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu);
|
||||
template = sListMenuTemplate_OrderedListMenu;
|
||||
template.items = sPokedexScreenData->listItems;
|
||||
@@ -1554,11 +1554,11 @@ static void ItemPrintFunc_OrderedListMenu(u8 windowId, u32 itemId, u8 y)
|
||||
DexScreen_PrintMonDexNo(sPokedexScreenData->numericalOrderWindowId, FONT_SMALL, species, 12, y);
|
||||
if (caught)
|
||||
{
|
||||
BlitMoveInfoIcon(sPokedexScreenData->numericalOrderWindowId, 0, 0x28, y);
|
||||
BlitMenuInfoIcon(sPokedexScreenData->numericalOrderWindowId, MENU_INFO_ICON_CAUGHT, 0x28, y);
|
||||
type1 = gSpeciesInfo[species].types[0];
|
||||
BlitMoveInfoIcon(sPokedexScreenData->numericalOrderWindowId, type1 + 1, 0x78, y);
|
||||
BlitMenuInfoIcon(sPokedexScreenData->numericalOrderWindowId, type1 + 1, 0x78, y);
|
||||
if (type1 != gSpeciesInfo[species].types[1])
|
||||
BlitMoveInfoIcon(sPokedexScreenData->numericalOrderWindowId, gSpeciesInfo[species].types[1] + 1, 0x98, y);
|
||||
BlitMenuInfoIcon(sPokedexScreenData->numericalOrderWindowId, gSpeciesInfo[species].types[1] + 1, 0x98, y);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2405,10 +2405,10 @@ static void DexScreen_CreateCategoryPageSelectionCursor(u8 cursorPos)
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x52 + 0x10 * i, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[1], 0x58 + 0x10 * i, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[0], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[1], PLTT_ID(i) + PLTT_ID(5) + 8 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
|
||||
}
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x141, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x141, PLTT_SIZEOF(1));
|
||||
sPokedexScreenData->categoryPageSelectionCursorTimer = 0;
|
||||
}
|
||||
else
|
||||
@@ -2421,16 +2421,16 @@ static void DexScreen_CreateCategoryPageSelectionCursor(u8 cursorPos)
|
||||
{
|
||||
if (i == cursorPos)
|
||||
{
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], 0x52 + 0x10 * i, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 3], 0x58 + 0x10 * i, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 3], PLTT_ID(i) + PLTT_ID(5) + 8 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x52 + 0x10 * i, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[1], 0x58 + 0x10 * i, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[0], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[1], PLTT_ID(i) + PLTT_ID(5) + 8 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
|
||||
}
|
||||
}
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], 0x141, 2);
|
||||
LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], OBJ_PLTT_ID(4) + 1, PLTT_SIZEOF(1));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3054,7 +3054,7 @@ u8 DexScreen_DrawMonAreaPage(void)
|
||||
|
||||
// Draw the mon icon
|
||||
FillWindowPixelBuffer(sPokedexScreenData->windowIds[11], PIXEL_FILL(0));
|
||||
ListMenu_LoadMonIconPalette(160, species);
|
||||
ListMenu_LoadMonIconPalette(BG_PLTT_ID(10), species);
|
||||
ListMenu_DrawMonIconGraphics(sPokedexScreenData->windowIds[11], species, DexScreen_GetDefaultPersonality(species), 0, 0);
|
||||
PutWindowTilemap(sPokedexScreenData->windowIds[11]);
|
||||
CopyWindowToVram(sPokedexScreenData->windowIds[11], COPYWIN_GFX);
|
||||
@@ -3087,20 +3087,20 @@ u8 DexScreen_DrawMonAreaPage(void)
|
||||
|
||||
// Type icons
|
||||
FillWindowPixelBuffer(sPokedexScreenData->windowIds[12], PIXEL_FILL(0));
|
||||
ListMenuLoadStdPalAt(176, 1);
|
||||
ListMenuLoadStdPalAt(BG_PLTT_ID(11), 1);
|
||||
|
||||
if (monIsCaught)
|
||||
{
|
||||
BlitMoveInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[0], 0, 1);
|
||||
BlitMenuInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[0], 0, 1);
|
||||
if (gSpeciesInfo[species].types[0] != gSpeciesInfo[species].types[1])
|
||||
BlitMoveInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[1], 32, 1);
|
||||
BlitMenuInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[1], 32, 1);
|
||||
}
|
||||
PutWindowTilemap(sPokedexScreenData->windowIds[12]);
|
||||
CopyWindowToVram(sPokedexScreenData->windowIds[12], COPYWIN_GFX);
|
||||
|
||||
// Show size comparison
|
||||
ResetAllPicSprites();
|
||||
LoadPalette(sPalette_Silhouette, 288, 32);
|
||||
LoadPalette(sPalette_Silhouette, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
|
||||
if (monIsCaught)
|
||||
{
|
||||
|
||||
+6
-6
@@ -1126,7 +1126,7 @@ void DestroyMonIcon(struct Sprite *sprite)
|
||||
void LoadMonIconPalettes(void)
|
||||
{
|
||||
u8 i;
|
||||
for (i = 0; i < NELEMS(gMonIconPaletteTable); i++)
|
||||
for (i = 0; i < ARRAY_COUNT(gMonIconPaletteTable); i++)
|
||||
LoadSpritePalette(&gMonIconPaletteTable[i]);
|
||||
}
|
||||
|
||||
@@ -1151,7 +1151,7 @@ void LoadMonIconPalette(u16 species)
|
||||
void FreeMonIconPalettes(void)
|
||||
{
|
||||
u8 i;
|
||||
for (i = 0; i < 6; i++)
|
||||
for (i = 0; i < ARRAY_COUNT(gMonIconPaletteTable); i++)
|
||||
FreeSpritePaletteByTag(gMonIconPaletteTable[i].tag);
|
||||
}
|
||||
|
||||
@@ -1179,12 +1179,12 @@ void SpriteCB_MonIcon(struct Sprite *sprite)
|
||||
void LoadMonIconPalettesAt(u16 offset)
|
||||
{
|
||||
int i;
|
||||
if (offset <= 0x100 - 0x60)
|
||||
if (offset <= BG_PLTT_ID(16 - ARRAY_COUNT(gMonIconPaletteTable)))
|
||||
{
|
||||
for (i = 0; i < (int)NELEMS(gMonIconPaletteTable); i++)
|
||||
for (i = 0; i < (int)ARRAY_COUNT(gMonIconPaletteTable); i++)
|
||||
{
|
||||
LoadPalette(gMonIconPaletteTable[i].data, offset, 0x20);
|
||||
offset += 0x10;
|
||||
LoadPalette(gMonIconPaletteTable[i].data, offset, PLTT_SIZE_4BPP);
|
||||
offset += 16;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+10
-10
@@ -3039,22 +3039,22 @@ static void LoadPokeJumpGfx(void)
|
||||
ResetTempTileDataBuffers();
|
||||
LoadSpriteSheetsAndPalettes(sPokemonJumpGfx);
|
||||
InitDigitPrinters();
|
||||
LoadPalette(sBg_Pal, 0, 0x20);
|
||||
LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal));
|
||||
DecompressAndCopyTileDataToVram(BG_SCENERY, sBg_Gfx, 0, 0, 0);
|
||||
DecompressAndCopyTileDataToVram(BG_SCENERY, sBg_Tilemap, 0, 0, 1);
|
||||
LoadPalette(sVenusaur_Pal, 0x30, 0x20);
|
||||
LoadPalette(sVenusaur_Pal, BG_PLTT_ID(3), sizeof(sVenusaur_Pal));
|
||||
DecompressAndCopyTileDataToVram(BG_VENUSAUR, sVenusaur_Gfx, 0, 0, 0);
|
||||
DecompressAndCopyTileDataToVram(BG_VENUSAUR, sVenusaur_Tilemap, 0, 0, 1);
|
||||
LoadPalette(sBonuses_Pal, 0x10, 0x20);
|
||||
LoadPalette(sBonuses_Pal, BG_PLTT_ID(1), sizeof(sBonuses_Pal));
|
||||
DecompressAndCopyTileDataToVram(BG_BONUSES, sBonuses_Gfx, 0, 0, 0);
|
||||
DecompressAndCopyTileDataToVram(BG_BONUSES, sBonuses_Tilemap, 0, 0, 1);
|
||||
LoadPalette(sInterface_Pal, 0x20, 0x20);
|
||||
LoadPalette(sInterface_Pal, BG_PLTT_ID(2), sizeof(sInterface_Pal));
|
||||
SetBgTilemapBuffer(BG_INTERFACE, sPokemonJumpGfx->tilemapBuffer);
|
||||
FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 0x20, 0x20);
|
||||
PrintScoreSuffixes();
|
||||
PrintScore(0);
|
||||
LoadStdWindowGfxOnBg(0, 1, 0xE0);
|
||||
LoadUserWindowGfx2(0, 0x00A, 0xD0);
|
||||
LoadStdWindowGfxOnBg(0, 1, BG_PLTT_ID(14));
|
||||
LoadUserWindowGfx2(0, 0x00A, BG_PLTT_ID(13));
|
||||
CopyBgTilemapBufferToVram(BG_INTERFACE);
|
||||
CopyBgTilemapBufferToVram(BG_VENUSAUR);
|
||||
CopyBgTilemapBufferToVram(BG_BONUSES);
|
||||
@@ -3472,7 +3472,7 @@ static u32 AddMessageWindow(u32 left, u32 top, u32 width, u32 height)
|
||||
window.tilemapTop = top;
|
||||
window.width = width;
|
||||
window.height = height;
|
||||
window.paletteNum = 0xF;
|
||||
window.paletteNum = 15;
|
||||
window.baseBlock = 0x43;
|
||||
|
||||
windowId = AddWindow(&window);
|
||||
@@ -3493,7 +3493,7 @@ static void CreatePokeJumpYesNoMenu(u16 left, u16 top, u8 cursorPos)
|
||||
window.paletteNum = 2;
|
||||
window.baseBlock = 0x2B;
|
||||
|
||||
CreateYesNoMenu(&window, FONT_NORMAL, 0, 2, 0x00a, 0xD, a);
|
||||
CreateYesNoMenu(&window, FONT_NORMAL, 0, 2, 0x00a, 13, a);
|
||||
}
|
||||
|
||||
// "Points" for jump score and "times" for number of jumps in a row
|
||||
@@ -4554,8 +4554,8 @@ static void PrintRecordsText(u16 windowId)
|
||||
recordNums[1] = records->bestJumpScore;
|
||||
recordNums[2] = records->excellentsInRow;
|
||||
|
||||
LoadStdWindowGfx(windowId, 0x21D, 0xD0);
|
||||
DrawTextBorderOuter(windowId, 0x21D, 0xD);
|
||||
LoadStdWindowGfx(windowId, 0x21D, BG_PLTT_ID(13));
|
||||
DrawTextBorderOuter(windowId, 0x21D, 13);
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized5(windowId, FONT_NORMAL, gText_PkmnJumpRecords, 0, 0, TEXT_SKIP_DRAW, NULL, 1, 0);
|
||||
for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++)
|
||||
|
||||
@@ -341,7 +341,7 @@ void InitPokemonSpecialAnimScene(struct PokemonSpecialAnimScene * buffer, u16 an
|
||||
FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 32, 32);
|
||||
LoadBgGfxByAnimType(animType);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||
LoadUserWindowGfx(0, 0x000, 0xe0);
|
||||
LoadUserWindowGfx(0, 0x000, BG_PLTT_ID(14));
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
ShowBg(0);
|
||||
ShowBg(3);
|
||||
@@ -370,7 +370,7 @@ void PSA_ShowMessageWindow(void)
|
||||
{
|
||||
PutWindowTilemap(0);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(1));
|
||||
DrawTextBorderOuter(0, 0x001, 0xE);
|
||||
DrawTextBorderOuter(0, 0x001, 14);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
}
|
||||
|
||||
@@ -612,7 +612,7 @@ bool8 PSA_LevelUpVerticalSpritesTaskIsRunning(void)
|
||||
// Unused
|
||||
void PSA_DrawLevelUpWindowPg1(u16 *statsBefore, u16 *statsAfter)
|
||||
{
|
||||
DrawTextBorderOuter(1, 0x001, 0xE);
|
||||
DrawTextBorderOuter(1, 0x001, 14);
|
||||
DrawLevelUpWindowPg1(1, statsBefore, statsAfter, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY);
|
||||
PutWindowTilemap(1);
|
||||
CopyWindowToVram(1, COPYWIN_FULL);
|
||||
@@ -636,9 +636,9 @@ static void LoadBgGfxByAnimType(u16 animType)
|
||||
CopyToBgTilemapBuffer(3, sBg_Tilemap, 0, 0x000);
|
||||
DecompressAndCopyTileDataToVram(3, sBg_Gfx, 0, 0x000, 0);
|
||||
if (animType != 4)
|
||||
LoadPalette(sBg_Pal, 0x00, 0x20);
|
||||
LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal));
|
||||
else
|
||||
LoadPalette(sBg_TmHm_Pal, 0x00, 0x20);
|
||||
LoadPalette(sBg_TmHm_Pal, BG_PLTT_ID(0), sizeof(sBg_TmHm_Pal));
|
||||
}
|
||||
|
||||
void PSA_CreateMonSpriteAtCloseness(u8 closeness)
|
||||
|
||||
@@ -1205,9 +1205,9 @@ static void LoadWallpaperGfx(u8 boxId, s8 direction)
|
||||
DrawWallpaper(gStorage->wallpaperBgTilemapBuffer, gStorage->wallpaperTilemap, gStorage->wallpaperLoadDir, gStorage->wallpaperOffset);
|
||||
|
||||
if (gStorage->wallpaperLoadDir != 0)
|
||||
LoadPalette(wallpaper->palettes, (gStorage->wallpaperOffset * 32) + 0x40, 0x40);
|
||||
LoadPalette(wallpaper->palettes, BG_PLTT_ID(4) + BG_PLTT_ID(gStorage->wallpaperOffset * 2), 2 * PLTT_SIZE_4BPP);
|
||||
else
|
||||
CpuCopy16(wallpaper->palettes, &gPlttBufferUnfaded[(gStorage->wallpaperOffset * 32) + 0x40], 0x40);
|
||||
CpuCopy16(wallpaper->palettes, &gPlttBufferUnfaded[BG_PLTT_ID(4) + BG_PLTT_ID(gStorage->wallpaperOffset * 2)], 2 * PLTT_SIZE_4BPP);
|
||||
|
||||
DecompressAndLoadBgGfxUsingHeap(2, wallpaper->tiles, 0, 256 * gStorage->wallpaperOffset, 0);
|
||||
|
||||
@@ -1281,12 +1281,12 @@ static void InitBoxTitle(u8 boxId)
|
||||
gStorage->wallpaperPalBits = 0x3F0;
|
||||
|
||||
tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE);
|
||||
gStorage->boxTitlePalOffset = 0x10e + 16 * tagIndex;
|
||||
gStorage->wallpaperPalBits |= 0x10000 << tagIndex;
|
||||
gStorage->boxTitlePalOffset = OBJ_PLTT_ID(tagIndex) + 14;
|
||||
gStorage->wallpaperPalBits |= (1 << 16) << tagIndex;
|
||||
|
||||
tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE);
|
||||
gStorage->boxTitleAltPalOffset = 0x10e + 16 * tagIndex;
|
||||
gStorage->wallpaperPalBits |= 0x10000 << tagIndex;
|
||||
gStorage->boxTitleAltPalOffset = OBJ_PLTT_ID(tagIndex) + 14;
|
||||
gStorage->wallpaperPalBits |= (1 << 16) << tagIndex;
|
||||
|
||||
StringCopyPadded(gStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8);
|
||||
DrawTextWindowAndBufferTiles(gStorage->boxTitleText, gStorage->boxTitleTiles, 0, 0, gStorage->boxTitleUnused, 2);
|
||||
@@ -1387,9 +1387,9 @@ static void CycleBoxTitleColor(void)
|
||||
u8 boxId = StorageGetCurrentBox();
|
||||
u8 wallpaperId = GetBoxWallpaper(boxId);
|
||||
if (gStorage->boxTitleCycleId == 0)
|
||||
CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + gStorage->boxTitlePalOffset, 4);
|
||||
CpuCopy16(sBoxTitleColors[wallpaperId], &gPlttBufferUnfaded[gStorage->boxTitlePalOffset], PLTT_SIZEOF(2));
|
||||
else
|
||||
CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + gStorage->boxTitleAltPalOffset, 4);
|
||||
CpuCopy16(sBoxTitleColors[wallpaperId], &gPlttBufferUnfaded[gStorage->boxTitleAltPalOffset], PLTT_SIZEOF(2));
|
||||
}
|
||||
|
||||
static s16 GetBoxTitleBaseX(const u8 *string)
|
||||
|
||||
@@ -118,7 +118,7 @@ static bool8 MultiMove_Function_Start(void)
|
||||
{
|
||||
case 0:
|
||||
HideBg(0);
|
||||
LoadMonIconPalettesAt(0x80);
|
||||
LoadMonIconPalettesAt(BG_PLTT_ID(8));
|
||||
sMultiMove->state++;
|
||||
break;
|
||||
case 1:
|
||||
@@ -167,7 +167,7 @@ static bool8 MultiMove_Function_Single(void)
|
||||
if (!IsDma3ManagerBusyWithBgCopy())
|
||||
{
|
||||
SetCursorPriorityTo1();
|
||||
LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
|
||||
ShowBg(0);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -273,7 +273,7 @@ static bool8 MultiMove_Function_PlaceMons(void)
|
||||
case 3:
|
||||
if (!IsDma3ManagerBusyWithBgCopy())
|
||||
{
|
||||
LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
|
||||
SetCursorPriorityTo1();
|
||||
ShowBg(0);
|
||||
return FALSE;
|
||||
@@ -703,8 +703,7 @@ void CreateItemIconSprites(void)
|
||||
LoadCompressedSpriteSheet(&spriteSheet);
|
||||
gStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * TILE_SIZE_4BPP + (void *)(OBJ_VRAM0);
|
||||
gStorage->itemIcons[i].palIndex = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i);
|
||||
gStorage->itemIcons[i].palIndex *= 16;
|
||||
gStorage->itemIcons[i].palIndex += 0x100;
|
||||
gStorage->itemIcons[i].palIndex = OBJ_PLTT_ID(gStorage->itemIcons[i].palIndex);
|
||||
spriteTemplate.tileTag = GFXTAG_ITEM_ICON_0 + i;
|
||||
spriteTemplate.paletteTag = PALTAG_ITEM_ICON_0 + i;
|
||||
spriteId = CreateSprite(&spriteTemplate, 0, 0, 11);
|
||||
@@ -1060,7 +1059,7 @@ static void LoadItemIconGfx(u8 id, const u32 *itemTiles, const u32 *itemPal)
|
||||
|
||||
CpuFastCopy(gStorage->itemIconBuffer, gStorage->itemIcons[id].tiles, 0x200);
|
||||
LZ77UnCompWram(itemPal, gStorage->itemIconBuffer);
|
||||
LoadPalette(gStorage->itemIconBuffer, gStorage->itemIcons[id].palIndex, 0x20);
|
||||
LoadPalette(gStorage->itemIconBuffer, gStorage->itemIcons[id].palIndex, PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
static void SetItemIconAffineAnim(u8 id, u8 animNum)
|
||||
@@ -1129,12 +1128,12 @@ static void SetItemIconActive(u8 id, bool8 show)
|
||||
|
||||
static const u32 *GetItemIconPic(u16 itemId)
|
||||
{
|
||||
return GetItemIconGfxPtr(itemId, 0);
|
||||
return GetItemIconGfxPtr(itemId, ITEMICON_TILES);
|
||||
}
|
||||
|
||||
static const u32 *GetItemIconPalette(u16 itemId)
|
||||
{
|
||||
return GetItemIconGfxPtr(itemId, 1);
|
||||
return GetItemIconGfxPtr(itemId, ITEMICON_PAL);
|
||||
}
|
||||
|
||||
void PrintItemDescription(void)
|
||||
|
||||
@@ -534,7 +534,7 @@ static void Task_InitPokeStorage(u8 taskId)
|
||||
PutWindowTilemap(0);
|
||||
ClearWindowTilemap(1);
|
||||
CpuFill32(0, (void *)VRAM, 0x200);
|
||||
LoadUserWindowGfx(1, 0xB, 0xE0);
|
||||
LoadUserWindowGfx(1, 0xB, BG_PLTT_ID(14));
|
||||
break;
|
||||
case 3:
|
||||
ResetAllBgCoords();
|
||||
@@ -2147,13 +2147,13 @@ static void LoadsMiscSpritePalette(void)
|
||||
|
||||
static void InitPalettesAndSprites(void)
|
||||
{
|
||||
LoadPalette(gPokeStorageInterface_Pal, 0, 0x20);
|
||||
LoadPalette(gPokeStorageInterface_NoDisplayMon_Pal, 0x20, 0x20);
|
||||
LoadPalette(sItemInfoFrame_Pal, 0xF0, 0x20);
|
||||
LoadPalette(gPokeStorageInterface_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
LoadPalette(gPokeStorageInterface_NoDisplayMon_Pal, BG_PLTT_ID(2), PLTT_SIZE_4BPP);
|
||||
LoadPalette(sItemInfoFrame_Pal, BG_PLTT_ID(15), sizeof(sItemInfoFrame_Pal));
|
||||
if (gStorage->boxOption != OPTION_MOVE_ITEMS)
|
||||
LoadPalette(sScrollingBg_Pal, 0x30, sizeof(sScrollingBg_Pal));
|
||||
LoadPalette(sScrollingBg_Pal, BG_PLTT_ID(3), sizeof(sScrollingBg_Pal));
|
||||
else
|
||||
LoadPalette(sScrollingBgMoveItems_Pal, 0x30, sizeof(sScrollingBgMoveItems_Pal));
|
||||
LoadPalette(sScrollingBgMoveItems_Pal, BG_PLTT_ID(3), sizeof(sScrollingBgMoveItems_Pal));
|
||||
|
||||
SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(30));
|
||||
CreateDisplayMonSprite();
|
||||
@@ -2256,7 +2256,7 @@ static void CreateDisplayMonSprite(void)
|
||||
break;
|
||||
|
||||
gStorage->displayMonSprite = &gSprites[spriteId];
|
||||
gStorage->displayMonPalOffset = palSlot * 16 + 0x100;
|
||||
gStorage->displayMonPalOffset = OBJ_PLTT_ID(palSlot);
|
||||
gStorage->displayMonTilePtr = (void *)OBJ_VRAM0 + tileStart * 32;
|
||||
} while (FALSE);
|
||||
|
||||
@@ -2277,7 +2277,7 @@ static void LoadDisplayMonGfx(u16 species, u32 personality)
|
||||
HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gStorage->tileBuffer, species, personality);
|
||||
LZ77UnCompWram(gStorage->displayMonPalette, gStorage->displayMonPalBuffer);
|
||||
CpuCopy32(gStorage->tileBuffer, gStorage->displayMonTilePtr, 0x800);
|
||||
LoadPalette(gStorage->displayMonPalBuffer, gStorage->displayMonPalOffset, 0x20);
|
||||
LoadPalette(gStorage->displayMonPalBuffer, gStorage->displayMonPalOffset, PLTT_SIZE_4BPP);
|
||||
gStorage->displayMonSprite->invisible = FALSE;
|
||||
}
|
||||
else
|
||||
@@ -2337,7 +2337,7 @@ static void UpdateWaveformAnimation(void)
|
||||
static void InitSupplementalTilemaps(void)
|
||||
{
|
||||
LZ77UnCompWram(gPokeStoragePartyMenu_Tilemap, gStorage->partyMenuTilemapBuffer);
|
||||
LoadPalette(gPokeStoragePartyMenu_Pal, 0x10, 0x20);
|
||||
LoadPalette(gPokeStoragePartyMenu_Pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
TilemapUtil_SetTilemap(TILEMAP_PARTY_MENU, 1, gStorage->partyMenuTilemapBuffer, 12, 22);
|
||||
TilemapUtil_SetTilemap(TILEMAP_CLOSE_BUTTON, 1, sCloseBoxButton_Tilemap, 9, 4);
|
||||
TilemapUtil_SetPos(TILEMAP_PARTY_MENU, 10, 0);
|
||||
@@ -2545,7 +2545,7 @@ static bool8 DoShowPartyMenu(void)
|
||||
static void InitPokeStorageBg0(void)
|
||||
{
|
||||
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(29));
|
||||
LoadStdWindowGfx(1, 2, 0xD0);
|
||||
LoadStdWindowGfx(1, 2, BG_PLTT_ID(13));
|
||||
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17);
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
}
|
||||
|
||||
@@ -2006,22 +2006,22 @@ static u8 PokeSum_HandleLoadBgGfx(void)
|
||||
switch (sMonSummaryScreen->loadBgGfxStep)
|
||||
{
|
||||
case 0:
|
||||
LoadPalette(gSummaryScreen_Bg_Pal, 0, 0x20 * 5);
|
||||
LoadPalette(gSummaryScreen_Bg_Pal, BG_PLTT_ID(0), 5 * PLTT_SIZE_4BPP);
|
||||
if (IsMonShiny(&sMonSummaryScreen->currentMon) == TRUE && !sMonSummaryScreen->isEgg)
|
||||
{
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], 0, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], 0x10, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], 0, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], 0x10, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
break;
|
||||
case 1:
|
||||
ListMenuLoadStdPalAt(0x60, 1);
|
||||
LoadPalette(sTextHeaderPalette, 0x70, 0x20);
|
||||
ListMenuLoadStdPalAt(BG_PLTT_ID(6), 1);
|
||||
LoadPalette(sTextHeaderPalette, BG_PLTT_ID(7), PLTT_SIZE_4BPP);
|
||||
break;
|
||||
case 2:
|
||||
ResetTempTileDataBuffers();
|
||||
@@ -2039,7 +2039,7 @@ static u8 PokeSum_HandleLoadBgGfx(void)
|
||||
break;
|
||||
|
||||
default:
|
||||
LoadPalette(sTextMovesPalette, 0x80, 0x20);
|
||||
LoadPalette(sTextMovesPalette, BG_PLTT_ID(8), PLTT_SIZE_4BPP);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -2919,11 +2919,11 @@ static void PokeSum_DrawMoveTypeIcons(void)
|
||||
if (sMonSummaryScreen->moveIds[i] == MOVE_NONE)
|
||||
continue;
|
||||
|
||||
BlitMoveInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[i] + 1, 3, GetMoveNamePrinterYpos(i));
|
||||
BlitMenuInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[i] + 1, 3, GetMoveNamePrinterYpos(i));
|
||||
}
|
||||
|
||||
if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE)
|
||||
BlitMoveInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[4] + 1, 3, GetMoveNamePrinterYpos(4));
|
||||
BlitMenuInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[4] + 1, 3, GetMoveNamePrinterYpos(4));
|
||||
}
|
||||
|
||||
static void PokeSum_PrintPageHeaderText(u8 curPageIndex)
|
||||
@@ -3362,10 +3362,10 @@ static void PokeSum_PrintMonTypeIcons(void)
|
||||
case PSS_PAGE_INFO:
|
||||
if (!sMonSummaryScreen->isEgg)
|
||||
{
|
||||
BlitMoveInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[0] + 1, 47, 35);
|
||||
BlitMenuInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[0] + 1, 47, 35);
|
||||
|
||||
if (sMonSummaryScreen->monTypes[0] != sMonSummaryScreen->monTypes[1])
|
||||
BlitMoveInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[1] + 1, 83, 35);
|
||||
BlitMenuInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[1] + 1, 83, 35);
|
||||
}
|
||||
break;
|
||||
case PSS_PAGE_SKILLS:
|
||||
@@ -3374,10 +3374,10 @@ static void PokeSum_PrintMonTypeIcons(void)
|
||||
break;
|
||||
case PSS_PAGE_MOVES_INFO:
|
||||
FillWindowPixelBuffer(sMonSummaryScreen->windowIds[6], 0);
|
||||
BlitMoveInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[0] + 1, 0, 3);
|
||||
BlitMenuInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[0] + 1, 0, 3);
|
||||
|
||||
if (sMonSummaryScreen->monTypes[0] != sMonSummaryScreen->monTypes[1])
|
||||
BlitMoveInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[1] + 1, 36, 3);
|
||||
BlitMenuInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[1] + 1, 36, 3);
|
||||
|
||||
PutWindowTilemap(sMonSummaryScreen->windowIds[6]);
|
||||
break;
|
||||
@@ -5078,13 +5078,13 @@ static void Task_PokeSum_SwitchDisplayedPokemon(u8 taskId)
|
||||
|
||||
if (IsMonShiny(&sMonSummaryScreen->currentMon) == TRUE && !sMonSummaryScreen->isEgg)
|
||||
{
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], 0, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], 0x10, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
}
|
||||
else
|
||||
{
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], 0, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], 0x10, 0x20);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
|
||||
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
sMonSummaryScreen->switchMonTaskState++;
|
||||
|
||||
+10
-11
@@ -512,7 +512,7 @@ void sub_8110FCC(void)
|
||||
|
||||
static bool8 FieldCB2_QuestLogStartPlaybackWithWarpExit(void)
|
||||
{
|
||||
LoadPalette(GetTextWindowPalette(4), 0xF0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(4), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
SetQuestLogState(QL_STATE_PLAYBACK);
|
||||
FieldCB_DefaultWarpExit();
|
||||
sPlaybackControl = (struct PlaybackControl){};
|
||||
@@ -522,7 +522,7 @@ static bool8 FieldCB2_QuestLogStartPlaybackWithWarpExit(void)
|
||||
|
||||
static bool8 FieldCB2_QuestLogStartPlaybackStandingInPlace(void)
|
||||
{
|
||||
LoadPalette(GetTextWindowPalette(4), 0xF0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(4), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
SetQuestLogState(QL_STATE_PLAYBACK);
|
||||
FieldCB_WarpExitFadeFromBlack();
|
||||
sPlaybackControl = (struct PlaybackControl){};
|
||||
@@ -1133,12 +1133,12 @@ void QuestLog_InitPalettesBackup(void)
|
||||
|
||||
void QuestLog_BackUpPalette(u16 offset, u16 size)
|
||||
{
|
||||
CpuCopy16(gPlttBufferUnfaded + offset, sPalettesBackup + offset, size * 2);
|
||||
CpuCopy16(&gPlttBufferUnfaded[offset], &sPalettesBackup[offset], PLTT_SIZEOF(size));
|
||||
}
|
||||
|
||||
static bool8 FieldCB2_FinalScene(void)
|
||||
{
|
||||
LoadPalette(GetTextWindowPalette(4), 0xF0, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(4), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
DrawPreviouslyOnQuestHeader(0);
|
||||
FieldCB_WarpExitFadeFromBlack();
|
||||
CreateTask(Task_FinalScene_WaitFade, 0xFF);
|
||||
@@ -1264,13 +1264,12 @@ static bool8 sub_81121D8(u8 taskId)
|
||||
if (data[1] > 15)
|
||||
return TRUE;
|
||||
|
||||
CopyPaletteInvertedTint(gPlttBufferUnfaded + 0x01, gPlttBufferFaded + 0x01, 0xDF, 0x0F - data[1]);
|
||||
CopyPaletteInvertedTint(gPlttBufferUnfaded + 0x100, gPlttBufferFaded + 0x100, 0x100, 0x0F - data[1]);
|
||||
CopyPaletteInvertedTint(&gPlttBufferUnfaded[BG_PLTT_ID(0) + 1], &gPlttBufferFaded[BG_PLTT_ID(0) + 1], 0xDF, 0x0F - data[1]);
|
||||
CopyPaletteInvertedTint(&gPlttBufferUnfaded[OBJ_PLTT_ID(0)], &gPlttBufferFaded[OBJ_PLTT_ID(0)], 0x100, 0x0F - data[1]);
|
||||
FillWindowPixelRect(sWindowIds[WIN_TOP_BAR],
|
||||
0x00, 0,
|
||||
sWindowTemplates[WIN_TOP_BAR].height * 8 - 1 - data[1],
|
||||
sWindowTemplates[WIN_TOP_BAR].width * 8,
|
||||
1);
|
||||
sWindowTemplates[WIN_TOP_BAR].width * 8, 1);
|
||||
FillWindowPixelRect(sWindowIds[WIN_BOTTOM_BAR],
|
||||
0x00, 0,
|
||||
data[1],
|
||||
@@ -1286,9 +1285,9 @@ static void QL_SlightlyDarkenSomePals(void)
|
||||
u16 *buffer = Alloc(PLTT_SIZE);
|
||||
CpuCopy16(sPalettesBackup, buffer, PLTT_SIZE);
|
||||
SlightlyDarkenPalsInWeather(sPalettesBackup, sPalettesBackup, 13 * 16);
|
||||
SlightlyDarkenPalsInWeather(sPalettesBackup + 17 * 16, sPalettesBackup + 17 * 16, 1 * 16);
|
||||
SlightlyDarkenPalsInWeather(sPalettesBackup + 22 * 16, sPalettesBackup + 22 * 16, 4 * 16);
|
||||
SlightlyDarkenPalsInWeather(sPalettesBackup + 27 * 16, sPalettesBackup + 27 * 16, 5 * 16);
|
||||
SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(1)], &sPalettesBackup[OBJ_PLTT_ID(1)], 1 * 16);
|
||||
SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(6)], &sPalettesBackup[OBJ_PLTT_ID(6)], 4 * 16);
|
||||
SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(11)], &sPalettesBackup[OBJ_PLTT_ID(11)], 5 * 16);
|
||||
CpuCopy16(sPalettesBackup, gPlttBufferUnfaded, PLTT_SIZE);
|
||||
CpuCopy16(buffer, sPalettesBackup, PLTT_SIZE);
|
||||
Free(buffer);
|
||||
|
||||
+21
-21
@@ -961,8 +961,8 @@ static void TintMapEdgesPalette(void)
|
||||
u16 mapEdgesPal[16];
|
||||
CpuCopy16(&sRegionMap_Pal[0x20], mapEdgesPal, sizeof(mapEdgesPal));
|
||||
RegionMap_DarkenPalette(mapEdgesPal, NELEMS(mapEdgesPal), 95);
|
||||
LoadPalette(mapEdgesPal, 0x20, sizeof(mapEdgesPal));
|
||||
LoadPalette(&sRegionMap_Pal[0x2F], 0x2F, sizeof(sRegionMap_Pal[0x2F]));
|
||||
LoadPalette(mapEdgesPal, BG_PLTT_ID(2), sizeof(mapEdgesPal));
|
||||
LoadPalette(&sRegionMap_Pal[0x2F], BG_PLTT_ID(2) + 15, PLTT_SIZEOF(1));
|
||||
}
|
||||
|
||||
static void InitRegionMap(u8 type)
|
||||
@@ -1105,18 +1105,18 @@ static bool8 LoadRegionMapGfx(void)
|
||||
switch (sRegionMap->loadGfxState)
|
||||
{
|
||||
case 0:
|
||||
LoadPalette(sTopBar_Pal, 0xC0, sizeof(sTopBar_Pal));
|
||||
LoadPalette(sTopBar_Pal, BG_PLTT_ID(12), sizeof(sTopBar_Pal));
|
||||
break;
|
||||
case 1:
|
||||
LoadPalette(sRegionMap_Pal, 0, sizeof(sRegionMap_Pal));
|
||||
TintMapEdgesPalette();
|
||||
if (sRegionMap->type != REGIONMAP_TYPE_NORMAL)
|
||||
{
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 0, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 1, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 2, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 3, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 4, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(0), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(1), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(2), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(3), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(4), sizeof(sTopBar_Pal[15]));
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
@@ -1972,7 +1972,7 @@ static bool8 LoadMapPreviewGfx(void)
|
||||
LoadBgTiles(2, sDungeonMapPreview->tiles, sizeof(sDungeonMapPreview->tiles), 0);
|
||||
break;
|
||||
case 3:
|
||||
LoadPalette(sDungeonMapPreview->mapPreviewInfo->palptr, 0xD0, 0x60);
|
||||
LoadPalette(sDungeonMapPreview->mapPreviewInfo->palptr, BG_PLTT_ID(13), 3 * PLTT_SIZE_4BPP);
|
||||
break;
|
||||
default:
|
||||
return TRUE;
|
||||
@@ -2073,7 +2073,7 @@ static void Task_DrawDungeonMapPreviewFlavorText(u8 taskId)
|
||||
sDungeonMapPreview->blue -= 5;
|
||||
CpuCopy16(sDungeonMapPreview->mapPreviewInfo->palptr, sDungeonMapPreview->palette, 0x60);
|
||||
TintPalette_CustomTone(sDungeonMapPreview->palette, 48, sDungeonMapPreview->red, sDungeonMapPreview->green, sDungeonMapPreview->blue);
|
||||
LoadPalette(sDungeonMapPreview->palette, 0xD0, sizeof(sDungeonMapPreview->palette));
|
||||
LoadPalette(sDungeonMapPreview->palette, BG_PLTT_ID(13), sizeof(sDungeonMapPreview->palette));
|
||||
}
|
||||
sDungeonMapPreview->timer++;
|
||||
break;
|
||||
@@ -2416,19 +2416,19 @@ static void Task_MapOpenAnim(u8 taskId)
|
||||
sMapOpenCloseAnim->openState++;
|
||||
break;
|
||||
case 10:
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 0, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 1, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 2, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 3, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], 16 * 4, sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(0), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(1), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(2), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(3), sizeof(sTopBar_Pal[15]));
|
||||
LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(4), sizeof(sTopBar_Pal[15]));
|
||||
sMapOpenCloseAnim->openState++;
|
||||
break;
|
||||
case 11:
|
||||
FillBgTilemapBufferRect(1, 0x002, 0, 1, 1, 1, 0x2);
|
||||
FillBgTilemapBufferRect(1, 0x003, 1, 1, 1, 1, 0x2);
|
||||
FillBgTilemapBufferRect(1, 0x03E, 28, 1, 1, 1, 0x2);
|
||||
FillBgTilemapBufferRect(1, 0x03F, 29, 1, 1, 1, 0x2);
|
||||
FillBgTilemapBufferRect(1, 0x03D, 2, 1, 26, 1, 0x2);
|
||||
FillBgTilemapBufferRect(1, 0x002, 0, 1, 1, 1, 2);
|
||||
FillBgTilemapBufferRect(1, 0x003, 1, 1, 1, 1, 2);
|
||||
FillBgTilemapBufferRect(1, 0x03E, 28, 1, 1, 1, 2);
|
||||
FillBgTilemapBufferRect(1, 0x03F, 29, 1, 1, 1, 2);
|
||||
FillBgTilemapBufferRect(1, 0x03D, 2, 1, 26, 1, 2);
|
||||
CopyBgTilemapBufferToVram(1);
|
||||
m4aSongNumStop(SE_CARD_OPEN);
|
||||
PlaySE(SE_ROTATING_GATE);
|
||||
@@ -2569,7 +2569,7 @@ static void Task_MapCloseAnim(u8 taskId)
|
||||
sMapOpenCloseAnim->closeState++;
|
||||
break;
|
||||
case 2:
|
||||
LoadPalette(sRegionMap_Pal, 0, sizeof(sRegionMap_Pal));
|
||||
LoadPalette(sRegionMap_Pal, BG_PLTT_ID(0), sizeof(sRegionMap_Pal));
|
||||
sMapOpenCloseAnim->closeState++;
|
||||
break;
|
||||
case 3:
|
||||
|
||||
+5
-3
@@ -1140,6 +1140,8 @@ void Task_WaitMuseumFossilPic(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
#define FOSSIL_PIC_PAL_NUM 13
|
||||
|
||||
bool8 OpenMuseumFossilPic(void)
|
||||
{
|
||||
u8 spriteId;
|
||||
@@ -1151,19 +1153,19 @@ bool8 OpenMuseumFossilPic(void)
|
||||
if (gSpecialVar_0x8004 == SPECIES_KABUTOPS)
|
||||
{
|
||||
LoadSpriteSheets(sMuseumKabutopsSprSheets);
|
||||
LoadPalette(sMuseumKabutopsSprPalette, 0x1D0, 0x20);
|
||||
LoadPalette(sMuseumKabutopsSprPalette, OBJ_PLTT_ID(FOSSIL_PIC_PAL_NUM), sizeof(sMuseumKabutopsSprPalette));
|
||||
}
|
||||
else if (gSpecialVar_0x8004 == SPECIES_AERODACTYL)
|
||||
{
|
||||
LoadSpriteSheets(sMuseumAerodactylSprSheets);
|
||||
LoadPalette(sMuseumAerodactylSprPalette, 0x1D0, 0x20);
|
||||
LoadPalette(sMuseumAerodactylSprPalette, OBJ_PLTT_ID(FOSSIL_PIC_PAL_NUM), sizeof(sMuseumAerodactylSprPalette));
|
||||
}
|
||||
else
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
spriteId = CreateSprite(&sMuseumFossilSprTemplate, gSpecialVar_0x8005 * 8 + 40, gSpecialVar_0x8006 * 8 + 40, 0);
|
||||
gSprites[spriteId].oam.paletteNum = 13;
|
||||
gSprites[spriteId].oam.paletteNum = FOSSIL_PIC_PAL_NUM;
|
||||
taskId = CreateTask(Task_WaitMuseumFossilPic, 80);
|
||||
gTasks[taskId].tWindowId = CreateWindowFromRect(gSpecialVar_0x8005, gSpecialVar_0x8006, 8, 8);
|
||||
gTasks[taskId].tState = 0;
|
||||
|
||||
+2
-6
@@ -204,15 +204,11 @@ static void CB2_SetUpSeagallopScene(void)
|
||||
case 3:
|
||||
LoadBgTiles(3, sWaterTiles, sizeof(sWaterTiles), 0);
|
||||
if (GetDirectionOfTravel() == DIRN_EASTBOUND)
|
||||
{
|
||||
CopyToBgTilemapBufferRect(3, sWaterTilemap_EB, 0, 0, 32, 32);
|
||||
}
|
||||
else
|
||||
{
|
||||
CopyToBgTilemapBufferRect(3, sWaterTilemap_WB, 0, 0, 32, 32);
|
||||
}
|
||||
LoadPalette(sWaterPal, 0x40, 0x20);
|
||||
LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20);
|
||||
LoadPalette(sWaterPal, BG_PLTT_ID(4), sizeof(sWaterPal));
|
||||
LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
|
||||
gMain.state++;
|
||||
break;
|
||||
case 4:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user