Files
Colosseum/Assets/Scripts/Enemy/IDamageable.cs
2026-03-11 17:51:06 +09:00

40 lines
1.1 KiB
C#

namespace Colosseum.Combat
{
/// <summary>
/// 대미지를 받을 수 있는 엔티티를 위한 인터페이스.
/// 플레이어, 적, 보스 등이 구현합니다.
/// </summary>
public interface IDamageable
{
/// <summary>
/// 현재 체력
/// </summary>
float CurrentHealth { get; }
/// <summary>
/// 최대 체력
/// </summary>
float MaxHealth { get; }
/// <summary>
/// 사망 여부
/// </summary>
bool IsDead { get; }
/// <summary>
/// 대미지 적용
/// </summary>
/// <param name="damage">적용할 대미지량</param>
/// <param name="source">대미지 출처 (선택)</param>
/// <returns>실제로 적용된 대미지량</returns>
float TakeDamage(float damage, object source = null);
/// <summary>
/// 체력 회복
/// </summary>
/// <param name="amount">회복량</param>
/// <returns>실제로 회복된 양</returns>
float Heal(float amount);
}
}