//private void ShowEquipInfo(ItemParent item) //{ // ItemEquipment ie = (ItemEquipment)item; // //view.SetEquipDetailInfoNeedLevel(data.levelNeed); // //view.SetEquipDetailInfoGrowLevel(data.growLevel); // //for (int i = 0; i < 9; i++) // //{ // // view.SetDiamondHoleInfo(data.holeInfos[i], i); // //} // //for (int i = 0; i < 4; i++) // //{ // // view.SetDiamondHoleInfo(data.jewelHoles[i], i + 9); // // view.ShowNewDiamondHoleIcon(i + 9, (data.jewelHoles[i] != EquipTipViewData.NONE_JEWEL)); // //} // //view.SetEquipDetailInfoNeedJob(data.job); // ie.level = ie.levelNeed; // EquipTipViewData data = GetEquipInfoByItem(ie); // MenuUIViewManager view = MenuUIViewManager.Instance; // view.SetEquipDetailInfoImage(data.iconName); // view.ShowEquipDetailInfoImageUsed(data.isEquipOn); // view.SetEquipDetailInfoName(data.name); // view.SetEquipDetailInfoImageBg(IconData.GetIconByQuality(ie.quality)); // List<string> attrList = ie.GetAttrDescriptionList(MogoWorld.thePlayer); // List<string> jewelList = new List<string>(); // foreach (string s in data.jewelHoles) // { // if (s == "") continue; // jewelList.Add(s); // } // MenuUIViewManager.Instance.ShowEquipInfoDetail(attrList, jewelList, ie.levelNeed + "", LanguageData.dataMap[ie.vocation].content); //} //public EquipTipViewData GetEquipInfoByItem(int _templateId, List<int> _jewelSlots) //{ // ItemEquipmentInstance instance = new ItemEquipmentInstance() { templeId = _templateId, jewelSlots = _jewelSlots }; // return GetEquipInfoByItem(new ItemEquipment(instance),); //} static public EquipTipViewData GetEquipInfoByItem(ItemEquipment ie, int level) { //LoggerHelper.Debug("GetEquipInfoByItem:" + ie.templateId+"!!!!!!!!!!!!!!"); EquipTipViewData data = new EquipTipViewData(); data.levelNeed = ie.levelNeed; //ie.level跟玩家level相关,不实时更新,需要使用时设置,其具体属性根据此值变化 ie.level = MogoWorld.thePlayer.level; if (ie.level <= 0) ie.level = 99; data.growLevel = ie.level + "/" + ie.levelLimit; ie.level = ie.levelNeed; List<string> attrList = ie.GetAttrDescriptionList(level); int m = 0; for (m = 0; m < attrList.Count && m < 9; m++) { data.holeInfos[m] = attrList[m]; } for (; m < 9; m++) { data.holeInfos[m] = ""; } data.job = LanguageData.dataMap[ie.vocation].content; data.iconName = ie.icon; data.isEquipOn = (ie.bagType == ITEM_TYPE_ONEQUIP); for (int i = 0; i < 4; i++) { data.jewelHoles[i] = ""; } if (ie.jewelSlotsType != null) { data.jewelSlotIcons = new List<string>(); for (int i = 0; i < ie.jewelSlotsType.Count; i++) { data.jewelHoles[i] = LanguageData.GetContent(910);//+ ie.jewelSlotsType[i]; data.jewelSlotIcons.Add(IconData.dataMap.Get(30018 + ie.jewelSlotsType[i]).path); } for (int i = 0; i < ie.jewelSlots.Count; i++) { int id = ie.jewelSlots[i]; if (id == -1) continue; data.jewelSlotIcons[i] = IconData.dataMap.Get(30027 + ie.jewelSlotsType[i]).path; ItemJewelData jewel = ItemJewelData.dataMap[id]; string jewelInfo = jewel.effectDescriptionStr + ""; data.jewelHoles[i] = jewelInfo; } } data.name = ie.name; return data; }
/// <summary> /// /// </summary> /// <param name="equip"></param> /// <param name="buttonList">若无按钮即传null</param> public void ShowEquipTip(ItemEquipment equip, List<ButtonInfo> buttonList, int _level, bool needFumoInfo = false, int slot = -1) { EquipTipViewData data = GetEquipInfoByItem(equip, _level); //MenuUIViewManager view = MenuUIViewManager.Instance; EquipTipManager view = EquipTipManager.Instance; //界面静态部分 //view.SetEquipDetailInfoImage(data.iconName); view.ShowEquipDetailInfoImageUsed(data.isEquipOn); view.SetEquipDetailInfoName(data.name);// view.SetEquipImage(equip.templateId); view.SetEquipDetailInfoScoreNum(equip.score); //view.SetEquipDetailInfoImageBg(IconData.GetIconByQuality(equip.quality)); //界面动态排版部分 List<string> attrList = equip.GetAttrDescriptionList(_level); List<string> jewelList = new List<string>(); foreach (string s in data.jewelHoles) { if (s == "") continue; jewelList.Add(s); } string suitName = ""; List<string> suitAttr = new List<string>(); if (equip.suitId > 0) { suitName = ItemSuitEquipmentsData.GetSuitName(equip.suitId); if (!equip.isActive) suitName += LanguageData.GetContent(1137); int suitPutOnNum = GetSuitPutonNum(equip.suitId); int suitMaxNum = ItemSuitEquipmentsData.GetSuitMaxNum(equip.suitId); suitName = String.Concat(suitName, "(", suitPutOnNum, "/", suitMaxNum, ")"); suitAttr = ItemSuitEquipmentsData.GetSuitAttrList(equip.suitId, suitPutOnNum); } string levelDesp = equip.levelDesp; view.SetEquipDetailInfoLevelText(levelDesp); string vocation = LanguageData.dataMap[equip.vocation].content; vocation = LanguageData.GetContent(912, vocation); if (equip.vocation != (int)MogoWorld.thePlayer.vocation) { vocation = MogoUtils.GetRedString(vocation); } view.SetVocationNeedText(vocation); FumoTipUIInfo fumoInfo = null; if (needFumoInfo) { fumoInfo = FumoManager.Instance.GetFumoTipUIInfo(slot); } view.ShowEquipTip(suitName, suitAttr, attrList, jewelList, data.jewelSlotIcons, buttonList, fumoInfo); }