using System.Text; using Schema; using UnityEngine; using VOID.Generic.Objects.Unit; namespace VOID.Generic.AI.Schema.Conditionals { [DarkIcon("Conditionals/d_IsNull")] [LightIcon("Conditionals/IsNull")] [Category(SchemaCategory.AnyUnit)] public class IsUnitDead : Conditional { [SerializeField] private BlackboardEntrySelector _unit; public override bool Evaluate(object nodeMemory, SchemaAgent agent) { return _unit.value && _unit.value.basicState.isDead; } public override GUIContent GetConditionalContent() { var sb = new StringBuilder(); if (invert) sb.Append("NOT "); sb.Append($"If {_unit.name} is dead"); return new GUIContent(sb.ToString()); } } }