using System.Collections; using System.Collections.Generic; using TMPro; using UnityEngine; public class CoinCounter : MonoBehaviour { public TextMeshProUGUI tmp; public TextMeshProUGUI revengeSign; public GameObject revengeSignGo; void OnEnable() { SetRevengePriceVisibility(false); UpdateCoins(PlayerPrefs.GetInt("CoinsCount", 0)); SingleWallet.onCoinAdded.AddListener(UpdateCoins); SingleWallet.onCoinRemoved.AddListener(UpdateCoins); SettingsManager.OnSettingsChanged.AddListener(UpdateCoins); } private void OnDisable() { SingleWallet.onCoinAdded.RemoveListener(UpdateCoins); SingleWallet.onCoinRemoved.AddListener(UpdateCoins); } private void UpdateCoins() => UpdateCoins(SingleWallet.Balance); public void UpdateCoins(int newCount) { string valutaName = PlayerPrefs.GetString("ValutaName", "руб."); tmp.text = $"Баланс:
{newCount} {valutaName}"; } public void SetRevengePriceVisibility(bool visibility) { revengeSignGo?.SetActive(visibility); int priceRevenge = PlayerPrefs.GetInt("PriceRevenge", 10); int pricePve = PlayerPrefs.GetInt("PricePVE", 10); string valutaName = PlayerPrefs.GetString("ValutaName", "руб."); if(priceRevenge < pricePve) { revengeSign.text = $"Цена игры:
{pricePve} {valutaName}
Повторная игра:
{priceRevenge} {valutaName}"; } else { revengeSign.text = $"Повторная игра:
{priceRevenge} {valutaName}"; } } }