Ultraworked with [Sisyphus](https://github.com/code-yeonggu/oh-my-opencode) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
40 lines
1.1 KiB
C#
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);
|
|
}
|
|
}
|