public void Buy() { // Button name string name = EventSystem.current.currentSelectedGameObject.name; // Items string path = Application.dataPath + "/Data/ShopItems.json"; string jsonString = File.ReadAllText(path); Items it = JsonUtility.FromJson <Items>(jsonString); // Coins string path2 = Application.dataPath + "/Data/Coins.json"; string jsonString2 = File.ReadAllText(path2); CoinsController.Coins c = JsonUtility.FromJson <CoinsController.Coins>(jsonString2); // Buy item for (int i = 0; i < it.item_entry_list.Count; i++) { if (name == it.item_entry_list[i].name) { if (coins_serializable_value >= it.item_entry_list[i].price) { // Update coins_serializable_value int value = -it.item_entry_list[i].price; CoinsController.CoinsEntry ce = new CoinsController.CoinsEntry { value = value }; c.coins_list.Add(ce); string json = JsonUtility.ToJson(c); File.WriteAllText(path2, json); // Update interface GetCoins(); coins.text = coins_serializable_value.ToString(); // Update button EventSystem.current.currentSelectedGameObject.SetActive(false); // Serialize item BoughtItemsScript.AddEntry(name); string jsonString3 = File.ReadAllText(Application.dataPath + "/Data/BoughtItems.json"); //Debug.Log("Updated B: " + jsonString3); } else { //Debug.Log("NO money"); EventSystem.current.currentSelectedGameObject.GetComponentInChildren <TextMeshProUGUI>().text = "No money"; Invoke("changeButton", 1); } } } }
private void GetCoins() { string path = Application.dataPath + "/Data/Coins.json"; string jsonString = File.ReadAllText(path); CoinsController.Coins c = JsonUtility.FromJson <CoinsController.Coins>(jsonString); int v = 0; for (int i = 0; i < c.coins_list.Count; i++) { v += c.coins_list[i].value; } coins_serializable_value = v; }