using UnityEngine;
|
using UnityEngine.UI;
|
using System.Collections.Generic;
|
using System;
|
|
namespace vnxbqy.UI
|
{
|
public class MysticalQGSaleItem : MonoBehaviour
|
{
|
[SerializeField] Text originalPrice;
|
[SerializeField] Image originalMoneyIcon;
|
[SerializeField] Text presentPrice;
|
[SerializeField] Image presentMoneyIcon;
|
[SerializeField] Button buybtn;
|
[SerializeField] Text saleTime;
|
[SerializeField] Text zheText;
|
[SerializeField] List<CommonItemBaisc> itemBaiscs = new List<CommonItemBaisc>();
|
|
MysticalQGModel.MysticalShop mysticalShop = null;
|
StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
|
|
MysticalQGModel qgModel { get { return ModelCenter.Instance.GetModel<MysticalQGModel>(); } }
|
|
private void Awake()
|
{
|
buybtn.AddListener(ClickBuy);
|
}
|
|
private void OnEnable()
|
{
|
GlobalTimeEvent.Instance.secondEvent += UpdateSecond;
|
}
|
|
private void OnDisable()
|
{
|
GlobalTimeEvent.Instance.secondEvent -= UpdateSecond;
|
}
|
|
public void SetDisplay(MysticalQGModel.MysticalShop _mysticalShop)
|
{
|
this.mysticalShop = _mysticalShop;
|
originalPrice.text = mysticalShop.storeConfig.MoneyOriginal.ToString();
|
presentPrice.text = mysticalShop.storeConfig.MoneyNumber.ToString();
|
originalMoneyIcon.SetIconWithMoneyType(mysticalShop.storeConfig.MoneyType);
|
presentMoneyIcon.SetIconWithMoneyType(mysticalShop.storeConfig.MoneyType);
|
int remianTime = mysticalShop.GetRemainSellTime();
|
saleTime.text = Language.Get("MysticalQG101", TimeUtility.SecondsToHMS(remianTime));
|
float zhe = ((float)mysticalShop.storeConfig.MoneyNumber / mysticalShop.storeConfig.MoneyOriginal) * 10;
|
zheText.text = Language.Get("MysticalQG102", (float)Math.Round(zhe, 1));
|
var items = storeModel.GetShopItemlistByIndex(mysticalShop.storeConfig);
|
for(int i = 0; i < itemBaiscs.Count; i++)
|
{
|
var itemBaisc = itemBaiscs[i];
|
if(i < items.Count)
|
{
|
var itemInfo = items[i];
|
itemBaisc.SetActive(true);
|
ItemCellModel cellModel = new ItemCellModel(itemInfo.itemId,false, (ulong)itemInfo.count);
|
itemBaisc.Init(cellModel);
|
itemBaisc.button.RemoveAllListeners();
|
itemBaisc.button.AddListener(()=>
|
{
|
ItemTipUtility.Show(itemInfo.itemId);
|
});
|
}
|
else
|
{
|
itemBaisc.SetActive(false);
|
}
|
}
|
}
|
|
|
private void UpdateSecond()
|
{
|
if (mysticalShop == null) return;
|
|
int remianTime = mysticalShop.GetRemainSellTime();
|
saleTime.text = Language.Get("MysticalQG101", TimeUtility.SecondsToHMS(remianTime));
|
if (remianTime <= 0)
|
{
|
qgModel.UpdateSellTimeEnd();
|
}
|
}
|
|
private void ClickBuy()
|
{
|
if (mysticalShop == null) return;
|
ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("MysticalQG104", mysticalShop.storeConfig.MoneyNumber)
|
, (bool isOk) =>
|
{
|
if (isOk)
|
{
|
if(mysticalShop.GetRemainSellTime() > 0)
|
{
|
storeModel.SendBuyShopItem(this.mysticalShop.storeConfig, 1);
|
}
|
else
|
{
|
ServerTipDetails.DisplayNormalTip(Language.Get("MysticalQG105"));
|
}
|
}
|
});
|
|
}
|
}
|
}
|