/// <summary> /// 获取单个概率 /// </summary> /// <param name="attrPair"></param> /// <returns></returns> /// <summary> /// 获取属性id对应的属性 /// </summary> /// <param name="attrId"></param> /// <returns></returns> private GameCmd.PairNumber GetAttrPairByAttrId(uint attrId) { Equip data = Data; if (null == data) { return(null); } GameCmd.PairNumber attrPair = new GameCmd.PairNumber(); attrPair.id = attrId; List <GameCmd.PairNumber> addtiveAttr = data.GetAdditiveAttr(); bool match = false; for (int i = 0; i < addtiveAttr.Count; i++) { if (addtiveAttr[i].id == attrPair.id) { match = true; attrPair.value = addtiveAttr[i].value; break; } } return(match ? attrPair : null); }
private void ShowUI() { Equip equip = DataManager.Manager <ItemManager>().GetBaseItemByQwThisId <Equip>(qwThisID); if (null == equip) { return; } if (null != m_infoGrid) { m_infoGrid.Reset(); m_infoGrid.SetIcon(true, equip.Icon); m_infoGrid.SetBorder(true, equip.BorderIcon); if (equip.IsBind) { m_infoGrid.SetLockMask(true); } //m_infoGrid.RegisterUIEventDelegate((eventType, gridData, param) => //{ // if (eventType == UIEventType.Click) // { // TipsManager.Instance.ShowItemTips(equip); // } //}); } if (null != m_label_EquipName) { m_label_EquipName.text = equip.Name; } GameCmd.PairNumber pair = null; UICompoundAttrGrid tempGrid = null; int gridCount = mlstGrids.Count; EquipManager emgr = DataManager.Manager <EquipManager>(); List <GameCmd.PairNumber> additiveAttrs = equip.GetAdditiveAttr(); for (int i = 0; i < gridCount; i++) { tempGrid = mlstGrids[i]; if (null != additiveAttrs && additiveAttrs.Count > i) { if (!tempGrid.Visible) { tempGrid.SetVisible(true); } pair = additiveAttrs[i]; tempGrid.SetData(emgr.GetAttrGrade(additiveAttrs[i]), emgr.GetAttrDes(additiveAttrs[i])); } else if (tempGrid.Visible) { tempGrid.SetVisible(false); } } }
void UpdateMainEquipAttr(bool canCompound) { Equip equip = Data; if (null != m_trans_CompoundMainAttrRoot) { if (m_trans_CompoundMainAttrRoot.gameObject.activeSelf != canCompound) { m_trans_CompoundMainAttrRoot.gameObject.SetActive(canCompound); } if (canCompound) { List <GameCmd.PairNumber> pairs = equip.GetAdditiveAttr(); AttrTransData tempTransData = null; GameCmd.PairNumber pair = null; for (int i = 0, max = m_compoundAttrTransData.Length; i < max; i++) { tempTransData = m_compoundAttrTransData[i]; if (null == tempTransData.Root) { continue; } if (null != pairs && pairs.Count > i) { if (!tempTransData.Root.gameObject.activeSelf) { tempTransData.Root.gameObject.SetActive(true); } pair = pairs[i]; if (null != tempTransData.Grade) { tempTransData.Grade.text = emgr.GetAttrGrade(pair).ToString(); } if (null != tempTransData.Des) { tempTransData.Des.text = emgr.GetAttrDes(pair); } } else if (tempTransData.Root.gameObject.activeSelf) { tempTransData.Root.gameObject.SetActive(false); } } } } }
/// <summary> /// 获取装备属性列表 /// </summary> /// <param name="includeHole">是否包括宝石孔属性</param> /// <returns></returns> public List <GameCmd.PairNumber> GetEquipAttrs(bool includeHole = false) { List <GameCmd.PairNumber> attrs = new List <GameCmd.PairNumber>(); Equip equip = Data; if (null != equip) { attrs.AddRange(equip.GetAdditiveAttr()); if (includeHole) { uint attrValue = 0; if (equip.TryGetItemAttribute(GameCmd.eItemAttribute.Item_Attribute_HoleNum, out attrValue)) { attrs.Add(new GameCmd.PairNumber() { id = (uint)GameCmd.eItemAttribute.Item_Attribute_HoleNum, value = attrValue, }); } } } return(attrs); }
/// <summary> /// /// </summary> /// <param name="none"></param> /// <param name="qwThisId"></param> /// <param name="index"></param> public void SetGridViewData(bool none, uint qwThisId = 0) { ResetInfoGrid(); this.m_uint_qwThisId = qwThisId; if (null != m_ts_none && m_ts_none.gameObject.activeSelf != none) { m_ts_none.gameObject.SetActive(none); } if (null != m_ts_infos && m_ts_infos.gameObject.activeSelf == none) { m_ts_infos.gameObject.SetActive(!none); } if (!none) { ResetInfoGrid(); Equip equip = DataManager.Manager <ItemManager>().GetBaseItemByQwThisId <Equip>(qwThisId); if (null != equip) { SetBorder(true, equip.BorderIcon); SetIcon(true, equip.Icon); SetBindMask(equip.IsBind); } if (null != m_lab_name) { m_lab_name.text = equip.Name; } if (null != m_TransDatas) { EquipManager emgr = DataManager.Manager <EquipManager>(); GameCmd.PairNumber pair = null; AttrTransData tempTransData = null; List <GameCmd.PairNumber> pairs = equip.GetAdditiveAttr(); for (int i = 0, max = m_TransDatas.Length; i < max; i++) { tempTransData = m_TransDatas[i]; if (null == tempTransData.Root) { continue; } if (null != pairs && pairs.Count > i) { if (!tempTransData.Root.gameObject.activeSelf) { tempTransData.Root.gameObject.SetActive(true); } pair = pairs[i]; if (null != tempTransData.Grade) { tempTransData.Grade.text = emgr.GetAttrGrade(pair).ToString(); } if (null != tempTransData.Des) { tempTransData.Des.text = emgr.GetAttrDes(pair); } } else if (tempTransData.Root.gameObject.activeSelf) { tempTransData.Root.gameObject.SetActive(false); } } } } }