예제 #1
0
    /// <summary>
    /// Load a game from a provided string
    /// </summary>
    /// <param name="save"> Serialization string of the saved gameObject</param>
    public static void LoadFromString(string save)
    {
        bool fromNone = false;

        if (_saveName == "None")
        {
            _saveName = "Default";
            fromNone  = true;
        }
        if (!string.IsNullOrEmpty(saveName))
        {
            _saveName = saveName;
        }
#if UNITY_EDITOR
        if (fromNone)
        {
            NewGame();
        }
#endif
        JSONLevelSerializer.Deserialize(save);
#if UNITY_EDITOR
        lastSave = save;
#endif


        instance.Refresh();
    }
예제 #2
0
    /// <summary>
    /// Load a game
    /// </summary>
    /// <param name="saveName"> The name of the "file" you want to load, will load the default or currently loaded "file" if left blank</param>
    public static void Load(string saveName = "")
    {
        bool fromNone = false;

        if (_saveName == "None")
        {
            _saveName = "Default";
            fromNone  = true;
        }
        if (!string.IsNullOrEmpty(saveName))
        {
            _saveName = saveName;
        }

        if (UnityEngine.PlayerPrefs.HasKey(_saveName))
        {
#if UNITY_EDITOR
            if (fromNone)
            {
                NewGame();
            }
#endif
            string save = UnityEngine.PlayerPrefs.GetString(_saveName);
            JSONLevelSerializer.Deserialize(save);
#if UNITY_EDITOR
            lastSave = save;
            if (lastSave == "")
            {
                //Prevents "value not used" prompt. The value lastSave is used in the Editor Script.
            }
#endif
        }
        else
        {
            NewGame();
        }

        instance.Refresh();
    }