using FairyGUI; using UI.CreateRole; using System; using System.Text.RegularExpressions; using ET; using System.Collections.Generic; using UnityEngine; namespace GFGGame { public class TryDressUpView : BaseWindow { //新手套装试穿界面 private UI_TryDressUpView _ui; private GameObject _sceneObject; private List _currentList3 = new List() { 201020,201010, 201030 }; private int _currentMenuType = 20; public override void Dispose() { if (_sceneObject != null) { PrefabManager.Instance.Restore(_sceneObject); _sceneObject = null; } if (_ui != null) { _ui.Dispose(); _ui = null; } base.Dispose(); } protected override void OnInit() { base.OnInit(); packageName = UI_TryDressUpView.PACKAGE_NAME; _ui = UI_TryDressUpView.Create(); this.viewCom = _ui.target; this.viewCom.Center(); this.isfullScreen = true; isReturnView = true; _ui.m_btnBack.onClick.Add(this.Hide); _ui.m_partsListSearch.m_list.itemRenderer = ListPartsItem; } protected override void OnShown() { base.OnShown(); if (_sceneObject == null) { _sceneObject = PrefabManager.Instance.InstantiateSync(ResPathUtil.GetPrefabPath("SceneDressUp")); } MyDressUpHelper.dressUpObj.setSceneObj(_sceneObject, false, true, null, true, ScaleGestureController.Instance.UpdatePos); MyDressUpHelper.dressUpObj.AddOrRemove(ConstItemID.DEFULT_BG, false); _ui.m_partsListSearch.m_list.numItems = _currentList3.Count; } protected override void OnHide() { if (_sceneObject != null) { PrefabManager.Instance.Restore(_sceneObject); _sceneObject = null; //MyDressUpHelper.dressUpObj.ClearView(); } base.OnHide(); } private void ListPartsItem(int index, GObject item) { UI_PartsListItem listItem = UI_PartsListItem.Proxy(item); int id = (int)_currentList3[index]; string iconRes = ""; string partName = ""; string ext = "png"; listItem.m_btnAni.visible = false; Debug.Log("id:" + id + " _currentMenuType:" + _currentMenuType); if (_currentMenuType == (int)ConstDressUpItemType.TAO_ZHUANG) { SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(id); iconRes = suitCfg.res; partName = suitCfg.name; listItem.m_iconSelected.visible = false; RarityIconController.UpdateRarityIcon(listItem.m_rarity, id, false, true); listItem.m_loaBorder.url = "ui://DressUp/hz_kuangk_" + suitCfg.rarity; listItem.m_ScoreType.visible = false; listItem.m_imgNew.visible = false; bool SuitHasAction = SuitCfgArray.Instance.CheckSuitHasAction(id); bool HasActionRes = DressUpMenuSuitDataManager.CheckSuitHasActionRes(id); Debug.Log("SuitHasAction:" + SuitHasAction + " HasActionRes:" + HasActionRes + " suitCfg.res" + suitCfg.aniRes); listItem.m_btnAni.visible = SuitCfgArray.Instance.CheckSuitHasAction(id) && DressUpMenuSuitDataManager.CheckSuitHasActionRes(id); // listItem.m_comAxtionSelect.m_btnNormal.icon = ResPathUtil.GetIconPath(suitCfg.res, ext); // listItem.m_comAxtionSelect.m_btnAction.icon = ResPathUtil.GetIconPath(suitCfg.res, ext); if (listItem.m_btnAni.data == null) { listItem.m_btnAni.onClick.Add(OnBtnActionClick); } listItem.m_btnAni.data = id; } else if (_currentMenuType == (int)ConstDressUpItemType.DONG_ZUO) { SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(id); iconRes = suitCfg.res; partName = suitCfg.name; listItem.m_iconSelected.visible = false; RarityIconController.UpdateRarityIcon(listItem.m_rarity, id, false, true); listItem.m_loaBorder.url = "ui://DressUp/hz_kuangk_" + suitCfg.rarity; listItem.m_ScoreType.visible = false; listItem.m_imgNew.visible = false; } if (listItem.m_icon.data == null) { listItem.m_icon.onClick.Add(OnClickPartsListItem); } listItem.m_icon.data = id; listItem.m_icon.url = ResPathUtil.GetIconPath(iconRes, ext); listItem.m_txtTitle.text = partName; listItem.target.data = id; listItem.m_grpScore.visible = false; //listItem.m_ScoreType.visible = true; listItem.m_imgNeed.visible = false; UI_PartsListItem.ProxyEnd(); } private void OnClickPartsListItem(EventContext context) { //LogUtil.LogEditor("OnClickPartsListItem"); if (ViewManager.isViewOpen(typeof(DressUpItemTipsView).FullName)) { return; } int id = (int)(context.sender as GObject).data; if (_currentMenuType == ConstDressUpItemType.TAO_ZHUANG) { OnBtnNormalClick(context); } else if (_currentMenuType == ConstDressUpItemType.DONG_ZUO) { MyDressUpHelper.dressUpObj.PutOnOrTakeOffAction(id); } else { MyDressUpHelper.dressUpObj.AddOrRemove(id, true); } } private void OnBtnNormalClick(EventContext context) { // _isNormalSuitType = true; GObject gObject = context.sender as GObject; int suitId = (int)gObject.data; ShowSuitPartList(suitId, false); } private void OnBtnActionClick(EventContext context) { GObject gObject = context.sender as GObject; int suitId = (int)gObject.data; ShowSuitPartList(suitId, true); } private void ShowSuitPartList(int suitId, bool showAction) { if (showAction) { MyDressUpHelper.dressUpObj.PutOnSuitCfg(suitId, true,null,true,true,true); } else { MyDressUpHelper.dressUpObj.PutOnSuitCfg(suitId, false,null, true, true, true); } } } }