protected void Awake() { this._myTransform = base.transform; this._takeDamage = base.GetComponent <TakeDamage>(); this._wildMove = base.GetComponent <BaseAIMovement>(); this._interp = base.GetComponent <TransformInterpolator>(); UnityEngine.Object.Destroy(base.GetComponent <BasicWildLifeMovement>()); UnityEngine.Object.Destroy(base.GetComponent <VisNode>()); this._takeDamage.enabled = false; }
private void IOnAIMovement(BasicWildLifeAI ai, BaseAIMovement movement) { var nmMovement = movement as NavMeshMovement; if (!nmMovement) return; if (nmMovement._agent.pathStatus == NavMeshPathStatus.PathInvalid && ai.GetComponent<TakeDamage>().alive) { TakeDamage.KillSelf(ai.GetComponent<IDBase>()); Interface.Oxide.LogInfo($"{ai} was destroyed for having an invalid NavMeshPath"); } }
public static void AnimalMovement(BaseAIMovement m, BasicWildLifeAI ai, ulong simMillis) { var movement = m as NavMeshMovement; if (!movement) { return; } bool IsAlive = ai.GetComponent <TakeDamage>().alive; if (movement._agent.pathStatus == NavMeshPathStatus.PathInvalid && IsAlive) { TakeDamage.KillSelf(ai.GetComponent <IDBase>()); Logger.LogDebug("[NavMesh] AI destroyed for having invalid path."); } }
protected void Awake() { this._myTransform = base.transform; this._takeDamage = base.GetComponent<TakeDamage>(); this._wildMove = base.GetComponent<BaseAIMovement>(); this._interp = base.GetComponent<TransformInterpolator>(); UnityEngine.Object.Destroy(base.GetComponent<BasicWildLifeMovement>()); UnityEngine.Object.Destroy(base.GetComponent<VisNode>()); this._takeDamage.enabled = false; }