//Pause the game public static void PauseGame() { if (Time.timeScale != 0) { Time.timeScale = 0; _fsm.Transition(_fsm.state, GAMESTATE.pauseMenu); GUIMenuManager.PauseButton(); } else { Time.timeScale = 1; GUIMenuManager.ResumeButton(); _fsm.Transition(_fsm.state, GAMESTATE.gamePlay); } }
static void StateProperties() { ExitGamePlay = false; switch (_fsm.state) { case GAMESTATE.init: _fsm.Transition(_fsm.state, GAMESTATE.mainMenu); break; case GAMESTATE.mainMenu: Time.timeScale = 1; if (player != null) { Destroy(player.gameObject); } if (gravityWell != null) { Destroy(gravityWell.gameObject); } break; case GAMESTATE.gamePlay: Time.timeScale = 1; player = Instantiate(Resources.Load(PlayerName, typeof(Player))) as Player; gravityWell = Instantiate(Resources.Load(GravityWellName, typeof(GravityWell))) as GravityWell; break; case GAMESTATE.pauseMenu: break; case GAMESTATE.gameOver: Destroy(player.gameObject); Destroy(gravityWell.gameObject); GUIMenuManager.GameOver(); break; case GAMESTATE.exit: break; } }