feat(BT12-Dev): 피격 이펙트 sortingOrder +100·적 추적 각도 하단 보정 (PD 지시 2026-05-14)

작업 1 — 피격 이펙트 상위 sortingOrder:
- Projectile.OnTriggerEnter2D OnHitFx — Renderer.sortingOrder += 100
- LightningStrikeSpawner OnHitFx + ExtraHitFx — 동일
- MeleeAreaSpawner fxGo — 동일
- LaserSpawner fx — 동일
- Enemy SpriteRenderer 영역 위·뒤쪽 가림 회피

작업 2 — 적 추적 각도 하단 보정:
- ProjectileSpawner.Trigger TargetEnemyOnFire 영역 toEnemy.y -= 0.5
- 적 transform.position 영역 상단 영역·hitbox 영역 영역 영역 적중 정합
- A08 영역 영역 영역 영역 영역 영역 적 hitbox 영역 영역 영역 적중

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
깃 관리자 2026-05-14 00:23:40 +09:00
parent 55ee4f390b
commit eb33e6414b
5 changed files with 12 additions and 0 deletions

View File

@ -41,6 +41,8 @@ namespace EerieVillage.Skills.Effectors
fx.transform.localScale *= data.HitFxScale;
// PD 지시 2026-05-13 — ParticleSystem 명시 Play
foreach (var ps in fx.GetComponentsInChildren<ParticleSystem>(true)) { var m = ps.main; m.scalingMode = ParticleSystemScalingMode.Hierarchy; ps.Play(true); }
// PD 지시 2026-05-14 — 피격 이펙트 상위 sortingOrder
foreach (var r in fx.GetComponentsInChildren<Renderer>(true)) r.sortingOrder += 100;
}
float fxLifetime = GetFxLifetime(fx);

View File

@ -67,6 +67,8 @@ namespace EerieVillage.Skills.Effectors
fx.transform.localScale *= data.HitFxScale;
// PD 지시 2026-05-13 — ParticleSystem 명시 Play
foreach (var ps in fx.GetComponentsInChildren<ParticleSystem>(true)) { var m = ps.main; m.scalingMode = ParticleSystemScalingMode.Hierarchy; ps.Play(true); }
// PD 지시 2026-05-14 — 피격 이펙트 상위 sortingOrder
foreach (var r in fx.GetComponentsInChildren<Renderer>(true)) r.sortingOrder += 100;
fxTotalLifetime = GetFxLifetime(fx);
AutoDestroyFx(fx, fxTotalLifetime);
}
@ -117,6 +119,8 @@ namespace EerieVillage.Skills.Effectors
extraFx.transform.localScale *= data.HitFxScale;
// PD 지시 2026-05-13 — ParticleSystem 명시 Play
foreach (var ps in extraFx.GetComponentsInChildren<ParticleSystem>(true)) { var m = ps.main; m.scalingMode = ParticleSystemScalingMode.Hierarchy; ps.Play(true); }
// PD 지시 2026-05-14 — 피격 이펙트 상위 sortingOrder
foreach (var r in extraFx.GetComponentsInChildren<Renderer>(true)) r.sortingOrder += 100;
AutoDestroyFx(extraFx, GetFxLifetime(extraFx));
}

View File

@ -42,6 +42,8 @@ namespace EerieVillage.Skills.Effectors
fxGo.transform.SetParent(inventory.transform, true);
// PD 지시 2026-05-13 — ParticleSystem 명시 Play
foreach (var ps in fxGo.GetComponentsInChildren<ParticleSystem>(true)) { var m = ps.main; m.scalingMode = ParticleSystemScalingMode.Hierarchy; ps.Play(true); }
// PD 지시 2026-05-14 — 피격 이펙트 상위 sortingOrder
foreach (var r in fxGo.GetComponentsInChildren<Renderer>(true)) r.sortingOrder += 100;
fxLifetime = GetFxLifetime(fxGo);
// PD 지시 2026-05-13 — unscaledTime cap (Time.timeScale=0 영역 잔존 차단)
FxAutoDestroyUnscaled.Attach(fxGo, Mathf.Min(fxLifetime + 0.2f, 5f));

View File

@ -221,6 +221,8 @@ namespace EerieVillage.Skills.Effectors
fx.transform.localScale *= _data.HitFxScale;
// PD 지시 2026-05-13 — ParticleSystem 명시 Play
foreach (var ps in fx.GetComponentsInChildren<ParticleSystem>(true)) { var m = ps.main; m.scalingMode = ParticleSystemScalingMode.Hierarchy; ps.Play(true); }
// PD 지시 2026-05-14 — 피격 이펙트 상위 sortingOrder (Enemy SpriteRenderer 영역 위)
foreach (var r in fx.GetComponentsInChildren<Renderer>(true)) r.sortingOrder += 100;
AutoDestroyOnParticleEnd(fx);
}

View File

@ -45,7 +45,9 @@ namespace EerieVillage.Skills.Effectors
}
if (nearest != null)
{
// PD 지시 2026-05-14 — 적 추적 각도 하단 보정 (적 transform.position 영역 상단 영역·hitbox 영역 영역 영역 적중 영역)
Vector2 toEnemy = (Vector2)nearest.transform.position - playerPos2;
toEnemy.y -= 0.5f;
if (toEnemy.sqrMagnitude > 0.01f) facing = toEnemy.normalized;
}
}