using UnityEngine; using UnityEngine.UI; using System.Collections; using GCGame.Table; using Games.Mission; using Games.Events; using Games.Item; using Module.Log; /// /// 常用项设备项 /// public class CommonItemEquipItem : CommonItemContainerItem { public bool _DontShowFlat = false; public Text _EquipName; public GameObject _EquipingFlag; public GameObject _BindFlag; public GameObject _DisableFlag; /// /// 强化量 /// public Text strength; /// /// 强化等级底板 /// public GameObject StrengthLvDiTu; private GameItem _EuqipItem; public override void Show(Hashtable hash) { base.Show(); _EuqipItem = (GameItem)hash["InitObj"]; InitItem(_EuqipItem); } public void InitItem(GameItem itemParam) { _EuqipItem = itemParam; _InitInfo = _EuqipItem; if (_EuqipItem != null && _EuqipItem.IsValid()) { Tab_CommonItem commonItem = TableManager.GetCommonItemByID(_EuqipItem.DataID, 0); if (commonItem != null && itemParam.StackCount > 0) { //m_ItemNum.text = itemParam.StackCount.ToString(); m_ItemImg.gameObject.SetActive(true); m_ItemQuality.gameObject.SetActive(true); LoadAssetBundle.Instance.SetImageSprite(m_ItemImg, commonItem.Icon); LoadAssetBundle.Instance.SetImageSprite(m_ItemQuality, itemParam.GetQualityFrame()); if (commonItem.QualityEffect > 0) { CommonItemContainerItem.ShowQualityEffect(true, commonItem.QualityEffect, m_ItemImg.transform); } else { CommonItemContainerItem.ShowQualityEffect(false, EquipFrenzy.EquipFrenzyEffectID, m_ItemImg.transform); } if (_EquipName != null) _EquipName.text = _EuqipItem.GetEquipName(); if (!_DontShowFlat) { if (_EuqipItem.IsPlayerEquiped()) { _EquipingFlag.SetActive(true); _BindFlag.SetActive(false); } else { _EquipingFlag.SetActive(false); if (_EuqipItem.BindFlag) { _BindFlag.SetActive(true); } else { _BindFlag.SetActive(false); } } } if (_DisableFlag != null) { _DisableFlag.SetActive(false); int nPlayerLevel = GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.Level; if (!itemParam.IsValid() || (!itemParam.IsFitForPlayer())) { _DisableFlag.SetActive(true); } if (nPlayerLevel < _EuqipItem.EquipUseLevel || nPlayerLevel > commonItem.MaxLevelRequire) { _DisableFlag.SetActive(true); } //if (commonItem.MinLevelRequire > nPlayerLevel // || commonItem.MaxLevelRequire < nPlayerLevel) //{ // _DisableFlag.SetActive(true); //} if (itemParam.ShihunTime > 0) { _DisableFlag.SetActive(true); } if (itemParam.Durable == 0) { _DisableFlag.SetActive(true); } } return; } } else { CommonItemContainerItem.ShowQualityEffect(false, -1, null); if (_EquipName != null) _EquipName.text = ""; } if(_EquipingFlag != null) _EquipingFlag.SetActive(false); if (_BindFlag != null) _BindFlag.SetActive(false); m_ItemImg.gameObject.SetActive(false); m_ItemQuality.gameObject.SetActive(false); } public override void OnItemClick() { if (_ClickEvent == null) { if (_EuqipItem == null) return; EquipTooltipsLogic.ShowEquipTooltip(_EuqipItem, ItemTooltipsLogic.ShowType.Info, transform.position); } else { base.OnItemClick(); } } public void SetStrength(int lv) { if (strength != null) { if (lv > 0) { strength.text = "+" + lv.ToString(); strength.gameObject.SetActive(true); } else { strength.gameObject.SetActive(false); } } if (StrengthLvDiTu != null) { if (lv>0) { StrengthLvDiTu.gameObject.SetActive(true); } else { StrengthLvDiTu.gameObject.SetActive(false); } } } }