void OnAsteroidDestroy(AsteroidDestroyEvent asteroidDestroyEvent) { int asteroidScore = asteroidTypeData[asteroidDestroyEvent.Asteroid.Type].Score; playerScore += asteroidScore; scoreToLifeRestoreCounter += asteroidScore; if (scoreToLifeRestoreCounter >= scoreToLifeRestoreStep) { CreateLifeSprite(); playerLifes++; scoreToLifeRestoreCounter = scoreToLifeRestoreCounter - scoreToLifeRestoreStep; } scoreText.text = playerScore.ToString(); }
public void OnAsteroidDestroy(AsteroidDestroyEvent asteroidDestroyEvent) { Asteroid asteroid = asteroidDestroyEvent.Asteroid; if (GameArea.AsteroidTypeData.ContainsKey(asteroid.Type)) { AsteroidData data = asteroidTypeData[asteroid.Type]; for (int i = 0; i < data.DestroyToCount; i++) { SpawnAsteroid(data.DestroyToType, asteroid.transform.position, true); } } if (!asteroid.CanSplitUp() && transform.childCount == 0) { if (transform.childCount == 0) { EndRound(); } } }