// Start is called before the first frame update
    void Start()
    {
        nextLocation = this.transform.position;
        navAgent     = this.GetComponent <NavMeshAgent>();
        if (!NPCSearch.critters.Contains(this.gameObject))
        {
            NPCSearch.critters.Add(this.gameObject);
        }
        if (!NPCSearch_No_FSM.critters.Contains(this.gameObject))
        {
            NPCSearch_No_FSM.critters.Add(this.gameObject);
        }
        if (!NPCSearch_ClassBased.critters.Contains(this.gameObject))
        {
            NPCSearch_ClassBased.critters.Add(this.gameObject);
        }

        if (objectPool == null)
        {
            objectPool = FindObjectOfType <ObjectPool_Advanced>();
        }
    }
 private void Start()
 {
     objectPool = FindObjectOfType <ObjectPool_Advanced>();
 }