Exemplo n.º 1
0
    /// <summary>
    /// Removes a game state from the list of prerequisite game states.
    /// </summary>
    /// <param name="gameState">The game state to remove.</param>
    protected void RemoveRequiredGameState(GameStateName gameState)
    {
        if (!nodeCanvas.requiredGameStates.Contains(gameState))
        {
            return;
        }

        nodeCanvas.requiredGameStates.Remove(gameState);
    }
Exemplo n.º 2
0
    /// <summary>
    /// Adds a game state to the list of prerequisite game states.
    /// </summary>
    /// <param name="gameState">The game state to add.</param>
    protected void AddRequiredGameState(GameStateName gameState)
    {
        if (nodeCanvas.requiredGameStates.Contains(gameState))
        {
            return;
        }

        nodeCanvas.requiredGameStates.Add(gameState);
    }
Exemplo n.º 3
0
        ///TODO consider switching this to a more intelligent state machine
        ///state names given in GameStateName enum
        ///for each state trigger OnEnter####State and OnExit#####State
        ///when state is entered, trigger OnEnter####State()
        ///this should include storing the state
        ///when new state is entered, trigger OnExit for the old state (if it exists)
        ///TryChangeGameState() should take statename and use this to select the relevant entry and exit methods - this removes the switching needed in other classes.

        public void TryChangeGameState(GameStateName newGameState)
        {
            if (newGameState != gameState)
            {
                gameState = newGameState;
                onGameStateChange?.Invoke(gameState);
                Debug.Log("new game state:" + gameState);
            }
        }
Exemplo n.º 4
0
 private void GameStateSwitcher(GameStateName state)
 {
     if (state == GameStateName.Initialising)
     {
         Initialise();
     }
     if (state == GameStateName.Selection1)
     {
         //wait
     }
 }
Exemplo n.º 5
0
 private void GameStateSwitcher(GameStateName state)
 {
     if (state == GameStateName.Initialising)
     {
         ToggleButtons(false);
     }
     if (state == GameStateName.Selection1)
     {
         ToggleButtons(true);
     }
     if (state == GameStateName.Selection2)
     {
         ToggleButtons(false);
     }
 }
Exemplo n.º 6
0
    private void AddNewState()
    {
        GameStateName temp = ScriptableObject.CreateInstance <GameStateName>();

        gameStateAsset.gameStates.Add(temp);
    }
Exemplo n.º 7
0
 private void Initialise(GameStateName state)
 {
     ToggleVisibility(false);
 }