using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class FlashSaleBehaviour : MonoBehaviour { [SerializeField] Image m_OriginalCostIcon; [SerializeField] Image m_NowCostIcon; [SerializeField] Text m_OriginalPrice; [SerializeField] Text m_NowPrice; [SerializeField] RareItem[] m_FlashSaleItems; [SerializeField] Image m_BuyComplete; [SerializeField] Button m_BuyButton; StoreModel storeModel { get { return ModelCenter.Instance.GetModel(); } } FlashSaleModel model { get { return ModelCenter.Instance.GetModel(); } } public void Display(OperationFlashSale.FlashSaleGift gift) { m_BuyButton.RemoveAllListeners(); OperationBase operationBase; if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.FlashSale, out operationBase)) { OperationFlashSale operation = operationBase as OperationFlashSale; if (!gift.Equals(default(OperationFlashSale.FlashSaleGift))) { m_OriginalCostIcon.SetIconWithMoneyType(gift.moneyType); m_NowCostIcon.SetIconWithMoneyType(gift.moneyType); m_OriginalPrice.text = gift.moneyOriginal.ToString(); m_NowPrice.text = gift.moneyNumber.ToString(); for (int i = 0; i < m_FlashSaleItems.Length; i++) { if (i < gift.items.Length) { var item = gift.items[i]; m_FlashSaleItems[i].SetActive(true); var itemcellmodel = new ItemCellModel(item.itemId, true, (ulong)item.itemCount); m_FlashSaleItems[i].SetItemRare(itemcellmodel, item.isMainItem); m_FlashSaleItems[i].button.RemoveAllListeners(); m_FlashSaleItems[i].button.AddListener(() => { ItemTipUtility.Show(item.itemId); }); } else { m_FlashSaleItems[i].SetActive(false); } } var buyInfo = storeModel.GetBuyShopLimit((uint)gift.id); var buyCount = 0; if (buyInfo != null) { buyCount = buyInfo.BuyCnt; } var isAdvance = model.IsAdvance; m_BuyComplete.SetActive(buyCount >= gift.limitNum && !isAdvance); m_BuyButton.SetActive(buyCount < gift.limitNum || isAdvance); m_BuyButton.AddListener(() => { model.SendBuyFlashSale(gift); }); } } } } }