private EnemyController GetEnemyController(EnemyData enemyData) { EnemyController enemyController; if (_instantiatedEnemies.ContainsKey(enemyData.GetId())) { enemyController = _instantiatedEnemies[enemyData.GetId()]; enemyController.gameObject.SetActive(true); enemyController.ResetDefaultProperties(); } else { enemyController = Instantiate(_enemyControllerPrefab, _spawnLocation.position, _spawnLocation.rotation); enemyController.SetData(enemyData); _instantiatedEnemies.Add(enemyData.GetId(), enemyController); } return(enemyController); }