void Awake() { if (instance == null) { instance = this; } else if (instance != this) { //There can only ever be one instance of this object!! Destroy(gameObject); } }
private void InitializeEnemies() { var enemyFabric = new EnemyFabric(_enemyData); _enemies = new List <CommonEnemy>(); var spawnPoints = _spawnPointController.Data.EnemySpawnPoints; foreach (var spawnPoint in spawnPoints) { var enemy = enemyFabric.Instantiate(spawnPoint.Type, spawnPoint.transform.position, Quaternion.identity); if (enemy == null) { continue; } var commonEnemy = new CommonEnemy(); commonEnemy.EnemyView = enemy; commonEnemy.Gun = new CommonGun(enemy.transform.Find("Gun").transform.Find("BulletSpawner"), _enemyData._amountOfAmmo, _enemyData._rateOfFire); commonEnemy.NavMeshAgent = enemy.GetComponent <NavMeshAgent>(); _enemies.Add(commonEnemy); } }