public void GetEenemys() { //if (wayPoints == null || wayPoints.Count <= 0) return; if (isSpawn) { return; } enemyList = new List <EnemyInfoAgent>(); for (int i = 0; i < maxSpawn; i++) { GameObject enemy = ObjectPoolManager.Instance.Get(enemyPrafab, wayPoints[Random.Range(0, wayPoints.Count)].transform.position, transform.rotation); enemy.transform.SetParent(transform, true); EnemyInfoAgent enemyInfoAgent = enemy.GetComponent <EnemyInfoAgent>(); enemyInfoAgent.Relive(); BehaviorDesigner.Runtime.BehaviorTree btree = enemy.GetComponent <BehaviorDesigner.Runtime.BehaviorTree>(); btree.SetVariableValue("Player", GameObject.FindWithTag("Player")); btree.SetVariableValue("SpawnPoint", gameObject); btree.SetVariableValue("ResetPoints", wayPoints); btree.SetVariableValue("SpawnRange", spawnRange); MyTools.SetActive(enemy, true); enemyList.Add(enemyInfoAgent); } isSpawn = true; }
public void Spawn(EnemyInfoAgent enemy) { if (!isSpawn) { GetEenemys(); } enemy.transform.position = wayPoints[Random.Range(0, wayPoints.Count)].transform.position; enemy.Relive(); MyTools.SetActive(enemy.gameObject, true); }