private void Awake() { Office = GetComponent <GameModeOffice>(); Shop = GetComponent <GameModeShop>(); ChangeGameMode(InitGameMode); }
public void LoadGame(int saveSlot) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(GetSaveFilePath(saveSlot), FileMode.Open); SaveData loadData = (SaveData)bf.Deserialize(file); Debug.Log(loadData.Name); file.Close(); GameData gameData = loadData.GameData; GameModeOffice gmOffice = GameModeManager.Office; GameModeShop gmShop = GameModeManager.Shop; //Load data from GameData object (loadData): Player = gameData.Player; if (CurrentUsername != Player.Name) { Debug.Log("*Player name in save file is not the same as the current username. Changed. (CurrentUserName: "******"; Save Username: "******"[SAVE SLOT: " + saveSlot.ToString() + "] GAME DATA LOADED!"); }
public void SaveGame(int saveSlot, string saveName = null) { BinaryFormatter bf = new BinaryFormatter(); GameModeOffice gmOffice = GameModeManager.Office; GameModeShop gmShop = GameModeManager.Shop; Player.CharacterCustomizationData = CurrentPlayerObject.GetComponent <CharacterCustomizationScript>().GetCustomizationData(); Player.OfficeCustomizationData = CustomizationManager.Office.GetCustomizationData(); //Save data to GameData object (saveData): GameData gameData = new GameData { Player = this.Player, Suppliers = SupplierManager.Suppliers, Orders = OrderManager.Orders, OrdersCountOpen = OrderManager.CountOpen, OrdersCountCompleted = OrderManager.CountCompleted, OrdersCountFailed = OrderManager.CountFailed, OrdersCountCompletedToday = OrderManager.CountCompletedToday, OrdersCountFailedToday = OrderManager.CountFailedToday, Difficulty = this.Difficulty, GameDateTime = this.GameDateTime, GameDateTimeStart = this.GameDateTimeStart, DayDebt = this.DayDebt, WeekCurrent = this.WeekCurrent, ChanceNextOrder = gmOffice.ChanceNextOrder, ShopUnlocked = this.ShopUnlocked, DayEnd = this.DayEnd, DayEndCurrent = this.dayEndCurrent, Notifications = this.Notifications, GameMode = GameModeManager.GameMode_Current }; if (saveName == null || saveName == "") { saveName = string.Format("{0} {1}", SaveNameDefault, saveSlot.ToString().PadLeft(3, '0')); } Debug.Log(saveName); SaveData saveData = new SaveData { Name = saveName, Date = DateTime.Now, GameData = gameData }; FileStream file = File.Create(GetSaveFilePath(saveSlot)); bf.Serialize(file, saveData); file.Close(); //UPDATE DB: if (!OfflineMode) { DBPlayer p = Player.GetDBPlayer(); Debug.Log(p.Username + p.Experience + p.Money); bool s = DBManager.UpdatePlayer(Player.GetDBPlayer()); if (!s) { Debug.Log("Uh oh"); } else { Debug.Log("Player updated."); } } //LOG: Debug.Log("[SAVE SLOT: " + saveSlot.ToString() + "] GAME DATA SAVED TO '" + Application.persistentDataPath + "'!"); }