diff --git a/graphics/field_effects/pics/shadow_extra_large.png b/graphics/field_effects/pics/shadow_extra_large.png index 765a5291a8..eb334a976c 100644 Binary files a/graphics/field_effects/pics/shadow_extra_large.png and b/graphics/field_effects/pics/shadow_extra_large.png differ diff --git a/graphics/field_effects/pics/shadow_large.png b/graphics/field_effects/pics/shadow_large.png index e917823b05..1695208af5 100644 Binary files a/graphics/field_effects/pics/shadow_large.png and b/graphics/field_effects/pics/shadow_large.png differ diff --git a/graphics/field_effects/pics/shadow_medium.png b/graphics/field_effects/pics/shadow_medium.png index 83ab6e1f6e..4327a053d2 100644 Binary files a/graphics/field_effects/pics/shadow_medium.png and b/graphics/field_effects/pics/shadow_medium.png differ diff --git a/graphics/field_effects/pics/shadow_small.png b/graphics/field_effects/pics/shadow_small.png index f5feada2b9..6cd37c5f23 100644 Binary files a/graphics/field_effects/pics/shadow_small.png and b/graphics/field_effects/pics/shadow_small.png differ diff --git a/graphics/weather/fog.pal b/graphics/weather/fog.pal index 6191b66928..1f40dd4e74 100644 --- a/graphics/weather/fog.pal +++ b/graphics/weather/fog.pal @@ -10,7 +10,7 @@ JASC-PAL 213 213 213 222 222 222 164 164 164 -255 0 255 +0 0 0 255 0 255 255 0 255 180 180 180 diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 9e22ec05eb..00b95340ea 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -28,45 +28,13 @@ static const struct SpriteFrameImage sPicTable_ShadowExtraLarge[] = { obj_frame_tiles(gFieldEffectObjectPic_ShadowExtraLarge), }; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = { - .tileTag = TAG_NONE, - .paletteTag = OBJ_EVENT_PAL_TAG_MAY, - .oam = &gObjectEventBaseOam_8x8, - .anims = sAnimTable_Shadow, - .images = sPicTable_ShadowSmall, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = UpdateShadowFieldEffect, -}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = {0xFFFF, TAG_WEATHER_START, &gObjectEventBaseOam_8x8, sAnimTable_Shadow, sPicTable_ShadowSmall, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = { - .tileTag = TAG_NONE, - .paletteTag = OBJ_EVENT_PAL_TAG_MAY, - .oam = &gObjectEventBaseOam_16x8, - .anims = sAnimTable_Shadow, - .images = sPicTable_ShadowMedium, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = UpdateShadowFieldEffect, -}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = {0xFFFF, TAG_WEATHER_START, &gObjectEventBaseOam_16x8, sAnimTable_Shadow, sPicTable_ShadowMedium, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = { - .tileTag = TAG_NONE, - .paletteTag = OBJ_EVENT_PAL_TAG_MAY, - .oam = &gObjectEventBaseOam_32x8, - .anims = sAnimTable_Shadow, - .images = sPicTable_ShadowLarge, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = UpdateShadowFieldEffect, -}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = {0xFFFF, TAG_WEATHER_START, &gObjectEventBaseOam_32x8, sAnimTable_Shadow, sPicTable_ShadowLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge = { - .tileTag = TAG_NONE, - .paletteTag = OBJ_EVENT_PAL_TAG_MAY, - .oam = &gObjectEventBaseOam_64x32, - .anims = sAnimTable_Shadow, - .images = sPicTable_ShadowExtraLarge, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = UpdateShadowFieldEffect, -}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge = {0xFFFF, TAG_WEATHER_START, &gObjectEventBaseOam_64x32, sAnimTable_Shadow, sPicTable_ShadowExtraLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; static const struct SpriteFrameImage sPicTable_TallGrass[] = { overworld_frame(gFieldEffectObjectPic_TallGrass, 2, 2, 0), diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 0a5fdd9733..d47c402629 100755 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -352,7 +352,7 @@ void UpdateShadowFieldEffect(struct Sprite *sprite) sprite->x = linkedSprite->x; sprite->y = linkedSprite->y + sprite->data[3]; sprite->invisible = linkedSprite->invisible; - if (!objectEvent->active + if (!objectEvent->active || !objectEvent->hasShadow || MetatileBehavior_IsPokeGrass(objectEvent->currentMetatileBehavior) || MetatileBehavior_IsSurfableWaterOrUnderwater(objectEvent->currentMetatileBehavior) || MetatileBehavior_IsSurfableWaterOrUnderwater(objectEvent->previousMetatileBehavior))