feat: 방어 시스템과 드로그 검증 경로 정리
- 애니메이션 이벤트 기반 방어/유지/해제 흐름과 HUD 피드백, 방어 디버그 로그를 추가했다. - 드로그 기본기1 테스트 패턴을 정리하고 공격 판정을 OnEffect 기반으로 옮기며 드로그 범위 효과의 타겟 레이어를 정상화했다. - 플레이어 퀵슬롯 테스트 세팅과 적-플레이어 겹침 방지 로직을 조정해 충돌 시 적이 수평 이동을 멈추고 최소 분리만 수행하게 했다.
This commit is contained in:
@@ -25,6 +25,9 @@ namespace Colosseum.Player
|
||||
[Tooltip("피격 제어 관리자")]
|
||||
[SerializeField] private HitReactionController hitReactionController;
|
||||
|
||||
[Tooltip("방어 상태 관리자")]
|
||||
[SerializeField] private PlayerDefenseController defenseController;
|
||||
|
||||
[Tooltip("관전 관리자")]
|
||||
[SerializeField] private PlayerSpectator spectator;
|
||||
|
||||
@@ -145,7 +148,9 @@ namespace Colosseum.Player
|
||||
if (!CanReceiveInput || IsStunned || IsStaggered || IsKnockbackActive || IsDowned)
|
||||
return 0f;
|
||||
|
||||
return abnormalityManager != null ? abnormalityManager.MoveSpeedMultiplier : 1f;
|
||||
float abnormalityMultiplier = abnormalityManager != null ? abnormalityManager.MoveSpeedMultiplier : 1f;
|
||||
float defenseMultiplier = defenseController != null ? defenseController.MoveSpeedMultiplier : 1f;
|
||||
return abnormalityMultiplier * defenseMultiplier;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,6 +164,8 @@ namespace Colosseum.Player
|
||||
skillController = GetComponent<SkillController>();
|
||||
if (hitReactionController == null)
|
||||
hitReactionController = GetOrCreateHitReactionController();
|
||||
if (defenseController == null)
|
||||
defenseController = GetOrCreateDefenseController();
|
||||
if (spectator == null)
|
||||
spectator = GetComponentInChildren<PlayerSpectator>();
|
||||
}
|
||||
@@ -195,5 +202,14 @@ namespace Colosseum.Player
|
||||
|
||||
return gameObject.AddComponent<HitReactionController>();
|
||||
}
|
||||
|
||||
private PlayerDefenseController GetOrCreateDefenseController()
|
||||
{
|
||||
PlayerDefenseController foundController = GetComponent<PlayerDefenseController>();
|
||||
if (foundController != null)
|
||||
return foundController;
|
||||
|
||||
return gameObject.AddComponent<PlayerDefenseController>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user