// public void OpenAddBattlerPanel() // { // panel.Init(new BattlerData(), AddBattler); // } // public void AddBattler(BattlerData data) // { // battlers[data.pkID] = data; // RefreshBattlerList(); // } // public void RemoveBattler() // { // if (highlightPKButton == null) // return; // try // { // BattlerData data; // int id = int.Parse(highlightPKButton.name); // if (battlers.TryGetValue(id, out data)) // { // battlers.Remove(id); // RefreshBattlerList(); // } // } // catch { } // } // public void AddToPlayer() // { // if (highlightPKButton == null) // return; // BattlerData data; // if (TryGetBattlerByString(highlightPKButton.name, out data)) // { // playerList.Add(data.pkID); // Utilities.RefreshPKLayoutGroup(playerBattlersRoot, playerList, OnClickPlayerBattler); // OnClickBattler(highlightPKButton); // SaveBattlersData(); // } // } // public void RemovePlayerBattler() // { // if (highlightPlayerPKButton == null) // return; // int id = int.Parse(highlightPlayerPKButton.name); // if (playerList.Contains(id)) // { // playerList.Remove(id); // Utilities.RefreshPKLayoutGroup(playerBattlersRoot, playerList, OnClickPlayerBattler); // SaveBattlersData(); // } // } // void RefreshBattlerList() // { // for (int i = 0; i < battlersRoot.childCount; i++) // { // Destroy(battlersRoot.GetChild(i).gameObject); // } // foreach (int id in battlers.Keys) // { // BattlerData data = battlers[id]; // Sprite sprite = null; // if (Main.Instance.pokeImages.TryGetValue(id, out sprite)) // { // } // else // { // Debug.LogWarning("NO Image: " + id); // } // GameObject pkGO = GameObject.Instantiate(pkPrefab); // pkGO.name = id.ToString(); // pkGO.transform.SetParent(battlersRoot, false); // // Load Image // Image img = pkGO.transform.Find("Image").GetComponent<Image>(); // img.sprite = sprite; // // Load Name // Text txt = pkGO.GetComponentInChildren<Text>(); // txt.text = id.ToString(); // Button btn = pkGO.GetComponent<Button>(); // btn.onClick.AddListener(() => // { // OnClickBattler(btn); // }); // } // SaveBattlersData(); // } public void SaveBattlersData() { BattleManagerData saveData = new BattleManagerData(); saveData.playerList = playerList; foreach (BattlerData data in battlers.Values) { saveData.battlers.Add(data); } string saveString = JsonUtility.ToJson(saveData); Debug.Log("Save: " + saveString); string folderPath = Application.persistentDataPath; string path = Path.Combine(folderPath, "battlers.json"); File.WriteAllText(path, saveString); Debug.Log("Save to Path: " + path); }
void LoadBattlersData() { string folderPath = Application.persistentDataPath; string path = Path.Combine(folderPath, "battlers.json"); if (File.Exists(path) == false) { return; } string saveString = System.IO.File.ReadAllText(path); BattleManagerData saveData = JsonUtility.FromJson <BattleManagerData>(saveString); playerList = saveData.playerList; foreach (BattlerData data in saveData.battlers) { battlers.Add(data.pkID, data); } RefreshAllBattlerList(); }