/// <summary> /// Sets the data. /// </summary> public void SetData(st.net.NetBase.pos_des gemState) { EquipmentInfo info = null; if (gemState.type != 0) { info = new EquipmentInfo(gemState, EquipmentBelongTo.EQUIP); //镶嵌到装备上的宝石从属于装备 if (exLabelDes != null) { exLabelDes.enabled = false; } } else { if (canInlayIcon != null) { canInlayIcon.enabled = true; } if (exLabelDes != null) { exLabelDes.enabled = true; } } if (gemItem != null) { gemItem.gameObject.SetActive(true); gemItem.FillInfo(info); } if (unlockDes != null) { unlockDes.enabled = false; } }
void ShowDes() { int height = 0; StringBuilder builder = null; for (int i = 0; i < labDes.Length; i++) { if (labDes[i] == null) { return; } labDes[i].gameObject.SetActive(true); labDes[i].transform.localPosition = new Vector3(37, 140 - height, 0); switch (i) { case 0: //战力级幸运值 builder = new StringBuilder(); if (curEquipInfo.Slot != EquipSlot.None) { builder.Append(ConfigMng.Instance.GetUItext(226)).Append(curEquipInfo.GS); EquipmentInfo slotOne = GameCenter.inventoryMng.GetEquipFromEquipDicBySlot(curEquipInfo.Slot); if (slotOne != null && curEquipInfo.BelongTo != EquipmentBelongTo.EQUIP && slotOne.GS != curEquipInfo.GS) { builder.Append((slotOne.GS < curEquipInfo.GS)?"[00ff00] +":"[ff0000] -").Append(Mathf.Abs((float)(slotOne.GS - curEquipInfo.GS))).Append("[-]"); if (gsUp != null) { gsUp.enabled = (slotOne.GS < curEquipInfo.GS); } if (gsDown != null) { gsDown.enabled = (slotOne.GS > curEquipInfo.GS); } } else { if (gsUp != null) { gsUp.enabled = false; } if (gsDown != null) { gsDown.enabled = false; } } if (curEquipInfo.Family == EquipmentFamily.WEAPON) { builder.Append("\n").Append(ConfigMng.Instance.GetUItext(227)).Append(curEquipInfo.LuckyLv); } } height += labDes[i].SetTextData(builder.ToString()); break; case 1: //基础属性 builder = new StringBuilder(); if (curEquipInfo.Slot != EquipSlot.None) { if (curEquipInfo.AttributePairList.Count > 0) { builder.Append(ConfigMng.Instance.GetUItext(228)).Append("\n"); } builder.Append(GameHelper.GetAttributeWithStrengthValue(curEquipInfo.AttributePairList, curEquipInfo)); } height += labDes[i].SetTextData(builder.ToString()); break; case 2: //洗练属性 builder = new StringBuilder(); if (curEquipInfo.Slot != EquipSlot.None) { if (curEquipInfo.EquOne != 0) { builder.Append(ConfigMng.Instance.GetUItext(229)).Append("\n").Append(ConfigMng.Instance.GetValueStringByID(curEquipInfo.EquOne)); } if (curEquipInfo.EquTwo != 0) { builder.Append(" ").Append(ConfigMng.Instance.GetValueStringByID(curEquipInfo.EquTwo)).Append("\n"); } if (curEquipInfo.EquThree != 0) { builder.Append(ConfigMng.Instance.GetValueStringByID(curEquipInfo.EquThree)); } if (curEquipInfo.EquFour != 0) { builder.Append(" ").Append(ConfigMng.Instance.GetValueStringByID(curEquipInfo.EquFour)); } } height += labDes[i].SetTextData(builder.ToString()); break; case 3: //镶嵌属性 builder = new StringBuilder(); if (curEquipInfo.Slot != EquipSlot.None && curEquipInfo.Family != EquipmentFamily.GEM) { if (curEquipInfo.HasInlayGem) { builder.Append(ConfigMng.Instance.GetUItext(230)).Append("\n"); int index = 0; using (var e = curEquipInfo.InlayGemDic.GetEnumerator()) { while (e.MoveNext()) { st.net.NetBase.pos_des pos_des = e.Current.Value; if (pos_des.type != 0) { EquipmentInfo info = new EquipmentInfo(pos_des.type, EquipmentBelongTo.NONE); builder.Append(info.ItemName).Append(" "); if (info.AttributePairList.Count > 0) { string attrName = ConfigMng.Instance.GetAttributeTypeName(info.AttributePairList[0].tag); builder.Append(attrName).Append(":").Append(info.AttributePairList[0].value); } index++; //if(index < curEquipInfo.InlayGemDic.Count && index%2 != 0)builder.Append(" "); //if(index < curEquipInfo.InlayGemDic.Count && index%2 == 0)builder.Append("\n"); if (index < curEquipInfo.InlayGemDic.Count) { builder.Append("\n"); } } } } } } height += labDes[i].SetTextData(builder.ToString()); break; case 4: //套装属性 if (curEquipInfo != null && curEquipInfo.Slot != EquipSlot.None) { builder = new StringBuilder(); builder.Append(GameHelper.GetLevelSuitDes(curEquipInfo)); height += labDes[i].SetTextData(builder.ToString()); } else { height += labDes[i].SetTextData(""); } break; case 5: //获取途径 if (curEquipInfo != null && !curEquipInfo.EquipGetAddress.Equals("0")) { labDes[i].SetEquipmentInfo(curEquipInfo); height += labDes[i].SetUIAccess(curEquipInfo.EquipGetAddress); } else { height += labDes[i].SetTextData(""); } break; } } if (background != null) { if (height < maxMiddleHeight) { background.height = height + topAndBottomHeight; } else { background.height = maxMiddleHeight + topAndBottomHeight; } if (bottomGo != null) { bottomGo.transform.localPosition = new Vector3(0, height > maxMiddleHeight?0:maxMiddleHeight - height, 0); } } if (btnUpView != null) { btnUpView.gameObject.SetActive(height > maxMiddleHeight); } if (btnDownView != null) { btnDownView.gameObject.SetActive(height > maxMiddleHeight); } }