private void Spawn() { _enemyToSpawnPrefab.transform.position = transform.position; if (!_spawnablePrefabComponent.CanSpawn()) { ScheduleSpawn(); return; } var spawnedEnemy = _objectPoolingManager.GetObject(_enemyToSpawnPrefab.name, transform.position); spawnedEnemy.transform.localScale = _enemyToSpawnPrefab.transform.localScale; var spawnable = spawnedEnemy.GetComponent <ISpawnable>(); spawnable.Reset(); spawnable.GotDisabled += OnEnemyControllerGotDisabled; _spawnedEnemies.Add(spawnedEnemy); }