Sync palette macros

This commit is contained in:
GriffinR
2023-05-23 13:02:51 -04:00
parent f93d5a8ae1
commit dcdb9024d8
117 changed files with 1248 additions and 1251 deletions
+11
View File
@@ -0,0 +1,11 @@
JASC-PAL
0100
8
148 197 172
16 16 16
32 32 32
49 49 49
65 65 65
82 82 82
98 98 98
115 115 115
@@ -1,14 +1,6 @@
JASC-PAL JASC-PAL
0100 0100
16 8
148 197 172
16 16 16
32 32 32
49 49 49
65 65 65
82 82 82
98 98 98
115 115 115
131 131 131 131 131 131
148 148 148 148 148 148
164 164 164 164 164 164

Before

Width:  |  Height:  |  Size: 258 B

After

Width:  |  Height:  |  Size: 258 B

+11 -7
View File
@@ -31,14 +31,12 @@
#define IWRAM_START 0x03000000 #define IWRAM_START 0x03000000
#define IWRAM_END (IWRAM_START + 0x8000) #define IWRAM_END (IWRAM_START + 0x8000)
#define PLTT 0x5000000 #define PLTT 0x5000000
#define PLTT_SIZE 0x400 #define BG_PLTT PLTT
#define BG_PLTT_SIZE 0x200
#define BG_PLTT PLTT #define OBJ_PLTT (PLTT + BG_PLTT_SIZE)
#define BG_PLTT_SIZE 0x200
#define OBJ_PLTT (PLTT + 0x200)
#define OBJ_PLTT_SIZE 0x200 #define OBJ_PLTT_SIZE 0x200
#define PLTT_SIZE (BG_PLTT_SIZE + OBJ_PLTT_SIZE)
#define VRAM 0x6000000 #define VRAM 0x6000000
#define VRAM_SIZE 0x18000 #define VRAM_SIZE 0x18000
@@ -79,6 +77,12 @@
#define TOTAL_OBJ_TILE_COUNT 1024 #define TOTAL_OBJ_TILE_COUNT 1024
#define PLTT_SIZEOF(n) ((n) * sizeof(u16))
#define PLTT_SIZE_4BPP PLTT_SIZEOF(16)
#define PLTT_SIZE_8BPP PLTT_SIZEOF(256)
#define PLTT_OFFSET_4BPP(n) ((n) * PLTT_SIZE_4BPP)
// Some functions are strictly inline asm // Some functions are strictly inline asm
#define NAKED __attribute__((naked)) #define NAKED __attribute__((naked))
#define UNUSED __attribute__((unused)) #define UNUSED __attribute__((unused))
+1 -1
View File
@@ -2753,7 +2753,7 @@ extern const u32 gItemIcon_QuestionMark[];
extern const u32 gItemIconPalette_QuestionMark[]; extern const u32 gItemIconPalette_QuestionMark[];
// fame_checker // fame_checker
extern const u16 gFameCheckerBgPals[0x30]; extern const u16 gFameCheckerBgPals[][16];
extern const u16 gFameCheckerBgTiles[0xa50]; extern const u16 gFameCheckerBgTiles[0xa50];
extern const u16 gFameCheckerBg3Tilemap[0x400]; extern const u16 gFameCheckerBg3Tilemap[0x400];
extern const u16 gFameCheckerBg2Tilemap[0x400]; extern const u16 gFameCheckerBg2Tilemap[0x400];
+18 -2
View File
@@ -8,8 +8,7 @@
#define gPaletteFade_delay (gPaletteFade.multipurpose2) // normal and hardware fade #define gPaletteFade_delay (gPaletteFade.multipurpose2) // normal and hardware fade
#define gPaletteFade_submode (gPaletteFade.multipurpose2) // fast fade #define gPaletteFade_submode (gPaletteFade.multipurpose2) // fast fade
#define PLTT_BUFFER_SIZE 0x200 #define PLTT_BUFFER_SIZE (PLTT_SIZE / sizeof(u16))
#define PLTT_DECOMP_BUFFER_SIZE (PLTT_BUFFER_SIZE * 2)
#define PALETTE_FADE_STATUS_DELAY 2 #define PALETTE_FADE_STATUS_DELAY 2
#define PALETTE_FADE_STATUS_ACTIVE 1 #define PALETTE_FADE_STATUS_ACTIVE 1
@@ -20,6 +19,13 @@
#define PALETTES_OBJECTS 0xFFFF0000 #define PALETTES_OBJECTS 0xFFFF0000
#define PALETTES_ALL (PALETTES_BG | PALETTES_OBJECTS) #define PALETTES_ALL (PALETTES_BG | PALETTES_OBJECTS)
#define PLTT_ID(n) ((n) * 16)
#define BG_PLTT_OFFSET 0x000
#define OBJ_PLTT_OFFSET 0x100
#define BG_PLTT_ID(n) (BG_PLTT_OFFSET + PLTT_ID(n))
#define OBJ_PLTT_ID(n) (OBJ_PLTT_OFFSET + PLTT_ID(n))
#define OBJ_PLTT_ID2(n) (PLTT_ID((n) + 16))
enum enum
{ {
FAST_FADE_IN_FROM_WHITE, FAST_FADE_IN_FROM_WHITE,
@@ -80,4 +86,14 @@ void BlendPalettesGradually(u32 selectedPalettes, s8 delay, u8 coeff, u8 coeffTa
bool32 IsBlendPalettesGraduallyTaskActive(u8 var); bool32 IsBlendPalettesGraduallyTaskActive(u8 var);
void DestroyBlendPalettesGraduallyTask(void); void DestroyBlendPalettesGraduallyTask(void);
static inline void SetBackdropFromColor(u16 color)
{
FillPalette(color, 0, PLTT_SIZEOF(1));
}
static inline void SetBackdropFromPalette(const u16 *palette)
{
LoadPalette(palette, 0, PLTT_SIZEOF(1));
}
#endif // GUARD_PALETTE_H #endif // GUARD_PALETTE_H
+54 -54
View File
@@ -20,27 +20,27 @@ static const u8 sTextColors[][3] = {
static const struct WindowTemplate sDefaultBagWindowsStd[] = { static const struct WindowTemplate sDefaultBagWindowsStd[] = {
{ {
.bg = 0, .bg = 0,
.tilemapLeft = 0x0b, .tilemapLeft = 11,
.tilemapTop = 0x01, .tilemapTop = 1,
.width = 0x12, .width = 18,
.height = 0x0c, .height = 12,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x008a .baseBlock = 0x008a
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x05, .tilemapLeft = 5,
.tilemapTop = 0x0e, .tilemapTop = 14,
.width = 0x19, .width = 25,
.height = 0x06, .height = 6,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x0162 .baseBlock = 0x0162
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x01, .tilemapTop = 1,
.width = 0x09, .width = 9,
.height = 0x02, .height = 2,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x01f8 .baseBlock = 0x01f8
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -48,27 +48,27 @@ static const struct WindowTemplate sDefaultBagWindowsStd[] = {
static const struct WindowTemplate sDefaultBagWindowsDeposit[] = { static const struct WindowTemplate sDefaultBagWindowsDeposit[] = {
{ {
.bg = 0, .bg = 0,
.tilemapLeft = 0x0b, .tilemapLeft = 11,
.tilemapTop = 0x01, .tilemapTop = 1,
.width = 0x12, .width = 18,
.height = 0x0c, .height = 12,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x008a .baseBlock = 0x008a
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x05, .tilemapLeft = 5,
.tilemapTop = 0x0e, .tilemapTop = 14,
.width = 0x19, .width = 25,
.height = 0x06, .height = 6,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x0162 .baseBlock = 0x0162
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x01, .tilemapTop = 1,
.width = 0x08, .width = 8,
.height = 0x02, .height = 2,
.paletteNum = 0x0C, .paletteNum = 12,
.baseBlock = 0x01f8 .baseBlock = 0x01f8
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -80,7 +80,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 5, .width = 5,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x242 .baseBlock = 0x242
}, { }, {
.bg = 0, .bg = 0,
@@ -88,7 +88,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 9, .tilemapTop = 9,
.width = 12, .width = 12,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x242 .baseBlock = 0x242
}, { }, {
.bg = 0, .bg = 0,
@@ -96,7 +96,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 1, .tilemapTop = 1,
.width = 8, .width = 8,
.height = 3, .height = 3,
.paletteNum = 0xC, .paletteNum = 12,
.baseBlock = 0x272 .baseBlock = 0x272
}, { }, {
.bg = 0, .bg = 0,
@@ -104,7 +104,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 6, .width = 6,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x28a .baseBlock = 0x28a
}, { }, {
.bg = 0, .bg = 0,
@@ -112,7 +112,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 9, .tilemapTop = 9,
.width = 6, .width = 6,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x28a .baseBlock = 0x28a
}, { }, {
.bg = 0, .bg = 0,
@@ -120,7 +120,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 26, .width = 26,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x2a2 .baseBlock = 0x2a2
}, { }, {
.bg = 0, .bg = 0,
@@ -128,7 +128,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 14, .width = 14,
.height = 4, .height = 4,
.paletteNum = 0xC, .paletteNum = 12,
.baseBlock = 0x2a2 .baseBlock = 0x2a2
}, { }, {
.bg = 0, .bg = 0,
@@ -136,7 +136,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 15, .width = 15,
.height = 4, .height = 4,
.paletteNum = 0xC, .paletteNum = 12,
.baseBlock = 0x2da .baseBlock = 0x2da
}, { }, {
.bg = 0, .bg = 0,
@@ -144,7 +144,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 16, .width = 16,
.height = 4, .height = 4,
.paletteNum = 0xC, .paletteNum = 12,
.baseBlock = 0x316 .baseBlock = 0x316
}, { }, {
.bg = 0, .bg = 0,
@@ -152,7 +152,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 23, .width = 23,
.height = 4, .height = 4,
.paletteNum = 0xC, .paletteNum = 12,
.baseBlock = 0x356 .baseBlock = 0x356
}, { }, {
.bg = 0, .bg = 0,
@@ -160,7 +160,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 17, .tilemapTop = 17,
.width = 7, .width = 7,
.height = 2, .height = 2,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x20a .baseBlock = 0x20a
}, { }, {
.bg = 0, .bg = 0,
@@ -168,7 +168,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 7, .width = 7,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x20a .baseBlock = 0x20a
}, { }, {
.bg = 0, .bg = 0,
@@ -176,7 +176,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 13, .tilemapTop = 13,
.width = 7, .width = 7,
.height = 6, .height = 6,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x20a .baseBlock = 0x20a
}, { }, {
.bg = 0, .bg = 0,
@@ -184,7 +184,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 11, .tilemapTop = 11,
.width = 7, .width = 7,
.height = 8, .height = 8,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x20a .baseBlock = 0x20a
} }
}; };
@@ -202,10 +202,10 @@ void InitBagWindows(void)
else else
InitWindows(sDefaultBagWindowsDeposit); InitWindows(sDefaultBagWindowsDeposit);
DeactivateAllTextPrinters(); DeactivateAllTextPrinters();
LoadUserWindowGfx(0, 0x64, 0xE0); LoadUserWindowGfx(0, 0x64, BG_PLTT_ID(14));
LoadMenuMessageWindowGfx(0, 0x6D, 0xD0); LoadMenuMessageWindowGfx(0, 0x6D, BG_PLTT_ID(13));
LoadStdWindowGfx(0, 0x81, 0xC0); LoadStdWindowGfx(0, 0x81, BG_PLTT_ID(12));
LoadPalette(sBagWindowPalF, 0xF0, 0x20); LoadPalette(sBagWindowPalF, BG_PLTT_ID(15), sizeof(sBagWindowPalF));
for (i = 0; i < 3; i++) for (i = 0; i < 3; i++)
{ {
FillWindowPixelBuffer(i, 0x00); FillWindowPixelBuffer(i, 0x00);
@@ -232,7 +232,7 @@ void BagPrintTextOnWin1CenteredColor0(const u8 * str, u8 unused)
void BagDrawDepositItemTextBox(void) void BagDrawDepositItemTextBox(void)
{ {
u32 x; u32 x;
DrawStdFrameWithCustomTileAndPalette(2, FALSE, 0x081, 0x0C); DrawStdFrameWithCustomTileAndPalette(2, FALSE, 0x081, 12);
x = 0x40 - GetStringWidth(FONT_SMALL, gText_DepositItem, 0); x = 0x40 - GetStringWidth(FONT_SMALL, gText_DepositItem, 0);
AddTextPrinterParameterized(2, FONT_SMALL, gText_DepositItem, x / 2, 1, 0, NULL); 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]); sOpenWindows[whichWindow] = AddWindow(&sWindowTemplates[whichWindow + nItems]);
if (whichWindow != 6) if (whichWindow != 6)
{ {
DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x064, 0xE); DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x064, 14);
} }
else else
{ {
DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x081, 0xC); DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x081, 12);
} }
ScheduleBgCopyTilemapToVram(0); ScheduleBgCopyTilemapToVram(0);
} }
@@ -293,12 +293,12 @@ u8 GetBagWindow(u8 whichWindow)
void BagCreateYesNoMenuBottomRight(u8 taskId, const struct YesNoFuncTable * ptrs) 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) 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) void BagPrintMoneyAmount(void)
@@ -308,5 +308,5 @@ void BagPrintMoneyAmount(void)
void BagDrawTextBoxOnWindow(u8 windowId) void BagDrawTextBoxOnWindow(u8 windowId)
{ {
DrawTextBorderOuter(windowId, 0x064, 0x0E); DrawTextBorderOuter(windowId, 0x064, 14);
} }
+7 -17
View File
@@ -654,8 +654,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X); SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X);
SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y);
LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], animBg.paletteId * 16, 0x20); LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + animBg.paletteId * 32), 0x20); 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, CopyBattlerSpriteToBg(1, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles,
animBg.bgTilemap, animBg.tilesOffset); 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_BG2HOFS, gBattle_BG2_X);
SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y); SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20); LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(9), PLTT_SIZE_4BPP);
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + 0x120), 0x20); 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, CopyBattlerSpriteToBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000,
animBg.bgTilemap + 0x400, animBg.tilesOffset); animBg.bgTilemap + 0x400, animBg.tilesOffset);
@@ -739,25 +739,15 @@ static void Task_InitUpdateMonBg(u8 taskId)
if (gTasks[taskId].data[5] == 0) if (gTasks[taskId].data[5] == 0)
{ {
u16 *src;
u16 *dst;
gBattle_BG1_X = x + gTasks[taskId].data[3]; gBattle_BG1_X = x + gTasks[taskId].data[3];
gBattle_BG1_Y = y + gTasks[taskId].data[4]; gBattle_BG1_Y = y + gTasks[taskId].data[4];
src = gPlttBufferFaded + 0x100 + palIndex * 16; CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(palIndex)], &gPlttBufferFaded[BG_PLTT_ID(animBg.paletteId)], PLTT_SIZE_4BPP);
dst = gPlttBufferFaded + 0x100 + animBg.paletteId * 16 - 256;
CpuCopy32(src, dst, 0x20);
} }
else else
{ {
u16 *src;
u16 *dst;
gBattle_BG2_X = x + gTasks[taskId].data[3]; gBattle_BG2_X = x + gTasks[taskId].data[3];
gBattle_BG2_Y = y + gTasks[taskId].data[4]; gBattle_BG2_Y = y + gTasks[taskId].data[4];
src = gPlttBufferFaded + 0x100 + palIndex * 16; CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(palIndex)], &gPlttBufferFaded[BG_PLTT_ID(9)], PLTT_SIZE_4BPP);
dst = gPlttBufferFaded + 0x100 - 112;
CpuCopy32(src, dst, 0x20);
} }
} }
@@ -1113,7 +1103,7 @@ static void LoadMoveBg(u16 bgId)
{ {
LZDecompressVram(gBattleAnimBackgroundTable[bgId].tilemap, (void *)(BG_SCREEN_ADDR(26))); LZDecompressVram(gBattleAnimBackgroundTable[bgId].tilemap, (void *)(BG_SCREEN_ADDR(26)));
LZDecompressVram(gBattleAnimBackgroundTable[bgId].image, (void *)(BG_CHAR_ADDR(2))); 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) static void LoadDefaultBg(void)
+6 -6
View File
@@ -415,7 +415,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
task->data[10] = gBattle_BG1_Y; task->data[10] = gBattle_BG1_Y;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1); 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 = &REG_BG1VOFS; scanlineParams.dmaDest = &REG_BG1VOFS;
var0 = WINOUT_WIN01_BG1; var0 = WINOUT_WIN01_BG1;
if (!IsContest()) if (!IsContest())
@@ -425,7 +425,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId)
{ {
task->data[10] = gBattle_BG2_Y; task->data[10] = gBattle_BG2_Y;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2); 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 = &REG_BG2VOFS; scanlineParams.dmaDest = &REG_BG2VOFS;
var0 = WINOUT_WIN01_BG2; var0 = WINOUT_WIN01_BG2;
if (!IsContest()) if (!IsContest())
@@ -545,12 +545,12 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId)
{ {
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
task->data[10] = gBattle_BG1_Y; 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 else
{ {
task->data[10] = gBattle_BG2_Y; task->data[10] = gBattle_BG2_Y;
FillPalette(RGB_BLACK, 9 * 16, 32); FillPalette(RGB_BLACK, BG_PLTT_ID(9), PLTT_SIZE_4BPP);
} }
SetAllBattlersSpritePriority(3); SetAllBattlersSpritePriority(3);
++task->data[0]; ++task->data[0];
@@ -806,14 +806,14 @@ void AnimTask_MetallicShine(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
AnimLoadCompressedBgTilemap(animBg.bgId, gMetalShineTilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gMetalShineTilemap);
AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset); 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_X = -gSprites[spriteId].x + 96;
gBattle_BG1_Y = -gSprites[spriteId].y + 32; gBattle_BG1_Y = -gSprites[spriteId].y + 32;
paletteNum = 16 + gSprites[spriteId].oam.paletteNum; paletteNum = 16 + gSprites[spriteId].oam.paletteNum;
if (gBattleAnimArgs[1] == 0) if (gBattleAnimArgs[1] == 0)
SetGreyscaleOrOriginalPalette(paletteNum, FALSE); SetGreyscaleOrOriginalPalette(paletteNum, FALSE);
else else
BlendPalette(paletteNum * 16, 16, 11, gBattleAnimArgs[2]); BlendPalette(PLTT_ID(paletteNum), 16, 11, gBattleAnimArgs[2]);
gTasks[taskId].data[0] = newSpriteId; gTasks[taskId].data[0] = newSpriteId;
gTasks[taskId].data[1] = gBattleAnimArgs[0]; gTasks[taskId].data[1] = gBattleAnimArgs[0];
gTasks[taskId].data[2] = gBattleAnimArgs[1]; gTasks[taskId].data[2] = gBattleAnimArgs[1];
+8 -8
View File
@@ -3672,8 +3672,8 @@ void AnimTask_CycleMagicalLeafPal(u8 taskId)
switch (task->data[0]) switch (task->data[0])
{ {
case 0: case 0:
task->data[8] = IndexOfSpritePaletteTag(ANIM_TAG_LEAF) * 16 + 256; task->data[8] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_LEAF));
task->data[12] = IndexOfSpritePaletteTag(ANIM_TAG_RAZOR_LEAF) * 16 + 256; task->data[12] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_RAZOR_LEAF));
task->data[0]++; task->data[0]++;
break; break;
case 1: case 1:
@@ -3996,7 +3996,7 @@ static void AnimProtect(struct Sprite* sprite)
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
sprite->data[0] = gBattleAnimArgs[2]; 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; sprite->data[7] = 16;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND);
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16 - sprite->data[7], sprite->data[7])); 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; int pal;
sprite->data[2]++; sprite->data[2]++;
pal = sprite->oam.paletteNum; 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)); PlaySE12WithPanning(SE_M_LEER, BattleAnimAdjustPanning(SOUND_PAN_TARGET));
} }
else if (sprite->data[1] == 0) else if (sprite->data[1] == 0)
@@ -5216,8 +5216,8 @@ void AnimTask_DoubleTeam(u8 taskId)
task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
task->data[1] = AllocSpritePalette(ANIM_TAG_BENT_SPOON); task->data[1] = AllocSpritePalette(ANIM_TAG_BENT_SPOON);
r3 = (task->data[1] * 16) + 0x100; r3 = OBJ_PLTT_ID(task->data[1]);
r4 = (gSprites[task->data[0]].oam.paletteNum + 16) << 4; r4 = OBJ_PLTT_ID2(gSprites[task->data[0]].oam.paletteNum);
for (i = 1; i < 16; i++) for (i = 1; i < 16; i++)
gPlttBufferUnfaded[r3 + i] = gPlttBufferUnfaded[r4 + i]; gPlttBufferUnfaded[r3 + i] = gPlttBufferUnfaded[r4 + i];
@@ -5295,7 +5295,7 @@ void AnimTask_MusicNotesRainbowBlend(u8 taskId)
index = IndexOfSpritePaletteTag(sParticlesColorBlendTable[0][0]); index = IndexOfSpritePaletteTag(sParticlesColorBlendTable[0][0]);
if (index != 0xFF) if (index != 0xFF)
{ {
index = (index << 4) + 0x100; index = OBJ_PLTT_ID(index);
for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++) for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++)
gPlttBufferFaded[index + i] = sParticlesColorBlendTable[0][i]; gPlttBufferFaded[index + i] = sParticlesColorBlendTable[0][i];
} }
@@ -5305,7 +5305,7 @@ void AnimTask_MusicNotesRainbowBlend(u8 taskId)
index = AllocSpritePalette(sParticlesColorBlendTable[j][0]); index = AllocSpritePalette(sParticlesColorBlendTable[j][0]);
if (index != 0xFF) if (index != 0xFF)
{ {
index = (index << 4) + 0x100; index = OBJ_PLTT_ID(index);
for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++) for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++)
gPlttBufferFaded[index + i] = sParticlesColorBlendTable[j][i]; gPlttBufferFaded[index + i] = sParticlesColorBlendTable[j][i];
} }
+5 -7
View File
@@ -1744,7 +1744,7 @@ void AnimTask_AirCutterProjectile(u8 taskId)
static void AnimVoidLines(struct Sprite *sprite) static void AnimVoidLines(struct Sprite *sprite)
{ {
InitSpritePosToAnimAttacker(sprite, FALSE); InitSpritePosToAnimAttacker(sprite, FALSE);
sprite->data[0] = 0x100 + (IndexOfSpritePaletteTag(sVoidLinesSpriteTemplate.paletteTag) << 4); sprite->data[0] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(sVoidLinesSpriteTemplate.paletteTag));
sprite->callback = AnimVoidLines_Step; sprite->callback = AnimVoidLines_Step;
} }
@@ -2687,9 +2687,7 @@ static void AnimUproarRing(struct Sprite *sprite)
u8 index = IndexOfSpritePaletteTag(ANIM_TAG_THIN_RING); u8 index = IndexOfSpritePaletteTag(ANIM_TAG_THIN_RING);
if (index != 0xFF) if (index != 0xFF)
{ BlendPalette(OBJ_PLTT_ID(index) + 1, 15, gBattleAnimArgs[5], gBattleAnimArgs[4]);
BlendPalette(((index << 20) + 0x1010000) >> 16, 15, gBattleAnimArgs[5], gBattleAnimArgs[4]);
}
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
sprite->callback = AnimSpriteOnMonPos; sprite->callback = AnimSpriteOnMonPos;
@@ -3045,7 +3043,7 @@ void AnimTask_LoadMusicNotesPals(u8 taskId)
gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000); gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000);
LZDecompressWram(gBattleAnimSpritePal_MusicNotes2, gMonSpritesGfxPtr->multiUseBuffer); LZDecompressWram(gBattleAnimSpritePal_MusicNotes2, gMonSpritesGfxPtr->multiUseBuffer);
for (i = 0; i < NUM_MUSIC_NOTE_PAL_TAGS; i++) 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); FREE_AND_SET_NULL(gMonSpritesGfxPtr->multiUseBuffer);
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
@@ -3282,7 +3280,7 @@ void AnimTask_HeartsBackground(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBg_AttractTilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBg_AttractTilemap);
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBg_AttractGfx, animBg.tilesOffset); 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()) if (IsContest())
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
@@ -3370,7 +3368,7 @@ void AnimTask_ScaryFace(u8 taskId)
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBgTilemap_ScaryFaceOpponent); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBgTilemap_ScaryFaceOpponent);
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_ScaryFaceGfx, animBg.tilesOffset); 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()) if (IsContest())
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
+14 -14
View File
@@ -1367,11 +1367,11 @@ static void SetPsychicBackground_Step(u8 taskId)
if (++gTasks[taskId].data[5] == 4) if (++gTasks[taskId].data[5] == 4)
{ {
lastColor = gPlttBufferFaded[paletteIndex * 16 + 11]; lastColor = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 11];
for (i = 10; i > 0; i--) 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; gTasks[taskId].data[5] = 0;
} }
@@ -1393,15 +1393,15 @@ static void FadeScreenToWhite_Step(u8 taskId)
if (++gTasks[taskId].data[5] == 4) if (++gTasks[taskId].data[5] == 4)
{ {
lastColor = gPlttBufferFaded[paletteIndex * 16 + 11]; lastColor = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 11];
for (i = 10; i > 0; i--) 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;
lastColor = gPlttBufferUnfaded[paletteIndex * 16 + 11]; lastColor = gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + 11];
for (i = 10; i > 0; i--) for (i = 10; i > 0; i--)
gPlttBufferUnfaded[paletteIndex * 16 + i + 1] = gPlttBufferUnfaded[paletteIndex * 16 + i]; gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + i + 1] = gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + i];
gPlttBufferUnfaded[paletteIndex * 16 + 1] = lastColor; gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + 1] = lastColor;
gTasks[taskId].data[5] = 0; gTasks[taskId].data[5] = 0;
} }
@@ -2329,7 +2329,7 @@ void AnimTask_MorningSunLightBeam(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap);
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_MorningSunGfx, animBg.tilesOffset); 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()) if (IsContest())
{ {
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
@@ -2509,7 +2509,7 @@ void AnimTask_DoomDesireLightBeam(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap);
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_MorningSunGfx, animBg.tilesOffset); 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()) if (IsContest())
{ {
@@ -3177,7 +3177,7 @@ void AnimTask_RolePlaySilhouette(u8 taskId)
spriteId = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, coord1 + xOffset, coord2, 5, personality, otId, gBattleAnimTarget, 1); spriteId = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, coord1 + xOffset, coord2, 5, personality, otId, gBattleAnimTarget, 1);
gSprites[spriteId].oam.priority = priority; gSprites[spriteId].oam.priority = priority;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; 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; gSprites[spriteId].oam.priority = priority;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL); 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])); 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[0] = 0;
gTasks[taskId].data[1] = gBattleAnimArgs[1]; gTasks[taskId].data[1] = gBattleAnimArgs[1];
spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); 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; 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); spriteId2 = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, x, GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y), subpriority, personality, otId, gBattleAnimAttacker, 0);
if (gBattleSpritesDataPtr->battlerData[gBattleAnimAttacker].transformSpecies != SPECIES_NONE) 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[15] = spriteId2;
gTasks[taskId].data[0]++; gTasks[taskId].data[0]++;
break; break;
+2 -1
View File
@@ -4,6 +4,7 @@
#include "util.h" #include "util.h"
#include "task.h" #include "task.h"
#include "trig.h" #include "trig.h"
#include "palette.h"
#include "constants/songs.h" #include "constants/songs.h"
static void AnimFireSpiralInward(struct Sprite *sprite); static void AnimFireSpiralInward(struct Sprite *sprite);
@@ -1239,7 +1240,7 @@ void AnimTask_BlendBackground(u8 taskId)
struct BattleAnimBgData animBg; struct BattleAnimBgData animBg;
GetBattleAnimBg1Data(&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); DestroyAnimVisualTask(taskId);
} }
+4 -4
View File
@@ -395,15 +395,15 @@ static void AnimTask_AnimateGustTornadoPalette_Step(u8 taskId)
{ {
gTasks[taskId].data[10] = 0; gTasks[taskId].data[10] = 0;
data2 = gTasks[taskId].data[2]; data2 = gTasks[taskId].data[2];
temp = gPlttBufferFaded[16 * data2 + 0x108]; temp = gPlttBufferFaded[OBJ_PLTT_ID(data2) + 8];
i = 7; i = 7;
base = data2 * 16; base = PLTT_ID(data2);
do 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); } while (--i > 0);
gPlttBufferFaded[base + 0x101] = temp; gPlttBufferFaded[base + OBJ_PLTT_OFFSET + 1] = temp;
} }
if (--gTasks[taskId].data[0] == 0) if (--gTasks[taskId].data[0] == 0)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
+7 -7
View File
@@ -625,7 +625,7 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId)
task->data[2] = 0; task->data[2] = 0;
task->data[3] = 16; task->data[3] = 16;
task->data[13] = GetAnimBattlerSpriteId(ANIM_TARGET); 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) if (position == 1)
{ {
u16 mask = DISPCNT_BG1_ON; u16 mask = DISPCNT_BG1_ON;
@@ -644,8 +644,8 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId)
} }
break; break;
case 1: case 1:
task->data[14] = (task->data[14] + 16) * 16; task->data[14] = OBJ_PLTT_ID2(task->data[14]);
CpuCopy32(&gPlttBufferUnfaded[task->data[4]], &gPlttBufferFaded[task->data[14]], 0x20); CpuCopy32(&gPlttBufferUnfaded[task->data[4]], &gPlttBufferFaded[task->data[14]], PLTT_SIZE_4BPP);
BlendPalette(task->data[4], 16, 10, RGB(13, 0, 15)); BlendPalette(task->data[4], 16, 10, RGB(13, 0, 15));
++task->data[15]; ++task->data[15];
break; break;
@@ -1290,10 +1290,10 @@ static void AnimTask_GhostGetOut_Step1(u8 taskId)
task->data[3] = 16; task->data[3] = 16;
task->data[4] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[4] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
task->data[5] = gSprites[task->data[4]].oam.priority; 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.objMode = ST_OAM_OBJ_BLEND;
gSprites[task->data[4]].oam.priority = 3; gSprites[task->data[4]].oam.priority = 3;
task->data[7] = 128; task->data[7] = BG_PLTT_ID(8);
break; break;
case 1: case 1:
++task->data[1]; ++task->data[1];
@@ -1320,7 +1320,7 @@ static void AnimTask_GhostGetOut_Step1(u8 taskId)
SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y); SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
GetBattleAnimBgData(&animBgData, 2); GetBattleAnimBgData(&animBgData, 2);
AnimLoadCompressedBgGfx(animBgData.bgId, gBattleAnim_ScaryFaceGfx, animBgData.tilesOffset); 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; break;
case 3: case 3:
GetBattleAnimBgData(&animBgData, 2); GetBattleAnimBgData(&animBgData, 2);
@@ -1422,7 +1422,7 @@ static void AnimTask_GhostGetOut_Step3(u8 taskId)
break; break;
case 3: case 3:
InitBattleAnimBg(2); 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); SetAnimBgAttribute(2, BG_ANIM_CHAR_BASE_BLOCK, 0);
task->data[1] = 12; task->data[1] = 12;
break; break;
+2 -2
View File
@@ -946,7 +946,7 @@ void AnimTask_HazeScrollingFog(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset); LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset);
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap);
LoadPalette(&gDefaultWeatherSpritePalette, animBg.paletteId * 16, 32); LoadPalette(&gDefaultWeatherSpritePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
if (IsContest()) if (IsContest())
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
gTasks[taskId].func = AnimTask_HazeScrollingFog_Step; gTasks[taskId].func = AnimTask_HazeScrollingFog_Step;
@@ -1043,7 +1043,7 @@ void AnimTask_MistBallFog(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset); LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset);
AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap);
LoadPalette(&gDefaultWeatherSpritePalette, animBg.paletteId * 16, 32); LoadPalette(&gDefaultWeatherSpritePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
if (IsContest()) if (IsContest())
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
gTasks[taskId].data[15] = -1; gTasks[taskId].data[15] = -1;
+8 -8
View File
@@ -1291,7 +1291,7 @@ void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor)
struct PlttData *destColor; struct PlttData *destColor;
u16 average; u16 average;
paletteNum *= 16; paletteNum = PLTT_ID(paletteNum);
if (!restoreOriginalColor) if (!restoreOriginalColor)
{ {
@@ -1308,7 +1308,7 @@ void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor)
} }
else 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); DestroyAnimVisualTask(task);
return; 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]); AnimTask_BlendMonInAndOutSetup(&gTasks[task]);
} }
@@ -1952,7 +1952,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat
gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000); gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000);
if (!isBackpic) 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) if (ignoreDeoxys == TRUE || ShouldIgnoreDeoxysForm(DEOXYS_CHECK_BATTLE_ANIM, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
LoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], LoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
gMonSpritesGfxPtr->multiUseBuffer, gMonSpritesGfxPtr->multiUseBuffer,
@@ -1968,7 +1968,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat
} }
else 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) if (ignoreDeoxys == TRUE || ShouldIgnoreDeoxysForm(DEOXYS_CHECK_BATTLE_ANIM, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
LoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species], LoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species],
gMonSpritesGfxPtr->multiUseBuffer, gMonSpritesGfxPtr->multiUseBuffer,
@@ -2224,8 +2224,8 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId)
task->tPaletteNum = AllocSpritePalette(ANIM_TAG_BENT_SPOON); task->tPaletteNum = AllocSpritePalette(ANIM_TAG_BENT_SPOON);
task->tNumTracesActive = 0; task->tNumTracesActive = 0;
dest = (task->tPaletteNum + 16) * 16; dest = OBJ_PLTT_ID2(task->tPaletteNum);
src = (gSprites[task->tBattlerSpriteId].oam.paletteNum + 0x10) * 0x10; src = OBJ_PLTT_ID2(gSprites[task->tBattlerSpriteId].oam.paletteNum);
// Set trace's priority based on battler's subpriority // Set trace's priority based on battler's subpriority
task->tPriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker); task->tPriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker);
@@ -2234,7 +2234,7 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId)
else else
task->tPriority = 3; task->tPriority = 3;
CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], 0x20); CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], PLTT_SIZE_4BPP);
BlendPalette(dest, 16, gBattleAnimArgs[1], gBattleAnimArgs[0]); BlendPalette(dest, 16, gBattleAnimArgs[1], gBattleAnimArgs[0]);
task->func = AnimTask_AttackerPunchWithTrace_Step; task->func = AnimTask_AttackerPunchWithTrace_Step;
} }
+1 -1
View File
@@ -459,7 +459,7 @@ static void AnimDefensiveWall(struct Sprite *sprite)
} }
if (IsContest()) if (IsContest())
sprite->y += 9; 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 = AnimDefensiveWall_Step2;
sprite->callback(sprite); sprite->callback(sprite);
} }
+1 -1
View File
@@ -404,7 +404,7 @@ void AnimTask_LoadSandstormBackground(u8 taskId)
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
AnimLoadCompressedBgTilemap(animBg.bgId, gFile_graphics_battle_anims_backgrounds_sandstorm_brew_tilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gFile_graphics_battle_anims_backgrounds_sandstorm_brew_tilemap);
AnimLoadCompressedBgGfx(animBg.bgId, gFile_graphics_battle_anims_backgrounds_sandstorm_brew_sheet, animBg.tilesOffset); 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()) if (IsContest())
RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0);
if (gBattleAnimArgs[0] && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (gBattleAnimArgs[0] && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
+11 -11
View File
@@ -438,7 +438,7 @@ void AnimTask_LevelUpHealthBox(u8 taskId)
GetBattleAnimBg1Data(&animBgData); GetBattleAnimBg1Data(&animBgData);
AnimLoadCompressedBgTilemap(animBgData.bgId, gUnusedLevelupAnimationTilemap); AnimLoadCompressedBgTilemap(animBgData.bgId, gUnusedLevelupAnimationTilemap);
AnimLoadCompressedBgGfx(animBgData.bgId, gUnusedLevelupAnimationGfx, animBgData.tilesOffset); 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_X = -gSprites[spriteId3].x + 32;
gBattle_BG1_Y = -gSprites[spriteId3].y - 32; gBattle_BG1_Y = -gSprites[spriteId3].y - 32;
gTasks[taskId].data[1] = 640; gTasks[taskId].data[1] = 640;
@@ -518,10 +518,10 @@ void DoLoadHealthboxPalsForLevelUp(u8 *paletteId1, u8 *paletteId2, u8 battler)
spriteId2 = gSprites[healthBoxSpriteId].data[5]; spriteId2 = gSprites[healthBoxSpriteId].data[5];
*paletteId1 = AllocSpritePalette(TAG_HEALTHBOX_PALS_1); *paletteId1 = AllocSpritePalette(TAG_HEALTHBOX_PALS_1);
*paletteId2 = AllocSpritePalette(TAG_HEALTHBOX_PALS_2); *paletteId2 = AllocSpritePalette(TAG_HEALTHBOX_PALS_2);
offset1 = (gSprites[healthBoxSpriteId].oam.paletteNum * 16) + 0x100; offset1 = OBJ_PLTT_ID(gSprites[healthBoxSpriteId].oam.paletteNum);
offset2 = (gSprites[spriteId2].oam.paletteNum * 16) + 0x100; offset2 = OBJ_PLTT_ID(gSprites[spriteId2].oam.paletteNum);
LoadPalette(&gPlttBufferUnfaded[offset1], *paletteId1 * 16 + 0x100, 0x20); LoadPalette(&gPlttBufferUnfaded[offset1], OBJ_PLTT_ID(*paletteId1), PLTT_SIZE_4BPP);
LoadPalette(&gPlttBufferUnfaded[offset2], *paletteId2 * 16 + 0x100, 0x20); LoadPalette(&gPlttBufferUnfaded[offset2], OBJ_PLTT_ID(*paletteId2), PLTT_SIZE_4BPP);
gSprites[healthBoxSpriteId].oam.paletteNum = *paletteId1; gSprites[healthBoxSpriteId].oam.paletteNum = *paletteId1;
gSprites[spriteId1].oam.paletteNum = *paletteId1; gSprites[spriteId1].oam.paletteNum = *paletteId1;
gSprites[spriteId2].oam.paletteNum = *paletteId2; gSprites[spriteId2].oam.paletteNum = *paletteId2;
@@ -584,7 +584,7 @@ static void AnimTask_FlashHealthboxOnLevelUp_Step(u8 taskId)
if (gTasks[taskId].data[2] > 16) if (gTasks[taskId].data[2] > 16)
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)); BlendPalette(paletteOffset + colorOffset, 1, gTasks[taskId].data[2], RGB(20, 27, 31));
if (gTasks[taskId].data[2] == 16) if (gTasks[taskId].data[2] == 16)
gTasks[taskId].data[1]++; gTasks[taskId].data[1]++;
@@ -594,7 +594,7 @@ static void AnimTask_FlashHealthboxOnLevelUp_Step(u8 taskId)
if (gTasks[taskId].data[2] < 0) if (gTasks[taskId].data[2] < 0)
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)); BlendPalette(paletteOffset + colorOffset, 1, gTasks[taskId].data[2], RGB(20, 27, 31));
if (gTasks[taskId].data[2] == 0) if (gTasks[taskId].data[2] == 0)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
@@ -1874,12 +1874,12 @@ u8 LaunchBallFadeMonTask(bool8 unfadeLater, u8 battler, u32 selectedPalettes, u8
if (!unfadeLater) if (!unfadeLater)
{ {
BlendPalette(battler * 16 + 0x100, 16, 0, sBallOpenFadeColors[ballId]); BlendPalette(OBJ_PLTT_ID(battler), 16, 0, sBallOpenFadeColors[ballId]);
gTasks[taskId].data[1] = 1; gTasks[taskId].data[1] = 1;
} }
else 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[0] = 16;
gTasks[taskId].data[1] = -1; gTasks[taskId].data[1] = -1;
gTasks[taskId].func = Task_FadeMon_ToNormal; gTasks[taskId].func = Task_FadeMon_ToNormal;
@@ -1895,7 +1895,7 @@ static void Task_FadeMon_ToBallColor(u8 taskId)
if (gTasks[taskId].data[2] <= 16) 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[0] += gTasks[taskId].data[1];
gTasks[taskId].data[2]++; gTasks[taskId].data[2]++;
} }
@@ -1923,7 +1923,7 @@ static void Task_FadeMon_ToNormal_Step(u8 taskId)
if (gTasks[taskId].data[2] <= 16) 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[0] += gTasks[taskId].data[1];
gTasks[taskId].data[2]++; gTasks[taskId].data[2]++;
} }
+5 -5
View File
@@ -284,7 +284,7 @@ static void Task_UpdateFlashingCircleImpacts(u8 taskId)
if (gTasks[taskId].data[2] == 2) if (gTasks[taskId].data[2] == 2)
{ {
gTasks[taskId].data[2] = 0; 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) if (gTasks[taskId].data[5] == 0)
{ {
gTasks[taskId].data[4]++; gTasks[taskId].data[4]++;
@@ -394,10 +394,10 @@ static void AnimTask_FrozenIceCube_Step2(u8 taskId)
{ {
u16 temp; u16 temp;
temp = gPlttBufferFaded[0x100 + palIndex * 16 + 13]; temp = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 13];
gPlttBufferFaded[0x100 + palIndex * 16 + 13] = gPlttBufferFaded[0x100 + palIndex * 16 + 14]; gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 13] = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 14];
gPlttBufferFaded[0x100 + palIndex * 16 + 14] = gPlttBufferFaded[0x100 + palIndex * 16 + 15]; gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 14] = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 15];
gPlttBufferFaded[0x100 + palIndex * 16 + 15] = temp; gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 15] = temp;
gTasks[taskId].data[2] = 0; gTasks[taskId].data[2] = 0;
gTasks[taskId].data[3]++; gTasks[taskId].data[3]++;
+16 -16
View File
@@ -338,7 +338,7 @@ void AnimTask_DrawFallingWhiteLinesOnAttacker(u8 taskId)
if (IsContest()) if (IsContest())
RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0); RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0);
AnimLoadCompressedBgGfx(animBgData.bgId, gFile_graphics_battle_anims_masks_curse_sheet, animBgData.tilesOffset); 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_X = -gSprites[spriteId].x + 32;
gBattle_BG1_Y = -gSprites[spriteId].y + 32; gBattle_BG1_Y = -gSprites[spriteId].y + 32;
gTasks[taskId].data[0] = newSpriteId; gTasks[taskId].data[0] = newSpriteId;
@@ -465,28 +465,28 @@ static void StatsChangeAnimation_Step2(u8 taskId)
switch (sAnimStatsChangeData->data[1]) switch (sAnimStatsChangeData->data[1])
{ {
case 0: case 0:
LoadCompressedPalette(gBattleStatMask2_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask2_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
case 1: case 1:
LoadCompressedPalette(gBattleStatMask1_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask1_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
case 2: case 2:
LoadCompressedPalette(gBattleStatMask3_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask3_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
case 3: case 3:
LoadCompressedPalette(gBattleStatMask4_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask4_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
case 4: case 4:
LoadCompressedPalette(gBattleStatMask6_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask6_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
case 5: case 5:
LoadCompressedPalette(gBattleStatMask7_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask7_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
case 6: case 6:
LoadCompressedPalette(gBattleStatMask8_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask8_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
default: default:
LoadCompressedPalette(gBattleStatMask5_Pal, animBgData.paletteId * 16, 32); LoadCompressedPalette(gBattleStatMask5_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP);
break; break;
} }
gBattle_BG1_X = 0; gBattle_BG1_X = 0;
@@ -618,13 +618,13 @@ static void AnimTask_Flash_Step(u8 taskId)
{ {
if ((task->data[15] >> i) & 1) if ((task->data[15] >> i) & 1)
{ {
u16 paletteOffset = i * 16; u16 paletteOffset = BG_PLTT_ID(i);
BlendPalette(paletteOffset, 16, task->data[2], 0xFFFF); BlendPalette(paletteOffset, 16, task->data[2], 0xFFFF);
} }
if ((task->data[14] >> i) & 1) if ((task->data[14] >> i) & 1)
{ {
u16 paletteOffset = i * 16 + 0x100; u16 paletteOffset = OBJ_PLTT_ID(i);
BlendPalette(paletteOffset, 16, task->data[2], 0); 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) for (i = 0; i < 32; selectedPalettes >>= 1, ++i)
if (selectedPalettes & 1) 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; gPlttBufferFaded[curOffset] = color;
} }
@@ -764,7 +764,7 @@ void StartMonScrollingBgMask(u8 taskId, s32 unused, u16 scrollSpeed, u8 battler1
if (IsContest()) if (IsContest())
RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0); RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0);
AnimLoadCompressedBgGfx(animBgData.bgId, gfx, animBgData.tilesOffset); 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_X = 0;
gBattle_BG1_Y = 0; gBattle_BG1_Y = 0;
gTasks[taskId].data[1] = scrollSpeed; gTasks[taskId].data[1] = scrollSpeed;
@@ -867,7 +867,7 @@ void AnimTask_CopyPalUnfadedToBackup(u8 taskId)
paletteIndex = gBattleAnimAttacker + 16; paletteIndex = gBattleAnimAttacker + 16;
else if (gBattleAnimArgs[0] == 2) else if (gBattleAnimArgs[0] == 2)
paletteIndex = gBattleAnimTarget + 16; 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); DestroyAnimVisualTask(taskId);
} }
@@ -885,7 +885,7 @@ void AnimTask_CopyPalUnfadedFromBackup(u8 taskId)
paletteIndex = gBattleAnimAttacker + 16; paletteIndex = gBattleAnimAttacker + 16;
else if (gBattleAnimArgs[0] == 2) else if (gBattleAnimArgs[0] == 2)
paletteIndex = gBattleAnimTarget + 16; 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); DestroyAnimVisualTask(taskId);
} }
@@ -903,7 +903,7 @@ void AnimTask_CopyPalFadedToUnfaded(u8 taskId)
paletteIndex = gBattleAnimAttacker + 16; paletteIndex = gBattleAnimAttacker + 16;
else if (gBattleAnimArgs[0] == 2) else if (gBattleAnimArgs[0] == 2)
paletteIndex = gBattleAnimTarget + 16; 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); DestroyAnimVisualTask(taskId);
} }
+3 -3
View File
@@ -620,7 +620,7 @@ static void AnimAuroraBeamRings_Step(struct Sprite *sprite)
void AnimTask_RotateAuroraRingColors(u8 taskId) void AnimTask_RotateAuroraRingColors(u8 taskId)
{ {
gTasks[taskId].data[0] = gBattleAnimArgs[0]; 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; gTasks[taskId].func = AnimTask_RotateAuroraRingColors_Step;
} }
static void AnimTask_RotateAuroraRingColors_Step(u8 taskId) static void AnimTask_RotateAuroraRingColors_Step(u8 taskId)
@@ -826,9 +826,9 @@ void AnimTask_CreateSurfWave(u8 taskId)
} }
AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Surf, animBg.tilesOffset); AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Surf, animBg.tilesOffset);
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
LoadCompressedPalette(gBattleAnimBgPalette_Surf, animBg.paletteId * 16, 32); LoadCompressedPalette(gBattleAnimBgPalette_Surf, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP);
else 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); taskId2 = CreateTask(AnimTask_SurfWaveScanlineEffect, gTasks[taskId].priority + 1);
gTasks[taskId].data[15] = taskId2; gTasks[taskId].data[15] = taskId2;
gTasks[taskId2].data[0] = 0; gTasks[taskId2].data[0] = 0;
+20 -17
View File
@@ -648,7 +648,7 @@ static void LoadBattleTerrainGfx(u16 terrain)
// Copy to bg3 // Copy to bg3
LZDecompressVram(sBattleTerrainTable[terrain].tileset, (void *)BG_CHAR_ADDR(2)); LZDecompressVram(sBattleTerrainTable[terrain].tileset, (void *)BG_CHAR_ADDR(2));
LZDecompressVram(sBattleTerrainTable[terrain].tilemap, (void *)BG_SCREEN_ADDR(26)); 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) static void LoadBattleTerrainEntryGfx(u16 terrain)
@@ -690,19 +690,22 @@ void InitBattleBgsVideo(void)
void LoadBattleMenuWindowGfx(void) void LoadBattleMenuWindowGfx(void)
{ {
LoadUserWindowGfx(2, 0x012, 0x10); LoadUserWindowGfx(2, 0x012, BG_PLTT_ID(1));
LoadUserWindowGfx(2, 0x022, 0x10); LoadUserWindowGfx(2, 0x022, BG_PLTT_ID(1));
gPlttBufferUnfaded[0x5C] = RGB( 9, 9, 9);
gPlttBufferUnfaded[0x5D] = RGB( 9, 9, 9); gPlttBufferUnfaded[BG_PLTT_ID(5) + 12] = RGB( 9, 9, 9);
gPlttBufferUnfaded[0x5E] = RGB(31, 31, 31); gPlttBufferUnfaded[BG_PLTT_ID(5) + 13] = RGB( 9, 9, 9);
gPlttBufferUnfaded[0x5F] = RGB( 26, 26, 25); gPlttBufferUnfaded[BG_PLTT_ID(5) + 14] = RGB(31, 31, 31);
CpuCopy16(&gPlttBufferUnfaded[0x5C], &gPlttBufferFaded[0x5C], 8); 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)) if (gBattleTypeFlags & (BATTLE_TYPE_FIRST_BATTLE | BATTLE_TYPE_POKEDUDE))
{ {
Menu_LoadStdPalAt(0x70); Menu_LoadStdPalAt(BG_PLTT_ID(7));
LoadMenuMessageWindowGfx(0, 0x030, 0x70); LoadMenuMessageWindowGfx(0, 0x030, BG_PLTT_ID(7));
gPlttBufferUnfaded[0x76] = RGB( 0, 0, 0);
CpuCopy16(&gPlttBufferUnfaded[0x76], &gPlttBufferFaded[0x76], 2); 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)); LZDecompressVram(gBattleInterface_Textbox_Gfx, (void *)BG_CHAR_ADDR(0));
CopyToBgTilemapBuffer(0, gBattleInterface_Textbox_Tilemap, 0, 0x000); CopyToBgTilemapBuffer(0, gBattleInterface_Textbox_Tilemap, 0, 0x000);
CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(0);
LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x00, 0x40); LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
LoadBattleMenuWindowGfx(); LoadBattleMenuWindowGfx();
DrawMainBattleBackground(); DrawMainBattleBackground();
} }
@@ -927,7 +930,7 @@ void InitLinkBattleVsScreen(u8 taskId)
break; break;
case 1: case 1:
palId = AllocSpritePalette(TAG_VS_LETTERS); 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_V = CreateSprite(&sVsLetter_V_SpriteTemplate, 108, 80, 0);
gBattleStruct->linkBattleVsSpriteId_S = CreateSprite(&sVsLetter_S_SpriteTemplate, 132, 80, 0); gBattleStruct->linkBattleVsSpriteId_S = CreateSprite(&sVsLetter_S_SpriteTemplate, 132, 80, 0);
gSprites[gBattleStruct->linkBattleVsSpriteId_V].invisible = TRUE; 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(gFile_graphics_battle_transitions_vs_frame_sheet, (void *)(BG_CHAR_ADDR(1)));
LZDecompressVram(gVsLettersGfx, (void *)(VRAM + 0x10000)); 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); SetBgAttribute(1, BG_ATTR_SCREENSIZE, 1);
SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(28) | BGCNT_TXT512x256); 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); CopyToBgTilemapBuffer(1, gFile_graphics_battle_transitions_vs_frame_tilemap, 0, 0);
@@ -1083,7 +1086,7 @@ bool8 LoadChosenBattleElement(u8 caseId)
CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(0);
break; break;
case 2: case 2:
LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x00, 0x40); LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
break; break;
case 3: case 3:
battleScene = GetBattleTerrainOverride(); battleScene = GetBattleTerrainOverride();
@@ -1095,7 +1098,7 @@ bool8 LoadChosenBattleElement(u8 caseId)
break; break;
case 5: case 5:
battleScene = GetBattleTerrainOverride(); battleScene = GetBattleTerrainOverride();
LoadCompressedPalette(sBattleTerrainTable[battleScene].palette, 0x20, 0x60); LoadCompressedPalette(sBattleTerrainTable[battleScene].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP);
break; break;
case 6: case 6:
LoadBattleMenuWindowGfx(); LoadBattleMenuWindowGfx();
+1 -1
View File
@@ -1513,7 +1513,7 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void)
trainerPicId = gLinkPlayers[GetBattlerMultiplayerId(gActiveBattler)].gender; 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; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
+1 -1
View File
@@ -2086,7 +2086,7 @@ static void OakOldManHandleIntroTrainerBallThrow(void)
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
paletteNum = AllocSpritePalette(0xD6F8); 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; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
taskId = CreateTask(Task_StartSendOutAnim, 5); taskId = CreateTask(Task_StartSendOutAnim, 5);
gTasks[taskId].data[0] = gActiveBattler; gTasks[taskId].data[0] = gActiveBattler;
+1 -1
View File
@@ -2714,7 +2714,7 @@ static void PlayerHandleIntroTrainerBallThrow(void)
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
paletteNum = AllocSpritePalette(0xD6F8); 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; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
taskId = CreateTask(Task_StartSendOutAnim, 5); taskId = CreateTask(Task_StartSendOutAnim, 5);
gTasks[taskId].data[0] = gActiveBattler; gTasks[taskId].data[0] = gActiveBattler;
+1 -1
View File
@@ -1858,7 +1858,7 @@ static void PokedudeHandleIntroTrainerBallThrow(void)
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
paletteNum = AllocSpritePalette(0xD6F8); 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; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
taskId = CreateTask(Task_StartSendOutAnim, 5); taskId = CreateTask(Task_StartSendOutAnim, 5);
gTasks[taskId].data[0] = gActiveBattler; gTasks[taskId].data[0] = gActiveBattler;
+27 -27
View File
@@ -341,27 +341,27 @@ void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId)
HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
gMonSpritesGfxPtr->sprites[position], gMonSpritesGfxPtr->sprites[position],
species, currentPersonality); species, currentPersonality);
paletteOffset = 0x100 + battlerId * 16; paletteOffset = OBJ_PLTT_ID(battlerId);
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE) if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
lzPaletteData = GetMonFrontSpritePal(mon); lzPaletteData = GetMonFrontSpritePal(mon);
else else
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality); lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality);
buffer = AllocZeroed(0x400); buffer = AllocZeroed(0x400);
LZDecompressWram(lzPaletteData, buffer); LZDecompressWram(lzPaletteData, buffer);
LoadPalette(buffer, paletteOffset, 0x20); LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
LoadPalette(buffer, 0x80 + battlerId * 16, 0x20); LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
Free(buffer); Free(buffer);
if (species == SPECIES_CASTFORM) if (species == SPECIES_CASTFORM)
{ {
paletteOffset = 0x100 + battlerId * 16; paletteOffset = OBJ_PLTT_ID(battlerId);
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); 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 // transform's pink color
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE) if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
{ {
BlendPalette(paletteOffset, 16, 6, RGB_WHITE); 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], HandleLoadSpecialPokePic(&gMonBackPicTable[species],
gMonSpritesGfxPtr->sprites[position], gMonSpritesGfxPtr->sprites[position],
species, currentPersonality); species, currentPersonality);
paletteOffset = 0x100 + battlerId * 16; paletteOffset = OBJ_PLTT_ID(battlerId);
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE) if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE)
lzPaletteData = GetMonFrontSpritePal(mon); lzPaletteData = GetMonFrontSpritePal(mon);
else else
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality); lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality);
buffer = AllocZeroed(0x400); buffer = AllocZeroed(0x400);
LZDecompressWram(lzPaletteData, buffer); LZDecompressWram(lzPaletteData, buffer);
LoadPalette(buffer, paletteOffset, 0x20); LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
LoadPalette(buffer, 0x80 + battlerId * 16, 0x20); LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
Free(buffer); Free(buffer);
if (species == SPECIES_CASTFORM) if (species == SPECIES_CASTFORM)
{ {
paletteOffset = 0x100 + battlerId * 16; paletteOffset = OBJ_PLTT_ID(battlerId);
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); 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 // transform's pink color
if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE) if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE)
{ {
BlendPalette(paletteOffset, 16, 6, RGB_WHITE); 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); u8 position = GetBattlerPosition(battlerId);
LZ77UnCompWram(gGhostFrontPic, gMonSpritesGfxPtr->sprites[position]); LZ77UnCompWram(gGhostFrontPic, gMonSpritesGfxPtr->sprites[position]);
palOffset = 0x100 + 16 * battlerId; palOffset = OBJ_PLTT_ID(battlerId);
buffer = AllocZeroed(0x400); buffer = AllocZeroed(0x400);
LZDecompressWram(gGhostPalette, buffer); LZDecompressWram(gGhostPalette, buffer);
LoadPalette(buffer, palOffset, 0x20); LoadPalette(buffer, palOffset, PLTT_SIZE_4BPP);
LoadPalette(buffer, 0x80 + 16 * battlerId, 0x20); LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP);
Free(buffer); Free(buffer);
} }
@@ -449,7 +449,7 @@ void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId)
void DecompressTrainerBackPalette(u16 index, u8 palette) 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) void BattleGfxSfxDummy3(u8 gender)
@@ -675,11 +675,11 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType)
src = gMonSpritesGfxPtr->sprites[position]; src = gMonSpritesGfxPtr->sprites[position];
dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32); dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32);
DmaCopy32(3, src, dst, 0x800); DmaCopy32(3, src, dst, 0x800);
paletteOffset = 0x100 + battlerAtk * 16; paletteOffset = OBJ_PLTT_ID(battlerAtk);
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue); lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue);
buffer = AllocZeroed(0x400); buffer = AllocZeroed(0x400);
LZDecompressWram(lzPaletteData, buffer); LZDecompressWram(lzPaletteData, buffer);
LoadPalette(buffer, paletteOffset, 32); LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
Free(buffer); Free(buffer);
gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk); gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[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 else if (transformType) // Castform form change
{ {
StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleSpritesDataPtr->animationData->animArg); StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleSpritesDataPtr->animationData->animArg);
paletteOffset = 0x100 + battlerAtk * 16; paletteOffset = OBJ_PLTT_ID(battlerAtk);
LoadPalette(gBattleStruct->castformPalette[gBattleSpritesDataPtr->animationData->animArg], paletteOffset, 32); LoadPalette(gBattleStruct->castformPalette[gBattleSpritesDataPtr->animationData->animArg], paletteOffset, PLTT_SIZE_4BPP);
gBattleMonForms[battlerAtk] = gBattleSpritesDataPtr->animationData->animArg; gBattleMonForms[battlerAtk] = gBattleSpritesDataPtr->animationData->animArg;
if (gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies != SPECIES_NONE) if (gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies != SPECIES_NONE)
{ {
BlendPalette(paletteOffset, 16, 6, RGB_WHITE); 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); gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
} }
@@ -733,19 +733,19 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType)
src = gMonSpritesGfxPtr->sprites[position]; src = gMonSpritesGfxPtr->sprites[position];
dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32); dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32);
DmaCopy32(3, src, dst, 0x800); DmaCopy32(3, src, dst, 0x800);
paletteOffset = 0x100 + battlerAtk * 16; paletteOffset = OBJ_PLTT_ID(battlerAtk);
lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue); lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue);
buffer = AllocZeroed(0x400); buffer = AllocZeroed(0x400);
LZDecompressWram(lzPaletteData, buffer); LZDecompressWram(lzPaletteData, buffer);
LoadPalette(buffer, paletteOffset, 32); LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP);
Free(buffer); Free(buffer);
if (targetSpecies == SPECIES_CASTFORM) if (targetSpecies == SPECIES_CASTFORM)
{ {
LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); 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); 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; gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies = targetSpecies;
gBattleMonForms[battlerAtk] = gBattleMonForms[battlerDef]; gBattleMonForms[battlerAtk] = gBattleMonForms[battlerDef];
gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk); gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
@@ -774,8 +774,8 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
--ptr; --ptr;
DmaCopy32Defvars(3, (*ptr)[0], (*ptr)[i], 0x800); DmaCopy32Defvars(3, (*ptr)[0], (*ptr)[i], 0x800);
} }
palOffset = (battlerId * 16) + 0x100; palOffset = OBJ_PLTT_ID(battlerId);
LoadCompressedPalette(gSubstituteDollPal, palOffset, 32); LoadCompressedPalette(gSubstituteDollPal, palOffset, PLTT_SIZE_4BPP);
} }
else else
{ {
+3 -3
View File
@@ -1663,11 +1663,11 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId)
return; return;
} }
pltAdder = gSprites[healthboxSpriteId].oam.paletteNum * 16; pltAdder = PLTT_ID(gSprites[healthboxSpriteId].oam.paletteNum);
pltAdder += battlerId + 12; pltAdder += battlerId + 12;
FillPalette(sStatusIconColors[statusPalId], pltAdder + 0x100, 2); FillPalette(sStatusIconColors[statusPalId], pltAdder + OBJ_PLTT_OFFSET, PLTT_SIZEOF(1));
CpuCopy16(gPlttBufferUnfaded + 0x100 + pltAdder, (void *)(OBJ_PLTT + pltAdder * 2), 2); 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); 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) if (IsDoubleBattle() == TRUE || GetBattlerSide(battlerId) == B_SIDE_OPPONENT)
{ {
+1 -1
View File
@@ -1769,7 +1769,7 @@ void CB2_InitEndLinkBattle(void)
gBattle_BG3_X = 0; gBattle_BG3_X = 0;
gBattle_BG3_Y = 0; gBattle_BG3_Y = 0;
InitBattleBgsVideo(); InitBattleBgsVideo();
LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0, 64); LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
LoadBattleMenuWindowGfx(); LoadBattleMenuWindowGfx();
ResetSpriteData(); ResetSpriteData();
ResetTasks(); ResetTasks();
+4 -4
View File
@@ -2820,11 +2820,11 @@ void SetPpNumbersPaletteInMoveSelection(void)
u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBattler]], u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBattler]],
chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBattler]]); chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBattler]]);
gPlttBufferUnfaded[92] = palPtr[(var * 2) + 0]; gPlttBufferUnfaded[BG_PLTT_ID(5) + 12] = palPtr[(var * 2) + 0];
gPlttBufferUnfaded[91] = palPtr[(var * 2) + 1]; gPlttBufferUnfaded[BG_PLTT_ID(5) + 11] = palPtr[(var * 2) + 1];
CpuCopy16(&gPlttBufferUnfaded[92], &gPlttBufferFaded[92], sizeof(u16)); CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 12], &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(1));
CpuCopy16(&gPlttBufferUnfaded[91], &gPlttBufferFaded[91], sizeof(u16)); CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 11], &gPlttBufferFaded[BG_PLTT_ID(5) + 11], PLTT_SIZEOF(1));
} }
u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp) u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp)
+3 -3
View File
@@ -45,7 +45,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 1, .tilemapTop = 1,
.width = 27, .width = 27,
.height = 18, .height = 18,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x014 .baseBlock = 0x014
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -109,7 +109,7 @@ static void MainCB2_SetUp(void)
break; break;
case 3: case 3:
LoadFrameGfxOnBg(3); LoadFrameGfxOnBg(3);
LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20); LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
gMain.state++; gMain.state++;
break; break;
case 4: case 4:
@@ -564,5 +564,5 @@ static void LoadFrameGfxOnBg(u8 bg)
{ {
LoadBgTiles(bg, sTiles, 0xC0, 0); LoadBgTiles(bg, sTiles, 0xC0, 0);
CopyToBgTilemapBufferRect(bg, sTilemap, 0, 0, 32, 32); CopyToBgTilemapBufferRect(bg, sTilemap, 0, 0, 32, 32);
LoadPalette(sPalette, 0, 0x20); LoadPalette(sPalette, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
} }
+1 -1
View File
@@ -5784,7 +5784,7 @@ static void InitLevelUpBanner(void)
gBattle_BG2_Y = 0; gBattle_BG2_Y = 0;
gBattle_BG2_X = LEVEL_UP_BANNER_START; 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); CopyToWindowPixelBuffer(B_WIN_LEVEL_UP_BANNER, sLevelUpBanner_Gfx, 0, 0);
PutWindowTilemap(B_WIN_LEVEL_UP_BANNER); PutWindowTilemap(B_WIN_LEVEL_UP_BANNER);
CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_FULL); CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_FULL);
+6 -6
View File
@@ -655,7 +655,7 @@ static void Task_BattleTransition(u8 taskId)
static bool8 Transition_StartIntro(struct Task *task) static bool8 Transition_StartIntro(struct Task *task)
{ {
SetWeatherScreenFadeOut(); SetWeatherScreenFadeOut();
CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, sizeof(gPlttBufferUnfaded)); CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
if (sTasks_Intro[task->tTransitionId] != NULL) if (sTasks_Intro[task->tTransitionId] != NULL)
{ {
CreateTask(sTasks_Intro[task->tTransitionId], 4); CreateTask(sTasks_Intro[task->tTransitionId], 4);
@@ -937,7 +937,7 @@ static bool8 BigPokeball_Init(struct Task *task)
GetBg0TilesDst(&tilemap, &tileset); GetBg0TilesDst(&tilemap, &tileset);
CpuFill16(0, tilemap, BG_SCREEN_SIZE); CpuFill16(0, tilemap, BG_SCREEN_SIZE);
CpuCopy16(sBigPokeball_Gfx, tileset, sizeof(sBigPokeball_Gfx)); 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++; task->tState++;
return FALSE; return FALSE;
} }
@@ -1108,7 +1108,7 @@ static bool8 PokeballsTrail_Init(struct Task *task)
GetBg0TilesDst(&tilemap, &tileset); GetBg0TilesDst(&tilemap, &tileset);
CpuCopy16(sSlidingPokeball_Tilemap, tileset, sizeof(sSlidingPokeball_Tilemap)); CpuCopy16(sSlidingPokeball_Tilemap, tileset, sizeof(sSlidingPokeball_Tilemap));
CpuFill32(0, tilemap, BG_SCREEN_SIZE); 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++; task->tState++;
return FALSE; return FALSE;
} }
@@ -1906,8 +1906,8 @@ static bool8 Mugshot_SetGfx(struct Task *task)
GetBg0TilesDst(&tilemap, &tileset); GetBg0TilesDst(&tilemap, &tileset);
CpuCopy16(sMugshotBanner_Gfx, tileset, sizeof(sMugshotBanner_Gfx)); CpuCopy16(sMugshotBanner_Gfx, tileset, sizeof(sMugshotBanner_Gfx));
LoadPalette(sOpponentMugshotsPals[task->tMugshotId], 0xF0, 0x20); LoadPalette(sOpponentMugshotsPals[task->tMugshotId], BG_PLTT_ID(15), PLTT_SIZE_4BPP);
LoadPalette(sPlayerMugshotsPals[gSaveBlock2Ptr->playerGender], 0xFA, 0xC); LoadPalette(sPlayerMugshotsPals[gSaveBlock2Ptr->playerGender], BG_PLTT_ID(15) + 10, PLTT_SIZEOF(16 - 10));
for (i = 0; i < 20; i++) for (i = 0; i < 20; i++)
for (j = 0; j < 32; j++, mugshotsMap++) for (j = 0; j < 32; j++, mugshotsMap++)
@@ -2588,7 +2588,7 @@ static bool8 GridSquares_Init(struct Task *task)
GetBg0TilesDst(&tilemap, &tileset); GetBg0TilesDst(&tilemap, &tileset);
CpuCopy16(sGridSquare_Gfx, tileset, 0x20); CpuCopy16(sGridSquare_Gfx, tileset, 0x20);
CpuFill16(0xF0 << 8, tilemap, BG_SCREEN_SIZE); 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++; task->tState++;
return FALSE; return FALSE;
} }
+13 -13
View File
@@ -548,7 +548,7 @@ static const struct WindowTemplate sWindowTemplate_BerryCrushRankings = {
.tilemapTop = 4, .tilemapTop = 4,
.width = 24, .width = 24,
.height = 13, .height = 13,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x001 .baseBlock = 0x001
}; };
@@ -559,7 +559,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
.tilemapTop = 0, .tilemapTop = 0,
.width = 9, .width = 9,
.height = 2, .height = 2,
.paletteNum = 0x8, .paletteNum = 8,
.baseBlock = 0x3ed .baseBlock = 0x3ed
}, { }, {
.bg = 0, .bg = 0,
@@ -567,7 +567,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
.tilemapTop = 3, .tilemapTop = 3,
.width = 9, .width = 9,
.height = 2, .height = 2,
.paletteNum = 0x8, .paletteNum = 8,
.baseBlock = 0x3db .baseBlock = 0x3db
}, { }, {
.bg = 0, .bg = 0,
@@ -575,7 +575,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
.tilemapTop = 6, .tilemapTop = 6,
.width = 9, .width = 9,
.height = 2, .height = 2,
.paletteNum = 0x8, .paletteNum = 8,
.baseBlock = 0x3c9 .baseBlock = 0x3c9
}, { }, {
.bg = 0, .bg = 0,
@@ -583,7 +583,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
.tilemapTop = 3, .tilemapTop = 3,
.width = 9, .width = 9,
.height = 2, .height = 2,
.paletteNum = 0x8, .paletteNum = 8,
.baseBlock = 0x3b7 .baseBlock = 0x3b7
}, { }, {
.bg = 0, .bg = 0,
@@ -591,7 +591,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = {
.tilemapTop = 6, .tilemapTop = 6,
.width = 9, .width = 9,
.height = 2, .height = 2,
.paletteNum = 0x8, .paletteNum = 8,
.baseBlock = 0x3a5 .baseBlock = 0x3a5
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -604,7 +604,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = {
.tilemapTop = 2, .tilemapTop = 2,
.width = 22, .width = 22,
.height = 16, .height = 16,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x001 .baseBlock = 0x001
}, },
[STATE_RESULTS_RANDOM - RESULTS_STATE_START] = { [STATE_RESULTS_RANDOM - RESULTS_STATE_START] = {
@@ -613,7 +613,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = {
.tilemapTop = 2, .tilemapTop = 2,
.width = 22, .width = 22,
.height = 16, .height = 16,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x001 .baseBlock = 0x001
}, },
[STATE_RESULTS_CRUSHING - RESULTS_STATE_START] = { [STATE_RESULTS_CRUSHING - RESULTS_STATE_START] = {
@@ -622,7 +622,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = {
.tilemapTop = 2, .tilemapTop = 2,
.width = 24, .width = 24,
.height = 16, .height = 16,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x001 .baseBlock = 0x001
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -2551,7 +2551,7 @@ static s32 ShowGameDisplay(void)
gPaletteFade.bufferTransferDisabled = TRUE; gPaletteFade.bufferTransferDisabled = TRUE;
break; break;
case 7: 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(1, sCrusherTop_Tilemap, 0, 0);
CopyToBgTilemapBuffer(2, sContainerCap_Tilemap, 0, 0); CopyToBgTilemapBuffer(2, sContainerCap_Tilemap, 0, 0);
CopyToBgTilemapBuffer(3, sBg_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)); FillWindowPixelBuffer(spriteManager->resultsWindowId, PIXEL_FILL(0));
break; break;
case 2: case 2:
LoadStdWindowGfx(spriteManager->resultsWindowId, 0x21D, 0xD0); LoadStdWindowGfx(spriteManager->resultsWindowId, 0x21D, BG_PLTT_ID(13));
DrawStdFrameWithCustomTileAndPalette(spriteManager->resultsWindowId, FALSE, 541, 13); DrawStdFrameWithCustomTileAndPalette(spriteManager->resultsWindowId, FALSE, 541, 13);
break; break;
case 3: case 3:
@@ -3105,8 +3105,8 @@ static void Task_ShowBerryCrushRankings(u8 taskId)
tWindowId = AddWindow(&sWindowTemplate_BerryCrushRankings); tWindowId = AddWindow(&sWindowTemplate_BerryCrushRankings);
PutWindowTilemap(tWindowId); PutWindowTilemap(tWindowId);
FillWindowPixelBuffer(tWindowId, PIXEL_FILL(0)); FillWindowPixelBuffer(tWindowId, PIXEL_FILL(0));
LoadStdWindowGfx(tWindowId, 0x21D, 0xD0); LoadStdWindowGfx(tWindowId, 0x21D, BG_PLTT_ID(13));
DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 0x21D, 0xD); DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 0x21D, 13);
break; break;
case 1: case 1:
xPos = 96 - GetStringWidth(FONT_NORMAL, gText_BerryCrush2, -1) / 2u; xPos = 96 - GetStringWidth(FONT_NORMAL, gText_BerryCrush2, -1) / 2u;
+95 -95
View File
@@ -243,116 +243,116 @@ static const struct WindowTemplate sWindowTemplates_Main[] = {
static const struct WindowTemplate sWindowTemplates_Variable[] = { static const struct WindowTemplate sWindowTemplates_Variable[] = {
{ {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x18, .tilemapLeft = 24,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x05, .width = 5,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x1d1 .baseBlock = 0x1d1
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x11, .tilemapLeft = 17,
.tilemapTop = 0x09, .tilemapTop = 9,
.width = 0x0c, .width = 12,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x1d1 .baseBlock = 0x1d1
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x01, .tilemapTop = 1,
.width = 0x08, .width = 8,
.height = 0x03, .height = 3,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x201 .baseBlock = 0x201
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x17, .tilemapLeft = 23,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x06, .width = 6,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x219 .baseBlock = 0x219
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x15, .tilemapLeft = 21,
.tilemapTop = 0x09, .tilemapTop = 9,
.width = 0x06, .width = 6,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x219 .baseBlock = 0x219
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x02, .tilemapLeft = 2,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x1a, .width = 26,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x231 .baseBlock = 0x231
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x06, .tilemapLeft = 6,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x0e, .width = 14,
.height = 0x04, .height = 4,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x231 .baseBlock = 0x231
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x06, .tilemapLeft = 6,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x0f, .width = 15,
.height = 0x04, .height = 4,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x269 .baseBlock = 0x269
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x06, .tilemapLeft = 6,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x10, .width = 16,
.height = 0x04, .height = 4,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x2a5 .baseBlock = 0x2a5
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x06, .tilemapLeft = 6,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x17, .width = 23,
.height = 0x04, .height = 4,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x2e5 .baseBlock = 0x2e5
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x11, .tilemapTop = 17,
.width = 0x07, .width = 7,
.height = 0x02, .height = 2,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x199 .baseBlock = 0x199
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x07, .width = 7,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x199 .baseBlock = 0x199
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x0d, .tilemapTop = 13,
.width = 0x07, .width = 7,
.height = 0x06, .height = 6,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x199 .baseBlock = 0x199
}, { }, {
.bg = 0x02, .bg = 2,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x0b, .tilemapTop = 11,
.width = 0x07, .width = 7,
.height = 0x08, .height = 8,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x199 .baseBlock = 0x199
} }
}; };
@@ -618,9 +618,9 @@ static bool8 BerryPouchLoadGfx(void)
} }
break; break;
case 2: case 2:
LoadCompressedPalette(gBerryPouchBgPals, 0, 0x60); LoadCompressedPalette(gBerryPouchBgPals, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP);
if (gSaveBlock2Ptr->playerGender != MALE) if (gSaveBlock2Ptr->playerGender != MALE)
LoadCompressedPalette(gBerryPouchBgPal0FemaleOverride, 0, 0x20); LoadCompressedPalette(gBerryPouchBgPal0FemaleOverride, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
sResources->data[0]++; sResources->data[0]++;
break; break;
case 3: case 3:
@@ -1411,10 +1411,10 @@ static void BerryPouchInitWindows(void)
u8 i; u8 i;
InitWindows(sWindowTemplates_Main); InitWindows(sWindowTemplates_Main);
DeactivateAllTextPrinters(); DeactivateAllTextPrinters();
LoadUserWindowGfx(0, 0x001, 0xE0); LoadUserWindowGfx(0, 0x001, BG_PLTT_ID(14));
LoadMenuMessageWindowGfx(0, 0x013, 0xD0); LoadMenuMessageWindowGfx(0, 0x013, BG_PLTT_ID(13));
LoadStdWindowGfx(0, 0x00A, 0xC0); LoadStdWindowGfx(0, 0x00A, BG_PLTT_ID(12));
LoadPalette(gStandardMenuPalette, 0xF0, 0x20); LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP);
for (i = 0; i < 3; i++) for (i = 0; i < 3; i++)
FillWindowPixelBuffer(i, PIXEL_FILL(0)); FillWindowPixelBuffer(i, PIXEL_FILL(0));
PutWindowTilemap(0); PutWindowTilemap(0);
@@ -1438,9 +1438,9 @@ static u8 GetOrCreateVariableWindow(u8 winIdx)
{ {
sVariableWindowIds[winIdx] = AddWindow(&sWindowTemplates_Variable[winIdx]); sVariableWindowIds[winIdx] = AddWindow(&sWindowTemplates_Variable[winIdx]);
if (winIdx == 2 || winIdx == 6 || winIdx == 7 || winIdx == 8 || winIdx == 9) if (winIdx == 2 || winIdx == 6 || winIdx == 7 || winIdx == 8 || winIdx == 9)
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x00A, 0xC); DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x00A, 12);
else else
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 0xE); DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 14);
ScheduleBgCopyTilemapToVram(2); ScheduleBgCopyTilemapToVram(2);
retval = sVariableWindowIds[winIdx]; retval = sVariableWindowIds[winIdx];
} }
@@ -1449,7 +1449,7 @@ static u8 GetOrCreateVariableWindow(u8 winIdx)
static void VariableWindowSetAltFrameTileAndPalette(u8 winIdx) static void VariableWindowSetAltFrameTileAndPalette(u8 winIdx)
{ {
DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 0xE); DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 14);
} }
static void DestroyVariableWindow(u8 winIdx) static void DestroyVariableWindow(u8 winIdx)
@@ -1490,12 +1490,12 @@ void DisplayItemMessageInBerryPouch(u8 taskId, u8 fontId, const u8 * str, TaskFu
static void CreateYesNoMenuWin3(u8 taskId, const struct YesNoFuncTable *ptrs) 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) 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) static void PrintMoneyInWin2(void)
+3 -2
View File
@@ -2,6 +2,7 @@
#include "event_data.h" #include "event_data.h"
#include "load_save.h" #include "load_save.h"
#include "menu.h" #include "menu.h"
#include "palette.h"
#include "quest_log.h" #include "quest_log.h"
#include "script_menu.h" #include "script_menu.h"
#include "string_util.h" #include "string_util.h"
@@ -119,8 +120,8 @@ void DisplayBerryPowderVendorMenu(void)
sBerryPowderVendorWindowId = AddWindow(&template); sBerryPowderVendorWindowId = AddWindow(&template);
FillWindowPixelBuffer(sBerryPowderVendorWindowId, 0); FillWindowPixelBuffer(sBerryPowderVendorWindowId, 0);
PutWindowTilemap(sBerryPowderVendorWindowId); PutWindowTilemap(sBerryPowderVendorWindowId);
LoadStdWindowGfx(sBerryPowderVendorWindowId, 0x21D, 0xD0); LoadStdWindowGfx(sBerryPowderVendorWindowId, 0x21D, BG_PLTT_ID(13));
DrawPlayerPowderAmount(sBerryPowderVendorWindowId, 0x21D, 0xD, GetBerryPowder()); DrawPlayerPowderAmount(sBerryPowderVendorWindowId, 0x21D, 13, GetBerryPowder());
} }
} }
+91 -90
View File
@@ -8,61 +8,62 @@
#include "new_menu_helpers.h" #include "new_menu_helpers.h"
#include "menu.h" #include "menu.h"
#include "shop.h" #include "shop.h"
#include "palette.h"
static const struct WindowTemplate sShopBuyMenuWindowTemplatesNormal[] = static const struct WindowTemplate sShopBuyMenuWindowTemplatesNormal[] =
{ {
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x1, .tilemapLeft = 1,
.tilemapTop = 0x1, .tilemapTop = 1,
.width = 0x8, .width = 8,
.height = 0x3, .height = 3,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x27, .baseBlock = 0x27,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x1, .tilemapLeft = 1,
.tilemapTop = 0xB, .tilemapTop = 11,
.width = 0xD, .width = 13,
.height = 0x2, .height = 2,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x3F, .baseBlock = 0x3F,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x2, .tilemapLeft = 2,
.tilemapTop = 0xF, .tilemapTop = 15,
.width = 0x1A, .width = 26,
.height = 0x4, .height = 4,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0x59, .baseBlock = 0x59,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x11, .tilemapLeft = 17,
.tilemapTop = 0x9, .tilemapTop = 9,
.width = 0xC, .width = 12,
.height = 0x4, .height = 4,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0xC1, .baseBlock = 0xC1,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0xB, .tilemapLeft = 11,
.tilemapTop = 0x1, .tilemapTop = 1,
.width = 0x11, .width = 17,
.height = 0xC, .height = 12,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0xF1, .baseBlock = 0xF1,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x5, .tilemapLeft = 5,
.tilemapTop = 0xE, .tilemapTop = 14,
.width = 0x19, .width = 25,
.height = 0x6, .height = 6,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x1BD, .baseBlock = 0x1BD,
}, },
DUMMY_WIN_TEMPLATE, DUMMY_WIN_TEMPLATE,
@@ -72,66 +73,66 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplatesNormal[] =
static const struct WindowTemplate sShopBuyMenuWindowTemplatesTM[] = static const struct WindowTemplate sShopBuyMenuWindowTemplatesTM[] =
{ {
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x1, .tilemapLeft = 1,
.tilemapTop = 0x1, .tilemapTop = 1,
.width = 0x8, .width = 8,
.height = 0x3, .height = 3,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x27, .baseBlock = 0x27,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x1, .tilemapLeft = 1,
.tilemapTop = 0xB, .tilemapTop = 11,
.width = 0xD, .width = 13,
.height = 0x2, .height = 2,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x3F, .baseBlock = 0x3F,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x2, .tilemapLeft = 2,
.tilemapTop = 0xF, .tilemapTop = 15,
.width = 0x1A, .width = 26,
.height = 0x4, .height = 4,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0x59, .baseBlock = 0x59,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x11, .tilemapLeft = 17,
.tilemapTop = 0x9, .tilemapTop = 9,
.width = 0xC, .width = 12,
.height = 0x4, .height = 4,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0xC1, .baseBlock = 0xC1,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0xB, .tilemapLeft = 11,
.tilemapTop = 0x1, .tilemapTop = 1,
.width = 0x11, .width = 17,
.height = 0xA, .height = 10,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0xF1, .baseBlock = 0xF1,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0xC, .tilemapLeft = 12,
.tilemapTop = 0xC, .tilemapTop = 12,
.width = 0x12, .width = 18,
.height = 0x8, .height = 8,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0x19B, .baseBlock = 0x19B,
}, },
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x1, .tilemapLeft = 1,
.tilemapTop = 0xE, .tilemapTop = 14,
.width = 0xA, .width = 10,
.height = 0x4, .height = 4,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0x22B, .baseBlock = 0x22B,
}, },
DUMMY_WIN_TEMPLATE, DUMMY_WIN_TEMPLATE,
@@ -139,12 +140,12 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplatesTM[] =
static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplate = static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplate =
{ {
.bg = 0x0, .bg = 0,
.tilemapLeft = 0x15, .tilemapLeft = 21,
.tilemapTop = 0x9, .tilemapTop = 9,
.width = 0x6, .width = 6,
.height = 0x4, .height = 4,
.paletteNum = 0xE, .paletteNum = 14,
.baseBlock = 0xC1, .baseBlock = 0xC1,
}; };
@@ -162,9 +163,9 @@ void BuyMenuInitWindows(bool32 isSellingTM)
else else
InitWindows(sShopBuyMenuWindowTemplatesTM); InitWindows(sShopBuyMenuWindowTemplatesTM);
DeactivateAllTextPrinters(); DeactivateAllTextPrinters();
LoadUserWindowGfx(0, 0x1, 0xD0); LoadUserWindowGfx(0, 0x1, BG_PLTT_ID(13));
LoadMenuMessageWindowGfx(0, 0x13, 0xE0); LoadMenuMessageWindowGfx(0, 0x13, BG_PLTT_ID(14));
LoadStdWindowGfx(0, 0xA, 0xF0); LoadStdWindowGfx(0, 0xA, BG_PLTT_ID(15));
PutWindowTilemap(0); PutWindowTilemap(0);
PutWindowTilemap(4); PutWindowTilemap(4);
PutWindowTilemap(5); PutWindowTilemap(5);
@@ -190,15 +191,15 @@ void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback)
void BuyMenuQuantityBoxNormalBorder(u8 windowId, bool8 copyToVram) void BuyMenuQuantityBoxNormalBorder(u8 windowId, bool8 copyToVram)
{ {
DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0x1, 0xD); DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0x1, 13);
} }
void BuyMenuQuantityBoxThinBorder(u8 windowId, bool8 copyToVram) void BuyMenuQuantityBoxThinBorder(u8 windowId, bool8 copyToVram)
{ {
DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0xA, 0xF); DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0xA, 15);
} }
void BuyMenuConfirmPurchase(u8 taskId, const struct YesNoFuncTable *yesNo) 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);
} }
+6 -6
View File
@@ -40,7 +40,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 5, .tilemapTop = 5,
.width = 6, .width = 6,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x00A .baseBlock = 0x00A
}, { }, {
.bg = 0, .bg = 0,
@@ -48,7 +48,7 @@ static const struct WindowTemplate sWindowTemplates[] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 23, .width = 23,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x022 .baseBlock = 0x022
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -101,16 +101,16 @@ static void Task_DrawClearSaveDataScreen(u8 taskId)
SaveClearScreen_GpuInit(); SaveClearScreen_GpuInit();
break; break;
case 3: case 3:
LoadStdWindowGfx(0, 0x001, 0xF0); LoadStdWindowGfx(0, 0x001, BG_PLTT_ID(15));
LoadStdWindowGfx(1, 0x001, 0xF0); LoadStdWindowGfx(1, 0x001, BG_PLTT_ID(15));
break; break;
case 4: case 4:
DrawStdFrameWithCustomTileAndPalette(1, TRUE, 0x001, 0xF); DrawStdFrameWithCustomTileAndPalette(1, TRUE, 0x001, 15);
AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 3, 1, 1, sTextColor, 0, gText_ClearAllSaveData); AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 3, 1, 1, sTextColor, 0, gText_ClearAllSaveData);
CopyWindowToVram(1, COPYWIN_GFX); CopyWindowToVram(1, COPYWIN_GFX);
break; break;
case 5: case 5:
CreateYesNoMenu(&sWindowTemplates[0], FONT_NORMAL, 0, 2, 0x001, 0xF, 1); CreateYesNoMenu(&sWindowTemplates[0], FONT_NORMAL, 0, 2, 0x001, 15, 1);
CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(0);
break; break;
default: default:
+2 -2
View File
@@ -84,8 +84,8 @@ void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y)
sCoinsWindowId = AddWindow(&template); sCoinsWindowId = AddWindow(&template);
FillWindowPixelBuffer(sCoinsWindowId, 0); FillWindowPixelBuffer(sCoinsWindowId, 0);
PutWindowTilemap(sCoinsWindowId); PutWindowTilemap(sCoinsWindowId);
LoadStdWindowGfx(sCoinsWindowId, 0x21D, 0xD0); LoadStdWindowGfx(sCoinsWindowId, 0x21D, BG_PLTT_ID(13));
DrawStdFrameWithCustomTileAndPalette(sCoinsWindowId, FALSE, 0x21D, 0xD); DrawStdFrameWithCustomTileAndPalette(sCoinsWindowId, FALSE, 0x21D, 13);
AddTextPrinterParameterized(sCoinsWindowId, FONT_NORMAL, gText_Coins_2, 0, 0, 0xFF, 0); AddTextPrinterParameterized(sCoinsWindowId, FONT_NORMAL, gText_Coins_2, 0, 0, 0xFF, 0);
PrintCoinsString(coinAmount); PrintCoinsString(coinAmount);
} }
+17 -17
View File
@@ -803,9 +803,9 @@ static bool32 DoOverworldMapScrollScene(u8 whichMon)
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(36, DISPLAY_HEIGHT - 36)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(36, DISPLAY_HEIGHT - 36));
SwitchWin1OffWin0On(); SwitchWin1OffWin0On();
InitBgDarkenEffect(); InitBgDarkenEffect();
Menu_LoadStdPalAt(0xF0); Menu_LoadStdPalAt(BG_PLTT_ID(15));
gPlttBufferUnfaded[0xFF] = RGB_BLACK; gPlttBufferUnfaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
gPlttBufferFaded[0xFF] = RGB_BLACK; gPlttBufferFaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
return TRUE; return TRUE;
default: default:
return FALSE; return FALSE;
@@ -827,9 +827,9 @@ static s32 RollCredits(void)
case CREDITSSCENE_SETUP_DARKEN_EFFECT: case CREDITSSCENE_SETUP_DARKEN_EFFECT:
InitBgDarkenEffect(); InitBgDarkenEffect();
CreateCreditsWindow(); CreateCreditsWindow();
Menu_LoadStdPalAt(0xF0); Menu_LoadStdPalAt(BG_PLTT_ID(15));
gPlttBufferUnfaded[0xFF] = RGB_BLACK; gPlttBufferUnfaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
gPlttBufferFaded[0xFF] = RGB_BLACK; gPlttBufferFaded[BG_PLTT_ID(15) + 15] = RGB_BLACK;
sCreditsMgr->mainseqno = CREDITSSCENE_OPEN_WIN0; sCreditsMgr->mainseqno = CREDITSSCENE_OPEN_WIN0;
return 0; return 0;
case CREDITSSCENE_OPEN_WIN0: case CREDITSSCENE_OPEN_WIN0:
@@ -1128,15 +1128,15 @@ static bool32 DoCreditsMonScene(void)
DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tiles, 0x2000, 0, 0); DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tiles, 0x2000, 0, 0);
DecompressAndLoadBgGfxUsingHeap(1, gCreditsMonPokeball_Tilemap, 0x500, 0, 1); DecompressAndLoadBgGfxUsingHeap(1, gCreditsMonPokeball_Tilemap, 0x500, 0, 1);
DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tilemap, 0x400, 0, 1); DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tilemap, 0x400, 0, 1);
LoadPalette(gCreditsMonPokeball_Pals[sCreditsMgr->whichMon], 0, 0x20); LoadPalette(gCreditsMonPokeball_Pals[sCreditsMgr->whichMon], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
LoadPalette(sCreditsMonCircle_Pal, 0xF0, 0x20); LoadPalette(sCreditsMonCircle_Pal, BG_PLTT_ID(15), sizeof(sCreditsMonCircle_Pal));
LoadCreditsMonPic(sCreditsMgr->whichMon); LoadCreditsMonPic(sCreditsMgr->whichMon);
SetVBlankCallback(VBlankCB); SetVBlankCallback(VBlankCB);
EnableInterrupts(INTR_FLAG_VBLANK); EnableInterrupts(INTR_FLAG_VBLANK);
sCreditsMgr->subseqno++; sCreditsMgr->subseqno++;
break; break;
case 1: case 1:
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, PIXEL_FILL(1)); FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 17);
PutWindowTilemap(0); PutWindowTilemap(0);
CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(2);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
@@ -1249,7 +1249,7 @@ static bool32 DoCopyrightOrTheEndGfxScene(void)
ChangeBgY(0, 0, BG_COORD_SET); ChangeBgY(0, 0, BG_COORD_SET);
DecompressAndLoadBgGfxUsingHeap(0, sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].tiles, 0x2000, 0, 0); DecompressAndLoadBgGfxUsingHeap(0, sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].tiles, 0x2000, 0, 0);
DecompressAndLoadBgGfxUsingHeap(0, sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].map, 0x800, 0, 1); 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); SetVBlankCallback(VBlankCB);
EnableInterrupts(INTR_FLAG_VBLANK); EnableInterrupts(INTR_FLAG_VBLANK);
sCreditsMgr->subseqno++; sCreditsMgr->subseqno++;
@@ -1375,7 +1375,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
sprSheet.size = 0x3000; sprSheet.size = 0x3000;
sprSheet.tag = data->characterTilesTag; sprSheet.tag = data->characterTilesTag;
LoadCompressedSpriteSheet(&sprSheet); LoadCompressedSpriteSheet(&sprSheet);
LoadPalette(sPlayerMale_Pal, 0x1F0, sizeof(sPlayerMale_Pal)); LoadPalette(sPlayerMale_Pal, OBJ_PLTT_ID(15), sizeof(sPlayerMale_Pal));
} }
else else
{ {
@@ -1383,7 +1383,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
sprSheet.size = 0x3000; sprSheet.size = 0x3000;
sprSheet.tag = data->characterTilesTag; sprSheet.tag = data->characterTilesTag;
LoadCompressedSpriteSheet(&sprSheet); LoadCompressedSpriteSheet(&sprSheet);
LoadPalette(sPlayerFemale_Pal, 0x1F0, sizeof(sPlayerFemale_Pal)); LoadPalette(sPlayerFemale_Pal, OBJ_PLTT_ID(15), sizeof(sPlayerFemale_Pal));
} }
break; break;
case 1: case 1:
@@ -1392,7 +1392,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
sprSheet.size = 0x3000; sprSheet.size = 0x3000;
sprSheet.tag = data->characterTilesTag; sprSheet.tag = data->characterTilesTag;
LoadCompressedSpriteSheet(&sprSheet); LoadCompressedSpriteSheet(&sprSheet);
LoadPalette(sRival_Pal, 0x1F0, sizeof(sRival_Pal)); LoadPalette(sRival_Pal, OBJ_PLTT_ID(15), sizeof(sRival_Pal));
break; break;
} }
sprTemplate = sPlayerOrRivalSpriteTemplate; sprTemplate = sPlayerOrRivalSpriteTemplate;
@@ -1410,7 +1410,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
sprSheet.size = 0x3000; sprSheet.size = 0x3000;
sprSheet.tag = data->groundTilesTag; sprSheet.tag = data->groundTilesTag;
LoadCompressedSpriteSheet(&sprSheet); 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; sprTemplate = sGroundSpriteTemplate_Running;
break; break;
case 1: case 1:
@@ -1418,7 +1418,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
sprSheet.size = 0x3000; sprSheet.size = 0x3000;
sprSheet.tag = data->groundTilesTag; sprSheet.tag = data->groundTilesTag;
LoadCompressedSpriteSheet(&sprSheet); 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; sprTemplate = sGroundSpriteTemplate_Static;
break; break;
case 2: case 2:
@@ -1426,7 +1426,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
sprSheet.size = 0x3000; sprSheet.size = 0x3000;
sprSheet.tag = data->groundTilesTag; sprSheet.tag = data->groundTilesTag;
LoadCompressedSpriteSheet(&sprSheet); 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; sprTemplate = sGroundSpriteTemplate_Running;
break; break;
case 3: case 3:
@@ -1434,7 +1434,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene)
sprSheet.size = 0x3000; sprSheet.size = 0x3000;
sprSheet.tag = data->groundTilesTag; sprSheet.tag = data->groundTilesTag;
LoadCompressedSpriteSheet(&sprSheet); 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; sprTemplate = sGroundSpriteTemplate_Running;
break; break;
} }
+1 -1
View File
@@ -30,7 +30,7 @@ static const struct WindowTemplate sWindowTemplate_BButtonCancel = {
.tilemapTop = 0, .tilemapTop = 0,
.width = 30, .width = 30,
.height = 2, .height = 2,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x008 .baseBlock = 0x008
}; };
+4 -4
View File
@@ -1810,7 +1810,7 @@ static void CB2_EggHatch_0(void)
case 2: case 2:
DecompressAndLoadBgGfxUsingHeap(0, gBattleInterface_Textbox_Gfx, 0, 0, 0); DecompressAndLoadBgGfxUsingHeap(0, gBattleInterface_Textbox_Gfx, 0, 0, 0);
CopyToBgTilemapBuffer(0, gBattleInterface_Textbox_Tilemap, 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++; gMain.state++;
break; break;
case 3: case 3:
@@ -1834,7 +1834,7 @@ static void CB2_EggHatch_0(void)
break; break;
case 7: case 7:
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); 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); LoadBgTiles(1, gTradeGba_Gfx, 0x1420, 0);
CopyToBgTilemapBuffer(1, gTradeOrHatchMonShadowTilemap, 0x1000, 0); CopyToBgTilemapBuffer(1, gTradeOrHatchMonShadowTilemap, 0x1000, 0);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
@@ -1948,8 +1948,8 @@ static void CB2_EggHatch_1(void)
case 9: case 9:
if (!IsTextPrinterActive(sEggHatchData->windowId)) if (!IsTextPrinterActive(sEggHatchData->windowId))
{ {
LoadUserWindowGfx2(sEggHatchData->windowId, 0x140, 0xE0); LoadUserWindowGfx2(sEggHatchData->windowId, 0x140, BG_PLTT_ID(14));
CreateYesNoMenu(&sYesNoWinTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x140, 0xE, 0); CreateYesNoMenu(&sYesNoWinTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x140, 14, 0);
sEggHatchData->CB2_state++; sEggHatchData->CB2_state++;
} }
break; break;
+1 -1
View File
@@ -243,7 +243,7 @@ static bool8 DiplomaLoadGfx(void)
return FALSE; return FALSE;
break; break;
case 3: case 3:
LoadPalette(sDiplomaPal, 0, sizeof(sDiplomaPal)); LoadPalette(sDiplomaPal, BG_PLTT_ID(0), sizeof(sDiplomaPal));
// fallthrough // fallthrough
default: default:
// Finished // Finished
+6 -6
View File
@@ -3002,8 +3002,8 @@ static void PrintRecordsText(u8 windowId)
recordNums[1] = gSaveBlock2Ptr->berryPick.bestScore; recordNums[1] = gSaveBlock2Ptr->berryPick.bestScore;
recordNums[2] = gSaveBlock2Ptr->berryPick.berriesPickedInRow; recordNums[2] = gSaveBlock2Ptr->berryPick.berriesPickedInRow;
LoadStdWindowGfx(windowId, 0x21D, 0xD0); LoadStdWindowGfx(windowId, 0x21D, BG_PLTT_ID(13));
DrawTextBorderOuter(windowId, 0x21D, 0xD); DrawTextBorderOuter(windowId, 0x21D, 13);
FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[0], 1, 1, TEXT_SKIP_DRAW, NULL); AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[0], 1, 1, TEXT_SKIP_DRAW, NULL);
for (i = 0; i < NUM_RECORD_TYPES; i++) for (i = 0; i < NUM_RECORD_TYPES; i++)
@@ -4161,12 +4161,12 @@ static void ResetBerryAndStatusBarSprites(void)
static void LoadWindowFrameGfx(u8 frameId) static void LoadWindowFrameGfx(u8 frameId)
{ {
LoadBgTiles(BG_INTERFACE, GetUserWindowGraphics(frameId)->tiles, 0x120, 1); 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) static void DBP_LoadStdWindowGfx(void)
{ {
LoadStdWindowGfx(0, 0xA, 0xB0); LoadStdWindowGfx(0, 0xA, BG_PLTT_ID(11));
} }
static void ResetGfxState(void) static void ResetGfxState(void)
@@ -4926,7 +4926,7 @@ static bool32 LoadBgGfx(void)
switch (sGfx->loadState) switch (sGfx->loadState)
{ {
case 0: case 0:
LoadPalette(sBg_Pal, 0, sizeof(sBg_Pal)); LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal));
break; break;
case 1: case 1:
ResetTempTileDataBuffers(); ResetTempTileDataBuffers();
@@ -4942,7 +4942,7 @@ static bool32 LoadBgGfx(void)
return FALSE; return FALSE;
break; break;
case 5: case 5:
LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
break; break;
default: default:
sGfx->loadState = 0; sGfx->loadState = 0;
+8 -8
View File
@@ -1319,13 +1319,13 @@ static void SetGpuRegsForEasyChatInit(void)
static void LoadEasyChatPals(void) static void LoadEasyChatPals(void)
{ {
ResetPaletteFade(); ResetPaletteFade();
LoadPalette(gEasyChatWindow_Pal, 0, 32); LoadPalette(gEasyChatWindow_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
LoadPalette(sTextInputFrameOrange_Pal, 1 * 16, 32); LoadPalette(sTextInputFrameOrange_Pal, BG_PLTT_ID(1), sizeof(sTextInputFrameOrange_Pal));
LoadPalette(sTextInputFrameGreen_Pal, 4 * 16, 32); LoadPalette(sTextInputFrameGreen_Pal, BG_PLTT_ID(4), sizeof(sTextInputFrameGreen_Pal));
LoadPalette(sTitleText_Pal, 10 * 16, 8); LoadPalette(sTitleText_Pal, BG_PLTT_ID(10), sizeof(sTitleText_Pal));
LoadPalette(sText_Pal, 11 * 16, 10); LoadPalette(sText_Pal, BG_PLTT_ID(11), sizeof(sText_Pal));
LoadPalette(sText_Pal, 15 * 16, 10); LoadPalette(sText_Pal, BG_PLTT_ID(15), sizeof(sText_Pal));
LoadPalette(sText_Pal, 3 * 16, 10); LoadPalette(sText_Pal, BG_PLTT_ID(3), sizeof(sText_Pal));
} }
static void PrintTitleText(void) static void PrintTitleText(void)
@@ -1363,7 +1363,7 @@ static void EC_AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *st
static void PrintECInstructionsText(void) static void PrintECInstructionsText(void)
{ {
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17); FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17);
LoadUserWindowGfx(1, 1, 0xE0); LoadUserWindowGfx(1, 1, BG_PLTT_ID(14));
DrawTextBorderOuter(1, 1, 14); DrawTextBorderOuter(1, 1, 14);
PrintECInterfaceTextById(0); PrintECInterfaceTextById(0);
PutWindowTilemap(1); PutWindowTilemap(1);
+1 -1
View File
@@ -2175,7 +2175,7 @@ void PatchObjectPalette(u16 paletteTag, u8 paletteSlot)
{ {
u8 paletteIndex = FindObjectEventPaletteIndexByTag(paletteTag); 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); ApplyGlobalFieldPaletteTint(paletteSlot);
} }
+4 -4
View File
@@ -397,7 +397,7 @@ static void EvoTask_PostEvoSparklesSet2Init(u8 taskId)
SetEvoSparklesMatrices(); SetEvoSparklesMatrices();
gTasks[taskId].data[15] = 0; gTasks[taskId].data[15] = 0;
IsMovingBackgroundTaskRunning(); 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); BeginNormalPaletteFade(0xFFF90F1C, 0, 0, 16, RGB_WHITE);
gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2; gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2;
PlaySE(SE_M_PETAL_DANCE); PlaySE(SE_M_PETAL_DANCE);
@@ -448,7 +448,7 @@ static void EvoTask_PostEvoSparklesSet2TradeInit(u8 taskId)
SetEvoSparklesMatrices(); SetEvoSparklesMatrices();
gTasks[taskId].data[15] = 0; gTasks[taskId].data[15] = 0;
IsMovingBackgroundTaskRunning(); 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); BeginNormalPaletteFade(0xFFF90F00, 0, 0, 16, RGB_WHITE);
gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2Trade; gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2Trade;
PlaySE(SE_M_PETAL_DANCE); 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.affineMode = ST_OAM_AFFINE_NORMAL;
gSprites[preEvoSpriteId].oam.matrixNum = 30; gSprites[preEvoSpriteId].oam.matrixNum = 30;
gSprites[preEvoSpriteId].invisible = FALSE; 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].callback = SpriteCallbackDummy_MonSprites;
gSprites[postEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[postEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL;
gSprites[postEvoSpriteId].oam.matrixNum = 31; gSprites[postEvoSpriteId].oam.matrixNum = 31;
gSprites[postEvoSpriteId].invisible = FALSE; 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; gTasks[taskId].EvoGraphicsTaskEvoStop = FALSE;
return taskId; return taskId;
} }
+15 -15
View File
@@ -264,7 +264,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u
gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_LEFT], gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_LEFT],
currSpecies); currSpecies);
pokePal = GetMonSpritePalStructFromOtIdPersonality(currSpecies, trainerId, personality); 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); SetMultiuseSpriteTemplateToPokemon(currSpecies, B_POSITION_OPPONENT_LEFT);
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
@@ -279,7 +279,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u
gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT], gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT],
postEvoSpecies); postEvoSpecies);
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); 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); SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT);
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
@@ -299,7 +299,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u
gTasks[id].tEvoWasStopped = FALSE; gTasks[id].tEvoWasStopped = FALSE;
gTasks[id].tPartyId = partyId; 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); 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); postEvoSpecies);
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); 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); SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT);
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
@@ -416,7 +416,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void)
gMain.state++; gMain.state++;
break; break;
case 3: case 3:
FillBgTilemapBufferRect(1, 0, 0, 0, 0x20, 0x20, 0x11); FillBgTilemapBufferRect(1, 0, 0, 0, 0x20, 0x20, 17);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
gMain.state++; gMain.state++;
break; break;
@@ -429,7 +429,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void)
gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT], gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT],
postEvoSpecies); postEvoSpecies);
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality);
LoadCompressedPalette(pokePal->data, 0x120, 0x20); LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP);
gMain.state++; gMain.state++;
} }
break; break;
@@ -494,7 +494,7 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit
postEvoSpecies); postEvoSpecies);
pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); 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); SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_LEFT);
gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable;
@@ -756,7 +756,7 @@ static void Task_EvolutionScene(u8 taskId)
if (IsSEPlaying()) if (IsSEPlaying())
{ {
m4aMPlayAllStop(); m4aMPlayAllStop();
memcpy(&gPlttBufferUnfaded[0x20], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette)); memcpy(&gPlttBufferUnfaded[BG_PLTT_ID(2)], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette));
RestoreBgAfterAnim(); RestoreBgAfterAnim();
BeginNormalPaletteFade(0x1C, 0, 0x10, 0, RGB_BLACK); BeginNormalPaletteFade(0x1C, 0, 0x10, 0, RGB_BLACK);
gTasks[taskId].tState++; gTasks[taskId].tState++;
@@ -1199,7 +1199,7 @@ static void Task_TradeEvolutionScene(u8 taskId)
{ {
// Free(sBgAnimPal); // Free(sBgAnimPal);
PlayCry_Normal(gTasks[taskId].tPostEvoSpecies, 0); 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++; gTasks[taskId].tState++;
} }
break; break;
@@ -1331,8 +1331,8 @@ static void Task_TradeEvolutionScene(u8 taskId)
case T_MVSTATE_PRINT_YES_NO: case T_MVSTATE_PRINT_YES_NO:
if (!IsTextPrinterActive(0) && !IsSEPlaying()) if (!IsTextPrinterActive(0) && !IsSEPlaying())
{ {
LoadUserWindowGfx2(0, 0xA8, 0xE0); LoadUserWindowGfx2(0, 0xA8, BG_PLTT_ID(14));
CreateYesNoMenu(&gTradeEvolutionSceneYesNoWindowTemplate, FONT_NORMAL_COPY_2, 0, 2, 0xA8, 0xE, 0); CreateYesNoMenu(&gTradeEvolutionSceneYesNoWindowTemplate, FONT_NORMAL_COPY_2, 0, 2, 0xA8, 14, 0);
sEvoCursorPos = 0; sEvoCursorPos = 0;
gTasks[taskId].tLearnMoveState++; gTasks[taskId].tLearnMoveState++;
sEvoCursorPos = 0; sEvoCursorPos = 0;
@@ -1537,7 +1537,7 @@ static void Task_UpdateBgPalette(u8 taskId)
else else
{ {
// Haven't reached final palette in current stage, load the current palette // 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; tCycleTimer = 0;
tPalStage++; tPalStage++;
} }
@@ -1635,7 +1635,7 @@ static void StartBgAnimation(bool8 isLink)
else else
innerBgId = 1, outerBgId = 3; innerBgId = 1, outerBgId = 3;
LoadPalette(sBlackPalette, 0xA0, 0x20); LoadPalette(sBlackPalette, BG_PLTT_ID(10), sizeof(sBlackPalette));
DecompressAndLoadBgGfxUsingHeap(1, sMovingBackgroundTiles, FALSE, 0, 0); DecompressAndLoadBgGfxUsingHeap(1, sMovingBackgroundTiles, FALSE, 0, 0);
CopyToBgTilemapBuffer(1, sMovingBackgroundMap1, 0, 0); CopyToBgTilemapBuffer(1, sMovingBackgroundMap1, 0, 0);
@@ -1673,7 +1673,7 @@ void IsMovingBackgroundTaskRunning(void) // unused
if (taskId != TASK_NONE) if (taskId != TASK_NONE)
gTasks[taskId].tPaused = TRUE; gTasks[taskId].tPaused = TRUE;
FillPalette(RGB_BLACK, 0xA0, 0x20); FillPalette(RGB_BLACK, BG_PLTT_ID(10), PLTT_SIZE_4BPP);
} }
#undef tPaused #undef tPaused
@@ -1687,7 +1687,7 @@ static void StopBgAnimation(void)
if ((taskId = FindTaskIdByFunc(Task_AnimateBg)) != TASK_NONE) if ((taskId = FindTaskIdByFunc(Task_AnimateBg)) != TASK_NONE)
DestroyTask(taskId); DestroyTask(taskId);
FillPalette(RGB_BLACK, 0xA0, 0x20); FillPalette(RGB_BLACK, BG_PLTT_ID(10), PLTT_SIZE_4BPP);
RestoreBgAfterAnim(); RestoreBgAfterAnim();
} }
+21 -17
View File
@@ -663,11 +663,11 @@ static void MainCB2_LoadFameChecker(void)
case 3: case 3:
LoadBgTiles(3, gFameCheckerBgTiles, sizeof(gFameCheckerBgTiles), 0); LoadBgTiles(3, gFameCheckerBgTiles, sizeof(gFameCheckerBgTiles), 0);
CopyToBgTilemapBufferRect(3, gFameCheckerBg3Tilemap, 0, 0, 32, 32); CopyToBgTilemapBufferRect(3, gFameCheckerBg3Tilemap, 0, 0, 32, 32);
LoadPalette(gFameCheckerBgPals + 0x00, 0x00, 0x40); LoadPalette(&gFameCheckerBgPals[0], BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP);
LoadPalette(gFameCheckerBgPals + 0x10, 0x10, 0x20); LoadPalette(&gFameCheckerBgPals[1], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
CopyToBgTilemapBufferRect(2, gFameCheckerBg2Tilemap, 0, 0, 32, 32); CopyToBgTilemapBufferRect(2, gFameCheckerBg2Tilemap, 0, 0, 32, 32);
CopyToBgTilemapBufferRect_ChangePalette(1, sFameCheckerTilemap, 30, 0, 32, 32, 0x11); 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++; gMain.state++;
break; break;
case 4: 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) static u8 CreatePersonPicSprite(u8 fcPersonIdx)
{ {
u8 spriteId; u8 spriteId;
if (fcPersonIdx == FAMECHECKER_DAISY) if (fcPersonIdx == FAMECHECKER_DAISY)
{ {
spriteId = CreateSprite(&sDaisySpriteTemplate, 0x94, 0x42, 0); spriteId = CreateSprite(&sDaisySpriteTemplate, PERSON_X, PERSON_Y, 0);
LoadPalette(sDaisySpritePalette, 0x160, 0x20); LoadPalette(sDaisySpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sDaisySpritePalette));
gSprites[spriteId].oam.paletteNum = 6; gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
} }
else if (fcPersonIdx == FAMECHECKER_MRFUJI) else if (fcPersonIdx == FAMECHECKER_MRFUJI)
{ {
spriteId = CreateSprite(&sFujiSpriteTemplate, 0x94, 0x42, 0); spriteId = CreateSprite(&sFujiSpriteTemplate, PERSON_X, PERSON_Y, 0);
LoadPalette(sFujiSpritePalette, 0x160, 0x20); LoadPalette(sFujiSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sFujiSpritePalette));
gSprites[spriteId].oam.paletteNum = 6; gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
} }
else if (fcPersonIdx == FAMECHECKER_OAK) else if (fcPersonIdx == FAMECHECKER_OAK)
{ {
spriteId = CreateSprite(&sOakSpriteTemplate, 0x94, 0x42, 0); spriteId = CreateSprite(&sOakSpriteTemplate, PERSON_X, PERSON_Y, 0);
LoadPalette(sOakSpritePalette, 0x160, 0x20); LoadPalette(sOakSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sOakSpritePalette));
gSprites[spriteId].oam.paletteNum = 6; gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
} }
else if (fcPersonIdx == FAMECHECKER_BILL) else if (fcPersonIdx == FAMECHECKER_BILL)
{ {
spriteId = CreateSprite(&sBillSpriteTemplate, 0x94, 0x42, 0); spriteId = CreateSprite(&sBillSpriteTemplate, PERSON_X, PERSON_Y, 0);
LoadPalette(sBillSpritePalette, 0x160, 0x20); LoadPalette(sBillSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sBillSpritePalette));
gSprites[spriteId].oam.paletteNum = 6; gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM;
} }
else 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; gSprites[spriteId].callback = SpriteCB_FCSpinningPokeball;
if (gSaveBlock1Ptr->fameChecker[fcPersonIdx].pickState == FCPICKSTATE_SILHOUETTE) if (gSaveBlock1Ptr->fameChecker[fcPersonIdx].pickState == FCPICKSTATE_SILHOUETTE)
LoadPalette(sSilhouettePalette, 0x160, 0x20); LoadPalette(sSilhouettePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sSilhouettePalette));
return spriteId; return spriteId;
} }
+23 -22
View File
@@ -106,7 +106,7 @@ static const struct OamData sNewGameOakOamAttributes = {
.size = SPRITE_SIZE(64x64), .size = SPRITE_SIZE(64x64),
.tileNum = 0x000, .tileNum = 0x000,
.priority = 0, .priority = 0,
.paletteNum = 0x0, .paletteNum = 0,
.affineParam = 0 .affineParam = 0
}; };
@@ -122,7 +122,7 @@ static const struct OamData sOamData_8x8 = {
.size = SPRITE_SIZE(8x8), .size = SPRITE_SIZE(8x8),
.tileNum = 0x000, .tileNum = 0x000,
.priority = 0, .priority = 0,
.paletteNum = 0x0, .paletteNum = 0,
.affineParam = 0 .affineParam = 0
}; };
@@ -138,7 +138,7 @@ static const struct OamData sOamData_16x16 = {
.size = SPRITE_SIZE(16x16), .size = SPRITE_SIZE(16x16),
.tileNum = 0x000, .tileNum = 0x000,
.priority = 0, .priority = 0,
.paletteNum = 0x0, .paletteNum = 0,
.affineParam = 0 .affineParam = 0
}; };
@@ -189,7 +189,7 @@ static const struct OamData sOamData_32x16 = {
.size = SPRITE_SIZE(32x16), .size = SPRITE_SIZE(32x16),
.tileNum = 0x000, .tileNum = 0x000,
.priority = 0, .priority = 0,
.paletteNum = 0x0, .paletteNum = 0,
.affineParam = 0 .affineParam = 0
}; };
@@ -442,19 +442,19 @@ void ApplyGlobalFieldPaletteTint(u8 paletteIdx)
case 0: case 0:
return; return;
case 1: case 1:
TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10); TintPalette_GrayScale(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16);
break; break;
case 2: case 2:
TintPalette_SepiaTone(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10); TintPalette_SepiaTone(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16);
break; break;
case 3: case 3:
QuestLog_BackUpPalette((paletteIdx + 16) * 16, 0x10); QuestLog_BackUpPalette(OBJ_PLTT_ID2(paletteIdx), 16);
TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10); TintPalette_GrayScale(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16);
break; break;
default: default:
return; 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) 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); return CreateSprite(&spriteTemplate, x, y, subpriority);
} }
// Unused
static void LoadTrainerGfx_TrainerCard(u8 gender, u16 palOffset, u8 *dest) static void LoadTrainerGfx_TrainerCard(u8 gender, u16 palOffset, u8 *dest)
{ {
LZDecompressVram(gTrainerFrontPicTable[gender].data, dest); LZDecompressVram(gTrainerFrontPicTable[gender].data, dest);
LoadCompressedPalette(gTrainerFrontPicPaletteTable[gender].data, palOffset, 0x20); LoadCompressedPalette(gTrainerFrontPicPaletteTable[gender].data, palOffset, PLTT_SIZE_4BPP);
} }
// Unused // Unused
@@ -945,14 +946,14 @@ static void PokeballGlowEffect_FlashFirstThree(struct Sprite *sprite)
sprite->sNumFlashed++; sprite->sNumFlashed++;
} }
phase = (sprite->sCounter + 3) & 3; 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; 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; 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; phase = sprite->sCounter;
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 5, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 3, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
if (sprite->sNumFlashed >= 3) if (sprite->sNumFlashed >= 3)
{ {
sprite->sState++; sprite->sState++;
@@ -976,11 +977,11 @@ static void PokeballGlowEffect_FlashLast(struct Sprite *sprite)
} }
} }
phase = sprite->sCounter; phase = sprite->sCounter;
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x108, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 8, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x106, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 6, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x102, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 2, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 5, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]);
MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, 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) 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); u16 screenbase = ((GetGpuReg(REG_OFFSET_BG0CNT) >> 8) << 11);
CpuCopy16(sFieldMoveStreaksOutdoors_Gfx, (void *)(VRAM + charbase), 0x200); CpuCopy16(sFieldMoveStreaksOutdoors_Gfx, (void *)(VRAM + charbase), 0x200);
CpuFill32(0, (void *)(VRAM + screenbase), 0x800); CpuFill32(0, (void *)(VRAM + screenbase), 0x800);
LoadPalette(sFieldMoveStreaksOutdoors_Pal, 0xf0, 0x20); LoadPalette(sFieldMoveStreaksOutdoors_Pal, BG_PLTT_ID(15), sizeof(sFieldMoveStreaksOutdoors_Pal));
LoadFieldMoveStreaksTilemapToVram(screenbase); LoadFieldMoveStreaksTilemapToVram(screenbase);
task->data[0]++; task->data[0]++;
} }
@@ -2776,7 +2777,7 @@ static void ShowMonEffect_Indoors_2(struct Task *task)
task->data[12] = screenbase; task->data[12] = screenbase;
CpuCopy16(sFieldMoveStreaksIndoors_Gfx, (void *)(VRAM + charbase), 0x80); CpuCopy16(sFieldMoveStreaksIndoors_Gfx, (void *)(VRAM + charbase), 0x80);
CpuFill32(0, (void *)(VRAM + screenbase), 0x800); CpuFill32(0, (void *)(VRAM + screenbase), 0x800);
LoadPalette(sFieldMoveStreaksIndoors_Pal, 0xf0, 0x20); LoadPalette(sFieldMoveStreaksIndoors_Pal, BG_PLTT_ID(15), sizeof(sFieldMoveStreaksIndoors_Pal));
task->data[0]++; task->data[0]++;
} }
+2 -2
View File
@@ -43,12 +43,12 @@ static bool8 WaitStairExitMovementFinished(s16 *speedX, s16 *speedY, s16 *offset
void palette_bg_faded_fill_white(void) 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) void palette_bg_faded_fill_black(void)
{ {
CpuFastFill16(RGB_BLACK, gPlttBufferFaded, 0x400); CpuFastFill16(RGB_BLACK, gPlttBufferFaded, PLTT_SIZE);
} }
void WarpFadeInScreen(void) void WarpFadeInScreen(void)
+1 -1
View File
@@ -394,7 +394,7 @@ static void Task_RushInjuredPokemonToCenter(u8 taskId)
case 0: case 0:
windowId = AddWindow(&sWindowTemplate_WhiteoutText); windowId = AddWindow(&sWindowTemplate_WhiteoutText);
gTasks[taskId].tWindowId = windowId; gTasks[taskId].tWindowId = windowId;
Menu_LoadStdPalAt(0xF0); Menu_LoadStdPalAt(BG_PLTT_ID(15));
FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
PutWindowTilemap(windowId); PutWindowTilemap(windowId);
CopyWindowToVram(windowId, COPYWIN_FULL); CopyWindowToVram(windowId, COPYWIN_FULL);
+11 -15
View File
@@ -730,7 +730,7 @@ static const struct WindowTemplate sElevatorCurrentFloorWindowTemplate = {
.tilemapTop = 1, .tilemapTop = 1,
.width = 7, .width = 7,
.height = 4, .height = 4,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x008 .baseBlock = 0x008
}; };
@@ -1098,8 +1098,8 @@ void DrawElevatorCurrentFloorWindow(void)
if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE) if (QuestLog_SchedulePlaybackCB(QLPlaybackCB_DestroyScriptMenuMonPicSprites) != TRUE)
{ {
sElevatorCurrentFloorWindowId = AddWindow(&sElevatorCurrentFloorWindowTemplate); sElevatorCurrentFloorWindowId = AddWindow(&sElevatorCurrentFloorWindowTemplate);
LoadStdWindowGfx(sElevatorCurrentFloorWindowId, 0x21D, 0xD0); LoadStdWindowGfx(sElevatorCurrentFloorWindowId, 0x21D, BG_PLTT_ID(13));
DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 0xD); DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 13);
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, FONT_NORMAL, gText_NowOn, 0, 2, 0xFF, NULL); AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, FONT_NORMAL, gText_NowOn, 0, 2, 0xFF, NULL);
floorname = sFloorNamePointers[gSpecialVar_0x8005]; floorname = sFloorNamePointers[gSpecialVar_0x8005];
strwidth = GetStringWidth(FONT_NORMAL, floorname, 0); strwidth = GetStringWidth(FONT_NORMAL, floorname, 0);
@@ -2142,13 +2142,13 @@ void DoPokemonLeagueLightingEffect(void)
{ {
data[0] = sChampionRoomLightingTimers[0]; data[0] = sChampionRoomLightingTimers[0];
data[2] = 8; data[2] = 8;
LoadPalette(sChampionRoomLightingPalettes[0], 0x70, 0x20); LoadPalette(sChampionRoomLightingPalettes[0], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
} }
else else
{ {
data[0] = sEliteFourLightingTimers[0]; data[0] = sEliteFourLightingTimers[0];
data[2] = 11; data[2] = 11;
LoadPalette(sEliteFourLightingPalettes[0], 0x70, 0x20); LoadPalette(sEliteFourLightingPalettes[0], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
} }
data[1] = 0; data[1] = 0;
ApplyGlobalTintToPaletteSlot(7, 1); ApplyGlobalTintToPaletteSlot(7, 1);
@@ -2171,12 +2171,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)) if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM))
{ {
data[0] = sChampionRoomLightingTimers[data[1]]; data[0] = sChampionRoomLightingTimers[data[1]];
LoadPalette(sChampionRoomLightingPalettes[data[1]], 0x70, 0x20); LoadPalette(sChampionRoomLightingPalettes[data[1]], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
} }
else else
{ {
data[0] = sEliteFourLightingTimers[data[1]]; 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); ApplyGlobalTintToPaletteSlot(7, 1);
} }
@@ -2188,13 +2188,9 @@ static void Task_CancelPokemonLeagueLightingEffect(u8 taskId)
if (FlagGet(FLAG_TEMP_4) != FALSE) 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)) if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM))
{ LoadPalette(sChampionRoomLightingPalettes[8], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
LoadPalette(sChampionRoomLightingPalettes[8], 0x70, 0x20);
}
else else
{ LoadPalette(sEliteFourLightingPalettes[11], BG_PLTT_ID(7), PLTT_SIZE_4BPP);
LoadPalette(sEliteFourLightingPalettes[11], 0x70, 0x20);
}
ApplyGlobalTintToPaletteSlot(7, 1); ApplyGlobalTintToPaletteSlot(7, 1);
if (gPaletteFade.active) if (gPaletteFade.active)
{ {
@@ -2407,7 +2403,7 @@ static void Task_DoDeoxysTriangleInteraction(u8 taskId)
static void MoveDeoxysObject(u8 num) static void MoveDeoxysObject(u8 num)
{ {
u8 mapObjId; u8 mapObjId;
LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08); LoadPalette(sDeoxysObjectPals[num], OBJ_PLTT_ID(10), PLTT_SIZEOF(4));
ApplyGlobalFieldPaletteTint(10); ApplyGlobalFieldPaletteTint(10);
TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &mapObjId); TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &mapObjId);
if (num == 0) if (num == 0)
@@ -2453,7 +2449,7 @@ void IncrementBirthIslandRockStepCount(void)
void SetDeoxysTrianglePalette(void) void SetDeoxysTrianglePalette(void)
{ {
u8 num = VarGet(VAR_DEOXYS_INTERACTION_NUM); u8 num = VarGet(VAR_DEOXYS_INTERACTION_NUM);
LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08); LoadPalette(sDeoxysObjectPals[num], OBJ_PLTT_ID(10), PLTT_SIZEOF(4));
ApplyGlobalFieldPaletteTint(10); ApplyGlobalFieldPaletteTint(10);
} }
+14 -40
View File
@@ -146,7 +146,7 @@ void StartWeather(void)
if (!FuncIsActiveTask(Task_WeatherMain)) if (!FuncIsActiveTask(Task_WeatherMain))
{ {
u8 index = AllocSpritePalette(0x1200); u8 index = AllocSpritePalette(0x1200);
CpuCopy32(gDefaultWeatherSpritePalette, &gPlttBufferUnfaded[0x100 + index * 16], 32); CpuCopy32(gDefaultWeatherSpritePalette, &gPlttBufferUnfaded[OBJ_PLTT_ID(index)], PLTT_SIZE_4BPP);
ApplyGlobalFieldPaletteTint(index); ApplyGlobalFieldPaletteTint(index);
BuildGammaShiftTables(); BuildGammaShiftTables();
gWeatherPtr->altGammaSpritePalIndex = index; gWeatherPtr->altGammaSpritePalIndex = index;
@@ -449,7 +449,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex)
if (gammaIndex > 0) if (gammaIndex > 0)
{ {
gammaIndex--; gammaIndex--;
palOffset = startPalIndex * 16; palOffset = PLTT_ID(startPalIndex);
numPalettes += startPalIndex; numPalettes += startPalIndex;
curPalIndex = startPalIndex; curPalIndex = startPalIndex;
@@ -459,7 +459,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex)
if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE) if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE)
{ {
// No palette change. // No palette change.
CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16)); CpuFastCopy(&gPlttBufferUnfaded[palOffset], &gPlttBufferFaded[palOffset], PLTT_SIZE_4BPP);
palOffset += 16; palOffset += 16;
} }
else 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. // A negative gammIndex value means that the blending will come from the special Drought weather's palette tables.
// Dummied out in FRLG // 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 else
{ {
// No palette blending. // 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 gBlend = color.g;
u8 bBlend = color.b; u8 bBlend = color.b;
palOffset = startPalIndex * 16; palOffset = PLTT_ID(startPalIndex);
numPalettes += startPalIndex; numPalettes += startPalIndex;
gammaIndex--; gammaIndex--;
curPalIndex = startPalIndex; curPalIndex = startPalIndex;
@@ -641,8 +615,8 @@ static void ApplyFogBlend(u8 blendCoeff, u16 blendColor)
{ {
if (LightenSpritePaletteInFog(curPalIndex)) if (LightenSpritePaletteInFog(curPalIndex))
{ {
u16 palEnd = (curPalIndex + 1) * 16; u16 palEnd = PLTT_ID(curPalIndex + 1);
u16 palOffset = curPalIndex * 16; u16 palOffset = PLTT_ID(curPalIndex);
while (palOffset < palEnd) while (palOffset < palEnd)
{ {
@@ -665,7 +639,7 @@ static void ApplyFogBlend(u8 blendCoeff, u16 blendColor)
} }
else 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 (fadeOut)
{ {
if (useWeatherPal) if (useWeatherPal)
CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
BeginNormalPaletteFade(selectedPalettes, delay, 0, 16, fadeColor); BeginNormalPaletteFade(selectedPalettes, delay, 0, 16, fadeColor);
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT; gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT;
@@ -868,14 +842,14 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex)
{ {
if (gWeatherPtr->currWeather == WEATHER_FOG_HORIZONTAL) if (gWeatherPtr->currWeather == WEATHER_FOG_HORIZONTAL)
MarkFogSpritePalToLighten(paletteIndex); MarkFogSpritePalToLighten(paletteIndex);
paletteIndex *= 16; paletteIndex = PLTT_ID(paletteIndex);
for (i = 0; i < 16; i++) for (i = 0; i < 16; i++)
gPlttBufferFaded[paletteIndex + i] = gWeatherPtr->fadeDestColor; gPlttBufferFaded[paletteIndex + i] = gWeatherPtr->fadeDestColor;
} }
break; break;
case WEATHER_PAL_STATE_SCREEN_FADING_OUT: case WEATHER_PAL_STATE_SCREEN_FADING_OUT:
paletteIndex *= 16; paletteIndex = PLTT_ID(paletteIndex);
CpuFastCopy(gPlttBufferFaded + paletteIndex, gPlttBufferUnfaded + paletteIndex, 32); CpuFastCopy(&gPlttBufferFaded[paletteIndex], &gPlttBufferUnfaded[paletteIndex], PLTT_SIZE_4BPP);
BlendPalette(paletteIndex, 16, gPaletteFade.y, gPaletteFade.blendColor); BlendPalette(paletteIndex, 16, gPaletteFade.y, gPaletteFade.blendColor);
break; break;
// WEATHER_PAL_STATE_CHANGING_WEATHER // WEATHER_PAL_STATE_CHANGING_WEATHER
@@ -887,7 +861,7 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex)
} }
else else
{ {
paletteIndex *= 16; paletteIndex = PLTT_ID(paletteIndex);
BlendPalette(paletteIndex, 16, 12, RGB(28, 31, 28)); BlendPalette(paletteIndex, 16, 12, RGB(28, 31, 28));
} }
break; break;
@@ -909,7 +883,7 @@ static u8 IsWeatherFadingIn(void)
void LoadCustomWeatherSpritePalette(const u16 *palette) 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); UpdateSpritePaletteWithWeather(gWeatherPtr->weatherPicSpritePalIndex);
} }
+13 -13
View File
@@ -845,19 +845,19 @@ static void ApplyGlobalTintToPaletteEntries(u16 offset, u16 size)
case QL_TINT_NONE: case QL_TINT_NONE:
return; return;
case QL_TINT_GRAYSCALE: case QL_TINT_GRAYSCALE:
TintPalette_GrayScale(gPlttBufferUnfaded + offset, size); TintPalette_GrayScale(&gPlttBufferUnfaded[offset], size);
break; break;
case QL_TINT_SEPIA: case QL_TINT_SEPIA:
TintPalette_SepiaTone(gPlttBufferUnfaded + offset, size); TintPalette_SepiaTone(&gPlttBufferUnfaded[offset], size);
break; break;
case QL_TINT_BACKUP_GRAYSCALE: case QL_TINT_BACKUP_GRAYSCALE:
QuestLog_BackUpPalette(offset, size); QuestLog_BackUpPalette(offset, size);
TintPalette_GrayScale(gPlttBufferUnfaded + offset, size); TintPalette_GrayScale(&gPlttBufferUnfaded[offset], size);
break; break;
default: default:
return; return;
} }
CpuCopy16(gPlttBufferUnfaded + offset, gPlttBufferFaded + offset, size * sizeof(u16)); CpuCopy16(&gPlttBufferUnfaded[offset], &gPlttBufferFaded[offset], PLTT_SIZEOF(size));
} }
void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count) void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count)
@@ -867,19 +867,19 @@ void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count)
case QL_TINT_NONE: case QL_TINT_NONE:
return; return;
case QL_TINT_GRAYSCALE: case QL_TINT_GRAYSCALE:
TintPalette_GrayScale(gPlttBufferUnfaded + slot * 16, count * 16); TintPalette_GrayScale(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16);
break; break;
case QL_TINT_SEPIA: case QL_TINT_SEPIA:
TintPalette_SepiaTone(gPlttBufferUnfaded + slot * 16, count * 16); TintPalette_SepiaTone(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16);
break; break;
case QL_TINT_BACKUP_GRAYSCALE: case QL_TINT_BACKUP_GRAYSCALE:
QuestLog_BackUpPalette(slot * 16, count * 16); QuestLog_BackUpPalette(BG_PLTT_ID(slot), count * 16);
TintPalette_GrayScale(gPlttBufferUnfaded + slot * 16, count * 16); TintPalette_GrayScale(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16);
break; break;
default: default:
return; 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) 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) if (tileset->isSecondary == FALSE)
{ {
LoadPalette(&black, destOffset, 2); LoadPalette(&black, destOffset, PLTT_SIZEOF(1));
LoadPalette(tileset->palettes[0] + 1, destOffset + 1, size - 2); LoadPalette(tileset->palettes[0] + 1, destOffset + 1, size - PLTT_SIZEOF(1));
ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1); ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1);
} }
else if (tileset->isSecondary == TRUE) else if (tileset->isSecondary == TRUE)
@@ -924,12 +924,12 @@ void CopySecondaryTilesetToVramUsingHeap(const struct MapLayout *mapLayout)
static void LoadPrimaryTilesetPalette(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) 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) void CopyMapTilesetsToVram(struct MapLayout const *mapLayout)
+1 -1
View File
@@ -79,7 +79,7 @@ static const struct OamData sOamData_FldEff_CutGrass = {
.size = SPRITE_SIZE(8x8), .size = SPRITE_SIZE(8x8),
.tileNum = 0x001, .tileNum = 0x001,
.priority = 1, .priority = 1,
.paletteNum = 0x1, .paletteNum = 1,
.affineParam = 0 .affineParam = 0
}; };
+20 -19
View File
@@ -154,11 +154,13 @@ static const struct FlashStruct sTransitionTypes[] = {
}, {0} }, {0}
}; };
static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/field_effects/flash_white.gbapal"); static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/cave_transition/white.gbapal");
static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/field_effects/flash_black.gbapal"); static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/cave_transition/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 u16 sCaveTransitionPalette_Enter[] = INCBIN_U16("graphics/cave_transition/enter.gbapal");
static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/field_effects/flash_effect_tiles.4bpp.lz"); 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) bool8 SetUpFieldMove_Flash(void)
{ {
@@ -299,8 +301,8 @@ static void Task_FlashTransition_Exit_1(u8 taskId)
SetGpuReg(REG_OFFSET_DISPCNT, 0); SetGpuReg(REG_OFFSET_DISPCNT, 0);
LZ77UnCompVram(sCaveTransitionTiles, (void *)BG_CHAR_ADDR(3)); LZ77UnCompVram(sCaveTransitionTiles, (void *)BG_CHAR_ADDR(3));
LZ77UnCompVram(sCaveTransitionTilemap, (void *)BG_SCREEN_ADDR(31)); LZ77UnCompVram(sCaveTransitionTilemap, (void *)BG_SCREEN_ADDR(31));
LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20); LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_White));
LoadPalette(sCaveTransitionPalette_Gradient + 8, 0xE0, 0x10); 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_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_BLDALPHA, 0);
SetGpuReg(REG_OFFSET_BLDY, 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) static void Task_FlashTransition_Exit_3(u8 taskId)
{ {
u16 r4; u16 count;
SetGpuReg(REG_OFFSET_BLDALPHA, (16 << 8) + 16); SetGpuReg(REG_OFFSET_BLDALPHA, (16 << 8) + 16);
r4 = gTasks[taskId].data[2]; count = gTasks[taskId].data[2];
if (r4 < 8) if (count < 8)
{ {
gTasks[taskId].data[2]++; 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 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].func = Task_FlashTransition_Exit_4;
gTasks[taskId].data[2] = 8; 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_BLDY, 0);
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(3) | BGCNT_SCREENBASE(31)); 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); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_OBJ_ON);
LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20); LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_White));
LoadPalette(sCaveTransitionPalette_Black, 0, 0x20); LoadPalette(sCaveTransitionPalette_Black, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_Black));
gTasks[taskId].func = Task_FlashTransition_Enter_2; gTasks[taskId].func = Task_FlashTransition_Enter_2;
gTasks[taskId].data[0] = 16; gTasks[taskId].data[0] = 16;
gTasks[taskId].data[1] = 0; 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) static void Task_FlashTransition_Enter_2(u8 taskId)
{ {
u16 r4; u16 count = gTasks[taskId].data[2];
r4 = gTasks[taskId].data[2]; if (count < 16)
if (r4 < 16)
{ {
gTasks[taskId].data[2]++; gTasks[taskId].data[2]++;
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 else
{ {
@@ -408,7 +409,7 @@ static void Task_FlashTransition_Enter_3(u8 taskId)
} }
else else
{ {
LoadPalette(sCaveTransitionPalette_Black, 0x00, 0x20); LoadPalette(sCaveTransitionPalette_Black, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_Black));
SetMainCallback2(gMain.savedCallback); SetMainCallback2(gMain.savedCallback);
} }
} }
+1 -1
View File
@@ -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 gTradeMenu_Tilemap[] = INCBIN_U16("graphics/trade/menu.bin");
const u16 gTradeMenuMonBox_Tilemap[] = INCBIN_U16("graphics/trade/menu_mon_box.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 gFameCheckerBgTiles[] = INCBIN_U16("graphics/fame_checker/bg.4bpp");
const u16 gFameCheckerBg3Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap3.bin"); const u16 gFameCheckerBg3Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap3.bin");
const u16 gFameCheckerBg2Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap2.bin"); const u16 gFameCheckerBg2Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap2.bin");
+5 -5
View File
@@ -620,7 +620,7 @@ static void Task_Hof_SpawnPlayerPic(u8 taskId)
ShowBg(3); ShowBg(3);
gTasks[taskId].data[4] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender, TRUE), TRUE, 0x78, 0x48, 6, 0xFFFF); gTasks[taskId].data[4] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender, TRUE), TRUE, 0x78, 0x48, 6, 0xFFFF);
AddWindow(&sWindowTemplate); AddWindow(&sWindowTemplate);
LoadStdWindowGfx(1, 0x21D, 0xD0); LoadStdWindowGfx(1, 0x21D, BG_PLTT_ID(13));
gTasks[taskId].data[3] = 120; gTasks[taskId].data[3] = 120;
gTasks[taskId].func = Task_Hof_WaitAndPrintPlayerInfo; gTasks[taskId].func = Task_Hof_WaitAndPrintPlayerInfo;
} }
@@ -657,7 +657,7 @@ static void Task_Hof_ExitOnKeyPressed(u8 taskId)
static void Task_Hof_HandlePaletteOnExit(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); BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_BLACK);
gTasks[taskId].func = Task_Hof_HandleExit; gTasks[taskId].func = Task_Hof_HandleExit;
} }
@@ -938,7 +938,7 @@ static void Task_HofPC_HandlePaletteOnExit(u8 taskId)
{ {
struct HallofFameTeam* fameTeam; struct HallofFameTeam* fameTeam;
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
BeginPCScreenEffect_TurnOff(0, 0, 0); BeginPCScreenEffect_TurnOff(0, 0, 0);
gTasks[taskId].func = Task_HofPC_HandleExit; gTasks[taskId].func = Task_HofPC_HandleExit;
} }
@@ -1085,7 +1085,7 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
FillWindowPixelBuffer(1, PIXEL_FILL(1)); FillWindowPixelBuffer(1, PIXEL_FILL(1));
PutWindowTilemap(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); 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); 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); DmaFill16(3, 0, plttOffset, plttSize);
ResetPaletteFade(); ResetPaletteFade();
LoadPalette(sHallOfFame_Pal, 0, 0x20); LoadPalette(sHallOfFame_Pal, BG_PLTT_ID(0), sizeof(sHallOfFame_Pal));
} }
static void HofInit_ResetGpuBuffersAndLoadConfettiGfx(void) static void HofInit_ResetGpuBuffersAndLoadConfettiGfx(void)
+15 -15
View File
@@ -405,7 +405,7 @@ static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = {
.tilemapTop = 4, .tilemapTop = 4,
.width = 18, .width = 18,
.height = 9, .height = 9,
.paletteNum = 0xD, .paletteNum = 13,
.baseBlock = 0x000 .baseBlock = 0x000
}, },
[WIN_COUNT] = DUMMY_WIN_TEMPLATE [WIN_COUNT] = DUMMY_WIN_TEMPLATE
@@ -930,7 +930,7 @@ static bool8 SetUpCopyrightScreen(void)
DmaFill32(3, 0, OAM, OAM_SIZE); DmaFill32(3, 0, OAM, OAM_SIZE);
DmaFill16(3, 0, PLTT + sizeof(vu16), PLTT_SIZE - sizeof(vu16)); DmaFill16(3, 0, PLTT + sizeof(vu16), PLTT_SIZE - sizeof(vu16));
ResetPaletteFade(); 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(); ScanlineEffect_Stop();
ResetTasks(); ResetTasks();
ResetSpriteData(); ResetSpriteData();
@@ -1025,15 +1025,15 @@ static void CB2_SetUpIntro(void)
DmaFill16(3, 0, VRAM, VRAM_SIZE); DmaFill16(3, 0, VRAM, VRAM_SIZE);
DmaFill32(3, 0, OAM, OAM_SIZE); DmaFill32(3, 0, OAM, OAM_SIZE);
DmaFill16(3, 0, PLTT, PLTT_SIZE); DmaFill16(3, 0, PLTT, PLTT_SIZE);
FillPalette(RGB_BLACK, 0, 0x400); FillPalette(RGB_BLACK, 0, PLTT_SIZE);
ResetBgsAndClearDma3BusyFlags(FALSE); ResetBgsAndClearDma3BusyFlags(FALSE);
InitBgsFromTemplates(0, sBgTemplates_GameFreakScene, ARRAY_COUNT(sBgTemplates_GameFreakScene)); InitBgsFromTemplates(0, sBgTemplates_GameFreakScene, ARRAY_COUNT(sBgTemplates_GameFreakScene));
break; break;
case 1: 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_Gfx, 0, 0, 0);
DecompressAndCopyTileDataToVram(BG_GF_BACKGROUND, sGameFreakBg_Map, 0, 0, 1); 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; break;
case 2: case 2:
if (!FreeTempTileDataBuffersIfPossible()) if (!FreeTempTileDataBuffersIfPossible())
@@ -1113,7 +1113,7 @@ static void IntroCB_Init(struct IntroSequenceData * this)
InitWindows(sWindowTemplates); InitWindows(sWindowTemplates);
LZ77UnCompWram(sGameFreakText_Gfx, this->gameFreakTextGfx); LZ77UnCompWram(sGameFreakText_Gfx, this->gameFreakTextGfx);
LZ77UnCompWram(sGameFreakLogo_Gfx, this->gameFreakLogoGfx); 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)); FillWindowPixelBuffer(WIN_GF_TEXT_LOGO, PIXEL_FILL(0));
BlitBitmapToWindow(WIN_GF_TEXT_LOGO, this->gameFreakTextGfx, 0, 40, 144, 16); BlitBitmapToWindow(WIN_GF_TEXT_LOGO, this->gameFreakTextGfx, 0, 40, 144, 16);
PutWindowTilemap(WIN_GF_TEXT_LOGO); PutWindowTilemap(WIN_GF_TEXT_LOGO);
@@ -1293,8 +1293,8 @@ static void IntroCB_Scene1(struct IntroSequenceData * this)
{ {
case 0: case 0:
SetVBlankCallback(NULL); SetVBlankCallback(NULL);
LoadPalette(sScene1_Grass_Pal, 16 * PALSLOT_SCENE1_GRASS, sizeof(sScene1_Grass_Pal)); LoadPalette(sScene1_Grass_Pal, BG_PLTT_ID(PALSLOT_SCENE1_GRASS), sizeof(sScene1_Grass_Pal));
LoadPalette(sScene1_Bg_Pal, 16 * PALSLOT_SCENE1_BG, sizeof(sScene1_Bg_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); BlendPalettes((1 << PALSLOT_SCENE1_GRASS) | (1 << PALSLOT_SCENE1_BG), 16, RGB_WHITE);
InitBgsFromTemplates(0, sBgTemplates_Scene1, ARRAY_COUNT(sBgTemplates_Scene1)); InitBgsFromTemplates(0, sBgTemplates_Scene1, ARRAY_COUNT(sBgTemplates_Scene1));
DecompressAndCopyTileDataToVram(BG_SCENE1_BACKGROUND, sScene1_Bg_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_SCENE1_BACKGROUND, sScene1_Bg_Gfx, 0, 0, 0);
@@ -1439,9 +1439,9 @@ static void IntroCB_Scene2(struct IntroSequenceData * this)
if (!FreeTempTileDataBuffersIfPossible()) if (!FreeTempTileDataBuffersIfPossible())
{ {
SetVBlankCallback(NULL); SetVBlankCallback(NULL);
LoadPalette(sScene2_Bg_Pal, 0x10, sizeof(sScene2_Bg_Pal)); LoadPalette(sScene2_Bg_Pal, BG_PLTT_ID(1), sizeof(sScene2_Bg_Pal));
LoadPalette(sGengar_Pal, 0x50, sizeof(sGengar_Pal)); LoadPalette(sGengar_Pal, BG_PLTT_ID(5), sizeof(sGengar_Pal));
LoadPalette(sScene2_NidorinoClose_Pal, 0x60, sizeof(sScene2_NidorinoClose_Pal)); LoadPalette(sScene2_NidorinoClose_Pal, BG_PLTT_ID(6), sizeof(sScene2_NidorinoClose_Pal));
BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE); BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE);
DecompressAndCopyTileDataToVram(BG_SCENE2_PLANTS, sScene2_Plants_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_SCENE2_PLANTS, sScene2_Plants_Gfx, 0, 0, 0);
DecompressAndCopyTileDataToVram(BG_SCENE2_PLANTS, sScene2_Plants_Map, 0, 0, 1); 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) switch (this->state)
{ {
case 0: case 0:
LoadPalette(sScene3_Bg_Pal, 0x10, sizeof(sScene3_Bg_Pal)); LoadPalette(sScene3_Bg_Pal, BG_PLTT_ID(1), sizeof(sScene3_Bg_Pal));
LoadPalette(sGengar_Pal, 0x50, sizeof(sGengar_Pal)); LoadPalette(sGengar_Pal, BG_PLTT_ID(5), sizeof(sGengar_Pal));
BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE); BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE);
InitBgsFromTemplates(0, sBgTemplates_Scene3, ARRAY_COUNT(sBgTemplates_Scene3)); InitBgsFromTemplates(0, sBgTemplates_Scene3, ARRAY_COUNT(sBgTemplates_Scene3));
DecompressAndCopyTileDataToVram(BG_SCENE3_BACKGROUND, sScene3_Bg_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_SCENE3_BACKGROUND, sScene3_Bg_Gfx, 0, 0, 0);
@@ -1831,7 +1831,7 @@ static void IntroCB_Scene3_Fight(struct IntroSequenceData * this)
case 13: case 13:
if (++this->timer > 8) 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); BeginNormalPaletteFade(PALETTES_ALL & ~1, -2, 0, 16, RGB_BLACK);
this->state++; this->state++;
} }
@@ -1916,7 +1916,7 @@ static void IntroCB_ExitToTitleScreen(struct IntroSequenceData * this)
switch (this->state) switch (this->state)
{ {
case 0: case 0:
FillPalette(RGB_BLACK, 0, 0x400); FillPalette(RGB_BLACK, 0, PLTT_SIZE);
this->state++; this->state++;
break; break;
case 1: case 1:
+6 -6
View File
@@ -576,9 +576,9 @@ static bool8 DoLoadBagGraphics(void)
} }
break; break;
case 2: case 2:
LoadCompressedPalette(gBagBgPalette, 0x00, 0x60); LoadCompressedPalette(gBagBgPalette, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP);
if (!BagIsTutorial() && gSaveBlock2Ptr->playerGender != MALE) if (!BagIsTutorial() && gSaveBlock2Ptr->playerGender != MALE)
LoadCompressedPalette(gBagBgPalette_FemaleOverride, 0x00, 0x20); LoadCompressedPalette(gBagBgPalette_FemaleOverride, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
sBagMenuDisplay->data[0]++; sBagMenuDisplay->data[0]++;
break; break;
case 3: case 3:
@@ -922,20 +922,20 @@ static void ShowBagOrBeginWin0OpenTask(void)
u16 paldata = RGB_BLACK; u16 paldata = RGB_BLACK;
u8 taskId; u8 taskId;
LoadPalette(&paldata, 0x00, 0x02); SetBackdropFromPalette(&paldata);
SetGpuReg(REG_OFFSET_WININ, 0); SetGpuReg(REG_OFFSET_WININ, 0);
SetGpuReg(REG_OFFSET_WINOUT, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR); SetGpuReg(REG_OFFSET_WINOUT, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR);
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
if (gBagMenuState.bagOpen == TRUE) 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)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 0));
} }
else else
{ {
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240)); SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH));
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 160)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, DISPLAY_HEIGHT));
taskId = CreateTask(Task_AnimateWin0v, 0); taskId = CreateTask(Task_AnimateWin0v, 0);
gTasks[taskId].data[0] = 192; gTasks[taskId].data[0] = 192;
gTasks[taskId].data[1] = -16; gTasks[taskId].data[1] = -16;
+53 -53
View File
@@ -130,51 +130,51 @@ static const u8 sTextColors[][3] = {
static const struct WindowTemplate sWindowTemplates[] = { static const struct WindowTemplate sWindowTemplates[] = {
{ {
.bg = 0, .bg = 0,
.tilemapLeft = 0x07, .tilemapLeft = 7,
.tilemapTop = 0x01, .tilemapTop = 1,
.width = 0x13, .width = 19,
.height = 0x0c, .height = 12,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x02bf .baseBlock = 0x02bf
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x05, .tilemapLeft = 5,
.tilemapTop = 0x0e, .tilemapTop = 14,
.width = 0x19, .width = 25,
.height = 0x06, .height = 6,
.paletteNum = 0x0d, .paletteNum = 13,
.baseBlock = 0x0229 .baseBlock = 0x0229
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x01, .tilemapTop = 1,
.width = 0x05, .width = 5,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x0215 .baseBlock = 0x0215
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x18, .tilemapLeft = 24,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x05, .width = 5,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x0201 .baseBlock = 0x0201
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x0d, .tilemapTop = 13,
.width = 0x07, .width = 7,
.height = 0x06, .height = 6,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x01d7 .baseBlock = 0x01d7
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x02, .tilemapLeft = 2,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x1a, .width = 26,
.height = 0x04, .height = 4,
.paletteNum = 0x0b, .paletteNum = 11,
.baseBlock = 0x016f .baseBlock = 0x016f
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -182,27 +182,27 @@ static const struct WindowTemplate sWindowTemplates[] = {
static const struct WindowTemplate sSubwindowTemplates[] = { static const struct WindowTemplate sSubwindowTemplates[] = {
{ {
.bg = 0, .bg = 0,
.tilemapLeft = 0x06, .tilemapLeft = 6,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x0e, .width = 14,
.height = 0x04, .height = 4,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x0137 .baseBlock = 0x0137
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x06, .tilemapLeft = 6,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x10, .width = 16,
.height = 0x04, .height = 4,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x0137 .baseBlock = 0x0137
}, { }, {
.bg = 0, .bg = 0,
.tilemapLeft = 0x06, .tilemapLeft = 6,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x17, .width = 23,
.height = 0x04, .height = 4,
.paletteNum = 0x0c, .paletteNum = 12,
.baseBlock = 0x009b .baseBlock = 0x009b
} }
}; };
@@ -443,7 +443,7 @@ static bool8 ItemPc_LoadGraphics(void)
} }
break; break;
case 2: case 2:
LoadCompressedPalette(gItemPcBgPals, 0x00, 0x60); LoadCompressedPalette(gItemPcBgPals, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP);
sStateDataPtr->data[0]++; sStateDataPtr->data[0]++;
break; break;
case 3: case 3:
@@ -1069,11 +1069,11 @@ static void ItemPc_InitWindows(void)
InitWindows(sWindowTemplates); InitWindows(sWindowTemplates);
DeactivateAllTextPrinters(); DeactivateAllTextPrinters();
LoadUserWindowGfx(0, 0x3C0, 0xE0); LoadUserWindowGfx(0, 0x3C0, BG_PLTT_ID(14));
LoadStdWindowGfx(0, 0x3A3, 0xC0); LoadStdWindowGfx(0, 0x3A3, BG_PLTT_ID(12));
LoadMenuMessageWindowGfx(0, 0x3AC, 0xB0); LoadMenuMessageWindowGfx(0, 0x3AC, BG_PLTT_ID(11));
LoadPalette(GetTextWindowPalette(2), 0xD0, 0x20); LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
LoadPalette(gStandardMenuPalette, 0xF0, 0x20); LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP);
for (i = 0; i < 3; i++) for (i = 0; i < 3; i++)
{ {
FillWindowPixelBuffer(i, 0x00); FillWindowPixelBuffer(i, 0x00);
@@ -1111,7 +1111,7 @@ static void ItemPc_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8
static void ItemPc_SetBorderStyleOnWindow(u8 windowId) static void ItemPc_SetBorderStyleOnWindow(u8 windowId)
{ {
DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x3C0, 0x0E); DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x3C0, 14);
} }
static u8 ItemPc_GetOrCreateSubwindow(u8 idx) static u8 ItemPc_GetOrCreateSubwindow(u8 idx)
@@ -1119,7 +1119,7 @@ static u8 ItemPc_GetOrCreateSubwindow(u8 idx)
if (sSubmenuWindowIds[idx] == 0xFF) if (sSubmenuWindowIds[idx] == 0xFF)
{ {
sSubmenuWindowIds[idx] = AddWindow(&sSubwindowTemplates[idx]); sSubmenuWindowIds[idx] = AddWindow(&sSubwindowTemplates[idx]);
DrawStdFrameWithCustomTileAndPalette(sSubmenuWindowIds[idx], TRUE, 0x3A3, 0x0C); DrawStdFrameWithCustomTileAndPalette(sSubmenuWindowIds[idx], TRUE, 0x3A3, 12);
} }
return sSubmenuWindowIds[idx]; return sSubmenuWindowIds[idx];
+19 -19
View File
@@ -258,7 +258,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 0, .tilemapTop = 0,
.width = 6, .width = 6,
.height = 7, .height = 7,
.paletteNum = 0x0d, .paletteNum = 13,
.baseBlock = 0x014 .baseBlock = 0x014
}, },
{ {
@@ -267,7 +267,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 0, .tilemapTop = 0,
.width = 5, .width = 5,
.height = 5, .height = 5,
.paletteNum = 0x0d, .paletteNum = 13,
.baseBlock = 0x03e .baseBlock = 0x03e
}, },
{ {
@@ -276,7 +276,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 0, .tilemapTop = 0,
.width = 5, .width = 5,
.height = 2, .height = 2,
.paletteNum = 0x0d, .paletteNum = 13,
.baseBlock = 0x057 .baseBlock = 0x057
}, },
{ {
@@ -285,7 +285,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 0, .tilemapTop = 0,
.width = 3, .width = 3,
.height = 5, .height = 5,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x061 .baseBlock = 0x061
}, },
{ {
@@ -294,7 +294,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 2, .tilemapTop = 2,
.width = 3, .width = 3,
.height = 3, .height = 3,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x070 .baseBlock = 0x070
}, },
{ {
@@ -303,7 +303,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 6, .tilemapTop = 6,
.width = 15, .width = 15,
.height = 8, .height = 8,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x079 .baseBlock = 0x079
}, },
{ {
@@ -312,7 +312,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 1, .tilemapTop = 1,
.width = 10, .width = 10,
.height = 12, .height = 12,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x0f1 .baseBlock = 0x0f1
}, },
{ {
@@ -321,7 +321,7 @@ static const struct WindowTemplate sWindowTemplates[9] = {
.tilemapTop = 15, .tilemapTop = 15,
.width = 26, .width = 26,
.height = 4, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x169 .baseBlock = 0x169
}, DUMMY_WIN_TEMPLATE }, DUMMY_WIN_TEMPLATE
}; };
@@ -332,7 +332,7 @@ static const struct WindowTemplate sMoveRelearnerYesNoMenuTemplate = {
.tilemapTop = 8, .tilemapTop = 8,
.width = 6, .width = 6,
.height = 4, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x1d1 .baseBlock = 0x1d1
}; };
@@ -396,11 +396,11 @@ static void MoveRelearnerLoadBgGfx(void)
FillWindowPixelBuffer(i, PIXEL_FILL(0)); FillWindowPixelBuffer(i, PIXEL_FILL(0));
} }
FillWindowPixelBuffer(7, PIXEL_FILL(1)); 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); SetBgTilemapBuffer(1, sMoveRelearner->bg1TilemapBuffer);
LoadUserWindowGfx(0, 1, 0xE0); LoadUserWindowGfx(0, 1, BG_PLTT_ID(14));
ListMenuLoadStdPalAt(0xD0, 1); ListMenuLoadStdPalAt(BG_PLTT_ID(13), 1);
LoadPalette(gMoveRelearner_Pal, 0x00, 0x20); LoadPalette(gMoveRelearner_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
DecompressAndLoadBgGfxUsingHeap(1, gMoveRelearner_Gfx, 0, 0, 0); DecompressAndLoadBgGfxUsingHeap(1, gMoveRelearner_Gfx, 0, 0, 0);
CopyToBgTilemapBuffer(1, gMoveRelearner_Tilemap, 0, 0); CopyToBgTilemapBuffer(1, gMoveRelearner_Tilemap, 0, 0);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
@@ -442,7 +442,7 @@ static void CB2_MoveRelearner_Resume(void)
SetVBlankCallback(VBlankCB_MoveRelearner); SetVBlankCallback(VBlankCB_MoveRelearner);
MoveRelearnerLoadBgGfx(); MoveRelearnerLoadBgGfx();
SpawnListMenuScrollIndicatorSprites(); SpawnListMenuScrollIndicatorSprites();
FillPalette(RGB_BLACK, 0, 2); SetBackdropFromColor(RGB_BLACK);
RunTasks(); RunTasks();
AnimateSprites(); AnimateSprites();
@@ -506,7 +506,7 @@ static void MoveRelearnerStateMachine(void)
MoveRelearnerMenuHandleInput(); MoveRelearnerMenuHandleInput();
break; break;
case MENU_STATE_PRINT_TEACH_MOVE_PROMPT: 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++; sMoveRelearner->state++;
break; break;
case MENU_STATE_TEACH_MOVE_CONFIRM : case MENU_STATE_TEACH_MOVE_CONFIRM :
@@ -531,7 +531,7 @@ static void MoveRelearnerStateMachine(void)
} }
break; break;
case MENU_STATE_PRINT_GIVE_UP_PROMPT: 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++; sMoveRelearner->state++;
break; break;
case MENU_STATE_GIVE_UP_CONFIRM: case MENU_STATE_GIVE_UP_CONFIRM:
@@ -552,7 +552,7 @@ static void MoveRelearnerStateMachine(void)
sMoveRelearner->state++; sMoveRelearner->state++;
break; break;
case MENU_STATE_WAIT_FOR_TRYING_TO_LEARN: 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; sMoveRelearner->state = 18;
break; break;
case MENU_STATE_CONFIRM_DELETE_OLD_MOVE: case MENU_STATE_CONFIRM_DELETE_OLD_MOVE:
@@ -573,7 +573,7 @@ static void MoveRelearnerStateMachine(void)
sMoveRelearner->state++; sMoveRelearner->state++;
break; break;
case MENU_STATE_WAIT_FOR_STOP_TEACHING: 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; sMoveRelearner->state = 26;
break; break;
case MENU_STATE_CONFIRM_STOP_TEACHING: case MENU_STATE_CONFIRM_STOP_TEACHING:
@@ -680,7 +680,7 @@ static void DrawTextBorderOnWindows6and7(void)
{ {
int i; int i;
for (i = 6; i < 8; i++) for (i = 6; i < 8; i++)
DrawTextBorderOuter(i, 0x001, 0xE); DrawTextBorderOuter(i, 0x001, 14);
} }
static void PrintTeachWhichMoveToStrVar1(bool8 onInit) static void PrintTeachWhichMoveToStrVar1(bool8 onInit)
+5 -5
View File
@@ -242,7 +242,7 @@ void Task_DestroySelf(u8 taskId)
void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock, u16 baseChar) 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); DmaCopy16(3, sLinkTestFontGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock) + (16 * baseChar), sizeof sLinkTestFontGfx);
gLinkTestBGInfo.screenBaseBlock = screenBaseBlock; gLinkTestBGInfo.screenBaseBlock = screenBaseBlock;
gLinkTestBGInfo.paletteNum = paletteNum; gLinkTestBGInfo.paletteNum = paletteNum;
@@ -266,7 +266,7 @@ void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBloc
// Unused // Unused
static void LoadLinkTestBgGfx(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock) 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); DmaCopy16(3, sLinkTestFontGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock), sizeof sLinkTestFontGfx);
gLinkTestBGInfo.screenBaseBlock = screenBaseBlock; gLinkTestBGInfo.screenBaseBlock = screenBaseBlock;
gLinkTestBGInfo.paletteNum = paletteNum; gLinkTestBGInfo.paletteNum = paletteNum;
@@ -1382,7 +1382,7 @@ void CB2_LinkError(void)
ResetSpriteData(); ResetSpriteData();
FreeAllSpritePalettes(); FreeAllSpritePalettes();
ResetPaletteFadeControl(); ResetPaletteFadeControl();
FillPalette(RGB_BLACK, 0, 2); SetBackdropFromColor(RGB_BLACK);
ResetTasks(); ResetTasks();
ScanlineEffect_Stop(); ScanlineEffect_Stop();
if (gWirelessCommType) if (gWirelessCommType)
@@ -1407,7 +1407,7 @@ void CB2_LinkError(void)
SetGpuReg(REG_OFFSET_BG1HOFS, 0); SetGpuReg(REG_OFFSET_BG1HOFS, 0);
SetGpuReg(REG_OFFSET_BG1VOFS, 0); SetGpuReg(REG_OFFSET_BG1VOFS, 0);
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJWIN_ON); 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; gSoftResetDisabled = FALSE;
CreateTask(Task_DestroySelf, 0); CreateTask(Task_DestroySelf, 0);
StopMapMusic(); StopMapMusic();
@@ -1425,7 +1425,7 @@ static void ErrorMsg_MoveCloserToPartner(void)
DecompressAndLoadBgGfxUsingHeap(1, sWirelessLinkDisplayGfx, FALSE, 0, 0); DecompressAndLoadBgGfxUsingHeap(1, sWirelessLinkDisplayGfx, FALSE, 0, 0);
CopyToBgTilemapBuffer(1, sWirelessLinkDisplayTilemap, 0, 0); CopyToBgTilemapBuffer(1, sWirelessLinkDisplayTilemap, 0, 0);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
LoadPalette(sWirelessLinkDisplayPal, 0, 0x20); LoadPalette(sWirelessLinkDisplayPal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(0, PIXEL_FILL(0));
FillWindowPixelBuffer(2, PIXEL_FILL(0)); FillWindowPixelBuffer(2, PIXEL_FILL(0));
AddTextPrinterParameterized3(0, FONT_NORMAL_COPY_2, 2, 5, sLinkErrorTextColor, 0, gText_CommErrorEllipsis); AddTextPrinterParameterized3(0, FONT_NORMAL_COPY_2, 2, 5, sLinkErrorTextColor, 0, gText_CommErrorEllipsis);
+5 -5
View File
@@ -81,7 +81,7 @@ 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) switch (sMysteryGiftLinkMenu.state)
{ {
@@ -91,9 +91,9 @@ u32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const str
switch (arg2) switch (arg2)
{ {
case 2: case 2:
LoadUserWindowGfx(sMysteryGiftLinkMenu.windowId, tileNum, palNum); LoadUserWindowGfx(sMysteryGiftLinkMenu.windowId, tileNum, palOffset);
case 1: case 1:
DrawTextBorderOuter(sMysteryGiftLinkMenu.windowId, tileNum, palNum / 16); DrawTextBorderOuter(sMysteryGiftLinkMenu.windowId, tileNum, palOffset / 16);
break; break;
} }
gMultiuseListMenuTemplate = *listMenuTemplate; gMultiuseListMenuTemplate = *listMenuTemplate;
@@ -727,7 +727,7 @@ void ListMenuSetTemplateField(u8 taskId, u8 field, s32 value)
void ListMenu_LoadMonIconPalette(u8 palOffset, u16 speciesId) 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) void ListMenu_DrawMonIconGraphics(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y)
@@ -749,7 +749,7 @@ void ListMenuLoadStdPalAt(u8 palOffset, u8 palId)
palette = gFireRedMenuElements2_Pal; palette = gFireRedMenuElements2_Pal;
break; break;
} }
LoadPalette(palette, palOffset, 0x20); LoadPalette(palette, palOffset, PLTT_SIZE_4BPP);
} }
void BlitMoveInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y) void BlitMoveInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y)
+11 -10
View File
@@ -560,16 +560,17 @@ static bool8 DoInitMailView(void)
CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(2);
break; break;
case 12: case 12:
LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20); LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
gPlttBufferUnfaded[15 * 16 + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0]; gPlttBufferUnfaded[BG_PLTT_ID(15) + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0];
gPlttBufferFaded[15 * 16 + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0]; gPlttBufferFaded[BG_PLTT_ID(15) + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0];
gPlttBufferUnfaded[15 * 16 + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1]; gPlttBufferUnfaded[BG_PLTT_ID(15) + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1];
gPlttBufferFaded[15 * 16 + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1]; gPlttBufferFaded[BG_PLTT_ID(15) + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1];
LoadPalette(sGfxHeaders[sMailViewResources->mailType].pal, 0x00, 0x20);
gPlttBufferUnfaded[0 * 16 + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0]; LoadPalette(sGfxHeaders[sMailViewResources->mailType].pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
gPlttBufferFaded[0 * 16 + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0]; gPlttBufferUnfaded[BG_PLTT_ID(0) + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0];
gPlttBufferUnfaded[0 * 16 + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1]; gPlttBufferFaded[BG_PLTT_ID(0) + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0];
gPlttBufferFaded[0 * 16 + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1]; gPlttBufferUnfaded[BG_PLTT_ID(0) + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1];
gPlttBufferFaded[BG_PLTT_ID(0) + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1];
break; break;
case 13: case 13:
if (sMailViewResources->messageExists) if (sMailViewResources->messageExists)
+5 -5
View File
@@ -196,8 +196,8 @@ static bool32 MainMenuGpuInit(u8 a0)
ChangeBgY(2, 0, 0); ChangeBgY(2, 0, 0);
InitWindows(sWindowTemplate); InitWindows(sWindowTemplate);
DeactivateAllTextPrinters(); DeactivateAllTextPrinters();
LoadPalette(sBg_Pal, 0x00, 0x20); LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal));
LoadPalette(sTextbox_Pal, 0xF0, 0x20); LoadPalette(sTextbox_Pal, BG_PLTT_ID(15), sizeof(sTextbox_Pal));
SetGpuReg(REG_OFFSET_WIN0H, 0); SetGpuReg(REG_OFFSET_WIN0H, 0);
SetGpuReg(REG_OFFSET_WIN0V, 0); SetGpuReg(REG_OFFSET_WIN0V, 0);
SetGpuReg(REG_OFFSET_WININ, 0); SetGpuReg(REG_OFFSET_WININ, 0);
@@ -343,7 +343,7 @@ static void Task_PrintMainMenuText(u8 taskId)
pal = RGB(4, 16, 31); pal = RGB(4, 16, 31);
else else
pal = RGB(31, 3, 21); pal = RGB(31, 3, 21);
LoadPalette(&pal, 0xF1, 2); LoadPalette(&pal, BG_PLTT_ID(15) + 1, PLTT_SIZEOF(1));
switch (gTasks[taskId].tMenuType) switch (gTasks[taskId].tMenuType)
{ {
case MAIN_MENU_NEWGAME: case MAIN_MENU_NEWGAME:
@@ -678,13 +678,13 @@ static void PrintBadgeCount(void)
static void LoadUserFrameToBg(u8 bgId) static void LoadUserFrameToBg(u8 bgId)
{ {
LoadBgTiles(bgId, GetUserWindowGraphics(gSaveBlock2Ptr->optionsWindowFrameType)->tiles, 0x120, 0x1B1); 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]); MainMenu_EraseWindow(&sWindowTemplate[MAIN_MENU_WINDOW_ERROR]);
} }
static void SetStdFrame0OnBg(u8 bgId) 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]); MainMenu_EraseWindow(&sWindowTemplate[MAIN_MENU_WINDOW_ERROR]);
} }
+18 -18
View File
@@ -7,6 +7,8 @@
#include "region_map.h" #include "region_map.h"
#include "strings.h" #include "strings.h"
#define FLOOR_ROOFTOP 127
static void Task_MapNamePopup(u8 taskId); static void Task_MapNamePopup(u8 taskId);
static u16 MapNamePopupCreateWindow(bool32 palIntoFadedBuffer); static u16 MapNamePopupCreateWindow(bool32 palIntoFadedBuffer);
static void MapNamePopupPrintMapNameOnWindow(u16 windowId); 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) if (FlagGet(FLAG_DONT_SHOW_MAP_NAME_POPUP) != TRUE && !QL_IS_PLAYBACK_STATE)
{ {
taskId = FindTaskIdByFunc(Task_MapNamePopup); taskId = FindTaskIdByFunc(Task_MapNamePopup);
if (taskId == 0xFF) if (taskId == TASK_NONE)
{ {
taskId = CreateTask(Task_MapNamePopup, 90); taskId = CreateTask(Task_MapNamePopup, 90);
ChangeBgX(0, 0x0000, 0); ChangeBgX(0, 0x0000, 0);
@@ -129,7 +131,7 @@ void DismissMapNamePopup(void)
u8 taskId; u8 taskId;
s16 *data; s16 *data;
taskId = FindTaskIdByFunc(Task_MapNamePopup); taskId = FindTaskIdByFunc(Task_MapNamePopup);
if (taskId != 0xFF) if (taskId != TASK_NONE)
{ {
data = gTasks[taskId].data; data = gTasks[taskId].data;
if (tState < 6) if (tState < 6)
@@ -139,9 +141,11 @@ void DismissMapNamePopup(void)
bool32 IsMapNamePopupTaskActive(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) static u16 MapNamePopupCreateWindow(bool32 palintoFadedBuffer)
{ {
struct WindowTemplate windowTemplate = { struct WindowTemplate windowTemplate = {
@@ -150,36 +154,32 @@ static u16 MapNamePopupCreateWindow(bool32 palintoFadedBuffer)
.tilemapTop = 29, .tilemapTop = 29,
.width = 14, .width = 14,
.height = 2, .height = 2,
.paletteNum = 0xD, .paletteNum = WIN_PAL_NUM,
.baseBlock = 0x001 .baseBlock = 0x001
}; };
u16 windowId; u16 windowId;
u16 r6 = 0x01D; u16 tileNum = 0x01D;
if (gMapHeader.floorNum != 0) if (gMapHeader.floorNum != 0)
{ {
if (gMapHeader.floorNum != 0x7F) if (gMapHeader.floorNum != FLOOR_ROOFTOP)
{ {
windowTemplate.width += 5; windowTemplate.width += 5;
r6 = 0x027; tileNum = 0x027;
} }
else else
{ {
// ROOFTOP // ROOFTOP
windowTemplate.width += 8; windowTemplate.width += 8;
r6 = 0x02D; tileNum = 0x02D;
} }
} }
windowId = AddWindow(&windowTemplate); windowId = AddWindow(&windowTemplate);
if (palintoFadedBuffer) if (palintoFadedBuffer)
{ LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(WIN_PAL_NUM), PLTT_SIZE_4BPP);
LoadPalette(GetTextWindowPalette(3), 0xd0, 0x20);
}
else else
{ CpuCopy16(GetTextWindowPalette(3), &gPlttBufferUnfaded[BG_PLTT_ID(WIN_PAL_NUM)], PLTT_SIZE_4BPP);
CpuCopy16(GetTextWindowPalette(3), &gPlttBufferUnfaded[0xd0], 0x20); LoadStdWindowTiles(windowId, tileNum);
} DrawTextBorderOuter(windowId, tileNum, WIN_PAL_NUM);
LoadStdWindowTiles(windowId, r6);
DrawTextBorderOuter(windowId, r6, 0xD);
PutWindowTilemap(windowId); PutWindowTilemap(windowId);
MapNamePopupPrintMapNameOnWindow(windowId); MapNamePopupPrintMapNameOnWindow(windowId);
CopyWindowToVram(windowId, COPYWIN_FULL); CopyWindowToVram(windowId, COPYWIN_FULL);
@@ -195,7 +195,7 @@ static void MapNamePopupPrintMapNameOnWindow(u16 windowId)
if (gMapHeader.floorNum != 0) if (gMapHeader.floorNum != 0)
{ {
ptr = MapNamePopupAppendFloorNum(ptr, gMapHeader.floorNum); 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; xpos = (maxWidth - GetStringWidth(FONT_NORMAL, mapName, -1)) / 2;
FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
@@ -207,7 +207,7 @@ static u8 *MapNamePopupAppendFloorNum(u8 *dest, s8 floorNum)
if (floorNum == 0) if (floorNum == 0)
return dest; return dest;
*dest++ = CHAR_SPACE; *dest++ = CHAR_SPACE;
if (floorNum == 0x7F) if (floorNum == FLOOR_ROOFTOP)
return StringCopy(dest, gText_Rooftop2); return StringCopy(dest, gText_Rooftop2);
if (floorNum < 0) if (floorNum < 0)
{ {
+1 -1
View File
@@ -386,7 +386,7 @@ void MapPreview_LoadGfx(u8 mapsec)
if (idx != MPS_COUNT) if (idx != MPS_COUNT)
{ {
ResetTempTileDataBuffers(); 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); DecompressAndCopyTileDataToVram(0, sMapPreviewScreenData[idx].tilesptr, 0, 0, 0);
if (GetBgTilemapBuffer(0) == NULL) if (GetBgTilemapBuffer(0) == NULL)
{ {
+3 -3
View File
@@ -177,10 +177,10 @@ u8 CreateTopBarWindowLoadPalette(u8 bg, u8 width, u8 yPos, u8 palette, u16 baseT
window.baseBlock = baseTile; window.baseBlock = baseTile;
sTopBarWindowId = AddWindow(&window); sTopBarWindowId = AddWindow(&window);
if (palette > 15) if (palette > 15)
palette = 15 * 16; palette = BG_PLTT_ID(15);
else else
palette *= 16; palette = BG_PLTT_ID(palette);
LoadPalette(GetTextWindowPalette(2), palette, 0x20); LoadPalette(GetTextWindowPalette(2), palette, PLTT_SIZE_4BPP);
return sTopBarWindowId; return sTopBarWindowId;
} }
+3 -3
View File
@@ -333,7 +333,7 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16
LoadCompressedSpriteSheet(&spriteSheet); LoadCompressedSpriteSheet(&spriteSheet);
if (arrowInfo->palTag == TAG_NONE) if (arrowInfo->palTag == TAG_NONE)
{ {
LoadPalette(sRedArrowPal, (16 * arrowInfo->palNum) + 0x100, 0x20); LoadPalette(sRedArrowPal, OBJ_PLTT_ID(arrowInfo->palNum), sizeof(sRedArrowPal));
} }
else else
{ {
@@ -539,7 +539,7 @@ u8 ListMenuAddRedOutlineCursorObject(const struct CursorStruct *cursor)
LoadCompressedSpriteSheet(&spriteSheet); LoadCompressedSpriteSheet(&spriteSheet);
if (cursor->palTag == TAG_NONE) if (cursor->palTag == TAG_NONE)
{ {
LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); LoadPalette(sRedArrowPal, OBJ_PLTT_ID(cursor->palNum), sizeof(sRedArrowPal));
} }
else else
{ {
@@ -612,7 +612,7 @@ static u8 ListMenuAddRedArrowCursorObject(const struct CursorStruct *cursor)
LoadCompressedSpriteSheet(&spriteSheet); LoadCompressedSpriteSheet(&spriteSheet);
if (cursor->palTag == TAG_NONE) if (cursor->palTag == TAG_NONE)
{ {
LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); LoadPalette(sRedArrowPal, OBJ_PLTT_ID(cursor->palNum), sizeof(sRedArrowPal));
} }
else else
{ {
+3 -3
View File
@@ -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); 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); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_TrainerCardMoney, 0, 0, 0xFF, 0);
PrintMoneyAmountInMoneyBox(windowId, amount, 0); PrintMoneyAmountInMoneyBox(windowId, amount, 0);
} }
@@ -124,7 +124,7 @@ void DrawMoneyBox(int amount, u8 x, u8 y)
sMoneyBoxWindowId = AddWindow(&template); sMoneyBoxWindowId = AddWindow(&template);
FillWindowPixelBuffer(sMoneyBoxWindowId, 0); FillWindowPixelBuffer(sMoneyBoxWindowId, 0);
PutWindowTilemap(sMoneyBoxWindowId); PutWindowTilemap(sMoneyBoxWindowId);
LoadStdWindowGfx(sMoneyBoxWindowId, 0x21D, 0xD0); LoadStdWindowGfx(sMoneyBoxWindowId, 0x21D, BG_PLTT_ID(13));
PrintMoneyAmountInMoneyBoxWithBorder(sMoneyBoxWindowId, 0x21D, 13, amount); PrintMoneyAmountInMoneyBoxWithBorder(sMoneyBoxWindowId, 0x21D, 13, amount);
} }
+87 -87
View File
@@ -87,110 +87,110 @@ static const struct BgTemplate sBGTemplates[] = {
static const struct WindowTemplate sMainWindows[] = { static const struct WindowTemplate sMainWindows[] = {
{ {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x00, .tilemapLeft = 0,
.tilemapTop = 0x00, .tilemapTop = 0,
.width = 0x1e, .width = 30,
.height = 0x02, .height = 2,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x0013 .baseBlock = 0x0013
}, { }, {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x1c, .width = 28,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x004f .baseBlock = 0x004f
}, { }, {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x00, .tilemapLeft = 0,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x1e, .width = 30,
.height = 0x05, .height = 5,
.paletteNum = 0x0d, .paletteNum = 13,
.baseBlock = 0x004f .baseBlock = 0x004f
}, },
DUMMY_WIN_TEMPLATE DUMMY_WIN_TEMPLATE
}; };
static const struct WindowTemplate sWindowTemplate_YesNoMsg_Wide = { static const struct WindowTemplate sWindowTemplate_YesNoMsg_Wide = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x1c, .width = 28,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x00e5 .baseBlock = 0x00e5
}; };
static const struct WindowTemplate sWindowTemplate_YesNoMsg = { static const struct WindowTemplate sWindowTemplate_YesNoMsg = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x14, .width = 20,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x00e5 .baseBlock = 0x00e5
}; };
static const struct WindowTemplate sWindowTemplate_GiftSelect = { static const struct WindowTemplate sWindowTemplate_GiftSelect = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x01, .tilemapLeft = 1,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x13, .width = 19,
.height = 0x04, .height = 4,
.paletteNum = 0x0f, .paletteNum = 15,
.baseBlock = 0x00e5 .baseBlock = 0x00e5
}; };
static const struct WindowTemplate sWindowTemplate_ThreeOptions = { static const struct WindowTemplate sWindowTemplate_ThreeOptions = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x08, .tilemapLeft = 8,
.tilemapTop = 0x05, .tilemapTop = 5,
.width = 0x0e, .width = 14,
.height = 0x05, .height = 5,
.paletteNum = 0x0e, .paletteNum = 14,
.baseBlock = 0x0155 .baseBlock = 0x0155
}; };
static const struct WindowTemplate sWindowTemplate_YesNoBox = { static const struct WindowTemplate sWindowTemplate_YesNoBox = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x17, .tilemapLeft = 23,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x06, .width = 6,
.height = 0x04, .height = 4,
.paletteNum = 0x0e, .paletteNum = 14,
.baseBlock = 0x0155 .baseBlock = 0x0155
}; };
static const struct WindowTemplate sWindowTemplate_GiftSelect_3Options = { static const struct WindowTemplate sWindowTemplate_GiftSelect_3Options = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x0c, .tilemapTop = 12,
.width = 0x07, .width = 7,
.height = 0x07, .height = 7,
.paletteNum = 0x0e, .paletteNum = 14,
.baseBlock = 0x0155 .baseBlock = 0x0155
}; };
static const struct WindowTemplate sWindowTemplate_GiftSelect_2Options = { static const struct WindowTemplate sWindowTemplate_GiftSelect_2Options = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x0e, .tilemapTop = 14,
.width = 0x07, .width = 7,
.height = 0x05, .height = 5,
.paletteNum = 0x0e, .paletteNum = 14,
.baseBlock = 0x0155 .baseBlock = 0x0155
}; };
static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = { static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = {
.bg = 0x00, .bg = 0,
.tilemapLeft = 0x16, .tilemapLeft = 22,
.tilemapTop = 0x0f, .tilemapTop = 15,
.width = 0x07, .width = 7,
.height = 0x04, .height = 4,
.paletteNum = 0x0e, .paletteNum = 14,
.baseBlock = 0x0155 .baseBlock = 0x0155
}; };
@@ -392,8 +392,8 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader)
SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE));
SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE));
LoadUserWindowGfx2(0, 10, 0xE0); LoadUserWindowGfx2(0, 10, BG_PLTT_ID(14));
LoadStdWindowGfxOnBg(0, 1, 0xF0); LoadStdWindowGfxOnBg(0, 1, BG_PLTT_ID(15));
DecompressAndLoadBgGfxUsingHeap(3, sTextboxBorder_Gfx, 0x100, 0, 0); DecompressAndLoadBgGfxUsingHeap(3, sTextboxBorder_Gfx, 0x100, 0, 0);
InitWindows(sMainWindows); InitWindows(sMainWindows);
DeactivateAllTextPrinters(); DeactivateAllTextPrinters();
@@ -404,11 +404,11 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader)
gMain.state++; gMain.state++;
break; break;
case 1: case 1:
LoadPalette(sTextboxBorder_Pal, 0, 0x20); LoadPalette(sTextboxBorder_Pal, BG_PLTT_ID(0), sizeof(sTextboxBorder_Pal));
LoadPalette(GetTextWindowPalette(2), 0xd0, 0x20); LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 17);
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 17);
MG_DrawCheckerboardPattern(); MG_DrawCheckerboardPattern();
PrintMysteryGiftOrEReaderTopMenu(isEReader, FALSE); PrintMysteryGiftOrEReaderTopMenu(isEReader, FALSE);
gMain.state++; gMain.state++;
@@ -486,23 +486,23 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel)
void MG_DrawTextBorder(u8 windowId) void MG_DrawTextBorder(u8 windowId)
{ {
DrawTextBorderOuter(windowId, 0x01, 0xF); DrawTextBorderOuter(windowId, 0x01, 15);
} }
void MG_DrawCheckerboardPattern(void) void MG_DrawCheckerboardPattern(void)
{ {
s32 i = 0, j; 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 (i = 0; i < 18; i++)
{ {
for (j = 0; j < 32; j++) for (j = 0; j < 32; j++)
{ {
if ((i & 1) != (j & 1)) if ((i & 1) != (j & 1))
FillBgTilemapBufferRect(3, 1, j, i + 2, 1, 1, 0x11); FillBgTilemapBufferRect(3, 1, j, i + 2, 1, 1, 17);
else 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) switch (ignoreTopTwoRows)
{ {
case 0: case 0:
FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 17);
break; break;
case 1: case 1:
FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 0x11); FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 17);
break; break;
} }
CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(0);
@@ -526,7 +526,7 @@ void AddTextPrinterToWindow1(const u8 *str)
StringExpandPlaceholders(gStringVar4, str); StringExpandPlaceholders(gStringVar4, str);
FillWindowPixelBuffer(1, 0x11); FillWindowPixelBuffer(1, 0x11);
AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4); AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4);
DrawTextBorderOuter(1, 0x001, 0xF); DrawTextBorderOuter(1, 0x001, 15);
PutWindowTilemap(1); PutWindowTilemap(1);
CopyWindowToVram(1, COPYWIN_FULL); CopyWindowToVram(1, COPYWIN_FULL);
} }
@@ -637,7 +637,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi
finalWidth = (((width + 9) / 8) + 2) & ~1; finalWidth = (((width + 9) / 8) + 2) & ~1;
windowTemplate.width = finalWidth; windowTemplate.width = finalWidth;
windowTemplate.tilemapLeft = (30 - finalWidth) / 2; 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) if (response != LIST_NOTHING_CHOSEN)
{ {
ClearWindowTilemap(2); ClearWindowTilemap(2);
@@ -662,7 +662,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c
*windowId = AddWindow(&sWindowTemplate_YesNoMsg); *windowId = AddWindow(&sWindowTemplate_YesNoMsg);
FillWindowPixelBuffer(*windowId, 0x11); FillWindowPixelBuffer(*windowId, 0x11);
AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4); 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); CopyWindowToVram(*windowId, COPYWIN_GFX);
PutWindowTilemap(*windowId); PutWindowTilemap(*windowId);
(*textState)++; (*textState)++;
@@ -719,7 +719,7 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann
*windowId = AddWindow(&sWindowTemplate_GiftSelect); *windowId = AddWindow(&sWindowTemplate_GiftSelect);
FillWindowPixelBuffer(*windowId, 0x11); FillWindowPixelBuffer(*windowId, 0x11);
AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4); 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); CopyWindowToVram(*windowId, COPYWIN_GFX);
PutWindowTilemap(*windowId); PutWindowTilemap(*windowId);
(*textState)++; (*textState)++;
@@ -729,16 +729,16 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann
if (cannotSend) if (cannotSend)
{ {
if (!cannotToss) 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 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 else
{ {
if (!cannotToss) 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 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) if (input != LIST_NOTHING_CHOSEN)
{ {
+1 -1
View File
@@ -215,7 +215,7 @@ s32 WonderCard_Enter(void)
if (FreeTempTileDataBuffersIfPossible()) if (FreeTempTileDataBuffersIfPossible())
return 0; return 0;
gPaletteFade.bufferTransferDisabled = TRUE; 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); LZ77UnCompWram(sWonderCardData->gfx->map, sWonderCardData->bgTilemapBuffer);
CopyRectToBgTilemapBufferRect(2, sWonderCardData->bgTilemapBuffer, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0); CopyRectToBgTilemapBufferRect(2, sWonderCardData->bgTilemapBuffer, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0);
CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(2);
+1 -1
View File
@@ -171,7 +171,7 @@ s32 WonderNews_Enter(void)
if (FreeTempTileDataBuffersIfPossible()) if (FreeTempTileDataBuffersIfPossible())
return 0; return 0;
gPaletteFade.bufferTransferDisabled = TRUE; 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); LZ77UnCompWram(sWonderNewsData->gfx->map, sWonderNewsData->bgTilemapBuffer);
CopyRectToBgTilemapBufferRect(1, sWonderNewsData->bgTilemapBuffer, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0); 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); CopyRectToBgTilemapBufferRect(3, sWonderNewsData->bgTilemapBuffer, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0);
+8 -8
View File
@@ -978,10 +978,10 @@ static u16 GetButtonPalOffset(u8 button)
{ {
const u16 palOffsets[BUTTON_COUNT + 1] = const u16 palOffsets[BUTTON_COUNT + 1] =
{ {
[BUTTON_PAGE] = IndexOfSpritePaletteTag(PALTAG_PAGE_SWAP) * 16 + 0x10E, [BUTTON_PAGE] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_PAGE_SWAP)) + 14,
[BUTTON_BACK] = IndexOfSpritePaletteTag(PALTAG_BACK_BUTTON) * 16 + 0x10E, [BUTTON_BACK] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_BACK_BUTTON)) + 14,
[BUTTON_OK] = IndexOfSpritePaletteTag(PALTAG_OK_BUTTON) * 16 + 0x10E, [BUTTON_OK] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_OK_BUTTON)) + 14,
[BUTTON_COUNT] = IndexOfSpritePaletteTag(PALTAG_OK_BUTTON) * 16 + 0x101, [BUTTON_COUNT] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_OK_BUTTON)) + 1,
}; };
return palOffsets[button]; return palOffsets[button];
@@ -1060,7 +1060,7 @@ static void SpriteCB_Cursor(struct Sprite *sprite)
{ {
s8 gb = sprite->sColor; s8 gb = sprite->sColor;
s8 r = sprite->sColor >> 1; 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); MultiplyInvertedPaletteRGBComponents(index, r, gb, gb);
} }
@@ -1872,9 +1872,9 @@ static void CreateHelperTasks(void)
static void LoadPalettes(void) static void LoadPalettes(void)
{ {
LoadPalette(gNamingScreenMenu_Pal, 0, sizeof(gNamingScreenMenu_Pal)); LoadPalette(gNamingScreenMenu_Pal, BG_PLTT_ID(0), sizeof(gNamingScreenMenu_Pal));
LoadPalette(gNamingScreenKeyboard_Pal, 0xA0, 0x20); LoadPalette(gNamingScreenKeyboard_Pal, BG_PLTT_ID(10), PLTT_SIZE_4BPP);
LoadPalette(GetTextWindowPalette(2), 0xB0, 0x20); LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(11), PLTT_SIZE_4BPP);
} }
static void DecompressToBgTilemapBuffer(u8 bg, const u32 *src) static void DecompressToBgTilemapBuffer(u8 bg, const u32 *src)
+10 -10
View File
@@ -457,9 +457,9 @@ void LoadStdWindowFrameGfx(void)
else else
{ {
Menu_LoadStdPal(); 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) void DrawDialogueFrame(u8 windowId, bool8 copyToVram)
@@ -591,7 +591,7 @@ static void WindowFunc_ClearDialogWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilem
void EraseFieldMessageBox(bool8 copyToVram) void EraseFieldMessageBox(bool8 copyToVram)
{ {
FillBgTilemapBufferRect(0, 0, 0, 0, 0x20, 0x20, 0x11); FillBgTilemapBufferRect(0, 0, 0, 0, 0x20, 0x20, 17);
if (copyToVram == TRUE) if (copyToVram == TRUE)
CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(0);
} }
@@ -610,19 +610,19 @@ void LoadMessageBoxAndFrameGfx(u8 windowId, bool8 copyToVram)
} }
else 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); DrawDialogFrameWithCustomTileAndPalette(windowId, copyToVram, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM);
} }
void Menu_LoadStdPal(void) 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) void Menu_LoadStdPalAt(u16 offset)
{ {
LoadPalette(gStandardMenuPalette, offset, 0x14); LoadPalette(gStandardMenuPalette, offset, PLTT_SIZEOF(10));
} }
// Unused // Unused
@@ -633,7 +633,7 @@ static const u16 *GetStdMenuPalette(void)
static u16 GetStdPalColor(u8 colorNum) static u16 GetStdPalColor(u8 colorNum)
{ {
if (colorNum > 0xF) if (colorNum > 15)
colorNum = 0; colorNum = 0;
return gStandardMenuPalette[colorNum]; return gStandardMenuPalette[colorNum];
} }
@@ -700,7 +700,7 @@ u16 GetStdWindowBaseTileNum(void)
void DrawHelpMessageWindowWithText(const u8 * text) 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); PrintTextOnHelpMessageWindow(text, 2);
} }
@@ -712,8 +712,8 @@ void DestroyHelpMessageWindow_(void)
void LoadSignpostWindowFrameGfx(void) void LoadSignpostWindowFrameGfx(void)
{ {
Menu_LoadStdPal(); Menu_LoadStdPal();
LoadSignpostWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, 0x10 * DLG_WINDOW_PALETTE_NUM); LoadSignpostWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM));
LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, 0x10 * STD_WINDOW_PALETTE_NUM); LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(STD_WINDOW_PALETTE_NUM));
} }
void SetDefaultFontsPointer(void) void SetDefaultFontsPointer(void)
+18 -12
View File
@@ -753,9 +753,9 @@ static void Task_NewGameScene(u8 taskId)
gPaletteFade.bufferTransferDisabled = TRUE; gPaletteFade.bufferTransferDisabled = TRUE;
InitStandardTextBoxWindows(); InitStandardTextBoxWindows();
InitTextBoxGfxAndPrinters(); InitTextBoxGfxAndPrinters();
Menu_LoadStdPalAt(0xD0); Menu_LoadStdPalAt(BG_PLTT_ID(13));
LoadPalette(sOakSpeech_Background_Pals, 0, 0x80); LoadPalette(sOakSpeech_Background_Pals, BG_PLTT_ID(0), sizeof(sOakSpeech_Background_Pals));
LoadPalette(GetTextWindowPalette(2) + 15, 0, 2); LoadPalette(GetTextWindowPalette(2) + 15, BG_PLTT_ID(0), PLTT_SIZEOF(1));
break; break;
case 5: case 5:
sOakSpeechResources->textSpeed = GetTextSpeedSetting(); sOakSpeechResources->textSpeed = GetTextSpeedSetting();
@@ -921,7 +921,7 @@ static void Task_ControlsGuide_Clear(u8 taskId)
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
DestroyTextCursorSprite(gTasks[taskId].tTextCursorSpriteId); DestroyTextCursorSprite(gTasks[taskId].tTextCursorSpriteId);
sOakSpeechResources->windowIds[0] = RGB_BLACK; 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].tTimer = 32;
gTasks[taskId].func = Task_PikachuIntro_LoadPage1; gTasks[taskId].func = Task_PikachuIntro_LoadPage1;
} }
@@ -1739,7 +1739,7 @@ static void Task_OakSpeech_FadePlayerPicWhite(u8 taskId)
{ {
if (tUnderflowingTimer <= 0 && tSecondaryTimer != 0) if (tUnderflowingTimer <= 0 && tSecondaryTimer != 0)
tSecondaryTimer--; tSecondaryTimer--;
BlendPalette(0x40, 0x20, tBlendCoefficient, RGB_WHITE); BlendPalette(BG_PLTT_ID(4), 0x20, tBlendCoefficient, RGB_WHITE);
tBlendCoefficient++; tBlendCoefficient++;
tUnderflowingTimer--; tUnderflowingTimer--;
tPlayerPicFadeWhiteTimer = tSecondaryTimer; tPlayerPicFadeWhiteTimer = tSecondaryTimer;
@@ -1747,8 +1747,8 @@ static void Task_OakSpeech_FadePlayerPicWhite(u8 taskId)
{ {
for (i = 0; i < 32; i++) for (i = 0; i < 32; i++)
{ {
gPlttBufferFaded[i + 0x40] = RGB_WHITE; gPlttBufferFaded[i + BG_PLTT_ID(4)] = RGB_WHITE;
gPlttBufferUnfaded[i + 0x40] = RGB_WHITE; gPlttBufferUnfaded[i + BG_PLTT_ID(4)] = RGB_WHITE;
} }
DestroyTask(taskId); DestroyTask(taskId);
} }
@@ -1825,7 +1825,13 @@ static void CB2_ReturnFromNamingScreen(void)
FreeAllWindowBuffers(); FreeAllWindowBuffers();
InitStandardTextBoxWindows(); InitStandardTextBoxWindows();
InitTextBoxGfxAndPrinters(); 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; break;
case 4: case 4:
DecompressAndCopyTileDataToVram(1, sOakSpeech_Background_Tiles, 0, 0, 0); DecompressAndCopyTileDataToVram(1, sOakSpeech_Background_Tiles, 0, 0, 0);
@@ -1964,19 +1970,19 @@ static void LoadTrainerPic(u16 whichPic, u16 tileOffset)
switch (whichPic) switch (whichPic)
{ {
case MALE_PLAYER_PIC: 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); LZ77UnCompVram(sOakSpeech_Red_Tiles, (void *)VRAM + 0x600 + tileOffset);
break; break;
case FEMALE_PLAYER_PIC: 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); LZ77UnCompVram(sOakSpeech_Leaf_Tiles, (void *)VRAM + 0x600 + tileOffset);
break; break;
case RIVAL_PIC: 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); LZ77UnCompVram(sOakSpeech_Rival_Tiles, (void *)VRAM + 0x600 + tileOffset);
break; break;
case OAK_PIC: 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); LZ77UnCompVram(sOakSpeech_Oak_Tiles, (void *)VRAM + 0x600 + tileOffset);
break; break;
default: default:
+6 -6
View File
@@ -93,7 +93,7 @@ static const struct WindowTemplate sOptionMenuWinTemplates[] =
.tilemapTop = 0, .tilemapTop = 0,
.width = 30, .width = 30,
.height = 2, .height = 2,
.paletteNum = 0xF, .paletteNum = 15,
.baseBlock = 0x16e .baseBlock = 0x16e
}, },
DUMMY_WIN_TEMPLATE DUMMY_WIN_TEMPLATE
@@ -340,14 +340,14 @@ static bool8 LoadOptionMenuPalette(void)
LoadBgTiles(1, GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->tiles, 0x120, 0x1AA); LoadBgTiles(1, GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->tiles, 0x120, 0x1AA);
break; break;
case 1: 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; break;
case 2: case 2:
LoadPalette(sOptionMenuPalette, 0x10, 0x20); LoadPalette(sOptionMenuPalette, BG_PLTT_ID(1), sizeof(sOptionMenuPalette));
LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20); LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
break; break;
case 3: case 3:
LoadStdWindowGfxOnBg(1, 0x1B3, 0x30); LoadStdWindowGfxOnBg(1, 0x1B3, BG_PLTT_ID(3));
break; break;
default: default:
return TRUE; return TRUE;
@@ -382,7 +382,7 @@ static void Task_OptionMenu(u8 taskId)
break; break;
case 2: case 2:
LoadBgTiles(1, GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->tiles, 0x120, 0x1AA); 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); BufferOptionMenuString(sOptionMenuPtr->cursorPos);
break; break;
case 3: case 3:
+7 -7
View File
@@ -59,7 +59,7 @@ ALIGNED(4) EWRAM_DATA u16 gPlttBufferFaded[PLTT_BUFFER_SIZE] = {0};
static EWRAM_DATA struct PaletteStruct sPaletteStructs[NUM_PALETTE_STRUCTS] = {0}; static EWRAM_DATA struct PaletteStruct sPaletteStructs[NUM_PALETTE_STRUCTS] = {0};
EWRAM_DATA struct PaletteFadeControl gPaletteFade = {0}; EWRAM_DATA struct PaletteFadeControl gPaletteFade = {0};
static EWRAM_DATA u32 sPlttBufferTransferPending = 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 = static const struct PaletteStructTemplate sDummyPaletteStructTemplate =
{ {
@@ -141,7 +141,7 @@ void ReadPlttIntoBuffers(void)
u16 i; u16 i;
u16 *pltt = (u16 *)PLTT; u16 *pltt = (u16 *)PLTT;
for (i = 0; i < PLTT_SIZE / 2; ++i) for (i = 0; i < PLTT_BUFFER_SIZE; ++i)
{ {
gPlttBufferUnfaded[i] = pltt[i]; gPlttBufferUnfaded[i] = pltt[i];
gPlttBufferFaded[i] = pltt[i]; gPlttBufferFaded[i] = pltt[i];
@@ -420,7 +420,7 @@ static u8 UpdateNormalPaletteFade(void)
else else
{ {
selectedPalettes = gPaletteFade_selectedPalettes >> 16; selectedPalettes = gPaletteFade_selectedPalettes >> 16;
paletteOffset = 256; paletteOffset = OBJ_PLTT_OFFSET;
} }
while (selectedPalettes) while (selectedPalettes)
{ {
@@ -559,13 +559,13 @@ static u8 UpdateFastPaletteFade(void)
return gPaletteFade.active ? PALETTE_FADE_STATUS_ACTIVE : PALETTE_FADE_STATUS_DONE; return gPaletteFade.active ? PALETTE_FADE_STATUS_ACTIVE : PALETTE_FADE_STATUS_DONE;
if (gPaletteFade.objPaletteToggle) if (gPaletteFade.objPaletteToggle)
{ {
paletteOffsetStart = 256; paletteOffsetStart = OBJ_PLTT_OFFSET;
paletteOffsetEnd = 512; paletteOffsetEnd = PLTT_BUFFER_SIZE;
} }
else else
{ {
paletteOffsetStart = 0; paletteOffsetStart = 0;
paletteOffsetEnd = 256; paletteOffsetEnd = OBJ_PLTT_OFFSET;
} }
switch (gPaletteFade_submode) switch (gPaletteFade_submode)
{ {
@@ -791,7 +791,7 @@ void BlendPalettes(u32 selectedPalettes, u8 coeff, u16 color)
void BlendPalettesUnfaded(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 // This copy is done via DMA in both RUBY and EMERALD
CpuFastCopy(gPlttBufferUnfaded, gPlttBufferFaded, 0x400); CpuFastCopy(gPlttBufferUnfaded, gPlttBufferFaded, PLTT_SIZE);
BlendPalettes(selectedPalettes, coeff, color); BlendPalettes(selectedPalettes, coeff, color);
} }
+31 -31
View File
@@ -670,8 +670,8 @@ static bool8 AllocPartyMenuBgGfx(void)
} }
break; break;
case 2: case 2:
LoadCompressedPalette(gPartyMenuBg_Pal, 0, 0x160); LoadCompressedPalette(gPartyMenuBg_Pal, BG_PLTT_ID(0), 11 * PLTT_SIZE_4BPP);
CpuCopy16(gPlttBufferUnfaded, sPartyMenuInternal->palBuffer, 0x160); CpuCopy16(gPlttBufferUnfaded, sPartyMenuInternal->palBuffer, 11 * PLTT_SIZE_4BPP);
++sPartyMenuInternal->data[0]; ++sPartyMenuInternal->data[0];
break; break;
case 3: case 3:
@@ -702,9 +702,9 @@ static bool8 AllocPartyMenuBgGfx(void)
static void PartyPaletteBufferCopy(u8 offset) static void PartyPaletteBufferCopy(u8 offset)
{ {
offset *= 16; offset = PLTT_ID(offset);
CpuCopy16(&gPlttBufferUnfaded[0x30], &gPlttBufferUnfaded[offset], 32); CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(3)], &gPlttBufferUnfaded[offset], PLTT_SIZE_4BPP);
CpuCopy16(&gPlttBufferUnfaded[0x30], &gPlttBufferFaded[offset], 32); CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(3)], &gPlttBufferFaded[offset], PLTT_SIZE_4BPP);
} }
static void FreePartyPointers(void) static void FreePartyPointers(void)
@@ -2006,8 +2006,8 @@ static void Task_FirstBattleEnterParty_WaitFadeNormal(u8 taskId)
{ {
if (!gPaletteFade.active) if (!gPaletteFade.active)
{ {
LoadUserWindowGfx(0, 0x4F, 0xD0); LoadUserWindowGfx(0, 0x4F, BG_PLTT_ID(13));
LoadStdWindowGfx(0, 0x58, 0xF0); LoadStdWindowGfx(0, 0x58, BG_PLTT_ID(15));
if (gPartyMenu.action == PARTY_ACTION_USE_ITEM) if (gPartyMenu.action == PARTY_ACTION_USE_ITEM)
DisplayPartyMenuStdMessage(PARTY_MSG_USE_ON_WHICH_MON); DisplayPartyMenuStdMessage(PARTY_MSG_USE_ON_WHICH_MON);
else else
@@ -2117,10 +2117,10 @@ static void InitPartyMenuWindows(u8 layout)
DeactivateAllTextPrinters(); DeactivateAllTextPrinters();
for (i = 0; i < PARTY_SIZE; ++i) for (i = 0; i < PARTY_SIZE; ++i)
FillWindowPixelBuffer(i, PIXEL_FILL(0)); FillWindowPixelBuffer(i, PIXEL_FILL(0));
LoadUserWindowGfx(0, 0x4F, 0xD0); LoadUserWindowGfx(0, 0x4F, BG_PLTT_ID(13));
LoadStdWindowGfx(0, 0x58, 0xF0); LoadStdWindowGfx(0, 0x58, BG_PLTT_ID(15));
LoadPalette(GetTextWindowPalette(2), 0xC0, 0x20); LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(12), PLTT_SIZE_4BPP);
LoadPalette(GetTextWindowPalette(0), 0xE0, 0x20); LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(14), PLTT_SIZE_4BPP);
} }
static void CreateCancelConfirmWindows(bool8 chooseMultiple) static void CreateCancelConfirmWindows(bool8 chooseMultiple)
@@ -2215,16 +2215,16 @@ static void DrawEmptySlot(u8 windowId)
BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideEmpty, 18, 0, 0, 18, 3); BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideEmpty, 18, 0, 0, 18, 3);
} }
#define LOAD_PARTY_BOX_PAL(paletteIds, paletteOffsets) \ #define LOAD_PARTY_BOX_PAL(paletteIds, paletteOffsets) \
{ \ { \
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[0]), paletteOffsets[0] + palNum, 2); \ LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[0]), paletteOffsets[0] + palOffset, PLTT_SIZEOF(1)); \
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[1]), paletteOffsets[1] + palNum, 2); \ LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[1]), paletteOffsets[1] + palOffset, PLTT_SIZEOF(1)); \
LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[2]), paletteOffsets[2] + palNum, 2); \ LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[2]), paletteOffsets[2] + palOffset, PLTT_SIZEOF(1)); \
} }
static void LoadPartyBoxPalette(struct PartyMenuBox *menuBox, u8 palFlags) 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) 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) 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) if (species == SPECIES_NONE)
return; return;
@@ -2358,13 +2358,13 @@ static void DisplayPartyPokemonGender(u8 gender, u16 species, u8 *nickname, stru
switch (gender) switch (gender)
{ {
case MON_MALE: case MON_MALE:
LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[0]), sGenderPalOffsets[0] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[0]), sGenderPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[1]), sGenderPalOffsets[1] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[1]), sGenderPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
DisplayPartyPokemonBarDetail(menuBox->windowId, gText_MaleSymbol, 2, &menuBox->infoRects->dimensions[8]); DisplayPartyPokemonBarDetail(menuBox->windowId, gText_MaleSymbol, 2, &menuBox->infoRects->dimensions[8]);
break; break;
case MON_FEMALE: case MON_FEMALE:
LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[0]), sGenderPalOffsets[0] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[0]), sGenderPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[1]), sGenderPalOffsets[1] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[1]), sGenderPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
DisplayPartyPokemonBarDetail(menuBox->windowId, gText_FemaleSymbol, 2, &menuBox->infoRects->dimensions[8]); DisplayPartyPokemonBarDetail(menuBox->windowId, gText_FemaleSymbol, 2, &menuBox->infoRects->dimensions[8]);
break; break;
} }
@@ -2417,23 +2417,23 @@ static void DisplayPartyPokemonHPBarCheck(struct Pokemon *mon, struct PartyMenuB
static void DisplayPartyPokemonHPBar(u16 hp, u16 maxhp, struct PartyMenuBox *menuBox) 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; u8 hpFraction;
switch (GetHPBarLevel(hp, maxhp)) switch (GetHPBarLevel(hp, maxhp))
{ {
case HP_BAR_GREEN: case HP_BAR_GREEN:
case HP_BAR_FULL: case HP_BAR_FULL:
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[0]), sHPBarPalOffsets[0] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[1]), sHPBarPalOffsets[1] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
break; break;
case HP_BAR_YELLOW: case HP_BAR_YELLOW:
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[0]), sHPBarPalOffsets[0] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[1]), sHPBarPalOffsets[1] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
break; break;
default: default:
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[0]), sHPBarPalOffsets[0] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1));
LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[1]), sHPBarPalOffsets[1] + palNum, 2); LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1));
break; break;
} }
hpFraction = GetScaledHPFraction(hp, maxhp, menuBox->infoRects->dimensions[22]); hpFraction = GetScaledHPFraction(hp, maxhp, menuBox->infoRects->dimensions[22]);
@@ -2503,7 +2503,7 @@ void DisplayPartyMenuStdMessage(u32 stringId)
else if (!ShouldUseChooseMonText()) else if (!ShouldUseChooseMonText())
stringId = PARTY_MSG_CHOOSE_MON_OR_CANCEL; stringId = PARTY_MSG_CHOOSE_MON_OR_CANCEL;
} }
DrawStdFrameWithCustomTileAndPalette(*windowPtr, FALSE, 0x58, 0xF); DrawStdFrameWithCustomTileAndPalette(*windowPtr, FALSE, 0x58, 15);
StringExpandPlaceholders(gStringVar4, sActionStringTable[stringId]); StringExpandPlaceholders(gStringVar4, sActionStringTable[stringId]);
AddTextPrinterParameterized(*windowPtr, FONT_NORMAL, gStringVar4, 0, 2, 0, 0); AddTextPrinterParameterized(*windowPtr, FONT_NORMAL, gStringVar4, 0, 2, 0, 0);
ScheduleBgCopyTilemapToVram(2); ScheduleBgCopyTilemapToVram(2);
@@ -2603,7 +2603,7 @@ static bool8 FirstBattleEnterParty_CreateWindowAndMsg1Printer(void)
{ {
u8 windowId = AddWindow(&sWindowTemplate_FirstBattleOakVoiceover); u8 windowId = AddWindow(&sWindowTemplate_FirstBattleOakVoiceover);
LoadMenuMessageWindowGfx(windowId, 0x4F, 0xE0); LoadMenuMessageWindowGfx(windowId, 0x4F, BG_PLTT_ID(14));
DrawDialogFrameWithCustomTileAndPalette(windowId, 1, 0x4F, 0xE); DrawDialogFrameWithCustomTileAndPalette(windowId, 1, 0x4F, 0xE);
PartyMenu_Oak_PrintText(windowId, gText_OakImportantToGetToKnowPokemonThroughly); PartyMenu_Oak_PrintText(windowId, gText_OakImportantToGetToKnowPokemonThroughly);
return windowId; return windowId;
+3 -3
View File
@@ -83,7 +83,7 @@ static void Task_PCScreenEffect_TurnOn(u8 taskId)
SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuReg(REG_OFFSET_BLDY, 0);
SetGpuReg(REG_OFFSET_BLDCNT, task->tBldCntBak); SetGpuReg(REG_OFFSET_BLDCNT, task->tBldCntBak);
BlendPalettes(PALETTES_ALL, 0, RGB_BLACK); 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)); SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(task->tWin0Left, task->tWin0Right));
if (task->tWin0Left) if (task->tWin0Left)
@@ -117,7 +117,7 @@ static void Task_PCScreenEffect_TurnOff(u8 taskId)
switch (task->tState) switch (task->tState)
{ {
case 0: case 0:
gPlttBufferFaded[0] = 0; gPlttBufferFaded[BG_PLTT_ID(0)] = 0;
break; break;
case 1: case 1:
task->tWin0Left = 0; task->tWin0Left = 0;
@@ -152,7 +152,7 @@ static void Task_PCScreenEffect_TurnOff(u8 taskId)
task->tWin0Left = 120; task->tWin0Left = 120;
task->tWin0Right = 120; task->tWin0Right = 120;
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); 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)); SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(task->tWin0Left, task->tWin0Right));
if (task->tWin0Left != 120) if (task->tWin0Left != 120)
+1 -1
View File
@@ -201,7 +201,7 @@ u8 CreatePokedexAreaMarkers(u16 species, u16 tilesTag, u8 palIdx, u8 y)
spriteSheet.size = 0x4A0; spriteSheet.size = 0x4A0;
spriteSheet.tag = tilesTag; spriteSheet.tag = tilesTag;
LoadCompressedSpriteSheet(&spriteSheet); LoadCompressedSpriteSheet(&spriteSheet);
LoadPalette(sMarkerPal, 0x100 + 16 * palIdx, 0x20); LoadPalette(sMarkerPal, OBJ_PLTT_ID(palIdx), sizeof(sMarkerPal));
// Get marker subsprites // Get marker subsprites
taskId = CreateTask(Task_ShowAreaMarkers, 0); taskId = CreateTask(Task_ShowAreaMarkers, 0);
+32 -32
View File
@@ -922,15 +922,15 @@ void DexScreen_LoadResources(void)
ChangeBgY(3, 0, 0); ChangeBgY(3, 0, 0);
gPaletteFade.bufferTransferDisabled = TRUE; gPaletteFade.bufferTransferDisabled = TRUE;
if (natDex) if (natDex)
LoadPalette(sNationalDexPalette, 0, 0x200); LoadPalette(sNationalDexPalette, BG_PLTT_ID(0), sizeof(sNationalDexPalette));
else else
LoadPalette(sKantoDexPalette, 0, 0x200); LoadPalette(sKantoDexPalette, BG_PLTT_ID(0), sizeof(sKantoDexPalette));
FillBgTilemapBufferRect(3, 0x001, 0, 0, 32, 32, 0x00); FillBgTilemapBufferRect(3, 0x001, 0, 0, 32, 32, 0);
FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 17);
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
FillBgTilemapBufferRect(0, 0x003, 0, 0, 32, 2, 0x0F); FillBgTilemapBufferRect(0, 0x003, 0, 0, 32, 2, 15);
FillBgTilemapBufferRect(0, 0x000, 0, 2, 32, 16, 0x11); FillBgTilemapBufferRect(0, 0x000, 0, 2, 32, 16, 17);
FillBgTilemapBufferRect(0, 0x003, 0, 18, 32, 2, 0x0F); FillBgTilemapBufferRect(0, 0x003, 0, 18, 32, 2, 15);
} }
void CB2_OpenPokedexFromStartMenu(void) void CB2_OpenPokedexFromStartMenu(void)
@@ -1124,9 +1124,9 @@ static void Task_PokedexScreen(u8 taskId)
static void DexScreen_InitGfxForTopMenu(void) static void DexScreen_InitGfxForTopMenu(void)
{ {
struct ListMenuTemplate listMenuTemplate; struct ListMenuTemplate listMenuTemplate;
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00); FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0);
FillBgTilemapBufferRect(2, 0x000, 0, 0, 30, 20, 0x11); FillBgTilemapBufferRect(2, 0x000, 0, 0, 30, 20, 17);
FillBgTilemapBufferRect(1, 0x000, 0, 0, 30, 20, 0x11); FillBgTilemapBufferRect(1, 0x000, 0, 0, 30, 20, 17);
sPokedexScreenData->modeSelectWindowId = AddWindow(&sWindowTemplate_ModeSelect); sPokedexScreenData->modeSelectWindowId = AddWindow(&sWindowTemplate_ModeSelect);
sPokedexScreenData->selectionIconWindowId = AddWindow(&sWindowTemplate_SelectionIcon); sPokedexScreenData->selectionIconWindowId = AddWindow(&sWindowTemplate_SelectionIcon);
sPokedexScreenData->dexCountsWindowId = AddWindow(&sWindowTemplate_DexCounts); sPokedexScreenData->dexCountsWindowId = AddWindow(&sWindowTemplate_DexCounts);
@@ -1177,12 +1177,12 @@ static void MoveCursorFunc_DexModeSelect(s32 itemIndex, bool8 onInit, struct Lis
if (itemIndex == LIST_CANCEL) if (itemIndex == LIST_CANCEL)
{ {
CopyToWindowPixelBuffer(sPokedexScreenData->selectionIconWindowId, sTopMenuSelectionIconTiles_Cancel, 0x000, 0x000); CopyToWindowPixelBuffer(sPokedexScreenData->selectionIconWindowId, sTopMenuSelectionIconTiles_Cancel, 0x000, 0x000);
LoadPalette(sTopMenuSelectionIconPals_Cancel, 0x10, 0x20); LoadPalette(sTopMenuSelectionIconPals_Cancel, BG_PLTT_ID(1), PLTT_SIZE_4BPP);
} }
else else
{ {
CopyToWindowPixelBuffer(sPokedexScreenData->selectionIconWindowId, sTopMenuSelectionIconGfxPtrs[itemIndex].tiles, 0x000, 0x000); 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); PutWindowTilemap(sPokedexScreenData->selectionIconWindowId);
CopyWindowToVram(sPokedexScreenData->selectionIconWindowId, COPYWIN_GFX); CopyWindowToVram(sPokedexScreenData->selectionIconWindowId, COPYWIN_GFX);
@@ -1201,8 +1201,8 @@ static void Task_DexScreen_NumericalOrder(u8 taskId)
switch (sPokedexScreenData->state) switch (sPokedexScreenData->state)
{ {
case 0: case 0:
ListMenuLoadStdPalAt(0x10, 0); ListMenuLoadStdPalAt(BG_PLTT_ID(1), 0);
ListMenuLoadStdPalAt(0x20, 1); ListMenuLoadStdPalAt(BG_PLTT_ID(2), 1);
sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId); sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId);
sPokedexScreenData->state = 2; sPokedexScreenData->state = 2;
break; break;
@@ -1266,8 +1266,8 @@ static void Task_DexScreen_NumericalOrder(u8 taskId)
static void DexScreen_InitGfxForNumericalOrderList(void) static void DexScreen_InitGfxForNumericalOrderList(void)
{ {
struct ListMenuTemplate template; struct ListMenuTemplate template;
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00); FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0);
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu); sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu);
template = sListMenuTemplate_OrderedListMenu; template = sListMenuTemplate_OrderedListMenu;
template.items = sPokedexScreenData->listItems; template.items = sPokedexScreenData->listItems;
@@ -1287,8 +1287,8 @@ static void Task_DexScreen_CharacteristicOrder(u8 taskId)
switch (sPokedexScreenData->state) switch (sPokedexScreenData->state)
{ {
case 0: case 0:
ListMenuLoadStdPalAt(0x10, 0); ListMenuLoadStdPalAt(BG_PLTT_ID(1), 0);
ListMenuLoadStdPalAt(0x20, 1); ListMenuLoadStdPalAt(BG_PLTT_ID(2), 1);
sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId); sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId);
sPokedexScreenData->state = 2; sPokedexScreenData->state = 2;
break; break;
@@ -1352,8 +1352,8 @@ static void Task_DexScreen_CharacteristicOrder(u8 taskId)
static void DexScreen_CreateCharacteristicListMenu(void) static void DexScreen_CreateCharacteristicListMenu(void)
{ {
struct ListMenuTemplate template; struct ListMenuTemplate template;
FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00); FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0);
FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17);
sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu); sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu);
template = sListMenuTemplate_OrderedListMenu; template = sListMenuTemplate_OrderedListMenu;
template.items = sPokedexScreenData->listItems; template.items = sPokedexScreenData->listItems;
@@ -2405,10 +2405,10 @@ static void DexScreen_CreateCategoryPageSelectionCursor(u8 cursorPos)
{ {
for (i = 0; i < 4; i++) for (i = 0; i < 4; i++)
{ {
LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x52 + 0x10 * i, 2); LoadPalette(&sDexScreen_CategoryCursorPals[0], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
LoadPalette(&sDexScreen_CategoryCursorPals[1], 0x58 + 0x10 * i, 2); 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; sPokedexScreenData->categoryPageSelectionCursorTimer = 0;
} }
else else
@@ -2421,16 +2421,16 @@ static void DexScreen_CreateCategoryPageSelectionCursor(u8 cursorPos)
{ {
if (i == cursorPos) if (i == cursorPos)
{ {
LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], 0x52 + 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], 0x58 + 0x10 * i, 2); LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 3], PLTT_ID(i) + PLTT_ID(5) + 8 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
} }
else else
{ {
LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x52 + 0x10 * i, 2); LoadPalette(&sDexScreen_CategoryCursorPals[0], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1));
LoadPalette(&sDexScreen_CategoryCursorPals[1], 0x58 + 0x10 * i, 2); 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 // Draw the mon icon
FillWindowPixelBuffer(sPokedexScreenData->windowIds[11], PIXEL_FILL(0)); 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); ListMenu_DrawMonIconGraphics(sPokedexScreenData->windowIds[11], species, DexScreen_GetDefaultPersonality(species), 0, 0);
PutWindowTilemap(sPokedexScreenData->windowIds[11]); PutWindowTilemap(sPokedexScreenData->windowIds[11]);
CopyWindowToVram(sPokedexScreenData->windowIds[11], COPYWIN_GFX); CopyWindowToVram(sPokedexScreenData->windowIds[11], COPYWIN_GFX);
@@ -3087,7 +3087,7 @@ u8 DexScreen_DrawMonAreaPage(void)
// Type icons // Type icons
FillWindowPixelBuffer(sPokedexScreenData->windowIds[12], PIXEL_FILL(0)); FillWindowPixelBuffer(sPokedexScreenData->windowIds[12], PIXEL_FILL(0));
ListMenuLoadStdPalAt(176, 1); ListMenuLoadStdPalAt(BG_PLTT_ID(11), 1);
if (monIsCaught) if (monIsCaught)
{ {
@@ -3100,7 +3100,7 @@ u8 DexScreen_DrawMonAreaPage(void)
// Show size comparison // Show size comparison
ResetAllPicSprites(); ResetAllPicSprites();
LoadPalette(sPalette_Silhouette, 288, 32); LoadPalette(sPalette_Silhouette, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP);
if (monIsCaught) if (monIsCaught)
{ {
+6 -6
View File
@@ -1126,7 +1126,7 @@ void DestroyMonIcon(struct Sprite *sprite)
void LoadMonIconPalettes(void) void LoadMonIconPalettes(void)
{ {
u8 i; u8 i;
for (i = 0; i < NELEMS(gMonIconPaletteTable); i++) for (i = 0; i < ARRAY_COUNT(gMonIconPaletteTable); i++)
LoadSpritePalette(&gMonIconPaletteTable[i]); LoadSpritePalette(&gMonIconPaletteTable[i]);
} }
@@ -1151,7 +1151,7 @@ void LoadMonIconPalette(u16 species)
void FreeMonIconPalettes(void) void FreeMonIconPalettes(void)
{ {
u8 i; u8 i;
for (i = 0; i < 6; i++) for (i = 0; i < ARRAY_COUNT(gMonIconPaletteTable); i++)
FreeSpritePaletteByTag(gMonIconPaletteTable[i].tag); FreeSpritePaletteByTag(gMonIconPaletteTable[i].tag);
} }
@@ -1179,12 +1179,12 @@ void SpriteCB_MonIcon(struct Sprite *sprite)
void LoadMonIconPalettesAt(u16 offset) void LoadMonIconPalettesAt(u16 offset)
{ {
int i; 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); LoadPalette(gMonIconPaletteTable[i].data, offset, PLTT_SIZE_4BPP);
offset += 0x10; offset += 16;
} }
} }
} }
+10 -10
View File
@@ -3039,22 +3039,22 @@ static void LoadPokeJumpGfx(void)
ResetTempTileDataBuffers(); ResetTempTileDataBuffers();
LoadSpriteSheetsAndPalettes(sPokemonJumpGfx); LoadSpriteSheetsAndPalettes(sPokemonJumpGfx);
InitDigitPrinters(); 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_Gfx, 0, 0, 0);
DecompressAndCopyTileDataToVram(BG_SCENERY, sBg_Tilemap, 0, 0, 1); 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_Gfx, 0, 0, 0);
DecompressAndCopyTileDataToVram(BG_VENUSAUR, sVenusaur_Tilemap, 0, 0, 1); 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_Gfx, 0, 0, 0);
DecompressAndCopyTileDataToVram(BG_BONUSES, sBonuses_Tilemap, 0, 0, 1); 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); SetBgTilemapBuffer(BG_INTERFACE, sPokemonJumpGfx->tilemapBuffer);
FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 0x20, 0x20); FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 0x20, 0x20);
PrintScoreSuffixes(); PrintScoreSuffixes();
PrintScore(0); PrintScore(0);
LoadStdWindowGfxOnBg(0, 1, 0xE0); LoadStdWindowGfxOnBg(0, 1, BG_PLTT_ID(14));
LoadUserWindowGfx2(0, 0x00A, 0xD0); LoadUserWindowGfx2(0, 0x00A, BG_PLTT_ID(13));
CopyBgTilemapBufferToVram(BG_INTERFACE); CopyBgTilemapBufferToVram(BG_INTERFACE);
CopyBgTilemapBufferToVram(BG_VENUSAUR); CopyBgTilemapBufferToVram(BG_VENUSAUR);
CopyBgTilemapBufferToVram(BG_BONUSES); CopyBgTilemapBufferToVram(BG_BONUSES);
@@ -3472,7 +3472,7 @@ static u32 AddMessageWindow(u32 left, u32 top, u32 width, u32 height)
window.tilemapTop = top; window.tilemapTop = top;
window.width = width; window.width = width;
window.height = height; window.height = height;
window.paletteNum = 0xF; window.paletteNum = 15;
window.baseBlock = 0x43; window.baseBlock = 0x43;
windowId = AddWindow(&window); windowId = AddWindow(&window);
@@ -3493,7 +3493,7 @@ static void CreatePokeJumpYesNoMenu(u16 left, u16 top, u8 cursorPos)
window.paletteNum = 2; window.paletteNum = 2;
window.baseBlock = 0x2B; 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 // "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[1] = records->bestJumpScore;
recordNums[2] = records->excellentsInRow; recordNums[2] = records->excellentsInRow;
LoadStdWindowGfx(windowId, 0x21D, 0xD0); LoadStdWindowGfx(windowId, 0x21D, BG_PLTT_ID(13));
DrawTextBorderOuter(windowId, 0x21D, 0xD); DrawTextBorderOuter(windowId, 0x21D, 13);
FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
AddTextPrinterParameterized5(windowId, FONT_NORMAL, gText_PkmnJumpRecords, 0, 0, TEXT_SKIP_DRAW, NULL, 1, 0); AddTextPrinterParameterized5(windowId, FONT_NORMAL, gText_PkmnJumpRecords, 0, 0, TEXT_SKIP_DRAW, NULL, 1, 0);
for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++) for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++)
+5 -5
View File
@@ -341,7 +341,7 @@ void InitPokemonSpecialAnimScene(struct PokemonSpecialAnimScene * buffer, u16 an
FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 32, 32); FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 32, 32);
LoadBgGfxByAnimType(animType); LoadBgGfxByAnimType(animType);
FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(0, PIXEL_FILL(0));
LoadUserWindowGfx(0, 0x000, 0xe0); LoadUserWindowGfx(0, 0x000, BG_PLTT_ID(14));
CopyWindowToVram(0, COPYWIN_FULL); CopyWindowToVram(0, COPYWIN_FULL);
ShowBg(0); ShowBg(0);
ShowBg(3); ShowBg(3);
@@ -370,7 +370,7 @@ void PSA_ShowMessageWindow(void)
{ {
PutWindowTilemap(0); PutWindowTilemap(0);
FillWindowPixelBuffer(0, PIXEL_FILL(1)); FillWindowPixelBuffer(0, PIXEL_FILL(1));
DrawTextBorderOuter(0, 0x001, 0xE); DrawTextBorderOuter(0, 0x001, 14);
CopyWindowToVram(0, COPYWIN_FULL); CopyWindowToVram(0, COPYWIN_FULL);
} }
@@ -612,7 +612,7 @@ bool8 PSA_LevelUpVerticalSpritesTaskIsRunning(void)
// Unused // Unused
void PSA_DrawLevelUpWindowPg1(u16 *statsBefore, u16 *statsAfter) 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); DrawLevelUpWindowPg1(1, statsBefore, statsAfter, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY);
PutWindowTilemap(1); PutWindowTilemap(1);
CopyWindowToVram(1, COPYWIN_FULL); CopyWindowToVram(1, COPYWIN_FULL);
@@ -636,9 +636,9 @@ static void LoadBgGfxByAnimType(u16 animType)
CopyToBgTilemapBuffer(3, sBg_Tilemap, 0, 0x000); CopyToBgTilemapBuffer(3, sBg_Tilemap, 0, 0x000);
DecompressAndCopyTileDataToVram(3, sBg_Gfx, 0, 0x000, 0); DecompressAndCopyTileDataToVram(3, sBg_Gfx, 0, 0x000, 0);
if (animType != 4) if (animType != 4)
LoadPalette(sBg_Pal, 0x00, 0x20); LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal));
else else
LoadPalette(sBg_TmHm_Pal, 0x00, 0x20); LoadPalette(sBg_TmHm_Pal, BG_PLTT_ID(0), sizeof(sBg_TmHm_Pal));
} }
void PSA_CreateMonSpriteAtCloseness(u8 closeness) void PSA_CreateMonSpriteAtCloseness(u8 closeness)
+8 -8
View File
@@ -1205,9 +1205,9 @@ static void LoadWallpaperGfx(u8 boxId, s8 direction)
DrawWallpaper(gStorage->wallpaperBgTilemapBuffer, gStorage->wallpaperTilemap, gStorage->wallpaperLoadDir, gStorage->wallpaperOffset); DrawWallpaper(gStorage->wallpaperBgTilemapBuffer, gStorage->wallpaperTilemap, gStorage->wallpaperLoadDir, gStorage->wallpaperOffset);
if (gStorage->wallpaperLoadDir != 0) 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 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); DecompressAndLoadBgGfxUsingHeap(2, wallpaper->tiles, 0, 256 * gStorage->wallpaperOffset, 0);
@@ -1281,12 +1281,12 @@ static void InitBoxTitle(u8 boxId)
gStorage->wallpaperPalBits = 0x3F0; gStorage->wallpaperPalBits = 0x3F0;
tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE);
gStorage->boxTitlePalOffset = 0x10e + 16 * tagIndex; gStorage->boxTitlePalOffset = OBJ_PLTT_ID(tagIndex) + 14;
gStorage->wallpaperPalBits |= 0x10000 << tagIndex; gStorage->wallpaperPalBits |= (1 << 16) << tagIndex;
tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE);
gStorage->boxTitleAltPalOffset = 0x10e + 16 * tagIndex; gStorage->boxTitleAltPalOffset = OBJ_PLTT_ID(tagIndex) + 14;
gStorage->wallpaperPalBits |= 0x10000 << tagIndex; gStorage->wallpaperPalBits |= (1 << 16) << tagIndex;
StringCopyPadded(gStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8); StringCopyPadded(gStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8);
DrawTextWindowAndBufferTiles(gStorage->boxTitleText, gStorage->boxTitleTiles, 0, 0, gStorage->boxTitleUnused, 2); DrawTextWindowAndBufferTiles(gStorage->boxTitleText, gStorage->boxTitleTiles, 0, 0, gStorage->boxTitleUnused, 2);
@@ -1387,9 +1387,9 @@ static void CycleBoxTitleColor(void)
u8 boxId = StorageGetCurrentBox(); u8 boxId = StorageGetCurrentBox();
u8 wallpaperId = GetBoxWallpaper(boxId); u8 wallpaperId = GetBoxWallpaper(boxId);
if (gStorage->boxTitleCycleId == 0) if (gStorage->boxTitleCycleId == 0)
CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + gStorage->boxTitlePalOffset, 4); CpuCopy16(sBoxTitleColors[wallpaperId], &gPlttBufferUnfaded[gStorage->boxTitlePalOffset], PLTT_SIZEOF(2));
else else
CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + gStorage->boxTitleAltPalOffset, 4); CpuCopy16(sBoxTitleColors[wallpaperId], &gPlttBufferUnfaded[gStorage->boxTitleAltPalOffset], PLTT_SIZEOF(2));
} }
static s16 GetBoxTitleBaseX(const u8 *string) static s16 GetBoxTitleBaseX(const u8 *string)
+5 -6
View File
@@ -118,7 +118,7 @@ static bool8 MultiMove_Function_Start(void)
{ {
case 0: case 0:
HideBg(0); HideBg(0);
LoadMonIconPalettesAt(0x80); LoadMonIconPalettesAt(BG_PLTT_ID(8));
sMultiMove->state++; sMultiMove->state++;
break; break;
case 1: case 1:
@@ -167,7 +167,7 @@ static bool8 MultiMove_Function_Single(void)
if (!IsDma3ManagerBusyWithBgCopy()) if (!IsDma3ManagerBusyWithBgCopy())
{ {
SetCursorPriorityTo1(); SetCursorPriorityTo1();
LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
ShowBg(0); ShowBg(0);
return FALSE; return FALSE;
} }
@@ -273,7 +273,7 @@ static bool8 MultiMove_Function_PlaceMons(void)
case 3: case 3:
if (!IsDma3ManagerBusyWithBgCopy()) if (!IsDma3ManagerBusyWithBgCopy())
{ {
LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP);
SetCursorPriorityTo1(); SetCursorPriorityTo1();
ShowBg(0); ShowBg(0);
return FALSE; return FALSE;
@@ -703,8 +703,7 @@ void CreateItemIconSprites(void)
LoadCompressedSpriteSheet(&spriteSheet); LoadCompressedSpriteSheet(&spriteSheet);
gStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * TILE_SIZE_4BPP + (void *)(OBJ_VRAM0); 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 = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i);
gStorage->itemIcons[i].palIndex *= 16; gStorage->itemIcons[i].palIndex = OBJ_PLTT_ID(gStorage->itemIcons[i].palIndex);
gStorage->itemIcons[i].palIndex += 0x100;
spriteTemplate.tileTag = GFXTAG_ITEM_ICON_0 + i; spriteTemplate.tileTag = GFXTAG_ITEM_ICON_0 + i;
spriteTemplate.paletteTag = PALTAG_ITEM_ICON_0 + i; spriteTemplate.paletteTag = PALTAG_ITEM_ICON_0 + i;
spriteId = CreateSprite(&spriteTemplate, 0, 0, 11); 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); CpuFastCopy(gStorage->itemIconBuffer, gStorage->itemIcons[id].tiles, 0x200);
LZ77UnCompWram(itemPal, gStorage->itemIconBuffer); 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) static void SetItemIconAffineAnim(u8 id, u8 animNum)
+10 -10
View File
@@ -534,7 +534,7 @@ static void Task_InitPokeStorage(u8 taskId)
PutWindowTilemap(0); PutWindowTilemap(0);
ClearWindowTilemap(1); ClearWindowTilemap(1);
CpuFill32(0, (void *)VRAM, 0x200); CpuFill32(0, (void *)VRAM, 0x200);
LoadUserWindowGfx(1, 0xB, 0xE0); LoadUserWindowGfx(1, 0xB, BG_PLTT_ID(14));
break; break;
case 3: case 3:
ResetAllBgCoords(); ResetAllBgCoords();
@@ -2147,13 +2147,13 @@ static void LoadsMiscSpritePalette(void)
static void InitPalettesAndSprites(void) static void InitPalettesAndSprites(void)
{ {
LoadPalette(gPokeStorageInterface_Pal, 0, 0x20); LoadPalette(gPokeStorageInterface_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP);
LoadPalette(gPokeStorageInterface_NoDisplayMon_Pal, 0x20, 0x20); LoadPalette(gPokeStorageInterface_NoDisplayMon_Pal, BG_PLTT_ID(2), PLTT_SIZE_4BPP);
LoadPalette(sItemInfoFrame_Pal, 0xF0, 0x20); LoadPalette(sItemInfoFrame_Pal, BG_PLTT_ID(15), sizeof(sItemInfoFrame_Pal));
if (gStorage->boxOption != OPTION_MOVE_ITEMS) if (gStorage->boxOption != OPTION_MOVE_ITEMS)
LoadPalette(sScrollingBg_Pal, 0x30, sizeof(sScrollingBg_Pal)); LoadPalette(sScrollingBg_Pal, BG_PLTT_ID(3), sizeof(sScrollingBg_Pal));
else 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)); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(30));
CreateDisplayMonSprite(); CreateDisplayMonSprite();
@@ -2256,7 +2256,7 @@ static void CreateDisplayMonSprite(void)
break; break;
gStorage->displayMonSprite = &gSprites[spriteId]; gStorage->displayMonSprite = &gSprites[spriteId];
gStorage->displayMonPalOffset = palSlot * 16 + 0x100; gStorage->displayMonPalOffset = OBJ_PLTT_ID(palSlot);
gStorage->displayMonTilePtr = (void *)OBJ_VRAM0 + tileStart * 32; gStorage->displayMonTilePtr = (void *)OBJ_VRAM0 + tileStart * 32;
} while (FALSE); } while (FALSE);
@@ -2277,7 +2277,7 @@ static void LoadDisplayMonGfx(u16 species, u32 personality)
HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gStorage->tileBuffer, species, personality); HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gStorage->tileBuffer, species, personality);
LZ77UnCompWram(gStorage->displayMonPalette, gStorage->displayMonPalBuffer); LZ77UnCompWram(gStorage->displayMonPalette, gStorage->displayMonPalBuffer);
CpuCopy32(gStorage->tileBuffer, gStorage->displayMonTilePtr, 0x800); CpuCopy32(gStorage->tileBuffer, gStorage->displayMonTilePtr, 0x800);
LoadPalette(gStorage->displayMonPalBuffer, gStorage->displayMonPalOffset, 0x20); LoadPalette(gStorage->displayMonPalBuffer, gStorage->displayMonPalOffset, PLTT_SIZE_4BPP);
gStorage->displayMonSprite->invisible = FALSE; gStorage->displayMonSprite->invisible = FALSE;
} }
else else
@@ -2337,7 +2337,7 @@ static void UpdateWaveformAnimation(void)
static void InitSupplementalTilemaps(void) static void InitSupplementalTilemaps(void)
{ {
LZ77UnCompWram(gPokeStoragePartyMenu_Tilemap, gStorage->partyMenuTilemapBuffer); 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_PARTY_MENU, 1, gStorage->partyMenuTilemapBuffer, 12, 22);
TilemapUtil_SetTilemap(TILEMAP_CLOSE_BUTTON, 1, sCloseBoxButton_Tilemap, 9, 4); TilemapUtil_SetTilemap(TILEMAP_CLOSE_BUTTON, 1, sCloseBoxButton_Tilemap, 9, 4);
TilemapUtil_SetPos(TILEMAP_PARTY_MENU, 10, 0); TilemapUtil_SetPos(TILEMAP_PARTY_MENU, 10, 0);
@@ -2545,7 +2545,7 @@ static bool8 DoShowPartyMenu(void)
static void InitPokeStorageBg0(void) static void InitPokeStorageBg0(void)
{ {
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(29)); 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); FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17);
CopyBgTilemapBufferToVram(0); CopyBgTilemapBufferToVram(0);
} }
+12 -12
View File
@@ -2006,22 +2006,22 @@ static u8 PokeSum_HandleLoadBgGfx(void)
switch (sMonSummaryScreen->loadBgGfxStep) switch (sMonSummaryScreen->loadBgGfxStep)
{ {
case 0: 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) if (IsMonShiny(&sMonSummaryScreen->currentMon) == TRUE && !sMonSummaryScreen->isEgg)
{ {
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], 0, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], 0x10, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
} }
else else
{ {
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], 0, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], 0x10, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
} }
break; break;
case 1: case 1:
ListMenuLoadStdPalAt(0x60, 1); ListMenuLoadStdPalAt(BG_PLTT_ID(6), 1);
LoadPalette(sTextHeaderPalette, 0x70, 0x20); LoadPalette(sTextHeaderPalette, BG_PLTT_ID(7), PLTT_SIZE_4BPP);
break; break;
case 2: case 2:
ResetTempTileDataBuffers(); ResetTempTileDataBuffers();
@@ -2039,7 +2039,7 @@ static u8 PokeSum_HandleLoadBgGfx(void)
break; break;
default: default:
LoadPalette(sTextMovesPalette, 0x80, 0x20); LoadPalette(sTextMovesPalette, BG_PLTT_ID(8), PLTT_SIZE_4BPP);
return TRUE; return TRUE;
} }
@@ -5078,13 +5078,13 @@ static void Task_PokeSum_SwitchDisplayedPokemon(u8 taskId)
if (IsMonShiny(&sMonSummaryScreen->currentMon) == TRUE && !sMonSummaryScreen->isEgg) if (IsMonShiny(&sMonSummaryScreen->currentMon) == TRUE && !sMonSummaryScreen->isEgg)
{ {
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], 0, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], 0x10, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
} }
else else
{ {
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], 0, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], BG_PLTT_ID(0), PLTT_SIZE_4BPP);
LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], 0x10, 0x20); LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], BG_PLTT_ID(1), PLTT_SIZE_4BPP);
} }
sMonSummaryScreen->switchMonTaskState++; sMonSummaryScreen->switchMonTaskState++;
+9 -9
View File
@@ -459,7 +459,7 @@ void sub_8110FCC(void)
static bool8 FieldCB2_QuestLogStartPlaybackWithWarpExit(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); SetQuestLogState(QL_STATE_PLAYBACK);
FieldCB_DefaultWarpExit(); FieldCB_DefaultWarpExit();
sQuestLogCurrentScene = (struct UnkStruct_203AE94){}; sQuestLogCurrentScene = (struct UnkStruct_203AE94){};
@@ -469,7 +469,7 @@ static bool8 FieldCB2_QuestLogStartPlaybackWithWarpExit(void)
static bool8 FieldCB2_QuestLogStartPlaybackStandingInPlace(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); SetQuestLogState(QL_STATE_PLAYBACK);
FieldCB_WarpExitFadeFromBlack(); FieldCB_WarpExitFadeFromBlack();
sQuestLogCurrentScene = (struct UnkStruct_203AE94){}; sQuestLogCurrentScene = (struct UnkStruct_203AE94){};
@@ -1071,12 +1071,12 @@ void QuestLog_InitPalettesBackup(void)
void QuestLog_BackUpPalette(u16 offset, u16 size) 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) static bool8 FieldCB2_FinalScene(void)
{ {
LoadPalette(GetTextWindowPalette(4), 0xF0, 0x20); LoadPalette(GetTextWindowPalette(4), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
DrawPreviouslyOnQuestHeader(0); DrawPreviouslyOnQuestHeader(0);
FieldCB_WarpExitFadeFromBlack(); FieldCB_WarpExitFadeFromBlack();
CreateTask(Task_FinalScene_WaitFade, 0xFF); CreateTask(Task_FinalScene_WaitFade, 0xFF);
@@ -1199,8 +1199,8 @@ static bool8 sub_81121D8(u8 taskId)
if (data[1] > 15) if (data[1] > 15)
return TRUE; return TRUE;
CopyPaletteInvertedTint(gPlttBufferUnfaded + 0x01, gPlttBufferFaded + 0x01, 0xDF, 0x0F - data[1]); CopyPaletteInvertedTint(&gPlttBufferUnfaded[BG_PLTT_ID(0) + 1], &gPlttBufferFaded[BG_PLTT_ID(0) + 1], 0xDF, 0x0F - data[1]);
CopyPaletteInvertedTint(gPlttBufferUnfaded + 0x100, gPlttBufferFaded + 0x100, 0x100, 0x0F - data[1]); CopyPaletteInvertedTint(&gPlttBufferUnfaded[OBJ_PLTT_ID(0)], &gPlttBufferFaded[OBJ_PLTT_ID(0)], 0x100, 0x0F - data[1]);
FillWindowPixelRect(sQuestLogHeaderWindowIds[0], 0x00, 0, sQuestLogHeaderWindowTemplates[0].height * 8 - 1 - data[1], sQuestLogHeaderWindowTemplates[0].width * 8, 1); FillWindowPixelRect(sQuestLogHeaderWindowIds[0], 0x00, 0, sQuestLogHeaderWindowTemplates[0].height * 8 - 1 - data[1], sQuestLogHeaderWindowTemplates[0].width * 8, 1);
FillWindowPixelRect(sQuestLogHeaderWindowIds[1], 0x00, 0, data[1], sQuestLogHeaderWindowTemplates[1].width * 8, 1); FillWindowPixelRect(sQuestLogHeaderWindowIds[1], 0x00, 0, data[1], sQuestLogHeaderWindowTemplates[1].width * 8, 1);
CopyWindowToVram(sQuestLogHeaderWindowIds[0], COPYWIN_GFX); CopyWindowToVram(sQuestLogHeaderWindowIds[0], COPYWIN_GFX);
@@ -1214,9 +1214,9 @@ static void QL_SlightlyDarkenSomePals(void)
u16 *buffer = Alloc(PLTT_SIZE); u16 *buffer = Alloc(PLTT_SIZE);
CpuCopy16(sPalettesBackup, buffer, PLTT_SIZE); CpuCopy16(sPalettesBackup, buffer, PLTT_SIZE);
SlightlyDarkenPalsInWeather(sPalettesBackup, sPalettesBackup, 13 * 16); SlightlyDarkenPalsInWeather(sPalettesBackup, sPalettesBackup, 13 * 16);
SlightlyDarkenPalsInWeather(sPalettesBackup + 17 * 16, sPalettesBackup + 17 * 16, 1 * 16); SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(1)], &sPalettesBackup[OBJ_PLTT_ID(1)], 1 * 16);
SlightlyDarkenPalsInWeather(sPalettesBackup + 22 * 16, sPalettesBackup + 22 * 16, 4 * 16); SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(6)], &sPalettesBackup[OBJ_PLTT_ID(6)], 4 * 16);
SlightlyDarkenPalsInWeather(sPalettesBackup + 27 * 16, sPalettesBackup + 27 * 16, 5 * 16); SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(11)], &sPalettesBackup[OBJ_PLTT_ID(11)], 5 * 16);
CpuCopy16(sPalettesBackup, gPlttBufferUnfaded, PLTT_SIZE); CpuCopy16(sPalettesBackup, gPlttBufferUnfaded, PLTT_SIZE);
CpuCopy16(buffer, sPalettesBackup, PLTT_SIZE); CpuCopy16(buffer, sPalettesBackup, PLTT_SIZE);
Free(buffer); Free(buffer);
+21 -21
View File
@@ -961,8 +961,8 @@ static void TintMapEdgesPalette(void)
u16 mapEdgesPal[16]; u16 mapEdgesPal[16];
CpuCopy16(&sRegionMap_Pal[0x20], mapEdgesPal, sizeof(mapEdgesPal)); CpuCopy16(&sRegionMap_Pal[0x20], mapEdgesPal, sizeof(mapEdgesPal));
RegionMap_DarkenPalette(mapEdgesPal, NELEMS(mapEdgesPal), 95); RegionMap_DarkenPalette(mapEdgesPal, NELEMS(mapEdgesPal), 95);
LoadPalette(mapEdgesPal, 0x20, sizeof(mapEdgesPal)); LoadPalette(mapEdgesPal, BG_PLTT_ID(2), sizeof(mapEdgesPal));
LoadPalette(&sRegionMap_Pal[0x2F], 0x2F, sizeof(sRegionMap_Pal[0x2F])); LoadPalette(&sRegionMap_Pal[0x2F], BG_PLTT_ID(2) + 15, PLTT_SIZEOF(1));
} }
static void InitRegionMap(u8 type) static void InitRegionMap(u8 type)
@@ -1105,18 +1105,18 @@ static bool8 LoadRegionMapGfx(void)
switch (sRegionMap->loadGfxState) switch (sRegionMap->loadGfxState)
{ {
case 0: case 0:
LoadPalette(sTopBar_Pal, 0xC0, sizeof(sTopBar_Pal)); LoadPalette(sTopBar_Pal, BG_PLTT_ID(12), sizeof(sTopBar_Pal));
break; break;
case 1: case 1:
LoadPalette(sRegionMap_Pal, 0, sizeof(sRegionMap_Pal)); LoadPalette(sRegionMap_Pal, 0, sizeof(sRegionMap_Pal));
TintMapEdgesPalette(); TintMapEdgesPalette();
if (sRegionMap->type != REGIONMAP_TYPE_NORMAL) if (sRegionMap->type != REGIONMAP_TYPE_NORMAL)
{ {
LoadPalette(&sTopBar_Pal[15], 16 * 0, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(0), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 1, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(1), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 2, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(2), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 3, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(3), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 4, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(4), sizeof(sTopBar_Pal[15]));
} }
break; break;
case 2: case 2:
@@ -1972,7 +1972,7 @@ static bool8 LoadMapPreviewGfx(void)
LoadBgTiles(2, sDungeonMapPreview->tiles, sizeof(sDungeonMapPreview->tiles), 0); LoadBgTiles(2, sDungeonMapPreview->tiles, sizeof(sDungeonMapPreview->tiles), 0);
break; break;
case 3: case 3:
LoadPalette(sDungeonMapPreview->mapPreviewInfo->palptr, 0xD0, 0x60); LoadPalette(sDungeonMapPreview->mapPreviewInfo->palptr, BG_PLTT_ID(13), 3 * PLTT_SIZE_4BPP);
break; break;
default: default:
return TRUE; return TRUE;
@@ -2073,7 +2073,7 @@ static void Task_DrawDungeonMapPreviewFlavorText(u8 taskId)
sDungeonMapPreview->blue -= 5; sDungeonMapPreview->blue -= 5;
CpuCopy16(sDungeonMapPreview->mapPreviewInfo->palptr, sDungeonMapPreview->palette, 0x60); CpuCopy16(sDungeonMapPreview->mapPreviewInfo->palptr, sDungeonMapPreview->palette, 0x60);
TintPalette_CustomTone(sDungeonMapPreview->palette, 48, sDungeonMapPreview->red, sDungeonMapPreview->green, sDungeonMapPreview->blue); 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++; sDungeonMapPreview->timer++;
break; break;
@@ -2416,19 +2416,19 @@ static void Task_MapOpenAnim(u8 taskId)
sMapOpenCloseAnim->openState++; sMapOpenCloseAnim->openState++;
break; break;
case 10: case 10:
LoadPalette(&sTopBar_Pal[15], 16 * 0, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(0), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 1, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(1), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 2, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(2), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 3, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(3), sizeof(sTopBar_Pal[15]));
LoadPalette(&sTopBar_Pal[15], 16 * 4, sizeof(sTopBar_Pal[15])); LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(4), sizeof(sTopBar_Pal[15]));
sMapOpenCloseAnim->openState++; sMapOpenCloseAnim->openState++;
break; break;
case 11: case 11:
FillBgTilemapBufferRect(1, 0x002, 0, 1, 1, 1, 0x2); FillBgTilemapBufferRect(1, 0x002, 0, 1, 1, 1, 2);
FillBgTilemapBufferRect(1, 0x003, 1, 1, 1, 1, 0x2); FillBgTilemapBufferRect(1, 0x003, 1, 1, 1, 1, 2);
FillBgTilemapBufferRect(1, 0x03E, 28, 1, 1, 1, 0x2); FillBgTilemapBufferRect(1, 0x03E, 28, 1, 1, 1, 2);
FillBgTilemapBufferRect(1, 0x03F, 29, 1, 1, 1, 0x2); FillBgTilemapBufferRect(1, 0x03F, 29, 1, 1, 1, 2);
FillBgTilemapBufferRect(1, 0x03D, 2, 1, 26, 1, 0x2); FillBgTilemapBufferRect(1, 0x03D, 2, 1, 26, 1, 2);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
m4aSongNumStop(SE_CARD_OPEN); m4aSongNumStop(SE_CARD_OPEN);
PlaySE(SE_ROTATING_GATE); PlaySE(SE_ROTATING_GATE);
@@ -2569,7 +2569,7 @@ static void Task_MapCloseAnim(u8 taskId)
sMapOpenCloseAnim->closeState++; sMapOpenCloseAnim->closeState++;
break; break;
case 2: case 2:
LoadPalette(sRegionMap_Pal, 0, sizeof(sRegionMap_Pal)); LoadPalette(sRegionMap_Pal, BG_PLTT_ID(0), sizeof(sRegionMap_Pal));
sMapOpenCloseAnim->closeState++; sMapOpenCloseAnim->closeState++;
break; break;
case 3: case 3:
+5 -3
View File
@@ -1137,6 +1137,8 @@ void Task_WaitMuseumFossilPic(u8 taskId)
} }
} }
#define FOSSIL_PIC_PAL_NUM 13
bool8 OpenMuseumFossilPic(void) bool8 OpenMuseumFossilPic(void)
{ {
u8 spriteId; u8 spriteId;
@@ -1148,19 +1150,19 @@ bool8 OpenMuseumFossilPic(void)
if (gSpecialVar_0x8004 == SPECIES_KABUTOPS) if (gSpecialVar_0x8004 == SPECIES_KABUTOPS)
{ {
LoadSpriteSheets(sMuseumKabutopsSprSheets); LoadSpriteSheets(sMuseumKabutopsSprSheets);
LoadPalette(sMuseumKabutopsSprPalette, 0x1D0, 0x20); LoadPalette(sMuseumKabutopsSprPalette, OBJ_PLTT_ID(FOSSIL_PIC_PAL_NUM), sizeof(sMuseumKabutopsSprPalette));
} }
else if (gSpecialVar_0x8004 == SPECIES_AERODACTYL) else if (gSpecialVar_0x8004 == SPECIES_AERODACTYL)
{ {
LoadSpriteSheets(sMuseumAerodactylSprSheets); LoadSpriteSheets(sMuseumAerodactylSprSheets);
LoadPalette(sMuseumAerodactylSprPalette, 0x1D0, 0x20); LoadPalette(sMuseumAerodactylSprPalette, OBJ_PLTT_ID(FOSSIL_PIC_PAL_NUM), sizeof(sMuseumAerodactylSprPalette));
} }
else else
{ {
return FALSE; return FALSE;
} }
spriteId = CreateSprite(&sMuseumFossilSprTemplate, gSpecialVar_0x8005 * 8 + 40, gSpecialVar_0x8006 * 8 + 40, 0); 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); taskId = CreateTask(Task_WaitMuseumFossilPic, 80);
gTasks[taskId].tWindowId = CreateWindowFromRect(gSpecialVar_0x8005, gSpecialVar_0x8006, 8, 8); gTasks[taskId].tWindowId = CreateWindowFromRect(gSpecialVar_0x8005, gSpecialVar_0x8006, 8, 8);
gTasks[taskId].tState = 0; gTasks[taskId].tState = 0;
+2 -6
View File
@@ -204,15 +204,11 @@ static void CB2_SetUpSeagallopScene(void)
case 3: case 3:
LoadBgTiles(3, sWaterTiles, sizeof(sWaterTiles), 0); LoadBgTiles(3, sWaterTiles, sizeof(sWaterTiles), 0);
if (GetDirectionOfTravel() == DIRN_EASTBOUND) if (GetDirectionOfTravel() == DIRN_EASTBOUND)
{
CopyToBgTilemapBufferRect(3, sWaterTilemap_EB, 0, 0, 32, 32); CopyToBgTilemapBufferRect(3, sWaterTilemap_EB, 0, 0, 32, 32);
}
else else
{
CopyToBgTilemapBufferRect(3, sWaterTilemap_WB, 0, 0, 32, 32); CopyToBgTilemapBufferRect(3, sWaterTilemap_WB, 0, 0, 32, 32);
} LoadPalette(sWaterPal, BG_PLTT_ID(4), sizeof(sWaterPal));
LoadPalette(sWaterPal, 0x40, 0x20); LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP);
LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20);
gMain.state++; gMain.state++;
break; break;
case 4: case 4:

Some files were not shown because too many files have changed in this diff Show More