From a203c03eacb138e9bf9155a4e16503c09dd57c7f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Wed, 18 Jan 2023 10:33:39 -0500 Subject: [PATCH] Add bugfix to LoadObjectEventPalette --- src/event_object_movement.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/event_object_movement.c b/src/event_object_movement.c index e277e2a48a..af78b4f7ca 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -1998,7 +1998,12 @@ static void LoadObjectEventPalette(u16 paletteTag) { u16 i = FindObjectEventPaletteIndexByTag(paletteTag); - if (i != OBJ_EVENT_PAL_TAG_NONE) // always true +// FindObjectEventPaletteIndexByTag returns 0xFF on failure, not OBJ_EVENT_PAL_TAG_NONE. +#ifdef BUGFIX + if (i != 0xFF) +#else + if (i != OBJ_EVENT_PAL_TAG_NONE) +#endif LoadSpritePaletteIfTagExists(&sObjectEventSpritePalettes[i]); } @@ -2021,6 +2026,7 @@ static u8 LoadSpritePaletteIfTagExists(const struct SpritePalette *spritePalette void PatchObjectPalette(u16 paletteTag, u8 paletteSlot) { + // paletteTag is assumed to exist in sObjectEventSpritePalettes u8 paletteIndex = FindObjectEventPaletteIndexByTag(paletteTag); LoadPalette(sObjectEventSpritePalettes[paletteIndex].data, 16 * paletteSlot + 0x100, 0x20);