using UnityEngine; using Colosseum.Player; namespace Colosseum.Skills.Effects { /// /// 대상에게 다운 상태를 적용하는 스킬 효과입니다. /// [CreateAssetMenu(fileName = "DownEffect", menuName = "Colosseum/Skills/Effects/Down")] public class DownEffect : SkillEffect { [Header("Settings")] [Tooltip("다운 지속 시간")] [Min(0f)] [SerializeField] private float duration = 1f; /// /// 다운 지속 시간 /// public float Duration => duration; /// /// 다운 효과를 적용합니다. /// protected override void ApplyEffect(GameObject source, GameObject target) { if (target == null) { Debug.LogWarning("[DownEffect] Target is null."); return; } HitReactionController hitReactionController = target.GetComponent(); if (hitReactionController == null) hitReactionController = target.GetComponentInParent(); if (hitReactionController == null) { Debug.LogWarning($"[DownEffect] HitReactionController not found on target: {target.name}"); return; } hitReactionController.ApplyDown(duration); } } }