61 lines
1.4 KiB
C#
61 lines
1.4 KiB
C#
using System;
|
|
using Sirenix.OdinInspector;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace BlueWater
|
|
{
|
|
public enum HealthHeart
|
|
{
|
|
Empty = 0,
|
|
Half = 1,
|
|
Full = 2
|
|
}
|
|
|
|
public class HealthPoint : MonoBehaviour
|
|
{
|
|
[SerializeField]
|
|
private Image _heartImage;
|
|
|
|
[SerializeField]
|
|
private Image _lock;
|
|
|
|
// 이미지 리소스
|
|
[Title("이미지 리소스")]
|
|
[SerializeField]
|
|
private Sprite _fullHeart;
|
|
|
|
[SerializeField]
|
|
private Sprite _halfHeart;
|
|
|
|
[SerializeField]
|
|
private Sprite _emptyHeart;
|
|
|
|
public void SetHeart(HealthHeart healthHeart)
|
|
{
|
|
switch (healthHeart)
|
|
{
|
|
case HealthHeart.Empty:
|
|
_heartImage.sprite = _emptyHeart;
|
|
break;
|
|
case HealthHeart.Half:
|
|
_heartImage.sprite = _halfHeart;
|
|
break;
|
|
case HealthHeart.Full:
|
|
_heartImage.sprite = _fullHeart;
|
|
break;
|
|
default:
|
|
throw new ArgumentOutOfRangeException(nameof(healthHeart), healthHeart, null);
|
|
}
|
|
|
|
_lock.enabled = false;
|
|
}
|
|
|
|
public void Lock()
|
|
{
|
|
_heartImage.sprite = _emptyHeart;
|
|
_lock.enabled = true;
|
|
}
|
|
}
|
|
}
|