private void UpdateAIData(ref DoodAIInput btData) { if (player == null) { player = FindObjectOfType <Player>(); } btData.playerExists = player != null; if (player != null) { btData.playerPos = player.transform.position; } btData.doodPos = transform.position; btData.doodRot = transform.rotation; btData.doodAttackRange = attackRange; btData.doodVisionRange = visionRange; btData.attackDuration = timeBeforeHitbox; }
private static BTState MoveUntilDone(DoodAIInput data) { if (data.agent.pathPending) { return(BTState.Continue); } if (data.agent.isPathStale) { return(BTState.Failure); } if (data.agent.remainingDistance <= data.agent.stoppingDistance || !data.agent.hasPath) { return(BTState.Success); } return(BTState.Continue); }