using System; using System.Collections.Generic; using ET; using FairyGUI; using UI.CommonGame; using UI.TimeTracing; using UnityEngine; namespace GFGGame { public class TimeTracingSuitAddView : BaseWindow { private UI_TImeTracingPreShowUI _ui; private int SuitID; private int[] _items; public override void Dispose() { base.Dispose(); } protected override void OnInit() { base.OnInit(); packageName = UI_TImeTracingPreShowUI.PACKAGE_NAME; _ui = UI_TImeTracingPreShowUI.Create(); this.viewCom = _ui.target; isfullScreen = true; this.modal = true; _ui.m_list.itemRenderer = RenderListItem; _ui.m_list.onClickItem.Add(OnClickListPartsItem); _ui.m_backBtn.onClick.Add(OnClickBtnBack); } protected override void OnShown() { base.OnShown(); SuitID = TimeTracingDataManager.SuitID; _items = SuitCfgArray.Instance.GetSuitItems(SuitID,true); _ui.m_list.numItems = _items.Length; UpdateView(); } protected override void OnHide() { base.OnHide(); } private void UpdateView() { SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(SuitID); DressUpMenuSuitDataManager.GetSuitProgressBySuitId(SuitID, out int count, out int totalCount); _ui.m_gotNum.text = string.Format("进度:{0}/{1}", count, totalCount); _ui.m_suitDesc.SetVar("name", suitCfg.name).FlushVars(); _ui.m_suitName.text = suitCfg.name; float addition = 0; addition = StudioDataManager.Instance.GetAddition(ConstInstanceZonesType.PureFight); addition = addition / 10000 * 100; if(addition > 0) { _ui.m_addNum.visible = true; _ui.m_addNum.text = addition.ToString() + "%"; } else { _ui.m_addNum.visible = false; } } private void RenderListItem(int index, GObject obj) { UI_TimeTracingPreShowItem item = UI_TimeTracingPreShowItem.Proxy(obj); int itemId = _items[index]; ItemData itemDate = ItemUtil.createItemData(itemId, 1); ItemCfg itemcfg = ItemCfgArray.Instance.GetCfg(itemId); bool haveItem = DressUpMenuItemDataManager.CheckHasItem(itemId); if (itemcfg.addition > 0 && haveItem) { item.m_desc.visible = true; item.m_descBg.visible = true; item.m_desc.text = string.Format("获得加成:{0}%", (itemcfg.addition / 100)); } else { item.m_descBg.visible = false; item.m_desc.visible = false; } obj.data = itemId; ItemView itemView = new ItemView(item.m_item); itemView.SetData(itemDate); itemView.ImgNotGotVisible = !haveItem; UI_TimeTracingPreShowItem.ProxyEnd(); } private void OnClickListPartsItem(EventContext context) { GComponent item = context.data as GComponent; int itemId = (int)item.data; bool haveItem = DressUpMenuItemDataManager.CheckHasItem(itemId); ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemId); if (haveItem || itemCfg.approach.Length <= 0) { GoodsItemTipsController.ShowItemTips(itemId); } else { // this.Hide(); //ViewManager.Show(new object[] { itemId, new object[] { typeof(SuitGuideView).FullName, this.viewData } }); object[] goBackDatas = ViewManager.GetGoBackDatas(typeof(SuitPartsDetailView).Name); object[] sourceDatas = new object[] { itemId, goBackDatas, 1 }; GoodsItemTipsController.ShowItemTips(itemId, sourceDatas); } } private void OnClickBtnBack() { this.Hide(); } } }