namespace Colosseum.Combat { /// /// 대미지를 받을 수 있는 엔티티를 위한 인터페이스. /// 플레이어, 적, 보스 등이 구현합니다. /// public interface IDamageable { /// /// 현재 체력 /// float CurrentHealth { get; } /// /// 최대 체력 /// float MaxHealth { get; } /// /// 사망 여부 /// bool IsDead { get; } /// /// 대미지 적용 /// /// 적용할 대미지량 /// 대미지 출처 (선택) /// 실제로 적용된 대미지량 float TakeDamage(float damage, object source = null); /// /// 대미지 컨텍스트를 사용해 대미지를 적용합니다. /// /// 피해량과 방어 규칙이 담긴 컨텍스트 /// 실제로 적용된 대미지량 float TakeDamage(DamageContext damageContext); /// /// 체력 회복 /// /// 회복량 /// 실제로 회복된 양 float Heal(float amount); } }