void OnStrenthBtnClick() { //HideRuneDetailUI(); //判断强化是否满级; ItemEquip itemE = _ObjectCard.GetHeroData().GetRuneItemInfo(mRunePoint); if (itemE == null) { LogManager.LogError("f**k"); } ItemTemplate itemT = itemE.GetItemRowData(); int maxLv = DataTemplate.GetInstance().GetRuneStrenthMaxLevel(itemT); if (maxLv == -1) { LogManager.LogError("f**k"); } if (itemE.GetStrenghLevel() >= maxLv) { InterfaceControler.GetInst().AddMsgBox(GameUtils.getString("hero_rune_tip2"), mMsgBoxTrans); return; } ShowRuneStrenthUI(itemE); RunOnBack(); }
/// <summary> /// 刷新符文显示--符文强化成功监听; /// </summary> void UpdateAllRuneItems() { List <int> equipedTypes = new List <int>(); for (int i = 0, j = (int)(EM_RUNE_POINT.EM_RUNE_POINT_NUMBER); i < j; i++) { EM_RUNE_POINT erp = (EM_RUNE_POINT)i; ItemEquip runeInfo = mObjectCard.GetHeroData().GetRuneItemInfo(erp); if (runeInfo == null) { //mRunes[i].SetIcon(common.defaultPath + AddSpriteName); mRunes[i].SetIcon(AddSprite); mRunes[i].SetLevelInfoActive(false); } else { ItemTemplate runeTemp = DataTemplate.GetInstance().GetItemTemplateById(runeInfo.GetItemTableID()); if (runeTemp != null) { mRunes[i].SetIcon(common.defaultPath + runeTemp.getIcon()); //mRunes[i].SetLevel(runeInfo.) mRunes[i].SetStarsNum(runeTemp.getRune_quality()); mRunes[i].SetLevel(runeInfo.GetStrenghLevel()); int runeType = runeTemp.getRune_type(); //if (!equipedTypes.Contains(runeType)) equipedTypes.Add(runeType); bool isSpecial = i == (int)(EM_RUNE_POINT.EM_RUNE_POINT_SPECIAL); //if (!isSpecial) //{ // mRuneDetailItem.SetRuneType(runeType); //} } mRunes[i].SetLevelInfoActive(true); } } }
public void OnClickIntensify() { UI_RuneMange._instance.mGuid = mRuneGUID; if (mRuneGUID == null) { return; } ItemEquip itemE = (ItemEquip)ObjectSelf.GetInstance().CommonItemContainer.FindItem(EM_BAG_HASHTABLE_TYPE.EM_BAG_HASHTABLE_TYPE_EQUIP, mRuneGUID); int strengthLv = itemE.GetStrenghLevel(); ItemTemplate itemT = itemE.GetItemRowData(); bool isFullLv = DataTemplate.GetInstance().IsRuneStrenthFullLevel(itemT, strengthLv); //已满级; if (isFullLv) { InterfaceControler.GetInst().AddMsgBox(GameUtils.getString("hero_rune_tip2")); return; } GameEventDispatcher.Inst.dispatchEvent(GameEventID.U_OpenUI, UI_RuneStrenthMgr.UI_ResPath); UI_RuneStrenthMgr.SetShowRuneGUID(mRuneGUID); UI_CaptionManager cap = UI_CaptionManager.GetInstance(); }
public void ShowInfo() { // 获得数据 _rune = (ItemTemplate)DataTemplate.GetInstance().m_ItemTable.getTableData(tableID); _data = (ItemEquip)ObjectSelf.GetInstance().CommonItemContainer.FindItem(EM_BAG_HASHTABLE_TYPE.EM_BAG_HASHTABLE_TYPE_EQUIP, guid); //_icon.sprite = UIResourceMgr.LoadSprite(common.defaultPath + _rune.getIcon()); //_icon.SetNativeSize(); iconItem.SetIcon(common.defaultPath + _rune.getIcon()); iconItem.SetRuneType(_rune.getRune_type()); //iconItem.SetIsSpecial(_rune.getRune_type() == 5 || _rune.getRune_type() == 6); iconItem.SetIsSpecial(RuneModule.IsSpecialRune(_rune)); // 是否已装备 if (_data.IsEquip()) { _equip.SetActive(true); } else { _equip.SetActive(false); } // 名称 _name.text = GameUtils.getString(_rune.getName()); // 符文等级 _level.text = "+" + _data.GetStrenghLevel().ToString(); // 符文基础值 smelt = _rune.getRune_smelt(); //_smeltText.text = smelt.ToString(); // 符文星级 int level = _rune.getRune_quality(); for (int i = 5; i < 10; i++) { _starLevel.transform.GetChild(i).gameObject.SetActive(i < level + 5); } // 是否被选中 _border.SetActive(false); // 金币 返回的物品 int strengid = _rune.getRune_strengthenId(); int strenglevel = _data.GetStrenghLevel(); int unqelID = 0; money = 0; smelt = 0; if (strenglevel == 0) { money = 0; smelt = _rune.getRune_smelt(); _smeltText.text = smelt.ToString(); } if (strenglevel != 0) { smelt = _rune.getRune_smelt(); unqelID = strengid * 100; unqelID += strenglevel; // RunecostTemplate runecost = (RunecostTemplate)DataTemplate.GetInstance().m_RunecostTable.getTableData(unqelID); if (runecost.getReturnType1() == 1400000002) { money += runecost.getReturnValue1(); } else if (runecost.getReturnType1() == 1400000004) { smelt += runecost.getReturnValue1(); } if (runecost.getReturnType2() == 1400000002) { money += runecost.getReturnValue2(); } else if (runecost.getReturnType2() == 1400000004) { smelt += runecost.getReturnValue2(); } _smeltText.text = smelt.ToString(); } }
public void UpdateShow(int runeid, ItemTemplate rune) { if (rune == null) { return; } mRuneGUID = UI_RuneMange._instance.rune[runeid].GetItemGuid(); runeName.text = GameUtils.getString(rune.getName()); //runeIcon.overrideSprite = UIResourceMgr.LoadSprite(common.defaultPath + rune.getIcon()); //runeIcon.transform.localScale = new Vector3(0.8f,0.8f,0f); //runeIcon.SetNativeSize(); mIconItem.SetIcon(common.defaultPath + rune.getIcon()); mIconItem.SetStarsNum(rune.getRune_quality()); mIconItem.SetRuneType(rune.getRune_type()); //int starCount = rune.getRune_quality(); //for (int n = 0; n < mStarList.Count; n++) //{ // if (n == starCount - 1) // { // mStarList[n].SetActive(true); // } // else // { // mStarList[n].SetActive(false); // } //} //for (int m = 1; m <= 4; m++) //{ // mTypes[m - 1].gameObject.SetActive(m == rune.getRune_type()); //} mIconItem.SetIsSpecial(RuneModule.IsSpecialRune(rune)); //GameUtils.DestroyChildsObj(mAttriList); ItemEquip data = (ItemEquip)ObjectSelf.GetInstance().CommonItemContainer.FindItem(EM_BAG_HASHTABLE_TYPE.EM_BAG_HASHTABLE_TYPE_EQUIP, mRuneGUID); //runeLevel.text = "+" + data.GetStrenghLevel(); mIconItem.SetLevel(data.GetStrenghLevel()); //装备人名字 ObjectCard oc = ObjectSelf.GetInstance().HeroContainerBag.GetItemUser(data); if (oc == null) { userName.gameObject.SetActive(false); } else { HeroTemplate heroT = DataTemplate.GetInstance().GetHeroTemplateById(oc.GetHeroData().TableID); if (heroT != null) { userName.text = GameUtils.getString(heroT.getTitleID()) + " " + GameUtils.getString("hero_rune_content7"); } userName.gameObject.SetActive(true); } //是否满级; bool isFullLv = DataTemplate.GetInstance().IsRuneStrenthFullLevel(rune, data.GetStrenghLevel()); GameUtils.SetBtnSpriteGrayState(intensifyBtn, isFullLv); showAtt.Clear(); //--------基础属性; RuneData runeData = data.GetRuneData(); bool titleDone1 = false; int split = 0; int k = 0, p = 0; foreach (int id in runeData.BaseAttributeID) { if (id == -1) { continue; } if (!titleDone1) { k++; titleDone1 = true; CreateTitle(mAttriList, GameUtils.getString("hero_rune_content8"), k - 1); } } foreach (int id in runeData.BaseAttributeID) { if (id == -1) { continue; } BaseruneattributeTemplate bt = DataTemplate.GetInstance().GetBaseruneattributeTemplate(id); p++; if (bt.getNumshow() != 0) { CreateBaseAttriObj(mAttriList, GameUtils.getString(bt.getAttriDes()), "+" + bt.getAttriValue().ToString(), p - 1); } } //创建特殊服务的特效效果属性 foreach (int id in runeData.BaseAttributeID) { if (id == -1) { continue; } BaseruneattributeTemplate bt = DataTemplate.GetInstance().GetBaseruneattributeTemplate(id); if (bt.getNumshow() == 0) { CreateDetailTxts(mAttriList, GameUtils.getString(bt.getAttriDes())); } } //--------附加属性; int count = DataTemplate.GetInstance().GetRuneMaxRedefineTimes(rune); bool titleDone2 = false; int i = 0; bool isGray = false; int b = 0; foreach (int id in runeData.AppendAttribute) { i++; isGray = i * 3 > data.GetStrenghLevel(); if (id == -1) { if (i <= count) { if (!titleDone2) { k++; titleDone2 = true; CreateTitle(mAttriList, GameUtils.getString("hero_rune_content9"), k - 1); } b++; //未知属性,未鉴定; CreateAddAttriObj(mAttriList, GameUtils.getString("rune_content2"), "", GameUtils.getString("rune_content3"), isGray, b - 1); } continue; } if (!titleDone2) { k++; titleDone2 = true; CreateTitle(mAttriList, GameUtils.getString("hero_rune_content9"), k - 1); } b++; AddruneattributeTemplate bt = DataTemplate.GetInstance().GetAddruneattributeTemplate(id); bool isPercent = bt.getIspercentage() > 0; string val = isPercent ? ((float)bt.getAttriValue() / (float)10f + "%") : bt.getAttriValue().ToString(); CreateAddAttriObj(mAttriList, GameUtils.getString(bt.getAttriDes1()), GameUtils.getString(bt.getAttriDes2()), bt.getSymbol() + val, isGray, b - 1); } for (int m = 0; m < showAtt.Count; m++) { showAtt[m].SetActive(true); } //是否鉴定满级; GameUtils.SetBtnSpriteGrayState(authenticateBtn, data.GetDefineTimes() >= count); }
public void RuneShow() { //Debug.Log(tableID); if (itemState == ItemSate.Empty) { for (int i = 0; i < Parent.childCount; i++) { Parent.GetChild(i); if (i == 0) { Parent.GetChild(i).gameObject.SetActive(true); } else { Parent.GetChild(i).gameObject.SetActive(false); } } mySelfBtn.onClick.RemoveListener(new UnityEngine.Events.UnityAction(OnMyselfClick)); return; } else if (itemState == ItemSate.Lock) { for (int i = 0; i < Parent.childCount; i++) { Parent.GetChild(i); if (i == 0 || i == 1) { Parent.GetChild(i).gameObject.SetActive(true); } else { Parent.GetChild(i).gameObject.SetActive(false); } } mySelfBtn.onClick.RemoveListener(new UnityEngine.Events.UnityAction(OnMyselfClick)); return; } else if (itemState == ItemSate.FillDate) { Parent.FindChild("lock").gameObject.SetActive(false); Parent.FindChild("Border").gameObject.SetActive(false); maxLevel.SetActive(true); bg.SetActive(true); specBg.SetActive(true); mIcon.gameObject.SetActive(true); mName.gameObject.SetActive(true); Parent.FindChild("Level").gameObject.SetActive(true); Parent.FindChild("Equip").gameObject.SetActive(false); Parent.FindChild("Pos").gameObject.SetActive(true); Parent.FindChild("stars").gameObject.SetActive(true); mySelfBtn.onClick.RemoveAllListeners(); mySelfBtn.onClick.AddListener(new UnityEngine.Events.UnityAction(OnMyselfClick)); } if (tableID == null) { return; } else { rune = (ItemTemplate)DataTemplate.GetInstance().m_ItemTable.getTableData(tableID); //Debug.Log(rune.getIcon()); mIcon.overrideSprite = UIResourceMgr.LoadSprite(common.defaultPath + rune.getIcon()); // mIcon.SetNativeSize(); mIcon.transform.localScale = new Vector3(0.8f, 0.8f, 0f); mName.text = GameUtils.getString(rune.getName()); int starCount = rune.getRune_quality(); bool isSpec = RuneModule.IsSpecialRune(rune); bg.SetActive(!isSpec); specBg.SetActive(isSpec); for (int i = 0; i < starCount; i++) { mStarList[i].SetActive(true); } for (int i = 1; i <= 4; i++) { mTypes[i - 1].gameObject.SetActive(i == rune.getRune_type()); } for (int i = starCount; i < mStarList.Count; i++) { mStarList[i].SetActive(false); } m_CurItem = (ItemEquip)ObjectSelf.GetInstance().CommonItemContainer.FindItem(EM_BAG_HASHTABLE_TYPE.EM_BAG_HASHTABLE_TYPE_EQUIP, UI_RuneMange._instance.rune[id].GetItemGuid()); bool isEquiped = m_CurItem.IsEquip();//ObjectSelf.GetInstance().HeroContainerBag.IsItemEquiped(data); mEquip.SetActive(isEquiped); mLevel.text = "+" + m_CurItem.GetStrenghLevel(); //已满级 int strengthLv = m_CurItem.GetStrenghLevel(); ItemTemplate itemT = m_CurItem.GetItemRowData(); bool isFullLv = DataTemplate.GetInstance().IsRuneStrenthFullLevel(itemT, strengthLv); if (isFullLv) { maxLevel.SetActive(true); } else { maxLevel.SetActive(false); } //设置符文满级特效颜色 RawImage rawImage = maxLevel.GetComponent <RawImage>(); switch (itemT.getRune_type()) { case 1: //蓝色 rawImage.color = Color.blue; break; case 2: //紫色 rawImage.color = new Color(153 / 255f, 51 / 255f, 250 / 255f); break; case 3: //绿色 rawImage.color = Color.green; break; case 4: //红色 rawImage.color = Color.red; break; case 5: //橙色 rawImage.color = new Color(255 / 255f, 128 / 255f, 0 / 255f); break; default: break; } m_Tip.SetActive(ObjectSelf.GetInstance().CommonItemContainer.IsNewGetItem(m_CurItem.GetItemGuid())); } }
void ShowRuneDetailUI(ItemEquip itemE) { if (itemE == null) { return; } ItemTemplate itemT = DataTemplate.GetInstance().GetItemTemplateById(itemE.GetItemTableID()); mSpecHeroName.text = ""; HideAllRuneSelectEffect(); mRunes[(int)mRunePoint].SetEffectShow((EM_RUNE_TYPE)(itemT.getRune_type())); // mRuneDetailItem.SetIcon(common.defaultPath + itemT.getIcon()); // mRuneDetailItem.SetStarsNum(itemT.getRune_quality()); // mRuneDetailItem.SetLevel(itemE.GetStrenghLevel()); // mRuneDetailItem.SetLevelInfoActive(true); // //bool isSpecial = itemT.getRune_type() == 5 || itemT.getRune_type() == 6; // bool isSpecial = RuneModule.IsSpecialRune(itemT); // mRuneDetailItem.SetIsSpecial(isSpecial); // if (!isSpecial) // { // mRuneDetailItem.SetRuneType(itemT.getRune_type()); // } if (mItemCommon == null) { mItemCommon = RuneFactory.CreateRuneItemCommom(m_RuneItemPos); } RuneItemCommonData ricd = new RuneItemCommonData(); ricd.IsShowMaxEffect = true; ricd.ItemT = itemE.GetItemRowData(); ricd.RuneLevel = itemE.GetStrenghLevel(); ricd.EquipedHeroName = RuneModule.GetItemEuipHeroName(itemE); mItemCommon.SetRuneItemData(ricd, RuneItemCommon.RuneItemShowType.IconWithRightName); //mRuneName.text = GameUtils.getString(itemT.getName()); mUserObj.SetActive(false); if (mDetailCommon == null) { mDetailCommon = new RuneDetailCommon(m_RuneAttriPos, itemE.GetItemGuid(), 450f); } else { mDetailCommon.SetShowData(itemE.GetItemGuid()); } // GameUtils.DestroyChildsObj(mAttriList); // //基础属性; // bool titleDone1 = false; // RuneData runeData = itemE.GetRuneData(); // foreach(int id in runeData.BaseAttributeID) // { // if(id == -1) // continue; // // if(!titleDone1) // { // titleDone1 = true; // CreateTitle(mAttriList, GameUtils.getString("hero_rune_content8")); // } // // BaseruneattributeTemplate bt = DataTemplate.GetInstance().GetBaseruneattributeTemplate(id); // if(bt.getNumshow() == 0) // { // //CreateTitle(mAttriList, GameUtils.getString(bt.getAttriDes())); // CreateDetailTxts(mAttriList, GameUtils.getString(bt.getAttriDes())); // } // else // { // //CreateBaseAttriObj(mAttriList, GameUtils.GetAttriName(bt.getAttriType()), "+" + bt.getAttriValue().ToString()); // CreateBaseAttriObj(mAttriList, GameUtils.getString(bt.getAttriDes()), "+" + bt.getAttriValue().ToString()); // } // } // // //附加属性-------激活等级分别为强化等级达到3/6/9/12; // bool titleDone2 = false; int count = DataTemplate.GetInstance().GetRuneMaxRedefineTimes(itemT); // int i = 0; // int strenthLv = itemE.GetStrenghLevel(); // bool isGray = false; // // foreach (int id in runeData.AppendAttribute) // { // i++; // isGray = i * 3 > strenthLv; // if (id == -1) // { // if (i <= count) // { // if (!titleDone2) // { // titleDone2 = true; // CreateTitle(mAttriList, GameUtils.getString("hero_rune_content9")); // } // // //位置属性,未鉴定; // CreateAddAttriObj(mAttriList, GameUtils.getString("rune_content2"), "", GameUtils.getString("rune_content3"), isGray); // } // // continue; // } // // if(!titleDone2) // { // titleDone2 = true; // CreateTitle(mAttriList, GameUtils.getString("hero_rune_content9")); // } // // AddruneattributeTemplate bt = DataTemplate.GetInstance().GetAddruneattributeTemplate(id); // bool isPercent = bt.getIspercentage() > 0; // string val = isPercent ? ((float)bt.getAttriValue() / (float)10f + "%") : bt.getAttriValue().ToString(); // CreateAddAttriObj(mAttriList, GameUtils.getString(bt.getAttriDes1()), GameUtils.getString(bt.getAttriDes2()), bt.getSymbol() + val, isGray); // } //设置按钮状态; GameUtils.SetBtnSpriteGrayState(mStrenthBtn, DataTemplate.GetInstance().IsRuneStrenthFullLevel(itemT, itemE.GetStrenghLevel())); GameUtils.SetBtnSpriteGrayState(mIdentifyBtn, itemE.GetDefineTimes() >= count); mRuneDetailObj.SetActive(true); }
/// <summary> /// 刷新所有有关符文装配界面的信息; /// </summary> void UpdateUIForm() { List <int> equipedTypes = new List <int>(); for (int i = 0, j = (int)(EM_RUNE_POINT.EM_RUNE_POINT_NUMBER); i < j; i++) { EM_RUNE_POINT erp = (EM_RUNE_POINT)i; ItemEquip runeInfo = mObjectCard.GetHeroData().GetRuneItemInfo(erp); mRunes[i].SetRuneType(EM_RUNE_TYPE.EM_RUNE_TYPE_INVALID); if (runeInfo == null) { //mRunes[i].SetIcon(common.defaultPath + AddSpriteName); mRunes[i].SetIcon(AddSprite); mRunes[i].SetLevelInfoActive(false); } else { ItemTemplate runeTemp = DataTemplate.GetInstance().GetItemTemplateById(runeInfo.GetItemTableID()); if (runeTemp != null) { mRunes[i].SetIcon(common.defaultPath + runeTemp.getIcon()); //mRunes[i].SetLevel(runeInfo.) mRunes[i].SetStarsNum(runeTemp.getRune_quality()); mRunes[i].SetLevel(runeInfo.GetStrenghLevel()); int runeType = runeTemp.getRune_type(); //if (!equipedTypes.Contains(runeType)) equipedTypes.Add(runeType); bool isSpecial = i == (int)(EM_RUNE_POINT.EM_RUNE_POINT_SPECIAL); if (!isSpecial) { mRunes[i].SetRuneType(runeType); } } mRunes[i].SetLevelInfoActive(true); } } int heroTableID = mObjectCard.GetHeroData().TableID; HeroTemplate heroT = DataTemplate.GetInstance().GetHeroTemplateById(heroTableID); if (heroT == null) { LogManager.LogError("hero表中缺少数据 heroid = " + heroTableID); return; } List <int> runeGroup = DataTemplate.GetInstance().GetHeroRuneGroup(heroT); if (runeGroup == null) { LogManager.LogError("获取英雄符文组合失败 heroid = " + heroTableID); return; } if (runeGroup.Count > 4) { LogManager.LogError("符文组合最多4个符文"); return; } for (int i = 0, j = mRuneGoupItems.Length; i < j; i++) { mRuneGoupItems[i].SetActive(false); } for (int i = 0, j = runeGroup.Count; i < j; i++) { //mRuneGoupItems[i].SetIcon(GetIconByRuneType(runeGroup[i])); mRuneGoupItems[i].SetIcon(GetSpriteByRuneFlagType(runeGroup[i])); mRuneGoupItems[i].SetEffectShow(EM_RUNE_TYPE.EM_RUNE_TYPE_INVALID); mRuneGoupItems[i].SetActive(true); } int activeNum = 0; for (int i = 0; i < runeGroup.Count; i++) { int idx = equipedTypes.IndexOf(runeGroup[i]); if (idx == -1) { mRuneGoupItems[i].SetEffectShow(EM_RUNE_TYPE.EM_RUNE_TYPE_INVALID); continue; } else { mRuneGoupItems[i].SetEffectShow((EM_RUNE_TYPE)runeGroup[i]); equipedTypes.RemoveAt(idx); activeNum++; } } bool isActive = activeNum >= runeGroup.Count; //是否激活符文组合条件; RunepassiveTemplate runPassT = DataTemplate.GetInstance().GetRunepassiveTemplate(heroT.getRunePassive()); if (runPassT != null) { string str1 = ""; bool isShow1 = GetRuneGroupValueStr(runPassT, 0, out str1); mRuneValues[0].text = isActive ? str1 : "<color=#acacac>" + str1 + "</color>"; mRuneValues[0].transform.parent.gameObject.SetActive(isShow1); mRuneDetails[0].text = isShow1 ? GameUtils.getString(runPassT.getDes1()) : ""; mRuneAttrImgs[0].sprite = RuneAttrImgs[isActive ? 1 : 0]; string str2 = ""; bool isShow2 = GetRuneGroupValueStr(runPassT, 1, out str2); mRuneValues[1].text = isActive ? str2 : "<color=#acacac>" + str2 + "</color>"; mRuneValues[1].transform.parent.gameObject.SetActive(isShow2); mRuneDetails[1].text = isShow2 ? GameUtils.getString(runPassT.getDes2()) : ""; mRuneAttrImgs[1].sprite = RuneAttrImgs[isActive ? 1 : 0]; string str3 = ""; bool isShow3 = GetRuneGroupValueStr(runPassT, 2, out str3); mRuneValues[2].text = isActive ? str3 : "<color=#acacac>" + str3 + "</color>"; mRuneValues[2].transform.parent.gameObject.SetActive(isShow3); mRuneDetails[2].text = isShow3 ? GameUtils.getString(runPassT.getDes3()) : ""; mRuneAttrImgs[2].sprite = RuneAttrImgs[isActive ? 1 : 0]; } }