public void LoadGame() { FileStream saveFile; try { saveFile = File.Open("savegame", FileMode.Open); } catch (FileNotFoundException exception) { #if UNITY_EDITOR Debug.Log("FileNotFoundException : " + exception.Message); #endif return; } BinaryFormatter bn = new BinaryFormatter(); SavedPlayer player = bn.Deserialize(saveFile) as SavedPlayer; saveFile.Close(); if (player == null) { #if UNITY_EDITOR Debug.Log("player == null"); #endif return; } player.LoadData(GameManager.Instance.Player); }
public void SetPlayer(SavedPlayer savedPlayer) { if (_savedPlayer != null) { throw new Exception("Игрок уже назначен"); } _savedPlayer = savedPlayer; }
public void SaveGame() { SavedPlayer player = new SavedPlayer(); player.SaveData(GameManager.Instance.Player); FileStream saveFile = File.Open("savegame", FileMode.Create); BinaryFormatter bf = new BinaryFormatter(); bf.Serialize(saveFile, player); saveFile.Close(); }
public void saveGame() { Game currentGame = GameObject.Find("GameManager").GetComponent <Game>(); SavedGame savedGame = new SavedGame(); // Save the values of the fields of Game savedGame.currentPlayer = currentGame.currentPlayer.name; savedGame.numberOfTurns = currentGame.numberOfTurns; savedGame.PVCExists = currentGame.PVCExists; savedGame.turnState = currentGame.GetTurnState(); for (int i = 0; i < currentGame.players.Length; i++) { Player player = currentGame.players[i]; SavedPlayer playerState = new SavedPlayer(); // Save the properties directly related to the player playerState.name = player.name; playerState.beer = player.GetBeer(); playerState.knowledge = player.GetKnowledge(); playerState.color.Add(player.GetColor().r); playerState.color.Add(player.GetColor().g); playerState.color.Add(player.GetColor().b); playerState.color.Add(player.GetColor().a); playerState.human = player.IsHuman(); playerState.active = player.IsActive(); // Save the player's owned sectors foreach (Sector sector in player.ownedSectors) { playerState.sectors.Add(sector.name, sector.GetPVC()); } // Save the player's units foreach (Unit unit in player.units) { SavedUnit playerUnit = new SavedUnit(); playerUnit.sector = unit.GetSector().name; playerUnit.level = unit.GetLevel(); playerState.units.Add(playerUnit); } savedGame.players.Add(player.name, playerState); } // Save it on the system File.WriteAllText(GetPath(), JsonConvert.SerializeObject(savedGame)); }
/// <summary> /// Сохраняет данные о пользователе в файл /// </summary> /// <param name="playerData"></param> public void SavePlayerData(SavedPlayer playerData) { if (playerData == null) { throw new ArgumentNullException(nameof(playerData)); } var bf = new BinaryFormatter(); using (var dataFile = new FileStream($"{_savesPath}/{PlayerDataFileName}", FileMode.Create)) { bf.Serialize(dataFile, playerData); } }
public bool IsPlayerNewHighscore(int score) { if (highscorePlayers.Count <= maxNumberPlayers || highscorePlayers == null) { return(true); } Sort(); SavedPlayer lowestPlayer = highscorePlayers [highscorePlayers.Count - 1]; //last if (lowestPlayer.score < score) { return(true); } return(false); }
private void ListPlayer(int x, int page, int playernumber) { AddPage(page); SavedPlayer s_Player = SavedInformation[playernumber - 1] as SavedPlayer; if (delete) { AddButton(208, 172 + (x * 24), 5531, 5530, playernumber, GumpButtonType.Reply, 0); AddLabel(290, 172 + (x * 24), 200, s_Player.AllInfo()); } else { AddButton(208, 172 + (x * 24), 4005, 4006, playernumber, GumpButtonType.Reply, 0); AddLabel(245, 172 + (x * 24), 200, s_Player.AllInfo()); } }
public void Test() { SavedPlayer p1 = new SavedPlayer(9, "Hi"); SavedPlayer p2 = new SavedPlayer(3, "AAA"); SavedPlayer p3 = new SavedPlayer(2, "BB"); highscorePlayers = new List <SavedPlayer> (); highscorePlayers.Add(p1); highscorePlayers.Add(p2); highscorePlayers.Add(p3); highscorePlayers.Sort((x, y) => y.score.CompareTo(x.score)); for (int i = 0; i < highscorePlayers.Count; i++) { Debug.Log(highscorePlayers [i].name + " " + highscorePlayers [i].score); } }
/// <summary> /// Запрос на аутентификацию /// </summary> /// <returns></returns> public async Task <SavedPlayer> Authenticate() { var playerData = _saveService.GetPlayerData(); if (playerData == null) { var response = await _authClient.Token(PlayerNameGenerator.Generate()); playerData = new SavedPlayer() { Name = response.PlayerName, Token = response.Token, Id = response.PlayerId }; _saveService.SavePlayerData(playerData); } else { if (playerData.Token == null) { var response = await _authClient.Token(string.IsNullOrWhiteSpace(playerData.Name)?PlayerNameGenerator.Generate() : playerData.Name); playerData.Token = response.Token; playerData.Name = response.PlayerName; playerData.Id = response.PlayerId; _saveService.SavePlayerData(playerData); } else { if (!await _authClient.CheckToken(playerData.Token)) { var response = await _authClient.Token(string.IsNullOrWhiteSpace(playerData.Name)?PlayerNameGenerator.Generate() : playerData.Name); playerData.Token = response.Token; playerData.Name = response.PlayerName; playerData.Id = response.PlayerId; _saveService.SavePlayerData(playerData); } } } return(playerData); }
public bool AttemptAddPlayer(string playerName, int score) { if (highscorePlayers.Count < maxNumberPlayers) { highscorePlayers.Add(new SavedPlayer(score, playerName)); return(true); } Sort(); SavedPlayer lowestPlayer = highscorePlayers [highscorePlayers.Count - 1]; //last if (lowestPlayer.score < score) { highscorePlayers.Add(new SavedPlayer(score, playerName)); highscorePlayers.Sort((x, y) => y.score.CompareTo(x.score)); highscorePlayers.RemoveAt(highscorePlayers.Count - 1); return(true); } return(false); }
public override void OnResponse(Server.Network.NetState sender, RelayInfo info) { if ((SavedInformation.Count > 0) && (info.ButtonID != 0)) { try { SavedPlayer s_Player = SavedInformation[info.ButtonID - 1] as SavedPlayer; if (s_Player == null) { m_Player.SendMessage("Non-existant memory item!"); return; } if (delete) { m_Player.SendMessage("{0} has been removed from the stone.", s_Player.GetName()); m_Stone.DeleteEntry(info.ButtonID - 1, m_Player); } else { m_Player.Target = new RestoreTarget(s_Player, m_Stone); m_Player.SendMessage("To whom do you wish to restore the information of {0}", s_Player.GetName()); } } catch { m_Player.SendMessage("An error occured, the memory item for the player has likely been removed."); } } else { m_Player.SendMessage("Request cancelled."); } }
public Client(int id, NetPeer peer, SavedPlayer player) { this.id = id; this.peer = peer; this.player = player; }
public RestoreTarget(SavedPlayer item, StoneOfSaving stone) : base(-1, false, TargetFlags.None) { s_Player = item; m_Stone = stone; }