| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 | using UnityEngine;using FairyGUI;using UI.LuckyBox;using UI.CommonGame;using System.Collections.Generic;namespace GFGGame{    public class LuckyBoxBonusView : BaseWindow    {        private UI_LuckBoxBonusUI _ui;        public override void Dispose()        {            base.Dispose();        }        protected override void OnInit()        {            base.OnInit();            packageName = UI_LuckBoxBonusUI.PACKAGE_NAME;            _ui = UI_LuckBoxBonusUI.Create();            this.viewCom = _ui.target;            isfullScreen = true;            InitAllItem();            _ui.m_bg.touchable = false;            _ui.m_bg.onClick.Add(OnClickBg);        }        protected override void OnShown()        {            base.OnShown();            List<ItemData> itemList = (viewData as object[])[0] as List<ItemData>;            if (itemList != null)            {                _ui.m_bg.touchable = false;                int count = itemList.Count;                if (count == 10)                {                    ShowBonusList(itemList);                }                else if (count > 0)                {                    ShowBonus(itemList[0]);                }                else                {                    _ui.m_bg.touchable = true;                }            }            else            {                _ui.m_bg.touchable = true;            }        }        protected override void OnHide()        {            base.OnHide();        }        private void OnClickBg()        {            this.Hide();            ViewManager.Show(ViewName.LUCKY_BOX_VIEW);        }        private void ShowBonusList(List<ItemData> itemList)        {            HideAllItem();            for (int i = 0; i < 10; i++)            {                ItemData itemData = itemList[i];                GObject itemObject = _ui.target.GetChild("item" + i);                if (itemObject != null)                {                    UI_LuckyBoxBonusItem itemUI = UI_LuckyBoxBonusItem.Proxy(itemObject);                    UpdateItem(itemUI, itemData);                    Timers.inst.Add(0.1f * i, 1, (object param) =>                    {                        itemObject.visible = true;                        if ((int)param == 9)                        {                            Timers.inst.Add(0.1f, 1, (object param) =>                            {                                _ui.m_bg.touchable = true;                                List<ItemData> list = LuckyBoxDataManager.Instance.GetFirstClothingList();                                if (list.Count > 0)                                {                                    ViewManager.Show(ViewName.LUCKY_BOX_CARD_VIEW, new object[] { list, FirstGetCardViewType.CANNOT_JUMP_CANNOT_SUIT });                                }                                else                                {                                    int itemId = GetSuitItemController.TryShow(0);                                }                            });                        }                    }, i);                }            }        }        private void ShowBonus(ItemData itemData)        {            HideAllItem();            _ui.m_itemOne.visible = true;            UpdateItem(UI_LuckyBoxBonusItem.Proxy(_ui.m_itemOne), itemData);            _ui.m_bg.touchable = true;        }        private void HideAllItem()        {            _ui.m_itemOne.visible = false;            for (int i = 0; i < 10; i++)            {                GObject itemObject = _ui.target.GetChild("item" + i);                if (itemObject != null)                {                    itemObject.visible = false;                }            }        }        private void UpdateItem(UI_LuckyBoxBonusItem itemUI, ItemData itemData)        {            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemData.id);            itemUI.m_icon.url = ResPathUtil.GetIconPath(itemCfg);            itemUI.m_imgNew.visible = ItemDataManager.GetItemNum(itemData.id) == 1 ? true : false;            string itemName = itemCfg.name;            if (itemData.num > 1)            {                itemName += "x" + itemData.num;            }            itemUI.m_txtName.text = itemName;            RarityIconController.UpdateRarityIcon(itemUI.m_rarity, itemData.id, false);            itemUI.target.data = itemData.id;        }        private void InitAllItem()        {            _ui.m_itemOne.onClick.Add(OnClickItemUI);            for (int i = 0; i < 10; i++)            {                GObject itemObject = _ui.target.GetChild("item" + i);                if (itemObject != null)                {                    itemObject.onClick.Add(OnClickItemUI);                }            }        }        private void OnClickItemUI(EventContext context)        {            GComponent item = context.sender as GComponent;            int itemID = (int)item.data;            GoodsItemTipsController.ShowItemTips(itemID);        }    }}
 |