From 0862865c9669d4328e4c756e7183c5219e9830bb Mon Sep 17 00:00:00 2001 From: cawtds <38510667+cawtds@users.noreply.github.com> Date: Sun, 21 Jul 2024 15:01:29 +0200 Subject: [PATCH] fix player palette after hall of fame --- include/global.fieldmap.h | 2 +- src/event_object_movement.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index f1e63b146..01150c39d 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -111,7 +111,7 @@ struct __attribute__((packed, aligned(4))) ObjectEventTemplate { /*0x00*/ u8 localId; /*0x01*/ u16 graphicsId; - /*0x03*/ u8 kind; // Always OBJ_KIND_NORMAL in Emerald. + /*0x03*/ u8 kind; // The "kind" field determines how to access objUnion union below. /*0x04*/ s16 x; /*0x06*/ s16 y; union { diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 9c1abe2b4..61597eefc 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -2796,7 +2796,6 @@ static u8 UpdateSpritePalette(const struct SpritePalette *spritePalette, struct FieldEffectFreePaletteIfUnused(sprite->oam.paletteNum); sprite->inUse = TRUE; sprite->oam.paletteNum = LoadSpritePalette(spritePalette); - ApplyGlobalFieldPaletteTint(sprite->oam.paletteNum); return sprite->oam.paletteNum; } @@ -2814,7 +2813,7 @@ static void ObjectEventSetGraphics(struct ObjectEvent *objectEvent, const struct { struct Sprite *sprite = &gSprites[objectEvent->spriteId]; u32 i = FindObjectEventPaletteIndexByTag(graphicsInfo->paletteTag); - if (i != 0xFF) + if (i != 0xFF && graphicsInfo->paletteSlot != PALSLOT_PLAYER) UpdateSpritePalette(&sObjectEventSpritePalettes[i], sprite); // If gfx size changes, we need to reallocate tiles