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_btnRule.onClick.Add(OnBtnRuleClick); _ui.m_btnBack.onClick.Add(OnBtnBackClick); 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() { _ui.m_curLevel.text = curLevel.ToString(); _ui.m_challengeTimes.SetVar("have", haveTimes.ToString()) .SetVar("sum", HuarongRoadGameArray.Instance.GetCfg(IDList[curLevel]).comsumeLimit.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(); //_ui.m_scrollPane.m_listBg.width = IDList.Count * 244 + (IDList) //_ui.m_scrollPane.m_listBg. } 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); } private void OnBtnBackClick() { Hide(); } private void OnBtnRuleClick() { } private void OnBtnStartClick() { ViewManager.Show(HuarongRoadGameArray.Instance.GetCfg(IDList[curLevel])); } } }