using System.Collections; using UnityEngine; using UI.ActivityHuaRongDao; using System.Collections.Generic; using FairyGUI; namespace GFGGame { public class ActivityHuaRongDaoEntryView : BaseWindow { private UI_ActivityHuaRongDaoEntryUI _ui; public static int curLevel; private int haveTimes = 1; private List IDList; protected override void OnInit() { base.OnInit(); packageName = UI_ActivityHuaRongDaoEntryUI.PACKAGE_NAME; _ui = UI_ActivityHuaRongDaoEntryUI.Create(); viewCom = _ui.target; isfullScreen = true; _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("quanping_moren_bg"); _ui.m_btnStart.onClick.Add(OnBtnStartClick); _ui.m_btnBack.onClick.Add(OnBtnBackClick); InitBtnRule(); InitIDList(); _ui.m_scrollPane.m_listBg.itemRenderer = RenderListItem; _ui.m_scrollPane.m_listItems.itemRenderer = RenderRewardListItem; //_ui.m_scrollPane.m_listBg.onClickItem.Add(OnClickReward); } public override void Dispose() { if (_ui != null) { _ui.Dispose(); _ui = null; } base.Dispose(); } protected override void OnShown() { base.OnShown(); InitInfo(); } protected override void OnHide() { base.OnHide(); } protected override void AddEventListener() { base.AddEventListener(); EventAgent.AddEventListener(ConstMessage.ACTIVITY_HUARONGDAO_UPDATE, InitInfo); } protected override void RemoveEventListener() { base.RemoveEventListener(); EventAgent.RemoveEventListener(ConstMessage.ACTIVITY_HUARONGDAO_UPDATE, InitInfo); } private void InitIDList() { IDList = new List(); HuarongRoadGame[] cfgs = HuarongRoadGameArray.Instance.dataArray; foreach (var t in cfgs) { IDList.Add(t.id); } } private void InitInfo() { RoleLimitData limitData = RoleLimitDataManager.GetLimitData(HuarongRoadGameArray.Instance.GetCfg(IDList[curLevel]).comsumeLimit); int times = limitData.TotalPlayMax - limitData.PlayTimes; _ui.m_curLevel.text = curLevel.ToString(); _ui.m_challengeTimes.SetVar("have", times.ToString()) .SetVar("sum", limitData.TotalPlayMax.ToString()).FlushVars(); InitProgress(); ProgressAutoLocate(); } private void InitProgress() { _ui.m_scrollPane.m_listBar.numItems = curLevel; _ui.m_scrollPane.m_listBg.numItems = IDList.Count; _ui.m_scrollPane.m_listItems.numItems = IDList.Count; _ui.m_scrollPane.m_listBg.ResizeToFit(); } private void ProgressAutoLocate() { _ui.m_scrollPane.target.scrollPane.posX = curLevel * (_ui.m_scrollPane.m_listBg.GetChildAt(0).width + _ui.m_scrollPane.m_listBg.columnGap) + (curLevel > 0 ? -100 : 0); } private void RenderListItem(int index, GObject gObject) { gObject.data = index; UI_progressBgItem item = UI_progressBgItem.Proxy(gObject); item.m_levelNum.text = (index + 1).ToString(); UI_progressBgItem.ProxyEnd(); } private void RenderRewardListItem(int index, GObject gObject) { gObject.data = index; UI_reward reward = UI_reward.Proxy(gObject); int id = HuarongRoadGameArray.Instance.GetCfg(IDList[index]).bonusWinArr[0][0]; reward.m_loaIcon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(id)); reward.m_c1.SetSelectedIndex(curLevel > index ? 1 : 0); reward.target.touchable = (curLevel <= index); reward.target.data = index; reward.target.onClick.Add(OnClickReward); UI_reward.ProxyEnd(); } private void OnClickReward(EventContext eventContext) { GObject obj = (GObject)eventContext.sender; int id = (int)obj.data; //ViewManager.Show(HuarongRoadGameArray.Instance.GetCfg(IDList[id]).bonusWinArr); GoodsItemTipsController.ShowItemTips(HuarongRoadGameArray.Instance.GetCfg(IDList[id]).bonusWinArr[0][0]); } private void OnBtnBackClick() { Hide(); } private void InitBtnRule() { if (_ui.m_btnRule.data == null) { _ui.m_btnRule.onClick.Add(RuleController.ShowRuleView); _ui.m_btnRule.data = 300025; } } private void OnBtnStartClick() { ViewManager.Show(HuarongRoadGameArray.Instance.GetCfg(IDList[curLevel])); } } }