From da956ed7e4a055e443a467f75e6e6490be45ec5b Mon Sep 17 00:00:00 2001 From: xCrystal Date: Sat, 7 Oct 2023 12:47:37 +0200 Subject: [PATCH] Detach PAL_OW_MISC from map palettes i.e. LoadMapPals (#3) --- constants/sprite_data_constants.asm | 8 ++++---- engine/gfx/color.asm | 14 +++++++------- gfx/overworld/npc_sprites.pal | 8 ++++---- gfx/overworld/npc_sprites_darkness.pal | 2 +- gfx/tilesets/bg_tiles.pal | 12 +++++++----- gfx/tilesets/bg_tiles_darkness.pal | 2 ++ 6 files changed, 25 insertions(+), 21 deletions(-) diff --git a/constants/sprite_data_constants.asm b/constants/sprite_data_constants.asm index 2bab7abf3..3bc17beea 100644 --- a/constants/sprite_data_constants.asm +++ b/constants/sprite_data_constants.asm @@ -19,10 +19,10 @@ DEF NUM_SPRITEDATA_FIELDS EQU _RS const PAL_OW_BLUE ; 1 const PAL_OW_GREEN ; 2 const PAL_OW_BROWN ; 3 - const PAL_OW_MISC ; 4 - const PAL_OW_EMOTE ; 5 - const PAL_OW_TREE ; 6 - const PAL_OW_ROCK ; 7 + const PAL_OW_EMOTE ; 4 + const PAL_OW_TREE ; 5 + const PAL_OW_ROCK ; 6 + const PAL_OW_MISC ; 7 ; object_events set bit 3 so as not to use the sprite's default palette ; MapObjectPals indexes (see gfx/overworld/npc_sprites.pal) diff --git a/engine/gfx/color.asm b/engine/gfx/color.asm index a91816dc2..955ad4e0a 100644 --- a/engine/gfx/color.asm +++ b/engine/gfx/color.asm @@ -628,7 +628,7 @@ INCLUDE "data/pokemon/palettes.asm" INCLUDE "data/trainers/palettes.asm" LoadMapPals: - call LoadDarknessPaletteIfDark ; also handles darkness palettes + call LoadDarknessPaletteIfDark jr c, .got_pals ; Which palette group is based on whether we're outside or inside @@ -697,8 +697,8 @@ LoadMapPals: jr nz, .not_darkness ld a, BANK(wOBPals1) ld de, wOBPals1 - ld hl, NPCDarknessPalette - ld bc, 8 palettes + ld hl, MapObjectDarknessPals + ld bc, 7 palettes jp FarCopyWRAM .not_darkness @@ -708,7 +708,7 @@ LoadMapPals: ld hl, MapObjectPals call AddNTimes ld de, wOBPals1 - ld bc, 8 palettes + ld bc, 7 palettes ld a, BANK(wOBPals1) call FarCopyWRAM @@ -759,7 +759,7 @@ LoadDarknessPaletteIfDark: LoadDarknessPalette: ld a, BANK(wBGPals1) ld de, wBGPals1 - ld hl, DarknessPalette + ld hl, TilesetBGDarknessPalette ld bc, 8 palettes jp FarCopyWRAM @@ -771,13 +771,13 @@ INCLUDE "gfx/stats/party_menu_bg_mobile.pal" PartyMenuBGPalette: INCLUDE "gfx/stats/party_menu_bg.pal" -DarknessPalette: +TilesetBGDarknessPalette: INCLUDE "gfx/tilesets/bg_tiles_darkness.pal" TilesetBGPalette: INCLUDE "gfx/tilesets/bg_tiles.pal" -NPCDarknessPalette: +MapObjectDarknessPals: INCLUDE "gfx/overworld/npc_sprites_darkness.pal" MapObjectPals:: diff --git a/gfx/overworld/npc_sprites.pal b/gfx/overworld/npc_sprites.pal index 14c9382cd..2988859bd 100644 --- a/gfx/overworld/npc_sprites.pal +++ b/gfx/overworld/npc_sprites.pal @@ -3,37 +3,37 @@ RGB 28,31,16, 31,19,10, 10,09,31, 00,00,00 ; blue RGB 28,31,16, 31,19,10, 07,23,03, 00,00,00 ; green RGB 28,31,16, 31,19,10, 15,10,03, 00,00,00 ; brown - RGB 28,31,16, 31,19,10, 30,10,06, 00,00,00 ; pink RGB 31,31,31, 31,31,31, 13,13,13, 00,00,00 ; silver RGB 22,31,10, 12,25,01, 05,14,00, 07,07,07 ; tree RGB 28,31,16, 24,18,07, 20,15,03, 07,07,07 ; rock + RGB 28,31,16, 31,19,10, 30,10,06, 00,00,00 ; misc (unused; not copied) ; day RGB 27,31,27, 31,19,10, 31,07,01, 00,00,00 ; red RGB 27,31,27, 31,19,10, 10,09,31, 00,00,00 ; blue RGB 27,31,27, 31,19,10, 07,23,03, 00,00,00 ; green RGB 27,31,27, 31,19,10, 15,10,03, 00,00,00 ; brown - RGB 27,31,27, 31,19,10, 30,10,06, 00,00,00 ; pink RGB 31,31,31, 31,31,31, 13,13,13, 00,00,00 ; silver RGB 22,31,10, 12,25,01, 05,14,00, 07,07,07 ; tree RGB 27,31,27, 24,18,07, 20,15,03, 07,07,07 ; rock + RGB 27,31,27, 31,19,10, 30,10,06, 00,00,00 ; misc (unused; not copied) ; nite RGB 15,14,24, 31,19,10, 31,07,01, 00,00,00 ; red RGB 15,14,24, 31,19,10, 10,09,31, 00,00,00 ; blue RGB 15,14,24, 31,19,10, 07,23,03, 00,00,00 ; green RGB 15,14,24, 31,19,10, 15,10,03, 00,00,00 ; brown - RGB 15,14,24, 31,19,10, 30,10,06, 00,00,00 ; pink RGB 31,31,31, 31,31,31, 13,13,13, 00,00,00 ; silver RGB 15,14,24, 08,13,19, 00,11,13, 00,00,00 ; tree RGB 15,14,24, 12,09,15, 08,04,05, 00,00,00 ; rock + RGB 15,14,24, 31,19,10, 30,10,06, 00,00,00 ; misc (unused; not copied) ; eve RGB 31,21,14, 31,19,10, 31,07,01, 00,00,00 ; red RGB 31,21,14, 31,19,10, 10,09,31, 00,00,00 ; blue RGB 31,21,14, 31,19,10, 07,23,03, 00,00,00 ; green RGB 31,21,14, 31,19,10, 15,10,03, 00,00,00 ; brown - RGB 31,21,14, 31,19,10, 30,10,06, 00,00,00 ; pink RGB 31,31,31, 31,31,31, 13,13,13, 00,00,00 ; silver RGB 19,23,08, 10,19,01, 04,10,00, 06,05,05 ; tree RGB 31,21,14, 21,13,05, 16,09,01, 06,05,05 ; rock + RGB 31,21,14, 31,19,10, 30,10,06, 00,00,00 ; misc (unused; not copied) diff --git a/gfx/overworld/npc_sprites_darkness.pal b/gfx/overworld/npc_sprites_darkness.pal index 8c3959e6a..94efefed8 100755 --- a/gfx/overworld/npc_sprites_darkness.pal +++ b/gfx/overworld/npc_sprites_darkness.pal @@ -3,7 +3,7 @@ RGB 01,01,02, 31,19,10, 10,09,31, 00,00,00 ; blue RGB 01,01,02, 31,19,10, 07,23,03, 00,00,00 ; green RGB 01,01,02, 31,19,10, 15,10,03, 00,00,00 ; brown - RGB 01,01,02, 31,19,10, 30,10,06, 00,00,00 ; pink RGB 31,31,31, 31,31,31, 13,13,13, 00,00,00 ; silver RGB 01,01,02, 00,00,00, 00,00,00, 00,00,00 ; tree RGB 01,01,02, 00,00,00, 00,00,00, 00,00,00 ; rock + RGB 01,01,02, 31,19,10, 30,10,06, 00,00,00 ; misc (unused; not copied) diff --git a/gfx/tilesets/bg_tiles.pal b/gfx/tilesets/bg_tiles.pal index 6039146a0..6140570a5 100644 --- a/gfx/tilesets/bg_tiles.pal +++ b/gfx/tilesets/bg_tiles.pal @@ -1,3 +1,5 @@ +; see data/maps/environment_colors.asm + ; morn RGB 28,31,16, 21,21,21, 13,13,13, 07,07,07 ; gray RGB 28,31,16, 31,19,24, 30,10,06, 07,07,07 ; red @@ -6,7 +8,7 @@ RGB 28,31,16, 31,31,07, 31,16,01, 07,07,07 ; yellow RGB 28,31,16, 24,18,07, 20,15,03, 07,07,07 ; brown RGB 28,31,16, 15,31,31, 05,17,31, 07,07,07 ; roof (overwritten if outdoor env) - RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (always overwritten) + RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (unused) ; day RGB 27,31,27, 21,21,21, 13,13,13, 07,07,07 ; gray @@ -16,7 +18,7 @@ RGB 27,31,27, 31,31,07, 31,16,01, 07,07,07 ; yellow RGB 27,31,27, 24,18,07, 20,15,03, 07,07,07 ; brown RGB 27,31,27, 15,31,31, 05,17,31, 07,07,07 ; roof (overwritten if outdoor env) - RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (always overwritten) + RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (unused) ; nite RGB 15,14,24, 11,11,19, 07,07,12, 00,00,00 ; gray @@ -26,7 +28,7 @@ RGB 30,30,11, 16,14,18, 16,14,10, 00,00,00 ; yellow RGB 15,14,24, 12,09,15, 08,04,05, 00,00,00 ; brown RGB 15,14,24, 13,12,23, 11,09,20, 00,00,00 ; roof (overwritten if outdoor env) - RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (always overwritten) + RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (unused) ; eve RGB 31,21,14, 18,16,16, 11,10,10, 06,05,05 ; gray @@ -36,7 +38,7 @@ RGB 31,31,07, 27,21,10, 25,12,01, 06,05,05 ; yellow RGB 31,21,14, 21,13,05, 16,09,01, 06,05,05 ; brown RGB 31,21,14, 13,23,23, 04,13,23, 06,05,05 ; roof (overwritten if outdoor env) - RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (always overwritten) + RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (unused) ; building (morn/day) RGB 30,28,26, 19,19,19, 13,13,13, 07,07,07 ; gray @@ -46,7 +48,7 @@ RGB 30,28,26, 31,31,07, 31,16,01, 07,07,07 ; yellow RGB 26,24,17, 21,17,07, 16,13,03, 07,07,07 ; brown RGB 30,28,26, 17,19,31, 14,16,31, 07,07,07 ; roof (overwritten if outdoor env) - RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (always overwritten) + RGB 31,31,31, 31,31,16, 14,09,00, 00,00,00 ; text (unused) ; overworld water (outdoor) RGB 23,23,31, 18,19,31, 13,12,31, 07,07,07 ; morn diff --git a/gfx/tilesets/bg_tiles_darkness.pal b/gfx/tilesets/bg_tiles_darkness.pal index 2582d3c2c..db5df8754 100755 --- a/gfx/tilesets/bg_tiles_darkness.pal +++ b/gfx/tilesets/bg_tiles_darkness.pal @@ -1,3 +1,5 @@ +; in darkness, these eight are always used rather than following environment colors indices + ; dark RGB 01,01,02, 00,00,00, 00,00,00, 00,00,00 ; gray RGB 01,01,02, 00,00,00, 00,00,00, 00,00,00 ; red