public void Load(string inLoadCmd) { isLoading = true; if (inLoadCmd == "game" || inLoadCmd == "player") { if (inLoadCmd == "game") { inLoadCmd = appSettings.gameSave; } if (inLoadCmd == "player") { inLoadCmd = appSettings.playerSave; } BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(("" + Application.persistentDataPath + "\\" + inLoadCmd + ""), FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.Inheritable); #pragma warning disable 0219 // Used to quit its complaining as empty in this example, temp GameSaveStruct dataGS = (GameSaveStruct)bf.Deserialize(file); #pragma warning restore 0219 file.Close(); // Restore values from the save file to the game, an example use // gameCtrlr.score = dataGS.currentScore; // gameCtrlr.BroadcastMessage ("UpdateScore"); // gameCtrlr.levelSelector (dataGS.currentLvL); // if (gameCtrlr.playercontroller!=null){ // gameCtrlr.playercontroller.playerHealth.SetHealth(dataGS.currentHP); // gameCtrlr.playercontroller.playerSheildScript.SetSheildStrength(dataGS.currentSP); // _Controller.appSettings.testString = dataGS.stringText; // _Controller.appSettings.loadTest = dataGS.currentScore.ToString (); } if (_Controller.debugMsgsEnabled) { Debug.LogWarning("" + inLoadCmd + " loaded"); } isLoading = false; }
public void Save(string inSaveCmd) { isSaving = true; if (inSaveCmd == "game" || inSaveCmd == "newGame" || inSaveCmd == "player" || inSaveCmd == "newPlayer") { string savePath = "newFile"; if (inSaveCmd == "game" || inSaveCmd == "newGame") { savePath = appSettings.gameSave; } else if (inSaveCmd == "player" || inSaveCmd == "newPlayer") { savePath = appSettings.playerSave; } BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(("" + Application.persistentDataPath + "\\" + savePath + ""), FileMode.OpenOrCreate, FileAccess.ReadWrite); GameSaveStruct dataGS = new GameSaveStruct(); // if (inSaveCmd == "newGame" || inSaveCmd == "newPlayer") { // // Create basic save under the GameSaveStruct for both files as this script currently stands // dataGS.currentScore = 0; // dataGS.currentLvL = 1; // dataGS.currentHP = 3; // dataGS.currentSP = 0f; // dataGS.stringText = "hello"; // } else { // // Save the values from the current running game to the GameSaveStruct for both the game and player as script currently stands // dataGS.currentScore = gameCtrlr.score; // dataGS.currentLvL = gameCtrlr.appSettings.hazardCount-2; // dataGS.currentHP = gameCtrlr.playercontroller.playerHealth.Health(); // dataGS.currentSP = gameCtrlr.playercontroller.playerSheildScript.SheildHealth(); // } bf.Serialize(file, dataGS); file.Close(); } if (_Controller.debugMsgsEnabled) { Debug.LogWarning("" + inSaveCmd + " saved"); } isSaving = false; }