using UnityEngine; using System.Collections; using System.Collections.Generic; using GCGame.Table; using UnityEngine.UI; public class AdvanceFashionItem : MonoBehaviour { public Image itemIcon; public Image markIcon; public Text itemName; public GameObject activiteObj; public GameObject notActiviteObj; public GameObject usingObj; public Image itemQuality; public Image doubles; public AdvanceFashionPanelCtr.AdvanceFashionType fashionItemType; public int advanceFashionId = -1; //对应的时装ID private int itemId; //对应可以激活时装的物品ID private int getPathId; //对应可获取途径描述Id private bool isOwn; //是否拥有 private bool isUsing; //是否正在穿戴 private int remainTime = -1; //时装剩余时间 private int curIndex; public void InitItem(int id, int type, int index) { curIndex = index; advanceFashionId = id; //传递之后会做判断,这边不区分是哪个表 fashionItemType = (AdvanceFashionPanelCtr.AdvanceFashionType)type; // 新增双人坐骑相关------------------------------------------------------ Tab_AdvanceFashion m_advanceFashion = TableManager.GetAdvanceFashionByID(id, 0); if (m_advanceFashion != null) { Tab_MountBase mountBases = TableManager.GetMountBaseByID(m_advanceFashion.ModelId, 0); if (doubles) doubles.gameObject.SetActive(mountBases != null ? mountBases.DoubleRiding == 1 : false); //判断双人坐骑 } else { doubles.gameObject.SetActive(false); } //----------------------------------------------------------------------- switch (type) { case (int)AdvanceFashionPanelCtr.AdvanceFashionType.Advance: Tab_AdvanceBase advanceBase = TableManager.GetAdvanceBaseByID(id, 0); if (advanceBase == null) { return; } LoadAssetBundle.Instance.SetImageSprite(itemIcon, advanceBase.Icon); LoadAssetBundle.Instance.SetImageSprite(itemQuality, GCGame.Utils.GetItemQualityFrame(advanceBase.Quality)); itemName.text = advanceBase.Name; //remainTime = 0; //进阶坐骑设置为永久 break; case (int)AdvanceFashionPanelCtr.AdvanceFashionType.Fashion: Tab_AdvanceFashion advanceFashion = TableManager.GetAdvanceFashionByID(id, 0); if(advanceFashion == null) { return; } itemId = advanceFashion.ItemId; LoadAssetBundle.Instance.SetImageSprite(itemIcon, advanceFashion.Icon); itemName.text = advanceFashion.Name; getPathId = advanceFashion.ItemId; break; } } public void ShowActiviteIcon(bool isAcivite) { isOwn = isAcivite; if (isAcivite) { activiteObj.SetActive(true); notActiviteObj.SetActive(false); } else { activiteObj.SetActive(false); notActiviteObj.SetActive(true); } if(fashionItemType == AdvanceFashionPanelCtr.AdvanceFashionType.Advance) { if (isAcivite) remainTime = 0; else remainTime = -1; } } public void ShowUsingIcon(bool isShow) { usingObj.SetActive(isShow); isUsing = isShow; } public void SetRemainTime(int time) { remainTime = time; isOwn = (time >= 0 ? true : false); // 0永久 } public void ShowMarkIcon(bool isShow) { markIcon.gameObject.SetActive(isShow); } public void OnItemClick() { //分类 坐骑 神兵 暗器 翅膀 if (AdvanceMountPanelCtr.Instance && AdvanceMountPanelCtr.Instance.fashionPanel.gameObject.activeInHierarchy) { AdvanceMountPanelCtr.Instance.fashionPanel.OnItemClick(advanceFashionId, (int)fashionItemType); AdvanceMountPanelCtr.Instance.fashionPanel.InitUsingBtnState(isUsing, isOwn, remainTime, (int)fashionItemType, itemId, getPathId); AdvanceMountPanelCtr.Instance.fashionPanel.SetFashionItemMarkIcon((int)fashionItemType, curIndex); } } }