mirror of
https://github.com/pret/pokepinballrs.git
synced 2026-09-09 20:06:30 -05:00
Pal IX consts for main boards
This commit is contained in:
44
data/rom_2.s
44
data/rom_2.s
@@ -9128,7 +9128,7 @@ gMainRightFlipperSpriteSet:: @ 0x086B1602
|
||||
|
||||
gMainBoardBallSpriteSet:: @ 0x086B160C
|
||||
.2byte 1
|
||||
packed_sprite_oaml x=0x0, y=0x0, mosaic=0x1, spriteSize=SPRITE_SIZE_16x16, tileNum=0x20, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x0, y=0x0, mosaic=0x1, spriteSize=SPRITE_SIZE_16x16, tileNum=0x20, paletteNum=PAL_IX_BALL
|
||||
|
||||
gPikachuKickbackSpriteSet:: @ 0x086B1616
|
||||
.2byte 2
|
||||
@@ -9251,7 +9251,7 @@ gMainBoardHatchEggSprite:: @ 0x086B1846
|
||||
|
||||
gBallUpgradeFxSpriteSet:: @ 0x086B1858
|
||||
.2byte 1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_32x32, tileNum=0xf7, priority=0x3, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_32x32, tileNum=0xf7, priority=0x3, paletteNum=PAL_IX_BALL
|
||||
|
||||
gSpoinkLauncherSpriteSet:: @ 0x086B1862
|
||||
.2byte 3
|
||||
@@ -9577,26 +9577,26 @@ gCatchBurstPanelElectrifyFxSpriteSet:: @ 0x086B1DA2
|
||||
|
||||
gMonCatchBallAbsorbPokemonFxSpriteSet:: @ 0x086B1DC4
|
||||
.2byte 16
|
||||
packed_sprite_oaml x=0xA, y=0x18, spriteSize=SPRITE_SIZE_16x32, tileNum=0x396, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0xA, y=0x38, spriteSize=SPRITE_SIZE_8x8, tileNum=0x39e, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0x5, y=0x20, spriteSize=SPRITE_SIZE_16x32, hFlip=0x1, vFlip=0x1, tileNum=0x396, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x3, y=0x18, spriteSize=SPRITE_SIZE_8x8, hFlip=0x1, vFlip=0x1, tileNum=0x39e, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x6, y=0x26, spriteSize=SPRITE_SIZE_32x32, hFlip=0x1, tileNum=0x362, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0x2, y=0x16, spriteSize=SPRITE_SIZE_32x16, hFlip=0x1, tileNum=0x372, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0x12, y=0x36, spriteSize=SPRITE_SIZE_8x8, hFlip=0x1, tileNum=0x37f, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0xA, y=0x26, spriteSize=SPRITE_SIZE_16x32, hFlip=0x1, tileNum=0x380, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0xA, y=0x16, spriteSize=SPRITE_SIZE_8x16, hFlip=0x1, tileNum=0x388, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0x2, y=0x46, spriteSize=SPRITE_SIZE_32x8, hFlip=0x1, tileNum=0x38a, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0xA, y=0x46, spriteSize=SPRITE_SIZE_8x8, hFlip=0x1, tileNum=0x38e, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0x2, y=0x6, spriteSize=SPRITE_SIZE_16x8, tileNum=0x38f, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0xA, y=0xE, spriteSize=SPRITE_SIZE_32x8, tileNum=0x391, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=-0x1, y=-0x4, spriteSize=SPRITE_SIZE_16x16, tileNum=0x33b, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x7, y=0xC, spriteSize=SPRITE_SIZE_16x8, tileNum=0x341, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0xF, y=-0x4, spriteSize=SPRITE_SIZE_8x16, tileNum=0x33f, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0xA, y=0x18, spriteSize=SPRITE_SIZE_16x32, tileNum=0x396, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=0xA, y=0x38, spriteSize=SPRITE_SIZE_8x8, tileNum=0x39e, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0x5, y=0x20, spriteSize=SPRITE_SIZE_16x32, hFlip=0x1, vFlip=0x1, tileNum=0x396, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=0x3, y=0x18, spriteSize=SPRITE_SIZE_8x8, hFlip=0x1, vFlip=0x1, tileNum=0x39e, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=0x6, y=0x26, spriteSize=SPRITE_SIZE_32x32, hFlip=0x1, tileNum=0x362, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0x2, y=0x16, spriteSize=SPRITE_SIZE_32x16, hFlip=0x1, tileNum=0x372, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0x12, y=0x36, spriteSize=SPRITE_SIZE_8x8, hFlip=0x1, tileNum=0x37f, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0xA, y=0x26, spriteSize=SPRITE_SIZE_16x32, hFlip=0x1, tileNum=0x380, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0xA, y=0x16, spriteSize=SPRITE_SIZE_8x16, hFlip=0x1, tileNum=0x388, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0x2, y=0x46, spriteSize=SPRITE_SIZE_32x8, hFlip=0x1, tileNum=0x38a, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0xA, y=0x46, spriteSize=SPRITE_SIZE_8x8, hFlip=0x1, tileNum=0x38e, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0x2, y=0x6, spriteSize=SPRITE_SIZE_16x8, tileNum=0x38f, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0xA, y=0xE, spriteSize=SPRITE_SIZE_32x8, tileNum=0x391, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=-0x1, y=-0x4, spriteSize=SPRITE_SIZE_16x16, tileNum=0x33b, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=0x7, y=0xC, spriteSize=SPRITE_SIZE_16x8, tileNum=0x341, paletteNum=PAL_IX_BALL
|
||||
packed_sprite_oaml x=0xF, y=-0x4, spriteSize=SPRITE_SIZE_8x16, tileNum=0x33f, paletteNum=PAL_IX_BALL
|
||||
|
||||
gMonCatchBallTrailSpriteSet:: @ 0x086B1E46
|
||||
.2byte 1
|
||||
packed_sprite_oaml x=0x0, y=0x0, objMode=ST_OAM_OBJ_BLEND, spriteSize=SPRITE_SIZE_16x16, tileNum=0x20, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x0, y=0x0, objMode=ST_OAM_OBJ_BLEND, spriteSize=SPRITE_SIZE_16x16, tileNum=0x20, paletteNum=PAL_IX_BALL
|
||||
|
||||
gMainModeStartBannerSpriteSet:: @ 0x086B1E50
|
||||
.2byte 15
|
||||
@@ -15417,7 +15417,7 @@ gBonusBoardRightFlipperSpriteSet:: @ 0x086BA176
|
||||
|
||||
gBonusBoardBallSpriteSet:: @ 0x086BA180
|
||||
.2byte 1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_16x16, tileNum=0x20, priority=0x1, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_16x16, tileNum=0x20, priority=0x1, paletteNum=PAL_IX_BALL
|
||||
|
||||
gBonusBoardPausePanelSpriteSet:: @ 0x086BA18A
|
||||
.2byte 11
|
||||
@@ -15446,7 +15446,7 @@ gBonusBoardPauseBottomBorderSpriteSet:: @ 0x086BA1F6
|
||||
|
||||
gBonusBoardBallRespawnFxSpriteSet:: @ 0x086BA210
|
||||
.2byte 1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_32x32, tileNum=0x39, priority=0x1, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_32x32, tileNum=0x39, priority=0x1, paletteNum=PAL_IX_BALL
|
||||
|
||||
gDusclopsBoardDuskullEntity0SpriteSet:: @ 0x086BA21A
|
||||
.2byte 2
|
||||
@@ -15586,7 +15586,7 @@ gKecleonReflectionHeadSpriteSet:: @ 0x086BA3F6
|
||||
|
||||
gKecleonReflectionBallSpriteSet:: @ 0x086BA408
|
||||
.2byte 1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_16x16, vFlip=0x1, tileNum=0x20, priority=0x3, paletteNum=PAL_IX_1
|
||||
packed_sprite_oaml x=0x0, y=0x0, spriteSize=SPRITE_SIZE_16x16, vFlip=0x1, tileNum=0x20, priority=0x3, paletteNum=PAL_IX_BALL
|
||||
|
||||
gKecleonBallRippleFxSpriteSet:: @ 0x086BA412
|
||||
.2byte 4
|
||||
|
||||
@@ -18,4 +18,68 @@
|
||||
#define PAL_IX_14 14
|
||||
#define PAL_IX_15 15
|
||||
|
||||
// Named OBJ Pals
|
||||
#define PAL_IX_DIMMING_BASE_0 0 // single pal
|
||||
#define PAL_IX_FLIPPERS 0
|
||||
#define PAL_IX_HATCH_MACHINE_SPARKLE 0
|
||||
#define PAL_IX_BALL 1
|
||||
#define PAL_IX_CAPTURE_CUTSCENE_FX 1
|
||||
#define PAL_IX_CENTER_GRAVITY_FX 1
|
||||
#define PAL_IX_PORTRAIT_BORDER 1
|
||||
#define PAL_IX_DIMMING_BASE_2 2 // of 7 pal on ruby, 6 pal on sapphire; (avoids shop sign)
|
||||
#define PAL_IX_WAILMER 2
|
||||
#define PAL_IX_RUBY_SHOP_SIGN 2
|
||||
#define PAL_IX_CHIKORITA 3
|
||||
#define PAL_IX_CHIKORITA_BLADE_FX 3
|
||||
#define PAL_IX_CYNDAQUIL 3
|
||||
#define PAL_IX_CHARGE_SPINNER 3
|
||||
#define PAL_IX_PIKA_KICKBACK 3
|
||||
#define PAL_IX_MAKUHITA_PUNCH_FX 3
|
||||
#define PAL_IX_LINOONE 4
|
||||
#define PAL_IX_NUZLEAF 4
|
||||
#define PAL_IX_PELIPPER 4
|
||||
#define PAL_IX_RUBY_MART_DOOR 5
|
||||
#define PAL_IX_SHROOMISH 6
|
||||
#define PAL_IX_SHARPEDO 6
|
||||
#define PAL_IX_ZIGZAGOON 6
|
||||
#define PAL_IX_GULPIN 7
|
||||
#define PAL_IX_SEEDOT 7
|
||||
#define PAL_IX_MAKUHITA 8
|
||||
#define PAL_IX_SAPPHIRE_MART_SIGN 8
|
||||
#define PAL_IX_CHARGE_INDICATOR 9
|
||||
#define PAL_IX_PAUSE_TEXT 9
|
||||
#define PAL_IX_RUBY_BUMPERS 9 // Chinchou, Lotad, Whiscash
|
||||
#define PAL_IX_RAMP_PRIZE 10
|
||||
#define PAL_IX_DIMMING_BASE_10 10 // of 3
|
||||
#define PAL_IX_SAPPHIRE_SHOP_GUARD 10 // Plusle, Minun, Electric gate
|
||||
#define PAL_IX_HATCH_EGG 11 // Also includes cave, and machine segment
|
||||
#define PAL_IX_SPOINK 11
|
||||
#define PAL_IX_TREECKO_1_UP 12
|
||||
#define PAL_IX_ROULETTE_SLOT_A 12
|
||||
#define PAL_IX_ROULETTE_SLOT_B 13
|
||||
#define PAL_IX_CATCH_MON 13 // Also hatch mon
|
||||
#define PAL_IX_LOCATION_PORTRAIT 13
|
||||
#define PAL_IX_MON_PORTRAIT 13
|
||||
#define PAL_IX_BANNER 14
|
||||
#define PAL_IX_TRAVEL_PAINTER 14
|
||||
#define PAL_IX_RUBY_EGG_DELIVERER 14 // Aerodactyl, Totodile
|
||||
#define PAL_IX_LATI_BALL_SAVER 14
|
||||
#define PAL_IX_CATCH_TILE_FX 14 // Includes tiles, particles, and the lightning
|
||||
#define PAL_IX_SHOP_UI 14 // Arrows, Coin banner, Coin, Cost, tile change sheen
|
||||
#define PAL_IX_MON_SHADOW_PORTRAIT 15
|
||||
#define PAL_IX_EVO_ITEM 15
|
||||
|
||||
// Named BG Pals
|
||||
#define PAL_IX_HUD 12 // timer, score, lives, coins, mons, charge indicator
|
||||
#define PAL_IX_SHOP_BG 12 // top banner, scrolling dots, backing behind displayed item
|
||||
|
||||
// Used with objPaletteSets
|
||||
#define LIGHTING_PAL_IX_NORMAL 0
|
||||
#define LIGHTING_PAL_IX_DIMMING 1
|
||||
#define LIGHTING_PAL_IX_DIM 2
|
||||
|
||||
#define LIGHTING_BASE_2_SAPPHIRE_COUNT 6
|
||||
#define LIGHTING_BASE_2_RUBY_COUNT 7
|
||||
#define LIGHTING_BASE_10_COUNT 3
|
||||
|
||||
#endif //GUARD_CONSTANTS_PALETTE_MAPPINGS_H
|
||||
@@ -208,7 +208,7 @@ struct PinballGame
|
||||
/*0x06A*/ s16 hudSpriteBaseY;
|
||||
/*0x06C*/ u16 timerBonus; //Additional time to be added to next timed event (Only for bonus fields or all timers?)
|
||||
/*0x06E*/ s8 ballUpgradeFxTileIndex;
|
||||
/*0x06F*/ s8 activePaletteIndex;
|
||||
/*0x06F*/ s8 paletteDimmingIx; // 0= normal, 1=dimming, 2=dim. Used with banner/focus moments.
|
||||
/*0x070*/ s8 paletteSwapActive;
|
||||
/*0x071*/ s8 ballTrailEnabled;
|
||||
/*0x072*/ s8 jirachiActivationFlags;
|
||||
@@ -936,7 +936,19 @@ struct FieldBoardLayout
|
||||
/*0x26*/ s16 ballSpawnX;
|
||||
/*0x28*/ s16 ballSpawnY;
|
||||
/*0x2A*/ s16 ballDrainY;
|
||||
/*0x2C*/ Palette *objPaletteSets[3];
|
||||
|
||||
/* 3 full sets of 16 palettes, referenced in smaller banks
|
||||
Set 0 : Normal light
|
||||
Set 1 : Dimming light
|
||||
Set 2 : Dim Light
|
||||
|
||||
Bank 0 : single slot.
|
||||
Bank 2 : 6 (Sapphire) or 7(Ruby) slots.
|
||||
Bank 10 : 3 slots.
|
||||
|
||||
This avoids slot 1 (ball) and the sapphire shop sign (constantly changing palette)
|
||||
*/
|
||||
/*0x2C*/ Palette *objPaletteSets[3];
|
||||
/*0x38*/ struct BoardCollisionDataSet collision;
|
||||
};
|
||||
|
||||
|
||||
@@ -196,18 +196,30 @@ void RenderBannerSlideAnimation(void)
|
||||
else
|
||||
{
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
}
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 2;
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIM;
|
||||
}
|
||||
}
|
||||
else if (gCurrentPinballGame->bannerSlideTimer > 0x24)
|
||||
@@ -225,18 +237,31 @@ void RenderBannerSlideAnimation(void)
|
||||
else
|
||||
{
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
}
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 1;
|
||||
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIMMING;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -266,17 +291,29 @@ void RenderBannerSlideAnimation(void)
|
||||
gMain.blendBrightness = 4;
|
||||
if (gCurrentPinballGame->bannerSlideTimer > 0x19)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 1;
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIMMING;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
if (gCurrentPinballGame->bannerSlideTimer == 0x1D)
|
||||
@@ -295,17 +332,30 @@ void RenderBannerSlideAnimation(void)
|
||||
|| gCurrentPinballGame->prizeId != PRIZE_START_EVO_MODE))
|
||||
{
|
||||
gMain.blendBrightness = 0;
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 0;
|
||||
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_NORMAL;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,11 +209,11 @@ void EndOfBallSequence(void)
|
||||
DmaCopy16(3, gMainBoardEndOfBall_Gfx, (void *)0x6015800, 0x2800);
|
||||
if (gMain.selectedField == FIELD_RUBY)
|
||||
{
|
||||
DmaCopy16(3, gEndOfBallBonus_Ruby_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gEndOfBallBonus_Ruby_Pal, OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gEndOfBallBonus_Sapphire_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gEndOfBallBonus_Sapphire_Pal, OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
m4aSongNumStart(SE_BONUS_PANEL_SLIDE);
|
||||
@@ -458,12 +458,12 @@ void BallSaverAnimation(void)
|
||||
DmaCopy16(3, gMainBoardBallSave_Gfx, (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gMainBoardBallSaveLatios_Gfx, (void *)0x06016800, 0x800);
|
||||
DmaCopy16(3, gMainBoardBallSaveLatiosArm_Gfx, (void *)0x06017000, 0xC0);
|
||||
DmaCopy16(3, gBallSaver_Ruby_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBallSaver_Ruby_Pal, OBJ_PLTT_SLOT(PAL_IX_LATI_BALL_SAVER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gMainBoardBallSave_Gfx, (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gBallSaver_Sapphire_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBallSaver_Sapphire_Pal, OBJ_PLTT_SLOT(PAL_IX_LATI_BALL_SAVER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
gCurrentPinballGame->ballPhysicsState = BALL_PHYSICS_FROZEN;
|
||||
|
||||
@@ -71,9 +71,13 @@ void PinballGame_State0_49ED4(void)
|
||||
SetupDisplayRegistersForField();
|
||||
InitPinballGameState();
|
||||
loadFieldBoardGraphics();
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][0], OBJ_PLTT, OBJ_PLTT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT,
|
||||
OBJ_PLTT_SIZE);
|
||||
|
||||
if (gMain.eReaderBonuses[EREADER_DX_MODE_CARD])
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
|
||||
ConfigureBoardProcessesForField();
|
||||
for (i = 0; i < 9; i++)
|
||||
@@ -103,9 +107,13 @@ void PinballGame_State0_49ED4(void)
|
||||
SetupDisplayRegistersForField();
|
||||
InitPinballGameState();
|
||||
loadFieldBoardGraphics();
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][0], OBJ_PLTT, OBJ_PLTT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT,
|
||||
OBJ_PLTT_SIZE);
|
||||
|
||||
if (gMain.eReaderBonuses[EREADER_DX_MODE_CARD])
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
|
||||
ConfigureBoardProcessesForField();
|
||||
for (i = 0; i < 9; i++)
|
||||
@@ -129,7 +137,10 @@ void PinballGame_State0_49ED4(void)
|
||||
SetupDisplayRegistersForField();
|
||||
InitPinballGameState();
|
||||
loadFieldBoardGraphics();
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][0], OBJ_PLTT, OBJ_PLTT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT,
|
||||
OBJ_PLTT_SIZE);
|
||||
ConfigureBoardProcessesForField();
|
||||
for (i = 0; i < 9; i++)
|
||||
CurrentBoardProcPairs_020028D8[i].initFunc();
|
||||
@@ -156,7 +167,7 @@ void PinballGame_State0_49ED4(void)
|
||||
if (gMain.mainState != STATE_GAME_IDLE && gCurrentPinballGame->savedBgmSongHeader && gMPlayInfo_BGM.status < 0)
|
||||
MPlayStart(&gMPlayInfo_BGM, gCurrentPinballGame->savedBgmSongHeader);
|
||||
if (gMain.selectedField < MAIN_FIELD_COUNT)
|
||||
RestoreBoardObjPalettes(gCurrentPinballGame->activePaletteIndex);
|
||||
RestoreBoardObjPalettes(gCurrentPinballGame->paletteDimmingIx);
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
|
||||
@@ -61,9 +61,9 @@ void LoadPortraitGraphics(s16 displayMode, s16 picIx)
|
||||
DmaCopy16(
|
||||
3,
|
||||
gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[picIx] / 15][gCurrentPinballGame->portraitGfxIndex[picIx] % 15],
|
||||
OBJ_PLTT_SLOT(PAL_IX_13),
|
||||
OBJ_PLTT_SLOT(PAL_IX_CATCH_MON),
|
||||
PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_15), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_MON_SHADOW_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
break;
|
||||
case PORTRAIT_STATE_EVO_PREVIEW:
|
||||
if (gCurrentPinballGame->evoChainPosition > 0)
|
||||
@@ -74,13 +74,13 @@ void LoadPortraitGraphics(s16 displayMode, s16 picIx)
|
||||
DmaCopy16(
|
||||
3,
|
||||
gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[picIx] / 15][gCurrentPinballGame->portraitGfxIndex[picIx] % 15],
|
||||
OBJ_PLTT_SLOT(PAL_IX_13),
|
||||
OBJ_PLTT_SLOT(PAL_IX_CATCH_MON),
|
||||
PLTT_SLOT_SIZE);
|
||||
}
|
||||
else if (gMain_saveData.pokedexFlags[gCurrentPinballGame->evoTargetSpecies] < SPECIES_CAUGHT)
|
||||
{
|
||||
gCurrentPinballGame->portraitGfxIndex[picIx] = gCurrentPinballGame->evoTargetSpecies;
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -88,7 +88,7 @@ void LoadPortraitGraphics(s16 displayMode, s16 picIx)
|
||||
DmaCopy16(
|
||||
3,
|
||||
gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[picIx] / 15][gCurrentPinballGame->portraitGfxIndex[picIx] % 15],
|
||||
OBJ_PLTT_SLOT(PAL_IX_13),
|
||||
OBJ_PLTT_SLOT(PAL_IX_CATCH_MON),
|
||||
PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
@@ -98,7 +98,7 @@ void LoadPortraitGraphics(s16 displayMode, s16 picIx)
|
||||
DmaCopy16(
|
||||
3,
|
||||
gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[picIx] / 15][gCurrentPinballGame->portraitGfxIndex[picIx] % 15],
|
||||
OBJ_PLTT_SLOT(PAL_IX_13),
|
||||
OBJ_PLTT_SLOT(PAL_IX_MON_PORTRAIT),
|
||||
PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
@@ -244,7 +244,7 @@ void UpdatePortraitSpritePositions(void)
|
||||
for (i = 0; i < 6; i++)
|
||||
{
|
||||
oamSimple = &group->oam[i];
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_12;
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_ROULETTE_SLOT_A;
|
||||
gOamBuffer[oamSimple->oamId].x = oamSimple->xOffset + group->baseX;
|
||||
gOamBuffer[oamSimple->oamId].y = oamSimple->yOffset + group->baseY;
|
||||
}
|
||||
|
||||
@@ -513,7 +513,7 @@ void ProcessBonusBoardBallDrain(void)
|
||||
gCurrentPinballGame->ballUpgradeType--;
|
||||
|
||||
gCurrentPinballGame->ballUpgradeTimer = TICKS_FOR_TIME(1,0);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
gCurrentPinballGame->ball->positionQ1.x = gCurrentPinballGame->ball->positionQ0.x * 2;
|
||||
@@ -569,7 +569,7 @@ void ResetBoardStateOnDeath(void)
|
||||
{
|
||||
gCurrentPinballGame->ballUpgradeType = BALL_UPGRADE_TYPE_MASTER_BALL;
|
||||
gCurrentPinballGame->ballUpgradeTimer = TICKS_FOR_TIME(1,0);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -578,7 +578,7 @@ void ResetBoardStateOnDeath(void)
|
||||
}
|
||||
|
||||
gCurrentPinballGame->ballUpgradeTimerPaused = FALSE;
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->bonusMultiplier = gCurrentPinballGame->progressLevel;
|
||||
gCurrentPinballGame->progressLevel = 1;
|
||||
if (gCurrentPinballGame->whiscashFrameIx == WHISCASH_FRAME_GONE_AFTER_HIT)
|
||||
|
||||
@@ -37,7 +37,7 @@ void MainBoardProcess_7B_12524(void)
|
||||
gCurrentPinballGame->ballUpgradeTimer = TICKS_FOR_TIME(1,0);
|
||||
}
|
||||
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -344,7 +344,7 @@ void BonusBoardProcess_7B_12BF8()
|
||||
gCurrentPinballGame->ballRespawnTimer++;
|
||||
if (r5 >= 7 && r5 <= 10)
|
||||
{
|
||||
DmaCopy16(3, gBall_Pals[(s16) (gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[(s16) (gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -359,7 +359,7 @@ void BonusBoardProcess_7B_12BF8()
|
||||
gCurrentPinballGame->ballRespawnState = BALL_SPAWN_STATE_LIVE_BALL;
|
||||
spriteGroup->active = FALSE;
|
||||
gCurrentPinballGame->ballPhysicsState = BALL_PHYSICS_NORMAL;
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -395,7 +395,7 @@ void BonusBoardProcess_7B_12BF8()
|
||||
{
|
||||
gCurrentPinballGame->ballRespawnState = BALL_SPAWN_STATE_LIVE_BALL;
|
||||
spriteGroup->active = FALSE;
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -414,7 +414,7 @@ void BonusBoardProcess_7B_12BF8()
|
||||
gCurrentPinballGame->ballUpgradeTimer = TICKS_FOR_TIME(1,0);
|
||||
}
|
||||
}
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -218,11 +218,11 @@ void ProcessEventTimer(void)
|
||||
{
|
||||
if (gCurrentPinballGame->eventTimer & 0x8)
|
||||
{
|
||||
DmaCopy16(3, gTimer_Warning_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Warning_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (gCurrentPinballGame->eventTimer == TIMER_TEXT_RED_UNDER_TIME)
|
||||
@@ -232,11 +232,11 @@ void ProcessEventTimer(void)
|
||||
{
|
||||
if ((gCurrentPinballGame->eventTimer % 22) / 11)
|
||||
{
|
||||
DmaCopy16(3, gTimer_Slow_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Slow_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,7 +109,10 @@ void ProcessBonusBannerAndScoring(void)
|
||||
break;
|
||||
}
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][var0], OBJ_PLTT_SLOT(PAL_IX_8), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][var0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_8),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (group->active)
|
||||
{
|
||||
|
||||
@@ -983,7 +983,7 @@ void UpdateGroudonFieldEntities(void)
|
||||
for (j = 0; j < 6; j++)
|
||||
{
|
||||
oamSimple = &group->oam[j];
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_13;
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_MON_PORTRAIT;
|
||||
gOamBuffer[oamSimple->oamId].priority = gCurrentPinballGame->creatureOamPriority;
|
||||
gOamBuffer[oamSimple->oamId].x = oamSimple->xOffset + group->baseX;
|
||||
gOamBuffer[oamSimple->oamId].y = oamSimple->yOffset + group->baseY;
|
||||
|
||||
@@ -111,7 +111,7 @@ void KyogreBoardProcess_3A_383E4(void)
|
||||
UpdateKyogreFieldEntities();
|
||||
AnimateKyogreBackground();
|
||||
m4aSongNumStart(MUS_BONUS_FIELD_KYOGRE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gKyogreFadeInPaletteProgression[0][0], BG_PLTT, 8*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBonusStageObjPal, OBJ_PLTT_SLOT(PAL_IX_9), PLTT_SLOT_SIZE);
|
||||
}
|
||||
@@ -840,7 +840,7 @@ void UpdateKyogreFieldEntities(void)
|
||||
for (i = 0; i < 6; i++)
|
||||
{
|
||||
oamSimple = &group->oam[i];
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_13;
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_MON_PORTRAIT;
|
||||
gOamBuffer[oamSimple->oamId].priority = gCurrentPinballGame->creatureOamPriority;
|
||||
gOamBuffer[oamSimple->oamId].x = oamSimple->xOffset + group->baseX;
|
||||
gOamBuffer[oamSimple->oamId].y = oamSimple->yOffset + group->baseY;
|
||||
@@ -885,7 +885,7 @@ void UpdateKyogreFieldEntities(void)
|
||||
if (gCurrentPinballGame->freezeTrapAnimFrame == 2)
|
||||
{
|
||||
int a; // force addition of 8 instead of offsetting the global constant
|
||||
DmaCopy16(3, gBall_Pals[a = gCurrentPinballGame->ballUpgradeType + 8], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[a = gCurrentPinballGame->ballUpgradeType + 8], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
|
||||
}
|
||||
break;
|
||||
@@ -991,7 +991,7 @@ void UpdateKyogreFieldEntities(void)
|
||||
|
||||
if (gCurrentPinballGame->freezeTrapAnimFrame == 15)
|
||||
{
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), 0x20);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
m4aSongNumStart(SE_KYOGRE_FREEZE_ESCAPED);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -369,7 +369,7 @@ void HandleRubyBumperHit(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[7], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[7], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[7], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.blendControl = 0xCE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
gCurrentPinballGame->activePortraitType = 18;
|
||||
|
||||
DmaCopy16(3, &gPokemonNameDisplayGfx, OBJ_VRAM1 + 0x1C00, 0x940);
|
||||
DmaCopy16(3, gShopNameDisplay_Pals, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gShopNameDisplay_Pals, BG_PLTT_SLOT(PAL_IX_SHOP_BG), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (gCurrentPinballGame->shopEntryTimer >= 145 && gCurrentPinballGame->shopEntryTimer < 150)
|
||||
@@ -44,14 +44,23 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
{
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
gCurrentPinballGame->activePaletteIndex = 1;
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIMMING;
|
||||
gCurrentPinballGame->paletteSwapActive = FALSE;
|
||||
}
|
||||
}
|
||||
@@ -63,14 +72,23 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
{
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
gCurrentPinballGame->activePaletteIndex = 2;
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIM;
|
||||
gCurrentPinballGame->paletteSwapActive = FALSE;
|
||||
}
|
||||
}
|
||||
@@ -92,7 +110,7 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
gMain.fieldSpriteGroups[FIELD_SG_MAIN_SHOP_ARROWS]->active = TRUE;
|
||||
gMain.fieldSpriteGroups[FIELD_SG_MAIN_SHOP_PORTRAIT_OVERLAY]->active = TRUE;
|
||||
|
||||
DmaCopy16(3, gShopEvoUI_Pals, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gShopEvoUI_Pals, OBJ_PLTT_SLOT(PAL_IX_SHOP_UI), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gShopModeBG0_0_Tilemap, BG_CHAR_SCREEN_ADDR(0,4), 0xC40);
|
||||
|
||||
gMain.bgOffsets[0].yOffset = 80;
|
||||
@@ -276,18 +294,30 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
|
||||
if (gCurrentPinballGame->catchModeEventTimer <= 3)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
gCurrentPinballGame->activePaletteIndex = 1;
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIMMING;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
}
|
||||
@@ -297,18 +327,30 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
|
||||
if (gCurrentPinballGame->catchModeEventTimer == 0)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
gCurrentPinballGame->activePaletteIndex = 0;
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_NORMAL;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
}
|
||||
@@ -379,7 +421,7 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
|
||||
DmaCopy16(3, gModeBannerTilemaps[3], OBJ_VRAM1 + 0x1800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[3], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[3], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
|
||||
gMain.blendControl = 206;
|
||||
gCurrentPinballGame->shopEntryTimer = 148;
|
||||
@@ -395,7 +437,7 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
gCurrentPinballGame->activePortraitType = 18;
|
||||
|
||||
DmaCopy16(3, &gPokemonNameDisplayGfx, OBJ_VRAM1 + 0x1C00, 0x940);
|
||||
DmaCopy16(3, gEvoNameDisplay_Pals, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gEvoNameDisplay_Pals, BG_PLTT_SLOT(PAL_IX_SHOP_BG), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (gCurrentPinballGame->shopEntryTimer == 145)
|
||||
@@ -429,7 +471,7 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
gMain.fieldSpriteGroups[FIELD_SG_MAIN_SHOP_PORTRAIT_OVERLAY]->active = TRUE;
|
||||
gMain.fieldSpriteGroups[FIELD_SG_MAIN_SHOP_ARROWS]->active = TRUE;
|
||||
|
||||
DmaCopy16(3, gShopEvoUI_Pals, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gShopEvoUI_Pals, OBJ_PLTT_SLOT(PAL_IX_SHOP_UI), PLTT_SLOT_SIZE);
|
||||
|
||||
gMain.bgOffsets[0].yOffset = 80;
|
||||
gMain.shopPanelSlideOffset = 0;
|
||||
@@ -710,17 +752,29 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
|
||||
if (gCurrentPinballGame->catchModeEventTimer <= 3)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 1;
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIMMING;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
}
|
||||
@@ -731,18 +785,30 @@ void UpdateShopEntryAnimation(s16 arg0)
|
||||
if (gCurrentPinballGame->catchModeEventTimer != 0)
|
||||
return;
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
gCurrentPinballGame->activePaletteIndex = 0;
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_NORMAL;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ void CleanupCatchEmState(void)
|
||||
gCurrentPinballGame->portraitDisplayState = PORTRAIT_DISPLAY_MODE_BOARD_CENTER;
|
||||
ResetEventState();
|
||||
for (i = 0; i < 6; i++)
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_13;
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_MON_PORTRAIT;
|
||||
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
@@ -93,7 +93,7 @@ void InitCatchEmMode(void)
|
||||
}
|
||||
gCurrentPinballGame->catchEmModeStartCount++;
|
||||
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
|
||||
for (i = 0; i < 6; i++)
|
||||
{
|
||||
@@ -148,7 +148,7 @@ void UpdateCatchEmMode(void)
|
||||
gCurrentPinballGame->hatchRevealPhase = 0;
|
||||
gCurrentPinballGame->boardSubState++;
|
||||
for (i = 0; i < 6; i++)
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_15;
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_MON_SHADOW_PORTRAIT;
|
||||
break;
|
||||
case CATCH_EM_SUBSTATE_START_MODE_BANNER:
|
||||
if (gMain.modeChangeFlags == MODE_CHANGE_NONE)
|
||||
@@ -175,7 +175,7 @@ void UpdateCatchEmMode(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[2], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[2], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[2], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.blendControl = 0xCE;
|
||||
}
|
||||
else if (gCurrentPinballGame->modeAnimTimer == 73)
|
||||
@@ -210,7 +210,7 @@ void UpdateCatchEmMode(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[2], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[2], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[2], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.blendControl = 0xCE;
|
||||
}
|
||||
else if (gCurrentPinballGame->modeAnimTimer == 47)
|
||||
@@ -242,7 +242,7 @@ void UpdateCatchEmMode(void)
|
||||
{
|
||||
gCurrentPinballGame->activePortraitType = 10;
|
||||
DmaCopy16(3, gCatchMonAppearFx_Gfx, (void *)0x06015800, 0x1400);
|
||||
DmaCopy16(3, gCatchMonAppearFx_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchMonAppearFx_Pal, OBJ_PLTT_SLOT(PAL_IX_CATCH_TILE_FX), PLTT_SLOT_SIZE);
|
||||
m4aSongNumStart(SE_CATCH_MON_ENTITY_APPEARS);
|
||||
gCurrentPinballGame->boardSubState++;
|
||||
gCurrentPinballGame->stageTimer = 0;
|
||||
@@ -253,8 +253,8 @@ void UpdateCatchEmMode(void)
|
||||
return;
|
||||
case CATCH_EM_SUBSTATE_SETUP_CATCH_HIT_COUNT:
|
||||
ResetCatchFrameState();
|
||||
DmaCopy16(3, gCaptureHit_Pal, OBJ_PLTT_SLOT(PAL_IX_15), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes, OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCaptureHit_Pal, OBJ_PLTT_SLOT(PAL_IX_MON_SHADOW_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes, OBJ_PLTT_SLOT(PAL_IX_MON_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->catchTargetX = 118;
|
||||
gCurrentPinballGame->catchTargetY = 264;
|
||||
gCurrentPinballGame->evoBlinkTimer = 0;
|
||||
@@ -339,7 +339,7 @@ void InitJirachiBonus(void)
|
||||
gCurrentPinballGame->holeIndicators[1] = gCurrentPinballGame->holeIndicators[0];
|
||||
gCurrentPinballGame->holeIndicators[2] = gCurrentPinballGame->holeIndicators[0];
|
||||
gCurrentPinballGame->holeIndicators[3] = gCurrentPinballGame->holeIndicators[0];
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
void UpdateJirachiBonus(void)
|
||||
@@ -383,7 +383,7 @@ void UpdateJirachiBonus(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[5], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[5], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[5], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.blendControl = 0xCE;
|
||||
}
|
||||
else if (gCurrentPinballGame->modeAnimTimer == 73)
|
||||
@@ -417,7 +417,7 @@ void UpdateJirachiBonus(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[5], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[5], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[5], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.blendControl = 0xCE;
|
||||
return;
|
||||
}
|
||||
@@ -439,8 +439,8 @@ void UpdateJirachiBonus(void)
|
||||
}
|
||||
break;
|
||||
case JIRACHI_CATCH_SUBSTATE_SETUP_CATCH_HIT_COUNT:
|
||||
DmaCopy16(3, gCaptureHit_Pal, OBJ_PLTT_SLOT(PAL_IX_15), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes, OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCaptureHit_Pal, OBJ_PLTT_SLOT(PAL_IX_MON_SHADOW_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes, OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->evoBlinkTimer = 0;
|
||||
gCurrentPinballGame->catchLights[0] = 2;
|
||||
gCurrentPinballGame->catchLights[1] = 2;
|
||||
@@ -880,7 +880,7 @@ void PlayCatchMonAppearsAnimation(void)
|
||||
|
||||
if (gCurrentPinballGame->catchRevealFrameId > 2)
|
||||
{
|
||||
DmaCopy16(3, gCatchSpritePalettes, OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes, OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpriteGfxBuffer, (void *)0x06010CA0, 0x480);
|
||||
DrawCatchMonBoardSprite();
|
||||
}
|
||||
@@ -921,6 +921,6 @@ void ResetCatchFrameState(void)
|
||||
|
||||
gCurrentPinballGame->catchRevealFrameId = 0;
|
||||
for (i = 0; i < 6; i++)
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_13;
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_LOCATION_PORTRAIT;
|
||||
}
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ void RevealCatchTilesSequential(void)
|
||||
if (gCurrentPinballGame->catchRevealFrameId == 0 && gCurrentPinballGame->catchTileRevealFrameAnimTimer == 0)
|
||||
{
|
||||
gCurrentPinballGame->activePortraitType = 11;
|
||||
DmaCopy16(3, gCatchTile_Reveal_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchTile_Reveal_Pal, OBJ_PLTT_SLOT(PAL_IX_CATCH_TILE_FX), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchTile_RevealTilesGfx, (void *)0x06015800, 0x2800);
|
||||
}
|
||||
|
||||
@@ -197,7 +197,7 @@ void RevealCatchTilesBurst(void)
|
||||
case 1:
|
||||
gCurrentPinballGame->activePortraitType = 5;
|
||||
DmaCopy16(3, gCatchTile_BurstStart_Gfx, (void *)0x06015800, 0x2000);
|
||||
DmaCopy16(3, gCatchTile_BurstStart_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchTile_BurstStart_Pal, OBJ_PLTT_SLOT(PAL_IX_CATCH_TILE_FX), PLTT_SLOT_SIZE);
|
||||
gMain.fieldSpriteGroups[FIELD_SG_CATCH_BURST_LIGHTNING_STRIKE]->active = TRUE;
|
||||
m4aSongNumStart(SE_CATCH_ALL_REVEAL_LIGHTNING);
|
||||
gCurrentPinballGame->hatchRevealPhase++;
|
||||
@@ -243,7 +243,7 @@ void RevealCatchTilesBurst(void)
|
||||
case 3:
|
||||
gCurrentPinballGame->activePortraitType = 6;
|
||||
DmaCopy16(3, gCatchTile_BurstStage2_Gfx, (void *)0x06015800, 0x800);
|
||||
DmaCopy16(3, gCatchTile_BurstStage2_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchTile_BurstStage2_Pal, OBJ_PLTT_SLOT(PAL_IX_CATCH_TILE_FX), PLTT_SLOT_SIZE);
|
||||
gMain.fieldSpriteGroups[FIELD_SG_CATCH_BURST_TILE_FLASH_FX]->active = TRUE;
|
||||
gCurrentPinballGame->hatchRevealPhase++;
|
||||
gCurrentPinballGame->revealAnimFrameCounter = 0;
|
||||
@@ -284,7 +284,7 @@ void RevealCatchTilesBurst(void)
|
||||
case 5:
|
||||
gCurrentPinballGame->activePortraitType = 7;
|
||||
DmaCopy16(3, gCatchTile_BurstStage3_Gfx, (void *)0x06015800, 0x2000);
|
||||
DmaCopy16(3, gCatchTile_BurstStage3_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchTile_BurstStage3_Pal, OBJ_PLTT_SLOT(PAL_IX_CATCH_TILE_FX), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->hatchRevealPhase++;
|
||||
InitBurstTileParticles();
|
||||
m4aSongNumStart(SE_CATCH_ALL_REVEAL_SHATTER);
|
||||
@@ -302,7 +302,7 @@ void RevealCatchTilesBurst(void)
|
||||
else
|
||||
{
|
||||
for (i = 0; i < 6; i++)
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_13;
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_MON_PORTRAIT;
|
||||
|
||||
gMain.blendBrightness = ((8 - gCurrentPinballGame->revealAnimFrameCounter) / 4) + 16;
|
||||
}
|
||||
@@ -328,7 +328,7 @@ void RevealCatchTilesBurst(void)
|
||||
case 7:
|
||||
gCurrentPinballGame->activePortraitType = 8;
|
||||
DmaCopy16(3, gCatchTile_BurstStage4_Gfx, (void *)0x06015800, 0x1800);
|
||||
DmaCopy16(3, gCatchTile_BurstStage4_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchTile_BurstStage4_Pal, OBJ_PLTT_SLOT(PAL_IX_CATCH_TILE_FX), PLTT_SLOT_SIZE);
|
||||
gMain.fieldSpriteGroups[FIELD_SG_CATCH_BURST_PANEL_ELECTRIFY_FX]->active = TRUE;
|
||||
gCurrentPinballGame->hatchRevealPhase++;
|
||||
gCurrentPinballGame->startButtonDisabled = FALSE;
|
||||
|
||||
@@ -390,7 +390,7 @@ void GivePrize(void)
|
||||
|
||||
gCurrentPinballGame->ballUpgradeTimer = TICKS_FOR_TIME(1,0);
|
||||
MPlayStart(&gMPlayInfo_SE1, &se_ball_upgrade);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
break;
|
||||
case PRIZE_BALL_UPGRADE_TO_MASTER:
|
||||
@@ -399,7 +399,7 @@ void GivePrize(void)
|
||||
gCurrentPinballGame->ballUpgradeType = BALL_UPGRADE_TYPE_MASTER_BALL;
|
||||
gCurrentPinballGame->ballUpgradeTimer = TICKS_FOR_TIME(1,0);
|
||||
MPlayStart(&gMPlayInfo_SE1, &se_ball_upgrade);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
break;
|
||||
case PRIZE_10_COINS:
|
||||
@@ -588,22 +588,34 @@ void RunMonCaptureSequence(void)
|
||||
break;
|
||||
|
||||
case 2:
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
gMain.blendBrightness = 4;
|
||||
|
||||
if (gCurrentPinballGame->captureSequenceFrame > 1)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 1;
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIMMING;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
break;
|
||||
@@ -613,21 +625,33 @@ void RunMonCaptureSequence(void)
|
||||
|
||||
if (gCurrentPinballGame->captureSequenceFrame > 1)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[2][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 2;
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIM][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIM;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
|
||||
DmaCopy16(3, gBall_Pals[8], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[8], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
@@ -649,15 +673,15 @@ void RunMonCaptureSequence(void)
|
||||
&& gCurrentPinballGame->boardSubState == JIRACHI_CATCH_SUBSTATE_CATCH_HIT_PHASE)
|
||||
))
|
||||
{
|
||||
DmaCopy16(3, gCatchSpritePalettes[2], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes[2], OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
DmaCopy16(3, gBall_Pals[8], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[8], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
gMain.blendBrightness = 6;
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
gMain.blendBrightness = 7;
|
||||
}
|
||||
|
||||
@@ -705,7 +729,7 @@ void RunMonCaptureSequence(void)
|
||||
gMain.fieldSpriteGroups[FIELD_SG_CAPTURE_MON_BALL_FX]->active = FALSE;
|
||||
break;
|
||||
case 11:
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
|
||||
tempVector.x = (gCurrentPinballGame->catchTargetX << 8) - gCurrentPinballGame->ball->positionQ8.x;
|
||||
tempVector.y = (gCurrentPinballGame->catchTargetY << 8) - gCurrentPinballGame->ball->positionQ8.y;
|
||||
@@ -725,7 +749,7 @@ void RunMonCaptureSequence(void)
|
||||
|| (gCurrentPinballGame->boardState == MAIN_BOARD_STATE_JIRACHI_CATCH_MODE
|
||||
&& gCurrentPinballGame->boardSubState == JIRACHI_CATCH_SUBSTATE_CATCH_HIT_PHASE))
|
||||
{
|
||||
DmaCopy16(3, gCatchSpritePalettes[0], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes[0], OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
@@ -764,12 +788,12 @@ void RunMonCaptureSequence(void)
|
||||
break;
|
||||
|
||||
case 14:
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->ball->spinAngle -= ANGLE_45;
|
||||
break;
|
||||
|
||||
case 15:
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[(s16)(gCurrentPinballGame->ballUpgradeType + 4)], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->ball->spinAngle -= ANGLE_45;
|
||||
break;
|
||||
|
||||
@@ -777,7 +801,7 @@ void RunMonCaptureSequence(void)
|
||||
if (gCurrentPinballGame->captureSequenceFrame == 0)
|
||||
m4aSongNumStart(SE_MON_CATCH_ENERGY_BEAM);
|
||||
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->ball->spinAngle = 0x7000;
|
||||
break;
|
||||
|
||||
@@ -844,7 +868,7 @@ void RunMonCaptureSequence(void)
|
||||
&& gCurrentPinballGame->boardSubState == CATCH_EM_SUBSTATE_CATCH_HIT_PHASE)
|
||||
|| (gCurrentPinballGame->boardState == MAIN_BOARD_STATE_JIRACHI_CATCH_MODE
|
||||
&& gCurrentPinballGame->boardSubState == JIRACHI_CATCH_SUBSTATE_CATCH_HIT_PHASE))
|
||||
DmaCopy16(3, gCatchSpritePalettes[1], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes[1], OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else if (gCurrentPinballGame->captureSequenceTimer == 19 || gCurrentPinballGame->captureSequenceTimer == 22)
|
||||
{
|
||||
@@ -855,7 +879,7 @@ void RunMonCaptureSequence(void)
|
||||
&& gCurrentPinballGame->boardSubState == CATCH_EM_SUBSTATE_CATCH_HIT_PHASE)
|
||||
|| (gCurrentPinballGame->boardState == MAIN_BOARD_STATE_JIRACHI_CATCH_MODE
|
||||
&& gCurrentPinballGame->boardSubState == JIRACHI_CATCH_SUBSTATE_CATCH_HIT_PHASE))
|
||||
DmaCopy16(3, gCatchSpritePalettes[3], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePalettes[3], OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (gCurrentPinballGame->captureSequenceTimer == 23)
|
||||
@@ -940,7 +964,7 @@ void RunMonCaptureSequence(void)
|
||||
|
||||
case 29:
|
||||
gMain.blendBrightness = 4;
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
|
||||
spriteGroup = gMain.fieldSpriteGroups[FIELD_SG_CAPTURE_MON_BALL_FX];
|
||||
|
||||
@@ -972,17 +996,29 @@ void RunMonCaptureSequence(void)
|
||||
{
|
||||
if (gCurrentPinballGame->captureSequenceFrame == 0)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[1][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->activePaletteIndex = 1;
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_DIMMING][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_DIMMING;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
}
|
||||
@@ -992,18 +1028,30 @@ void RunMonCaptureSequence(void)
|
||||
|
||||
if (gCurrentPinballGame->captureSequenceFrame > 4)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[0][10], OBJ_PLTT_SLOT(PAL_IX_10), 3*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[LIGHTING_PAL_IX_NORMAL][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
LIGHTING_BASE_10_COUNT * PLTT_SLOT_SIZE);
|
||||
|
||||
gCurrentPinballGame->activePaletteIndex = 0;
|
||||
gCurrentPinballGame->paletteDimmingIx = LIGHTING_PAL_IX_NORMAL;
|
||||
gCurrentPinballGame->paletteSwapActive = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,27 +50,39 @@ void RestoreBoardObjPalettes(s16 arg0)
|
||||
{
|
||||
if (gCurrentPinballGame->paletteSwapActive == TRUE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[arg0][0], OBJ_PLTT_SLOT(PAL_IX_0), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[arg0][PAL_IX_DIMMING_BASE_0],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_0),
|
||||
PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (gMain.selectedField == FIELD_SAPPHIRE)
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[arg0][2], OBJ_PLTT_SLOT(PAL_IX_2), 6*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[arg0][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_SAPPHIRE_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[arg0][2], OBJ_PLTT_SLOT(PAL_IX_2), 7*PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[arg0][PAL_IX_DIMMING_BASE_2],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_2),
|
||||
LIGHTING_BASE_2_RUBY_COUNT * PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
DmaCopy16(3, gBoardConfig.fieldLayout.objPaletteSets[arg0][10], OBJ_PLTT_SLOT(PAL_IX_10), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3,
|
||||
gBoardConfig.fieldLayout.objPaletteSets[arg0][PAL_IX_DIMMING_BASE_10],
|
||||
OBJ_PLTT_SLOT(PAL_IX_DIMMING_BASE_10),
|
||||
PLTT_SLOT_SIZE);
|
||||
|
||||
// related to Y position of camera on the field
|
||||
if (gCurrentPinballGame->cameraYViewport < 170)
|
||||
{
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][arg0 * 2], OBJ_PLTT_SLOT(PAL_IX_11), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][arg0 * 2], OBJ_PLTT_SLOT(PAL_IX_HATCH_EGG), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][arg0 * 2 + 1], OBJ_PLTT_SLOT(PAL_IX_11), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][arg0 * 2 + 1], OBJ_PLTT_SLOT(PAL_IX_SPOINK), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ void InitEvolutionMode(void)
|
||||
gCurrentPinballGame->evoItemGfxIndex = 0;
|
||||
}
|
||||
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->evoArrowProgress = 0;
|
||||
gCurrentPinballGame->shopArrowActive = FALSE;
|
||||
gCurrentPinballGame->catchModeEventTimer = 0;
|
||||
@@ -389,7 +389,7 @@ void UpdateEvolutionItemAnimation(void)
|
||||
{
|
||||
gCurrentPinballGame->activePortraitType = 15;
|
||||
DmaCopy16(3, gEvoItemAppear_GfxList[gCurrentPinballGame->evoItemGfxIndex], (void *)0x06015800, 0x1C00);
|
||||
DmaCopy16(3, gEvoItem_Pals[gCurrentPinballGame->evoItemGfxIndex], OBJ_PLTT_SLOT(PAL_IX_15), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gEvoItem_Pals[gCurrentPinballGame->evoItemGfxIndex], OBJ_PLTT_SLOT(PAL_IX_EVO_ITEM), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->evoItemAnimFrame = 0;
|
||||
gCurrentPinballGame->evoItemAnimFrameTimer = 0;
|
||||
}
|
||||
|
||||
@@ -32,9 +32,9 @@ void InitBoardIntroMode(void)
|
||||
LoadPortraitGraphics(PORTRAIT_STATE_CURRENT_LOCATION, PORTRAIT_MAIN_SLOT);
|
||||
LoadPortraitGraphics(PORTRAIT_STATE_CURRENT_LOCATION, PORTRAIT_ALT_SLOT);
|
||||
for (i = 0; i < 6; i++)
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_13;
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_LOCATION_PORTRAIT;
|
||||
|
||||
DmaCopy16(3, gTravelPortrait_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTravelPortrait_Pal, OBJ_PLTT_SLOT(PAL_IX_TRAVEL_PAINTER), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gAreaRouletteSelectedFx_Gfx, (void *)0x06015800, 0x280);
|
||||
gCurrentPinballGame->activePortraitType = 12;
|
||||
}
|
||||
|
||||
@@ -133,7 +133,7 @@ void AnimateOneUpSprite(void)
|
||||
if (gCurrentPinballGame->oneUpAnimTimer == 90)
|
||||
{
|
||||
group->active = TRUE;
|
||||
DmaCopy16(3, gOneUpSprite_Pal, OBJ_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gOneUpSprite_Pal, OBJ_PLTT_SLOT(PAL_IX_TREECKO_1_UP), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (gCurrentPinballGame->oneUpAnimTimer == 85)
|
||||
@@ -186,11 +186,11 @@ void UpdateSpoinkAnimation(void)
|
||||
{
|
||||
if (gCurrentPinballGame->cameraYViewport < 170)
|
||||
{
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][gCurrentPinballGame->activePaletteIndex * 2], OBJ_PLTT_SLOT(PAL_IX_11), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][gCurrentPinballGame->paletteDimmingIx * 2], OBJ_PLTT_SLOT(PAL_IX_HATCH_EGG), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][gCurrentPinballGame->activePaletteIndex * 2 + 1], OBJ_PLTT_SLOT(PAL_IX_11), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gFieldVariant_Pals[gMain.selectedField][gCurrentPinballGame->paletteDimmingIx * 2 + 1], OBJ_PLTT_SLOT(PAL_IX_SPOINK), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
switch (gCurrentPinballGame->spoinkEntityState)
|
||||
@@ -322,7 +322,7 @@ void RunEvolutionCutscene(void)
|
||||
{
|
||||
gCurrentPinballGame->activePortraitType = 16;
|
||||
DmaCopy16(3, gBoardActionTilesGfx, (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gBoardActionObj_Pals, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBoardActionObj_Pals, OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.fieldSpriteGroups[FIELD_SG_EVOLUTION_TEXT_LARGE_BOTTOM]->active = TRUE;
|
||||
gMain.fieldSpriteGroups[FIELD_SG_EVOLUTION_TEXT_LARGE_TOP]->active = TRUE;
|
||||
gMain.fieldSpriteGroups[FIELD_SG_EVOLUTION_TEXT_MEDIUM_LOWER]->active = TRUE;
|
||||
@@ -388,7 +388,7 @@ void RunEvolutionCutscene(void)
|
||||
destColor[i] = RGB5(sp210[0], sp210[1], sp210[2]);
|
||||
}
|
||||
|
||||
DmaCopy16(3, destColor, OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, destColor, OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (var0 == 10)
|
||||
@@ -630,7 +630,7 @@ void RunEvolutionCutscene(void)
|
||||
LoadPortraitGraphics(PORTRAIT_STATE_POKEMON_DISPLAY, PORTRAIT_MAIN_SLOT);
|
||||
gCurrentPinballGame->activePortraitType = 17;
|
||||
DmaCopy16(3, gCatchTile_BurstStage4_Gfx, (void *)0x06015800, 0x1800);
|
||||
DmaCopy16(3, gCatchTile_BurstStage4_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchTile_BurstStage4_Pal, OBJ_PLTT_SLOT(PAL_IX_CATCH_TILE_FX), PLTT_SLOT_SIZE);
|
||||
gCurrentPinballGame->creatureOamPriority = 3;
|
||||
}
|
||||
}
|
||||
@@ -719,13 +719,13 @@ void RunTravelEventCutscene(void)
|
||||
if (gMain.selectedField == FIELD_RUBY)
|
||||
{
|
||||
DmaCopy16(3, gRubyTravelPaint_Gfx, (void *)0x06015800, 0x1800);
|
||||
DmaCopy16(3, gRubyPainter_Pals, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gRubyPainter_Pals, OBJ_PLTT_SLOT(PAL_IX_TRAVEL_PAINTER), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gRubyTravelVolbeat_Gfx, (void *)0x06015800, 0x480);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gSapphireTravelPaint_Gfx, (void *)0x06015800, 0x1800);
|
||||
DmaCopy16(3, gSapphirePainter_Pals, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gSapphirePainter_Pals, OBJ_PLTT_SLOT(PAL_IX_TRAVEL_PAINTER), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gSapphireTravelIllumise_Gfx, (void *)0x06015800, 0x480);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -528,7 +528,7 @@ void UpdateRubyEvolutionShopSprite(void)
|
||||
if (gCurrentPinballGame->shopAnimTimer == 0)
|
||||
{
|
||||
group->active = TRUE;
|
||||
DmaCopy16(3, gRubyShopSign_Pal, OBJ_PLTT_SLOT(PAL_IX_2), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gRubyShopSign_Pal, OBJ_PLTT_SLOT(PAL_IX_RUBY_SHOP_SIGN), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else if (gCurrentPinballGame->shopAnimTimer == 37)
|
||||
{
|
||||
@@ -857,7 +857,7 @@ void InitTotodileEggDelivery(void)
|
||||
gCurrentPinballGame->portraitOffsetX = 240;
|
||||
gCurrentPinballGame->portraitOffsetY = 160;
|
||||
gCurrentPinballGame->activePortraitType = 3;
|
||||
DmaCopy16(3, gTotodile_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTotodile_Pal, OBJ_PLTT_SLOT(PAL_IX_RUBY_EGG_DELIVERER), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTotodileEggDelivery_Gfx, (void *)0x06015800, 0xCA0);
|
||||
}
|
||||
|
||||
@@ -940,7 +940,7 @@ void InitAerodactylEggDelivery(void)
|
||||
gCurrentPinballGame->portraitOffsetX = gCurrentPinballGame->eggDeliveryX / 20 - gFlyingCreatureCameraOffsets[0].x;
|
||||
gCurrentPinballGame->portraitOffsetY = gCurrentPinballGame->eggDeliveryY / 20 - gFlyingCreatureCameraOffsets[0].y;
|
||||
gCurrentPinballGame->activePortraitType = 2;
|
||||
DmaCopy16(3, gAerodactlyFlight_Pal, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gAerodactlyFlight_Pal, OBJ_PLTT_SLOT(PAL_IX_RUBY_EGG_DELIVERER), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gAerodactlyFlight_Gfx, (void *)0x06015800, 0x1000);
|
||||
}
|
||||
|
||||
@@ -1713,7 +1713,7 @@ void UpdateEggMode(void)
|
||||
group->baseX = gCurrentPinballGame->walkMonXPos / 10 - gCurrentPinballGame->cameraXOffset;
|
||||
group->baseY = gCurrentPinballGame->walkMonYPos / 10 - gCurrentPinballGame->cameraYOffset;
|
||||
DmaCopy16(3, gCatchSpriteFrameBuffer[var0], (void *)0x060112A0, 0x120);
|
||||
DmaCopy16(3, gCatchSpritePaletteBuffer, OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCatchSpritePaletteBuffer, OBJ_PLTT_SLOT(PAL_IX_CATCH_MON), PLTT_SLOT_SIZE);
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
oamSimple = &group->oam[i];
|
||||
@@ -1934,7 +1934,7 @@ void UpdateEggMode(void)
|
||||
break;
|
||||
case EGG_HATCH_SUBSTATE_SETUP_CATCH_ANIMATION:
|
||||
gCurrentPinballGame->activePortraitType = 9;
|
||||
DmaCopy16(3, gCaptureHit_Pal, OBJ_PLTT_SLOT(PAL_IX_15), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCaptureHit_Pal, OBJ_PLTT_SLOT(PAL_IX_MON_SHADOW_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gCaptureScreenTilesGfx, (void *)0x06015800, 0x1C00);
|
||||
DmaCopy16(3, &gCaptureBallTilesGfx[gCurrentPinballGame->ballUpgradeType * 0x200], (void *)0x060164C0, 0x80);
|
||||
DmaCopy16(3, &gCaptureBallTilesGfx[(gCurrentPinballGame->ballUpgradeType * 8 + 4) * 0x40], (void *)0x06016760, 0x80);
|
||||
@@ -1943,7 +1943,7 @@ void UpdateEggMode(void)
|
||||
gCurrentPinballGame->catchTargetX = gCurrentPinballGame->walkMonXPos / 10 + 8;
|
||||
gCurrentPinballGame->catchTargetY = gCurrentPinballGame->walkMonYPos / 10 - 31;
|
||||
for (i = 0; i < 6; i++)
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_13;
|
||||
gCurrentPinballGame->catchTilePalette[i] = PAL_IX_MON_PORTRAIT;
|
||||
|
||||
gCurrentPinballGame->boardSubState++;
|
||||
group->baseX = gCurrentPinballGame->walkMonXPos / 10 - gCurrentPinballGame->cameraXOffset;
|
||||
|
||||
@@ -42,7 +42,7 @@ void InitTravelMode(void)
|
||||
gCurrentPinballGame->eventTimer = gCurrentPinballGame->timerBonus + TRAVEL_MODE_TIME;
|
||||
gCurrentPinballGame->timerBonus = 0;
|
||||
gCurrentPinballGame->saverTimeRemaining = TRAVEL_MODE_SAVER_TIME;
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_12), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gTimer_Default_Pal, BG_PLTT_SLOT(PAL_IX_HUD), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
void UpdateTravelMode(void)
|
||||
|
||||
@@ -1928,20 +1928,20 @@ void LoadMonPortrait(s16 species)
|
||||
{
|
||||
case SPECIES_UNSEEN:
|
||||
CopyBgTilesRect(gPokedexSprites_Gfx + 0x5C00, (void *)0x06013400, 24, 1);
|
||||
DmaCopy16(3, gPokedexSprites_Pals, OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gPokedexSprites_Pals, OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
break;
|
||||
case SPECIES_SEEN:
|
||||
CopyBgTilesRect(gMonPortraitGroupGfx[var1] + var2 * 0x300, (void *)0x06013400, 24, 1);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
break;
|
||||
case SPECIES_SHARED:
|
||||
case SPECIES_SHARED_AND_SEEN:
|
||||
CopyBgTilesRect(gMonPortraitGroupGfx[var1] + var2 * 0x300, (void *)0x06013400, 24, 1);
|
||||
DarkenPalette(&gMonPortraitGroupPals[var1][var2], OBJ_PLTT_SLOT(PAL_IX_1), 0x20, 0xE);
|
||||
DarkenPalette(&gMonPortraitGroupPals[var1][var2], OBJ_PLTT_SLOT(PAL_IX_BALL), 0x20, 0xE);
|
||||
break;
|
||||
case SPECIES_CAUGHT:
|
||||
CopyBgTilesRect(gMonPortraitGroupGfx[var1] + var2 * 0x300, (void *)0x06013400, 24, 1);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[var1][var2], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[var1][var2], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -973,7 +973,7 @@ void UpdateRayquazaMinionsAndEffects(void)
|
||||
for (j = 0; j < 6; j++)
|
||||
{
|
||||
oamSimple = &group->oam[j];
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_13;
|
||||
gOamBuffer[oamSimple->oamId].paletteNum = PAL_IX_MON_PORTRAIT;
|
||||
gOamBuffer[oamSimple->oamId].priority = gCurrentPinballGame->creatureOamPriority;
|
||||
gOamBuffer[oamSimple->oamId].x = oamSimple->xOffset + group->baseX;
|
||||
gOamBuffer[oamSimple->oamId].y = oamSimple->yOffset + group->baseY;
|
||||
|
||||
@@ -377,7 +377,7 @@ void AnimateRubyBallPowerUpSequence(void)
|
||||
gCurrentPinballGame->ballUpgradeType++;
|
||||
|
||||
gCurrentPinballGame->ballUpgradeTimer = TICKS_FOR_TIME(1,0);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
if (gCurrentPinballGame->gBallUpgradeFxTimer == 40)
|
||||
|
||||
@@ -252,7 +252,7 @@ void DrawWhiscash(void)
|
||||
if (group->active)
|
||||
{
|
||||
frameIx = frameData[0];
|
||||
DmaCopy16(3, gWhiscash_Pals[3*gCurrentPinballGame->activePaletteIndex], OBJ_PLTT_SLOT(PAL_IX_9), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gWhiscash_Pals[3*gCurrentPinballGame->paletteDimmingIx], OBJ_PLTT_SLOT(PAL_IX_RUBY_BUMPERS), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gWhiscash_Gfx[frameIx], (void *)0x06014680, 0x460);
|
||||
gCurrentPinballGame->rubyBumperCollisionPosition[0].x = -248;
|
||||
gCurrentPinballGame->rubyBumperCollisionPosition[0].y = -316;
|
||||
@@ -762,7 +762,7 @@ void RubyPondTriBumperHandleHitAndDraw(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[6], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[6], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[6], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -780,7 +780,7 @@ void RubyPondTriBumperHandleHitAndDraw(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[1], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[1], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[1], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
gMain.blendControl = 0xCE;
|
||||
@@ -823,7 +823,7 @@ void RubyPondTriBumperHandleHitAndDraw(void)
|
||||
DmaCopy16(3, gLotadBumper_Gfx[var0], (void *)0x06012E80 + i * 0x100, 0x100);
|
||||
}
|
||||
|
||||
DmaCopy16(3, gLotadBumper_Pals[3*gCurrentPinballGame->activePaletteIndex], OBJ_PLTT_SLOT(PAL_IX_9), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gLotadBumper_Pals[3*gCurrentPinballGame->paletteDimmingIx], OBJ_PLTT_SLOT(PAL_IX_RUBY_BUMPERS), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else // chinchou
|
||||
{
|
||||
@@ -851,7 +851,7 @@ void RubyPondTriBumperHandleHitAndDraw(void)
|
||||
DmaCopy16(3, gChinchouBumper_Gfx[var0], (void *)0x06012E80 + i * 0x100, 0x100);
|
||||
}
|
||||
|
||||
DmaCopy16(3, gChinchouBumper_Pals[3*gCurrentPinballGame->activePaletteIndex], OBJ_PLTT_SLOT(PAL_IX_9), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gChinchouBumper_Pals[3*gCurrentPinballGame->paletteDimmingIx], OBJ_PLTT_SLOT(PAL_IX_RUBY_BUMPERS), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
// Draw Bumpers: Lotad/chinchou
|
||||
|
||||
@@ -481,7 +481,7 @@ void DrawRubySideBumperSprites(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[4], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[4], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[4], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.blendControl = 0xCE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -339,7 +339,7 @@ void UpdateSapphireSeedotCollection(void)
|
||||
gCurrentPinballGame->bannerSlideTimer = 50;
|
||||
gCurrentPinballGame->bannerSlideVelocity = 0;
|
||||
DmaCopy16(3, gModeBannerTilemaps[4], (void *)0x06015800, 0x2400);
|
||||
DmaCopy16(3, gModeBanner_Pals[4], OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gModeBanner_Pals[4], OBJ_PLTT_SLOT(PAL_IX_BANNER), PLTT_SLOT_SIZE);
|
||||
gMain.blendControl = 0xCE;
|
||||
}
|
||||
}
|
||||
@@ -550,8 +550,8 @@ void DrawSapphireShopSignSprite(void)
|
||||
{
|
||||
group->baseX = 16 - gCurrentPinballGame->cameraXOffset;
|
||||
group->baseY = 115 - gCurrentPinballGame->cameraYOffset;
|
||||
index = gCurrentPinballGame->shopSignPaletteIndex + gCurrentPinballGame->activePaletteIndex * 3;
|
||||
DmaCopy16(3, gSapphireShopSign_Pals[index], OBJ_PLTT_SLOT(PAL_IX_8), PLTT_SLOT_SIZE);
|
||||
index = gCurrentPinballGame->shopSignPaletteIndex + gCurrentPinballGame->paletteDimmingIx * 3;
|
||||
DmaCopy16(3, gSapphireShopSign_Pals[index], OBJ_PLTT_SLOT(PAL_IX_SAPPHIRE_MART_SIGN), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gSapphireShopSignTileGfx[gCurrentPinballGame->shopSignFrame], (void *) 0x06014B20, 0x480);
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
|
||||
@@ -254,7 +254,7 @@ void RestoreGameState(u16 arg0)
|
||||
|
||||
DmaCopy16(3, gCurrentPinballGame->savedObjPalette[gMain.isBonusField], OBJ_PLTT, OBJ_PLTT_SIZE);
|
||||
DmaCopy16(3, gCurrentPinballGame->savedBgPalette[gMain.isBonusField], BG_PLTT, BG_PLTT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
RestoreFieldSpecificGraphics();
|
||||
switch (gMain.selectedField)
|
||||
{
|
||||
@@ -456,12 +456,12 @@ void RestoreFieldSpecificGraphics(void)
|
||||
if (gMain.selectedField == FIELD_RUBY)
|
||||
{
|
||||
DmaCopy16(3, gRubyTravelPaint_Gfx, (void *)0x6015800, 0x1800);
|
||||
DmaCopy16(3, gRubyPainter_Pals, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gRubyPainter_Pals, OBJ_PLTT_SLOT(PAL_IX_TRAVEL_PAINTER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DmaCopy16(3, gSapphireTravelPaint_Gfx, (void *)0x6015800, 0x1800);
|
||||
DmaCopy16(3, gSapphirePainter_Pals, OBJ_PLTT_SLOT(PAL_IX_14), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gSapphirePainter_Pals, OBJ_PLTT_SLOT(PAL_IX_TRAVEL_PAINTER), PLTT_SLOT_SIZE);
|
||||
}
|
||||
break;
|
||||
case 21:
|
||||
@@ -512,23 +512,23 @@ void RestoreMainFieldDynamicGraphics(void)
|
||||
if (gMain_saveData.pokedexFlags[gCurrentPinballGame->evoTargetSpecies] == 0)
|
||||
{
|
||||
gCurrentPinballGame->portraitGfxIndex[i] = 205;
|
||||
DmaCopy16(3, gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[i] / 15][gCurrentPinballGame->portraitGfxIndex[i] % 15], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[i] / 15][gCurrentPinballGame->portraitGfxIndex[i] % 15], OBJ_PLTT_SLOT(PAL_IX_MON_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else if (gMain_saveData.pokedexFlags[gCurrentPinballGame->evoTargetSpecies] <= 3)
|
||||
{
|
||||
gCurrentPinballGame->portraitGfxIndex[i] = gCurrentPinballGame->evoTargetSpecies;
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[0][15], OBJ_PLTT_SLOT(PAL_IX_MON_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
}
|
||||
else
|
||||
{
|
||||
gCurrentPinballGame->portraitGfxIndex[i] = gCurrentPinballGame->evoTargetSpecies;
|
||||
DmaCopy16(3, gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[i] / 15][gCurrentPinballGame->portraitGfxIndex[i] % 15], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[i] / 15][gCurrentPinballGame->portraitGfxIndex[i] % 15], OBJ_PLTT_SLOT(PAL_IX_MON_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
gCurrentPinballGame->portraitGfxIndex[i] = gCurrentPinballGame->currentSpecies;
|
||||
DmaCopy16(3, gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[i] / 15][gCurrentPinballGame->portraitGfxIndex[i] % 15], OBJ_PLTT_SLOT(PAL_IX_13), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gMonPortraitGroupPals[gCurrentPinballGame->portraitGfxIndex[i] / 15][gCurrentPinballGame->portraitGfxIndex[i] % 15], OBJ_PLTT_SLOT(PAL_IX_LOCATION_PORTRAIT), PLTT_SLOT_SIZE);
|
||||
}
|
||||
case 3:
|
||||
DmaCopy16(3, gMonPortraitGroupGfx[gCurrentPinballGame->portraitGfxIndex[i] / 15] + (gCurrentPinballGame->portraitGfxIndex[i] % 15) * 0x300, 0x06010CA0 + (i * 0x18), 0x300);
|
||||
|
||||
@@ -141,7 +141,7 @@ void SphealBoardProcess_3A_42E48(void)
|
||||
|
||||
gMain.bgOffsets[1].yOffset = 126;
|
||||
DmaCopy16(3, &gBG0TilemapBuffer[0x800], (void *)0x06001140, 0x280);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_1), PLTT_SLOT_SIZE);
|
||||
DmaCopy16(3, gBall_Pals[gCurrentPinballGame->ballUpgradeType], OBJ_PLTT_SLOT(PAL_IX_BALL), PLTT_SLOT_SIZE);
|
||||
m4aSongNumStart(MUS_BONUS_FIELD_SPHEAL);
|
||||
DmaCopy16(3, gBonusStageObjPal, OBJ_PLTT_SLOT(PAL_IX_9), PLTT_SLOT_SIZE);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user