Make sure grass effect palette ignore fog when time blended (#9235)

This commit is contained in:
FosterProgramming 2026-02-17 13:54:36 +01:00 committed by GitHub
parent 3fca2dbb6d
commit bc6bbb1bc5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 1 deletions

View File

@ -43,4 +43,6 @@ void UpdateSparkleFieldEffect(struct Sprite *sprite);
void SetSpriteInvisible(u8 spriteId); void SetSpriteInvisible(u8 spriteId);
void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y); void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y);
u32 FldEff_TallGrass(void);
#endif //GUARD_FIELD_EFFECT_HELPERS_H #endif //GUARD_FIELD_EFFECT_HELPERS_H

View File

@ -803,14 +803,22 @@ void FieldEffectScript_LoadTiles(u8 **script)
(*script) += 4; (*script) += 4;
} }
static bool32 ShouldFieldEffectBeFogBlended(u8 *script)
{
u32 ptr = FieldEffectScript_ReadWord(&script);
if (ptr == (u32)FldEff_TallGrass)
return FALSE;
return TRUE;
}
void FieldEffectScript_LoadFadedPalette(u8 **script) void FieldEffectScript_LoadFadedPalette(u8 **script)
{ {
struct SpritePalette *palette = (struct SpritePalette *)FieldEffectScript_ReadWord(script); struct SpritePalette *palette = (struct SpritePalette *)FieldEffectScript_ReadWord(script);
u32 paletteSlot = LoadSpritePalette(palette); u32 paletteSlot = LoadSpritePalette(palette);
(*script) += 4; (*script) += 4;
SetPaletteColorMapType(paletteSlot + 16, T1_READ_8(*script)); SetPaletteColorMapType(paletteSlot + 16, T1_READ_8(*script));
UpdateSpritePaletteWithWeather(paletteSlot, TRUE);
(*script)++; (*script)++;
UpdateSpritePaletteWithWeather(paletteSlot, ShouldFieldEffectBeFogBlended(*script));
} }
void FieldEffectScript_LoadPalette(u8 **script) void FieldEffectScript_LoadPalette(u8 **script)