using Drawing; using Reset.Core; using UnityEngine; namespace Reset.Units{ public interface IKillable : IDamageable{ public void Kill(); public float maxHealth{ get; set; } public float currentHealth{ get; set; } void IKillableInitialize(){ SetMaxHealth(); } private void SetMaxHealth(){ if (maxHealth == 0f) { Debug.LogError($"Max health is not set for type of {((object)this)}. Setting to 10000."); currentHealth = 10000f; } else { currentHealth = maxHealth; } } internal void DrawHealthDebug(){ using (Draw.WithColor(Color.blue)) { Draw.ingame.Label2D(((MonoBehaviour)this).transform.position + Vector3.up * 2.2f, ((IKillable)this).currentHealth.ToString(), Color.blue); } } private void InternalUpdate(){ Debug.Log("is this possible"); } } }