int PowerupPicker() { PowerUp_Manager manager = FindObjectOfType <PowerUp_Manager>(); float totalSpawnrate = 0; for (int i = 0; i < manager.powerUps.Length; i++) { totalSpawnrate += manager.powerUps[i].spawnRate; } float randomSpawn = Random.Range(0f, totalSpawnrate); float[] spawnRates = new float[manager.powerUps.Length]; for (int i = 0; i < spawnRates.Length; i++) { for (int j = 0; j <= i; j++) { spawnRates[i] += manager.powerUps[j].spawnRate; } } for (int i = 0; i < spawnRates.Length; i++) { if (spawnRates[i] > randomSpawn) { return(i); } } return(5); }
public void DrawGameScreen(SpriteBatch spriteBatch) { Asteroid_Manager.Draw(spriteBatch); PowerUp_Manager.Draw(spriteBatch); Ship_Manager.Draw(spriteBatch); Projectile_Manager.Draw(spriteBatch); Explosions.Draw(spriteBatch); HUD.Draw(spriteBatch); }
public void UpdateGameScreen(GameTime gameTime, bool otherScreenHasFocus) { if (otherScreenHasFocus) { return; } Collision_Manager.Update(gameTime); Asteroid_Manager.Update(gameTime); Ship_Manager.Update(gameTime); Projectile_Manager.Update(gameTime); PowerUp_Manager.Update(gameTime); Explosions.Update(gameTime); GameOver_Manager.Update(gameTime); }