/// <summary> /// 更新消除 /// </summary> internal void UpdateRemove() { bool isSelectRS = (m_uint_selectRSBaseId != 0); RuneStone rs = DataManager.Manager <ItemManager>() .GetTempBaseItemByBaseID <RuneStone>(m_uint_selectRSBaseId, ItemDefine.ItemDataType.RuneStone); uint num = (isSelectRS) ? (uint)imgr.GetItemNumByBaseId(m_uint_selectRSBaseId) : 0; if (null != m_processRsGrowShow) { m_processRsGrowShow.SetGridData(m_uint_selectRSBaseId, needUnload: true); } int attrCount = GetEquipAttrCount(false); if (attrCount > 0) { EquipDefine.LocalAttrData attr = null; GameCmd.PairNumber attrPair = null; ColorType cType = ColorType.JZRY_Txt_Black; bool choose = false; for (ForgingProccessPropertyIndex i = ForgingProccessPropertyIndex.One; i < (ForgingProccessPropertyIndex)attrCount; i++) { choose = IsSelectEquipAttr() && (m_em_selectEquipAttrIndex == i); cType = (choose) ? ColorType.JZRY_Txt_Red : ColorType.JZRY_Txt_Black; attrPair = GetEquipAttrByIndex((int)i, true); if (m_dic_propCurGrids.ContainsKey(i) && !m_dic_propCurGrids[i].Visible) { m_dic_propCurGrids[i].SetVisible(true); attr = EquipDefine.LocalAttrData.Create(attrPair); m_dic_propCurGrids[i].SetGridView(ColorManager.GetColorString(cType, attr.AttrDes), attr.IsMaxGrade, true , attr.Grade); } if (m_dic_propCBs.ContainsKey(i) && !m_dic_propCBs[i].gameObject.activeSelf) { m_dic_propCBs[i].gameObject.SetActive(true); m_dic_propCBs[i].Set(choose); } bool showTips = emgr.IsItemHaveAdditiveAttrOrGemHole(selectEquipId); if (null != m_label_ProccessTips && m_label_ProccessTips.gameObject.activeSelf != showTips) { m_label_ProccessTips.gameObject.SetActive(showTips); if (showTips) { m_label_ProccessTips.text = "勾选属性消除后消失"; } } } } }
/// <summary> /// 更新提取 /// </summary> internal void UpdateFetch() { RuneStone rs = DataManager.Manager <ItemManager>() .GetTempBaseItemByBaseID <RuneStone>(emgr.InactiveRuneStoneBaseId, ItemDefine.ItemDataType.RuneStone); uint num = (uint)imgr.GetItemNumByBaseId(emgr.InactiveRuneStoneBaseId); if (null != m_processRsGrowShow) { m_processRsGrowShow.SetGridData(rs.BaseId); } int attrCount = GetEquipAttrCount(true); if (attrCount > 0) { EquipDefine.LocalAttrData attr = null; GameCmd.PairNumber attrPair = null; for (ForgingProccessPropertyIndex i = ForgingProccessPropertyIndex.One ; i < (ForgingProccessPropertyIndex)attrCount; i++) { attrPair = GetEquipAttrByIndex((int)i, true); if (m_dic_propCurGrids.ContainsKey(i) && !m_dic_propCurGrids[i].Visible) { m_dic_propCurGrids[i].SetVisible(true); attr = EquipDefine.LocalAttrData.Create(attrPair); m_dic_propCurGrids[i].SetGridView(ColorManager.GetColorString(ColorType.JZRY_Txt_Black, attr.AttrDes), attr.IsMaxGrade, true , attr.Grade); } } bool showTips = emgr.IsItemHaveAdditiveAttrOrGemHole(selectEquipId); if (null != m_label_ProccessTips && m_label_ProccessTips.gameObject.activeSelf != showTips) { m_label_ProccessTips.gameObject.SetActive(showTips); if (showTips) { m_label_ProccessTips.text = "提取后此装备消失"; } } } }
/// <summary> /// 更新提升 /// </summary> internal void UpdatePromote() { bool isSelectRS = (m_uint_selectRSBaseId != 0); RuneStone rs = DataManager.Manager <ItemManager>() .GetTempBaseItemByBaseID <RuneStone>(m_uint_selectRSBaseId, ItemDefine.ItemDataType.RuneStone); uint num = (isSelectRS) ? (uint)imgr.GetItemNumByBaseId(m_uint_selectRSBaseId) : 0; if (null != m_processRsGrowShow) { m_processRsGrowShow.SetGridData(m_uint_selectRSBaseId, needUnload: true); } int attrCount = GetEquipAttrCount(); if (attrCount > 0) { EquipDefine.LocalAttrData attr = null; EquipDefine.LocalAttrData nextAttr = null; GameCmd.PairNumber attrPair = null; ColorType cType = ColorType.JZRY_Txt_Black; bool choose = false; Vector3 tempPos = Vector3.zero; for (ForgingProccessPropertyIndex i = ForgingProccessPropertyIndex.One; i < (ForgingProccessPropertyIndex)attrCount; i++) { cType = ColorType.JZRY_Txt_Black; choose = IsSelectEquipAttr() && (m_em_selectEquipAttrIndex == i); attrPair = GetEquipAttrByIndex((int)i); attr = EquipDefine.LocalAttrData.Create(attrPair); if (m_dic_propCurGrids.ContainsKey(i)) { m_dic_propCurGrids[i].SetVisible(true); m_dic_propCurGrids[i].SetGridView(ColorManager.GetColorString(cType, attr.AttrDes), attr.IsMaxGrade, true , attr.Grade); } if (m_dic_propNextGrids.ContainsKey(i)) { cType = (choose) ? ColorType.JZRY_Green : ColorType.JZRY_Txt_Black; m_dic_propNextGrids[i].SetVisible(true); if (attr.IsMaxGrade) { m_dic_propNextGrids[i].SetGridView("", false, false); m_dic_propNextGrids[i].SetProperty("已提升至最大等级"); } else { nextAttr = EquipDefine.LocalAttrData.Create((null != attr) ? attr.NextEffectId : 0); if (null != nextAttr) { m_dic_propNextGrids[i].SetGridView( ColorManager.GetColorString(cType, nextAttr.AttrDes), nextAttr.IsMaxGrade, true, nextAttr.Grade); } else { Engine.Utility.Log.Error("Forgingpanel_proccess UpdatePromote nextAttr null"); } } if (null != m_trans_ArrowPromote && choose && isSelectRS) { if (!m_trans_ArrowPromote.gameObject.activeSelf) { m_trans_ArrowPromote.gameObject.SetActive(true); } tempPos = m_trans_ArrowPromote.position; tempPos.y = m_dic_propCurGrids[i].CacheTransform.position.y; m_trans_ArrowPromote.transform.position = tempPos; if (null != m_label_ArrowPromoteTxt) { uint differ = (null != attr && null != rs) ? (rs.Grade - attr.Grade) : 0; m_label_ArrowPromoteTxt.text = string.Format("成功率{0}%", emgr.GetPropertyPromoteProp(differ)); } } } if (m_dic_propCBs.ContainsKey(i) && !m_dic_propCBs[i].gameObject.activeSelf) { m_dic_propCBs[i].gameObject.SetActive(true); m_dic_propCBs[i].Set(choose); } } } }