From aacc17e15cfdf7834cb9cd76f5f0c6b9d210b3d4 Mon Sep 17 00:00:00 2001 From: Ariel Antonitis Date: Tue, 23 Jun 2020 23:26:22 -0400 Subject: [PATCH] Fixed exclamation point & question mark palettes. --- src/trainer_see.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/trainer_see.c b/src/trainer_see.c index 155c84cbef..9ce25ce23b 100644 --- a/src/trainer_see.c +++ b/src/trainer_see.c @@ -165,10 +165,12 @@ static const union AnimCmd *const sSpriteAnimTable_Icons[] = sSpriteAnim_Icons2 }; +#define OBJ_EVENT_PAL_TAG_17 0x1110 // TODO: Move this into event_object_movement.h + static const struct SpriteTemplate sSpriteTemplate_ExclamationQuestionMark = { .tileTag = 0xffff, - .paletteTag = 0xffff, + .paletteTag = OBJ_EVENT_PAL_TAG_17, .oam = &sOamData_Icons, .anims = sSpriteAnimTable_Icons, .images = sSpriteImageTable_ExclamationQuestionMark, @@ -698,8 +700,10 @@ u8 FldEff_ExclamationMarkIcon(void) { u8 spriteId = CreateSpriteAtEnd(&sSpriteTemplate_ExclamationQuestionMark, 0, 0, 0x53); - if (spriteId != MAX_SPRITES) - SetIconSpriteData(&gSprites[spriteId], FLDEFF_EXCLAMATION_MARK_ICON, 0); + if (spriteId != MAX_SPRITES) { + SetIconSpriteData(&gSprites[spriteId], FLDEFF_EXCLAMATION_MARK_ICON, 0); + UpdateSpritePaletteByTemplate(&sSpriteTemplate_ExclamationQuestionMark, &gSprites[spriteId]); + } return 0; } @@ -708,8 +712,10 @@ u8 FldEff_QuestionMarkIcon(void) { u8 spriteId = CreateSpriteAtEnd(&sSpriteTemplate_ExclamationQuestionMark, 0, 0, 0x52); - if (spriteId != MAX_SPRITES) - SetIconSpriteData(&gSprites[spriteId], FLDEFF_QUESTION_MARK_ICON, 1); + if (spriteId != MAX_SPRITES) { + SetIconSpriteData(&gSprites[spriteId], FLDEFF_QUESTION_MARK_ICON, 1); + UpdateSpritePaletteByTemplate(&sSpriteTemplate_ExclamationQuestionMark, &gSprites[spriteId]); + } return 0; } @@ -723,7 +729,7 @@ u8 FldEff_HeartIcon(void) struct Sprite *sprite = &gSprites[spriteId]; SetIconSpriteData(sprite, FLDEFF_HEART_ICON, 0); - sprite->oam.paletteNum = 2; + sprite->oam.paletteNum = 2; // TODO: What palette should this use? } return 0;