private void LoadPlayer() { if (File.Exists(SaveFilePath)) { // バイナリ形式でデシリアライズ BinaryFormatter bf = new BinaryFormatter(); // 指定したパスのファイルストリームを開く FileStream file = File.Open(SaveFilePath, FileMode.Open); try { // 指定したファイルストリームをオブジェクトにデシリアライズ。 SavePlayerData player = (SavePlayerData)bf.Deserialize(file); // 読み込んだデータを反映。 var playerObject = Instantiate(playerPrefab) as GameObject; playerObject.GetComponent <PlayerController>().Init(player.name, player.age, player.color); } finally { // ファイル操作には明示的な破棄が必要です。Closeを忘れないように。 if (file != null) { file.Close(); } } } else { Debug.Log("no load file"); } }
void Start() { if (buttonIndex >= 10) // jeśli buttony to "X" do usuwania save'ów { return; } descriptionManager = GameObject.FindWithTag("Description").GetComponent <DescriptionManager>(); data = SaveSystem.LoadSaveData(buttonIndex); if (data != null) // save exists { this.GetComponentInChildren <Text>().text += " - zajęty"; } else // save doesn't exist { this.GetComponentInChildren <Text>().text += " - wolny"; try { Xbutton.SetActive(false); } catch (NullReferenceException) { // jeśli Xbutton nie znaleziony, to mamy do czynienia z buttonami w scenie Save Game, które nie mają swoich Xbuttonów - jest okej ;) } } }
//現在の状況をセーブデータにする。プレー時間、お金、キャラの状態、進行度 private SavePlayerData CreateSavePlayerData() { SavePlayerData savePlayerData = new SavePlayerData(); //仲間キャラの状態 savePlayerData.unitList = UnitController.unitList; //お金 savePlayerData.cash = CashManager.cash; //210303 明けた宝箱 savePlayerData.treasureList = AcquiredTreasureManager.treasureList; //進行度 savePlayerData.chapter = ChapterManager.chapter; //時間 savePlayerData.hour = PlayTimeManager.hour; savePlayerData.minute = PlayTimeManager.minute; //ルート、難易度、モード savePlayerData.route = ModeManager.route; savePlayerData.difficulty = ModeManager.difficulty; savePlayerData.mode = ModeManager.mode; return(savePlayerData); }
//セーブボタンから呼ばれ、セーブを行う public SavePlayerData Save(int buttonId) { //現在の状況をセーブデータにする SavePlayerData saveData = CreateSavePlayerData(); //ボタンのIdによってファイル名を変える filename = buttonId + ".save"; saveFilePath = Application.persistentDataPath + "/" + filename; BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Create(saveFilePath); try { // 指定したオブジェクトを上で作成したストリームにシリアル化する bf.Serialize(file, saveData); } finally { // ファイルの破棄 if (file != null) { file.Close(); } } Debug.Log("セーブ実行"); return(saveData); }
public static bool listInit; //TODO: This also needs to be saved private void Start() { SavePlayerData saveForAchievement = SaveSystem.LoadPlayer(); if (saveForAchievement != null) { listInit = saveForAchievement.saveListInit; player.playedLevel17 = saveForAchievement.savePlayedLevel17; leastLives = saveForAchievement.saveLeastLives; } if (!listInit) { leastLives = new List <int> { 1, 1, 1, //Map0 2, 2, 3, //Map1 +3 2, 2, //Map2 +6 5, 3, //Map3 +8 1, 2, 1, //Map4 +10 1, //Map5 +13 1, 1, //Map6 +14 2, //Map7 +16 3, 2, //Map8 +17 1, //Map9 +19 1, //Map10 +20 2, 1, //Map11 +21 3, //Map12 +23 3 //Map13 +24 }; listInit = true; } //unlockAchievement("achievement_00"); }
public virtual void Save(SavePlayerData data) { foreach (var item in PlayerDataGroup.Components.Where(p => p.IsDirty)) { Repository.SaveComponent(item); } }
private static SavePlayerData CreateSavePlayerData() { SavePlayerData player = new SavePlayerData(); player.score = (float)gameSystemManager.GetDistance(); return(player); }
public static void SavePlayerData() { if (!Directory.Exists(SaveDataFolderPath)) { Directory.CreateDirectory(SaveDataFolderPath); } //StreamWriter writer; SavePlayerData data = CreateSavePlayerData(); string jsonData = JsonUtility.ToJson(data); //writer = new StreamWriter(Path.Combine(SaveDataFilePath + ".json"), false); //writer.Write(jsonData); //writer.Flush(); //writer.Close(); var file = new FileStream(Path.Combine(SaveDataFilePath + ".json"), FileMode.Create, FileAccess.Write); // 文字列をbyte配列に変換 byte[] bytes = System.Text.Encoding.UTF8.GetBytes(jsonData); // ファイルに保存 file.Write(bytes, 0, bytes.Length); file.Close(); }
public static void LoadPlayer(int saveNumber) // odczytywanie save'ów i załadowanie sceny w której ostatnim razem znajdował się gracz { string path = Application.persistentDataPath + "/UrorumsSave" + saveNumber + ".binsave"; if (File.Exists(path)) { BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); SavePlayerData data = formatter.Deserialize(stream) as SavePlayerData; stream.Close(); if (PlayerPrefs.GetInt("CurrentSave") == 0) // CurrentSave może być równe 0 tylko wtedy, gdy wybrana została opcja New Game i następuje pierwszy zapis z wyborem slota. { PlayerPrefs.SetInt("CurrentSave", saveNumber); // Nie zmieniamy wtedy CurrentSave, bo saveNumber w tymczasowym savie wynosi 0. } PlayerPrefs.SetFloat("HeroHealth", data.health); PlayerPrefs.SetFloat("HeroPositionX", data.position[0]); PlayerPrefs.SetFloat("HeroPositionY", data.position[1]); PlayerPrefs.SetFloat("HeroPositionZ", data.position[2]); PlayerPrefs.SetString("SaveDate", data.saveDate); PlayerPrefs.SetInt("CurrentScene", data.currentScene); SceneManager.LoadScene(data.currentScene); Debug.Log("hero health: " + PlayerPrefs.GetFloat("HeroHealth") + "\nPos.x: " + PlayerPrefs.GetFloat("HeroPositionX") + "\nPos.y: " + PlayerPrefs.GetFloat("HeroPositionY") + "\nPos.z: " + PlayerPrefs.GetFloat("HeroPositionZ")); Debug.Log("Current scene: " + data.currentScene); return; } else { Debug.LogError("Save number " + saveNumber + " not found in " + path); return; } }
public static void SavePlayer(int saveNumber) // Odczytuje tymczasowy zapis o indeksie 0 i zapisuje w slocie o wskazanym indeksie. Na końcu wywołuje LoadPlayer() i wczytuje ponownie grę. { string path = Application.persistentDataPath + "/UrorumsSave0.binsave"; if (File.Exists(path)) { BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); SavePlayerData heroData = formatter.Deserialize(stream) as SavePlayerData; stream.Close(); path = Application.persistentDataPath + "/UrorumsSave" + saveNumber + ".binsave"; stream = new FileStream(path, FileMode.Create); formatter.Serialize(stream, heroData); stream.Close(); LoadPlayer(saveNumber); } else { Debug.LogError("Temporary save number 0 not found in " + path); return; } }
public void Load() { if (File.Exists(Application.persistentDataPath + "/playerData.dat")) { BinaryFormatter BinForm = new BinaryFormatter(); //creates a new variabe called "BinForm" that stores a "binary formatter" in charge of writing files to binary FileStream file = File.Open(Application.persistentDataPath + "/playerData.dat", FileMode.Open); // if the file already exists it opens that file SavePlayerData sp = (SavePlayerData)BinForm.Deserialize(file); // deserialized the file and casts it to something we can understand (gamedata)binForm file.Close(); // closes file string json = JsonUtility.ToJson(sp); Debug.Log("Just loaded" + json); this.player = new Player(this.assetData, sp); if (sp.weapon != null) { sp.weapon.ReloadImage(this.assetData); } if (sp.armor != null) { sp.armor.ReloadImage(this.assetData); } foreach (var i in sp.itemList) { i.ReloadImage(this.assetData); } foreach (var i in sp.usableItemList) { i.ReloadImage(this.assetData); } } }
//クリック時の処理 public void OnClick() { //210205 効果音再生 AudioSource audioSource = GameObject.Find("BGMManager").GetComponent <AudioSource>(); if (audioSource == null) { audioSource = (Instantiate(Resources.Load("Prefabs/BGMManager")) as GameObject).GetComponent <AudioSource>(); } audioSource.Play(); //ボタンのモードがSAVEの時 if (saveAndLoadManager.mode == FileControlMode.SAVE) { //セーブ実行 SavePlayerData saveData = saveAndLoadManager.Save(id); //セーブした内容をボタンに反映する UpdateText(saveData); } else if (saveAndLoadManager.mode == FileControlMode.LOAD) { //モードがLOADの時 saveAndLoadManager.Load(id); } else { //210512 データ消去の時 saveAndLoadManager.Delete(id); UpdateText(); } }
//ボタンのテキストを更新する public void UpdateText(SavePlayerData saveData) { //ルート、難易度、モード nameText.text = saveData.route.GetStringValue(); difficultyText.text = saveData.difficulty.GetStringValue(); modeText.text = saveData.mode.GetStringValue(); //章saveData.chapterでenumのIDを取得してString型に変換 int chapterNam = (int)saveData.chapter; //210512 10以上の章はレミリアルート 章追加したら10では合わなくなるので訂正すること if (chapterNam > 10) { chapterNam = (int)saveData.chapter - 10; } //章の名前 chapterNamText.text = string.Format("第{0}章", chapterNam.ToString()); chapterText.text = saveData.chapter.GetStringValue(); //時間 timeText.text = saveData.hour.ToString() + ":" + saveData.minute.ToString("00"); //テキスト群を表示させる SaveDataExistView.SetActive(true); //セーブデータが存在しない表記を消す SaveDataEmptyView.SetActive(false); }
public void Initialize() { Init = false; PlayerButtonIndex = 0; PlayerList = PlayerManager.GetComponent <PlayerManager>().UserPlayerData; ClearPlayerButtons(); PopulatePlayerButtons(); }
public void LoadPlayerData() { _data = LoadXML(_FileLocation + "/" + _PlayerDataFileName); if (_data.ToString() != "") { UserPlayerData = (SavePlayerData)DeserializeObject(_data, "SavePlayerData"); } }
void Awake() { VersionNumber = "1.0"; _FileLocation = Application.persistentDataPath; //Debug.Log(_FileLocation); _PlayerDataFileName = "PlayerData.xml"; // temporarily get these locally. change this to be downloaded from the server UserPlayerData = new SavePlayerData(); }
private void LoopGroupNode24_Next() { // SetVariableNode LoopGroupNode24_Item.BestScore = (System.Int32)Group.Score; // PublishEventNode var PublishEventNode26_Event = new SavePlayerData(); System.Publish(PublishEventNode26_Event); PublishEventNode26_Result = PublishEventNode26_Event; }
// 入力された情報をもとにセーブデータを作成 private SavePlayerData CreateSavePlayerData() { SavePlayerData player = new SavePlayerData(); player.name = nameInput.text; player.age = int.Parse(ageDropdown.options[ageDropdown.value].text); player.color = colorDropdown.options[colorDropdown.value].text; return(player); }
void Start() { localization = GameObject.Find("LocalizationManager").GetComponent <LocalizationManager>(); SavePlayerData saveForMakeSentence = SaveSystem.LoadPlayer(); if (saveForMakeSentence != null) { displayedLevel1_Sentence1 = saveForMakeSentence.saveDisplayLevel1_Sentence1; } }
public static void SavePlayer(Player player) { BinaryFormatter formatter = new BinaryFormatter(); string path = Application.persistentDataPath + "/player.save"; FileStream stream = new FileStream(path, FileMode.Create); SavePlayerData data = new SavePlayerData(player); formatter.Serialize(stream, data); stream.Close(); }
public static void SavePlayer(int saveNumber, HeroManager hero) // quick save, szybkie zapisywanie stanu gry przy użyciu hot key "s" oraz tymczasowy save przy otwieraniu sceny "Save Game" (scena nr 5) { BinaryFormatter formatter = new BinaryFormatter(); string path = Application.persistentDataPath + "/UrorumsSave" + saveNumber + ".binsave"; FileStream stream = new FileStream(path, FileMode.Create); SavePlayerData data = new SavePlayerData(hero); formatter.Serialize(stream, data); stream.Close(); Debug.Log("Game progress saved successfully!"); }
private void Start() { UpdateSpeed(1 - PlayerPrefs.GetInt("playerSpeed") * 0.25f); Pools = GameObject.Find("Pools").GetComponent <ObjectPooler>(); mapData = VII.SceneDataManager.Instance.GetMapData(); if (VII.SceneManager.instance.GetSave()) { SavePlayerData data = SaveSystem.LoadPlayer(); currentMapID = data.saveMapId; currentLevelID = data.saveLevelId; } else { currentMapID = VII.SceneManager.instance.GetStartMapID(); currentLevelID = VII.SceneManager.instance.GetStartLevelID(); } if (currentMapID > 0) { for (int i = 0; i < currentMapID; i++) { mapData[i].GetMapObject().SetActive(false); } } if (currentLevelID > 0) { mapData[currentMapID].GetLevelData()[currentLevelID - 1].GetCheckpoint().activated = true; } for (int i = 0; i < mapData[currentMapID].GetLevelData()[currentLevelID].GetLevelObject().transform.childCount; i++) { if (mapData[currentMapID].GetLevelData()[currentLevelID].GetLevelObject().transform.GetChild(i).name == "Level_blocker") { mapData[currentMapID].GetLevelData()[currentLevelID].GetLevelObject().transform.GetChild(i).GetComponent <Wall>().Move(new Vector3(0, 1, 0)); } if (mapData[currentMapID].GetLevelData()[currentLevelID].GetLevelObject().transform.GetChild(i).name == "Level_blocker2") { mapData[currentMapID].GetLevelData()[currentLevelID].GetLevelObject().transform.GetChild(i).GetComponent <Wall>().Move(new Vector3(0, -1, 0)); } } mapData[currentMapID].GetLevelData()[currentLevelID].SetTilesEnabledState(true); currentRespawnPoint = mapData[currentMapID].GetLevelData()[currentLevelID].GetRespawnPoint(); bestLifeCost = mapData[currentMapID].GetLevelData()[currentLevelID].GetBestLivesCost(); transform.position = currentRespawnPoint.transform.position + VII.GameData.PLAYER_RESPAWN_POSITION_OFFSET; currentRespawnPoint.playerInside = true; tilePlayerInside = currentRespawnPoint; VII.VIIEvents.PlayerRespawnEnd.Invoke(this); m_playerData.playerState = VII.PlayerState.IDLE; VII.SceneDataManager.Instance.GetCurrentLevelData().GetRespawnPoint().SetBaseAnimator(true); UIManager.UIInstance.UpdateUI(); m_PlayerAnimationController.InitStepUI(); VII.VIIEvents.PlayerRegisterEnd.Invoke(this); }
void Start() { GameObject[] all_Virtual_Cameras = GameObject.FindGameObjectsWithTag("VirtualCamera"); foreach (var vc in all_Virtual_Cameras) { vc.SetActive(false); } if (VII.SceneManager.instance.GetSave()) { SavePlayerData data = SaveSystem.LoadPlayer(); level_index = data.saveLevelIndex; pp_index = data.savePPIndex; fog_index = data.saveFogIndex; } else { level_index = VII.SceneManager.instance.GetStartLevelIndex(); pp_index = VII.SceneManager.instance.GetStartPPIndex(); fog_index = VII.SceneManager.instance.GetStartFogIndex(); } for (int i = 0; i < cinema_list.Count; i++) { if (i == level_index) { cinema_list[i].SetActive(true); } else { cinema_list[i].SetActive(false); } } StartCoroutine(InitPostProcessing()); for (int i = 0; i < fog_list.Count; i++) { if (i == fog_index) { fog_list[i].SetActive(true); fog_list[i].GetComponent <ParticleSystem>().Play(); } else { fog_list[i].SetActive(false); } } player = GameObject.FindGameObjectWithTag("Player").GetComponent <Player>(); if (player == null) { Debug.LogError("CameraManager: Player not found!"); } }
public void DoEachCustomerData() { SavePlayerData levelsave = new SavePlayerData(); levelsave.theTimeUsedToRememberTheitem = recipeManager.usedTimeForRemember; levelsave.theTimeUsedToServeCustomer = usedTimeForEachCustomer; levelsave.numOfHintsUsedForEachCustomer = usedHintsForEachCustomer; levelsave.numOfHintsUsedAfterDistractionHappend = numOfHintsUsedAfterDistractionHappend; levelsave.numOfWrongCounterForEachCustomer = numOfWrongCounterForEachCustomer; levelsave.numOfHintsUsedAfterWrongAnswer = numOfHintsUsedAfterWrongAnswer; levelsave.isDistractionHappendForCustomer = isDistractionHappendForCustomer; levelsave.numOfWrongCounterAfterDistractionHappend = numOfWrongCounterAfterDistractionHappend; sendDataList.Add(levelsave); }
public static void RegisterPlayerBttn(string displayName, string password, string email, string fname, string lname, int age, string gender, string school, string major, string schoolYear, Text textError, Text emailError, GameObject panel, GameObject start, GameObject goBack, Text succefullReg) { GSRequestData sd = new GSRequestData(). AddString("displayName", displayName). AddString("email", email). AddString("userName", displayName); new GameSparks.Api.Requests.RegistrationRequest() .SetDisplayName(displayName) .SetUserName(displayName) .SetPassword(password) .SetScriptData(sd) .Send((response) => { if (!response.HasErrors) { Debug.Log("Player Registered \n User Name: " + response.DisplayName); SavePlayerData.SaveData(email, fname, lname, age, gender, school, major, schoolYear); stopMusic = true; /* after all is checked a ConfirmationRegistration form is displayed*/ RegistrationConfirmation.Confirmation(panel, start, goBack, succefullReg); textError.text = " "; SaveLevel.saveLevel(); } else { /**it handles when username is not unique**/ if (response.Errors.JSON.Contains("Email")) { emailError.text = "Email has been taken"; emailError.color = Color.red; } else { textError.text = "Username has been taken"; textError.color = Color.red; } } }); }
public Player(AssetData assetData, SavePlayerData sp) { this.Name = sp.Name; this.TotalHP = sp.TotalHP; this.HP = sp.HP; this.Level = sp.Level; this.XP = sp.XP; this.spriteAssetData = sp.spriteAssetData; this.avatarSprite = assetData.getSprite(sp.spriteAssetData); this.itemList = sp.itemList; this.usableItemList = sp.usableItemList; this.weapon = sp.weapon; this.armor = sp.armor; }
public void Save() { SavePlayerData sp = SavePlayerData.fromPlayer(this.player); string json = JsonUtility.ToJson(sp); Debug.Log(json); BinaryFormatter BinForm = new BinaryFormatter(); // creates a new variabe called "BinForm" that stores a "binary formatter" in charge of writing files to binary var path = Application.persistentDataPath + "/playerData.dat"; FileStream file = File.Create(path); //creates a file BinForm.Serialize(file, sp); // writes the "data" container to the file file.Close(); // closes file Debug.Log("Data Saved to " + path); //Load (); }
private static void Main(string[] args) { #region Build World, Player WorldListBuilder.Generate(); #region Music - Used for testing will me moved to another location //SoundPlayer music = new SoundPlayer(); //music.SoundLocation = (@"../../.../Engine/Docs/Music/GodMode.wav"); //music.Play(); #endregion GameTitle.Title(); Console.WriteLine(""); LocationCurrent.CurrentLocation(); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Type help to see list of commands"); Console.Write("> "); #endregion while (true) { Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("< " + Player._player.NamePlayer + "-" + Player._player.ClassPlayer + " > <" + Player._player.HpCurrent + "/" + Player._player.HpMax + " HP" + " >"); Console.Write("> "); string inputUser = Console.ReadLine(); if (string.IsNullOrWhiteSpace(inputUser)) { continue; } string lowerInput = inputUser.ToLower(); Console.WriteLine(" "); if (lowerInput == "exit") //upon exit save player data { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Saving character"); SavePlayerData.SaveGameData(Player._player); break; } ParseInput(lowerInput); } }
void Start() { ins_audioManager = AudioManager.instance; pauseMenu.SetActive(false); menuDisplayed = false; if (SceneManager.instance.GetSave()) { SavePlayerData data = SaveSystem.LoadPlayer(); musicSlider.value = data.saveMusicVolume; soundSlider.value = data.saveSoundVolume; } else { musicSlider.value = SceneManager.instance.GetStartMusicVolume(); soundSlider.value = SceneManager.instance.GetStartSoundVolume(); UpdateMusicVolume(); UpdateSoundVolume(); } }
public static SavePlayerData fromPlayer(Player p) { SavePlayerData sp = new SavePlayerData(); sp.Name = p.Name; sp.XP = p.XP; sp.Level = p.Level; sp.TotalHP = p.TotalHP; sp.HP = p.HP; sp.Gold = p.Gold; sp.spriteAssetData = p.spriteAssetData; sp.itemList = p.itemList; sp.usableItemList = p.usableItemList; sp.weapon = p.weapon; sp.armor = p.armor; return(sp); }