Ejemplo n.º 1
0
    private static void LoadGameStateAsset()
    {
        gameStateAsset = AssetDatabase.LoadAssetAtPath <GameStateAsset>("Assets/Resources/GameState/GameStateData.asset");

        if (!gameStateAsset)
        {
            CreateGameStateAsset();
        }
    }
Ejemplo n.º 2
0
    private static void CreateGameStateAsset()
    {
        gameStateAsset = ScriptableObject.CreateInstance <GameStateAsset>();
        gameStateAsset.Initialize();

        AssetDatabase.CreateAsset(gameStateAsset, "Assets/Resources/GameState/GameStateData.asset");
        AssetDatabase.SaveAssets();
        AssetDatabase.Refresh();
    }
Ejemplo n.º 3
0
 public void OnChangeRequest(GameStateAsset a, GameStateAsset b)
 {
     if (a == null)
     {
         // only for first state
         Color imgc = img.color;
         imgc.a    = 1.0f;
         img.color = imgc;
     }
 }
Ejemplo n.º 4
0
    /// <summary>
    /// Loads and parses the data from the GameStatData Scriptable Object Asset.
    /// </summary>
    private void LoadStateData()
    {
        GameStateAsset gameStateAsset = Resources.Load <GameStateAsset>(gameStateAssetDirectory);

        gameStates = new Dictionary <string, bool>();

        // Initialize hash table with all game states set to false.
        foreach (GameStateName state in gameStateAsset.gameStates)
        {
            gameStates.Add(state.eventName, false);
        }
    }
Ejemplo n.º 5
0
    /// <summary>
    /// Loads the main game state asset into memory and adds all the Game States to the requiredGameStateNames list.
    /// </summary>
    protected void InitGameStateData()
    {
        // Modify this file path if needed.
        gameStateAsset = Resources.Load <GameStateAsset>("GameState/GameStateData");

        // Initialize list of game state names. These names will be displayed on the side window.
        requiredGameStateNames = new List <string>();

        // Initialize the list of bools for which game states are selected as prerequisite states for this interaction.
        _nodeCanvas.requiredGameStateSelections = new List <bool>();

        // Iterate over the game states and populate the list of names and bools.
        foreach (GameStateName state in gameStateAsset.gameStates)
        {
            requiredGameStateNames.Add(state.eventName);
            _nodeCanvas.requiredGameStateSelections.Add(false);
        }
    }
Ejemplo n.º 6
0
    private void OnEnable()
    {
        checker = (GameStateChecker)target;

        gameState = Resources.Load <GameStateAsset>("GameState/GameStateData");

        requiredStateSelections = new List <bool>();

        // Load serialized data from GameStateChecker into our lists.
        for (int i = 0; i < gameState.gameStates.Count; i++)
        {
            if (checker.GetRequiredStates().Contains(gameState.gameStates[i].eventName))
            {
                requiredStateSelections.Add(true);
            }
            else
            {
                requiredStateSelections.Add(false);
            }
        }
    }
Ejemplo n.º 7
0
 public void OnLoaded(GameStateAsset a)
 {
     loading.SetActive(false);
 }
Ejemplo n.º 8
0
 public void OnChangeRequest(GameStateAsset a, GameStateAsset b)
 {
     loading.SetActive(true);
 }