public void TrySpawnEnemy() { if (enemySpawnTimer > 0f) { return; } var position = new Vector3(Random.Range(boundsMin.x, boundsMax.x), config.enemyPrefab.transform.position.y, Random.Range(boundsMin.y, boundsMax.y)); var enemy = SpawnObject(config.enemyPrefab, position) as Enemy; enemy.Initialize(boundsMin, boundsMax); spawnedEnemies.Add(enemy); OnEnemiesCountChanged?.Invoke(SpawnedEnemies.Count); enemySpawnTimer = enemySpawnRate; }
private void OnEnemyDiedHandler(Enemy enemy) { SpawnedEnemies.Remove(enemy); OnEnemiesCountChanged?.Invoke(SpawnedEnemies.Count); }