//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Thursday, May 10, 2018 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class OpenServerGiftWin : Window { [SerializeField] RectTransform m_ContainerDisplay; [SerializeField] SuperValueGiftBehaviour[] m_OSGifts; VipModel vipModel { get { return ModelCenter.Instance.GetModel(); } } OSGiftModel model { get { return ModelCenter.Instance.GetModel(); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { } protected override void OnPreOpen() { if (!model.alreadyOpens.Contains(model.selectIndex)) { model.selectIndex = model.alreadyOpens[0]; } model.onSelectUpdate += OnSelectUpdate; model.jumpGiftId = 0; Display(); } protected override void OnAfterOpen() { } protected override void OnPreClose() { model.onSelectUpdate -= OnSelectUpdate; } protected override void OnAfterClose() { } #endregion private void OnSelectUpdate() { Display(); } private void Display() { var selectPayType = 0; for (int i = 0; i < model.gifts.Count; i++) { if (model.selectIndex == i) { selectPayType = model.gifts[i].payType; var rechargeId = model.GetRechargeId(model.gifts[i].payType); GetBehaviour(selectPayType).Display(rechargeId); break; } } model.SetDayRemind(model.selectIndex); for (int i = 0; i < m_OSGifts.Length; i++) { m_OSGifts[i].SetActive(selectPayType == m_OSGifts[i].payType); } } SuperValueGiftBehaviour GetBehaviour(int payType) { for (int i = 0; i < m_OSGifts.Length; i++) { if (m_OSGifts[i].payType == payType) { return m_OSGifts[i]; } } return null; } } }