//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);
     }
 }
Example #2
0
    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;
        }
    }