public virtual void ProcessHit (Hit hit) { if (IsDead () || hit.Type == HitType.NONE || hit.Type == HitType.MISSED) return; if (hit.Type == HitType.HEAL) { _health.Add (hit.Amount, hit.ExceedMax); return; } _health.Remove (hit.Amount); if (IsDead ()) { SendDeath (hit.Source); return; } }