コード例 #1
0
    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);
    }