Pal IX consts for main boards

This commit is contained in:
Retnuhytnuob
2026-09-04 01:35:42 -05:00
parent 5b1b8d9c08
commit 4f1c19c7ce
32 changed files with 483 additions and 217 deletions

View File

@@ -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

View File

@@ -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;
};