protected override void OnRocketCollide(Rocket rocket) { float damage = rocket.Damage(); audio.PlayOneShot(mSoundBoom); if (mPlayerSide == PlayerSide.PLAYER_LEFT || mPlayerSide == PlayerSide.PLAYER_RIGHT) { mHealth -= damage; for (int i=4; i>=(int)mHealth/20 && mHealth > 0 && mPlayerSide != PlayerSide.PLANET_AI; i--) { moons[i].SetActive(false); } } if (mHealth <= 0f) { Body.gameOver = true; GameOver go = Instantiate(pfGameOverScreen) as GameOver; // Flag the winner PlayerSide winner = ((mPlayerSide == PlayerSide.PLAYER_LEFT) ? PlayerSide.PLAYER_RIGHT : PlayerSide.PLAYER_LEFT); go.SetWinner(winner); } if (mPlayerSide == PlayerSide.PLANET_AI) { Planet target = PlayerPlanets[FindClosestPlayer()]; transform.LookAt(target.transform.position); mAim.FireRocket(100f, transform.position); } }