using TMPro; using UnityEngine; using UnityEngine.Serialization; using UnityEngine.UI; public class RevengeButton : PveLossButton { [Header("Layout ссылки")] [SerializeField, FormerlySerializedAs("oldPrice")] private TextMeshProUGUI _oldPrice; [SerializeField, FormerlySerializedAs("actualPrice")] private TextMeshProUGUI _actualPrice; [SerializeField, FormerlySerializedAs("saleImage")] private Image _saleImage; public override void Initialize() => Initialize(GameMode.pve); public void Initialize(GameMode gameMode) { if (PaymentSystem.Freeplay) { _oldPrice.gameObject.SetActive(false); _actualPrice.gameObject.SetActive(false); _saleImage.gameObject.SetActive(false); return; } int revengePrice = PaymentSystem.GetRevengePrice(gameMode); int normalPrice = PaymentSystem.GetModePrice(gameMode); _actualPrice.gameObject.SetActive(true); _actualPrice.text = PaymentSystem.GetPluralizedMoney(revengePrice); bool revengeCheaper = revengePrice < normalPrice; _oldPrice.gameObject.SetActive(revengeCheaper); _oldPrice.text = PaymentSystem.GetPluralizedMoney(normalPrice); _saleImage.gameObject.SetActive(revengeCheaper); } public bool TryPay(GameMode gameMode) => PaymentSystem.TryPayForRevenge(gameMode); public override void Interact() { if (!interactable) return; base.Interact(); } }