//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Thursday, May 10, 2018 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using TableConfig; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class RechargeBoxWin : Window { [SerializeField] RareItem[] m_Items; [SerializeField] Text m_Cost; [SerializeField] Button m_CloseBtn; [SerializeField] Button m_RechargeBtn; VipModel m_Model; VipModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { m_CloseBtn.onClick.AddListener(CloseClick); m_RechargeBtn.onClick.AddListener(OnRecharge); for (int i = 0; i < m_Items.Length; i++) { var _index = i; m_Items[i].cellBtn.onClick.AddListener(() => { OnItemClick(_index); }); } } protected override void OnPreOpen() { Display(); } protected override void OnAfterOpen() { } protected override void OnPreClose() { } protected override void OnAfterClose() { } #endregion void Display() { var _config = Config.Instance.Get(model.presentSelectRechargeId); if (_config == null) { return; } m_Cost.text = Language.Get("RechargeBoxWin1", model.GetPayRmb(_config.RecordID)); var _list = model.m_RechargeGainItemDict[model.presentSelectRechargeId]; for (int i = 0; i < m_Items.Length; i++) { if (i >= _list.Count) { m_Items[i].gameObject.SetActive(false); continue; } m_Items[i].gameObject.SetActive(true); var _item = _list[i]; var _itemModel = new ItemCellModel(_item.item.id, false, (ulong)_item.item.count, _item.isBind); m_Items[i].SetItemRare(_itemModel, 4); } } private void OnRecharge() { model.CTG(model.presentSelectRechargeId); } private void OnItemClick(int index) { var _list = model.m_RechargeGainItemDict[model.presentSelectRechargeId]; if (index < _list.Count) { var item = _list[index]; ItemAttrData attrData = new ItemAttrData(item.item.id, false, (ulong)item.item.count, -1, item.isBind); ModelCenter.Instance.GetModel().SetItemTipsModel(attrData); } } } }