private void OnHealthChanged(int health, GameEntityTag damagerEntityTag) { if (health == 0) { _gameSignals.GameEntityDespawnedSignal.Fire(gameObject, gameEntityTagComponent.GameEntityTag, damagerEntityTag); } }
public void DespawnEnemy(EnemyComponent enemyComponent, GameEntityTag despawner) { spawnedEnemies.Remove(enemyComponent); _gameSignals.EnemyDespawnedSignal.Fire(enemyComponent, despawner); _multiplePrefabMemoryPool.DespawnObject(enemyComponent.gameObject); }
private void HandleAsteroidDespawned(AsteroidComponent asteroidComponent, GameEntityTag despawner) { if (_transformList.Contains(asteroidComponent.transform)) { _transformList.Remove(asteroidComponent.transform); } }
private void HandleGameEntityDespawned(GameObject go, GameEntityTag gameEntityTag, GameEntityTag despawner) { if (gameEntityTag != GameEntityTag.BULLET && gameEntityTag != GameEntityTag.ENEMY_BULLET) { return; } DespawnBullet(go.GetComponent <BulletComponent>()); }
private void HandleGameEntityDespawned(GameObject go, GameEntityTag gameEntityTag, GameEntityTag despawner) { if (gameEntityTag != GameEntityTag.ASTEROID) { return; } DespawnAsteroid(go.GetComponent <AsteroidComponent>(), despawner); }
private void HandleGameEntityDespawned(GameObject go, GameEntityTag gameEntityTag, GameEntityTag despawner) { if (gameEntityTag != GameEntityTag.ENEMY) { return; } DespawnEnemy(go.GetComponent <EnemyComponent>(), despawner); }
private void HandleGameEntityDespawned(GameObject go, GameEntityTag gameEntityTag, GameEntityTag despawner) { if (gameEntityTag != GameEntityTag.PLAYER) { return; } DespawnPlayer(go.GetComponent <PlayerShipComponent>()); }
private void HandleAsteroidDespawned(AsteroidComponent asteroid, GameEntityTag gameEntityTag) { if (gameEntityTag != GameEntityTag.BULLET) { return; } if (!_canAddScore) { return; } int score = _asteroidScoreDataSource.GetScore(asteroid.AsteroidData.AsteroidID); _scoreSystem.AddScore(score); }
private void HandleEnemyDespawned(EnemyComponent enemy, GameEntityTag gameEntityTag) { if (gameEntityTag != GameEntityTag.BULLET) { return; } if (!_canAddScore) { return; } int score = _asteroidScoreDataSource.GetScore(enemy.EnemyData.EnemyID); _scoreSystem.AddScore(score); }
private void HandleAsteroidDespawned(AsteroidComponent asteroidComponent, GameEntityTag gameEntityTag) { _bookKeepingInGameData.AsteroidCount.Value--; if (_bookKeepingInGameData.AsteroidCount.Value < 0) { throw new System.ArgumentException("Asteroid count value cannot be negative"); } if (_bookKeepingInGameData.AsteroidCount.Value == 0) { _bookKeepingInGameData.CurrentStage.Value++; SpawnWave(); } }
private void DespawnAsteroid(AsteroidComponent asteroidComponent, GameEntityTag despawner) { _spawnedAsteroids.Remove(asteroidComponent); _gameSignals.AsteroidDespawnedSignal.Fire(asteroidComponent, despawner); _multiplePrefabMemoryPool.DespawnObject(asteroidComponent.gameObject); }
private async void HandleAsteroidDespawned(AsteroidComponent asteroid, GameEntityTag despawner) { await TryToSpawnAsteroidSplit(asteroid); }