// 设置天赋数据 public void SetData(SSchemeHeroTalentConfig talentConfig, bool bShowEffect = false, bool bShowPrizeDes = true) { BaseIcon.gameObject.SetActive(false); PrizeIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Skill, WndID.WND_ID_HERODETAIL, 1, talentConfig.nTalentIconId); string sTalentName = talentConfig.sTalentPrizeName; U3D_Render.Common.UBB.toHtml(ref sTalentName, UBB_FORMAT_TYPE.UGUI); PrizeDes.text = sTalentName; toolTip.SetText(UTooltipParamName.BodyText, talentConfig.sTalenDisableDescInStatic); PrizeDes.gameObject.SetActive(bShowPrizeDes); if (bShowEffect) { if (param != null) { UEffectManager.Instance.DestroyEffect(UEffectType.UET_EffectPrefab, ref param); } param = new UEffectPrefabParam(_eType: UEffectPrefabType.UEPT_HeroDetailInfo_UpstarPrizeItem, _tfAttachParent: PrizeEffect.transform, _bAutoDestroy: false); UEffectManager.Instance.CreateEffect(UEffectType.UET_EffectPrefab, ref param); } this.gameObject.SetActive(true); }
public void setTalentInfo(int nHeroID, int nTalentID) { SSchemeHeroTalentConfig talentConfig = HeroTalentConfigPage.Instance.GetHeroTalentConfig(nHeroID, nTalentID); if (talentConfig == null) { return; } m_sTalentDesc = talentConfig.sTalenDescInWar; m_sTalentName = talentConfig.sTalentName; int talentIconID = talentConfig.nTalentIconId; talentImage.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Skill, WndID.WND_ID_WAR_RECORDTABLE_FIGHTING, 1, talentIconID); talentImage.gameObject.SetActive(true); }
public void SetTalentLearnActive(int nTalentId, int nHeroId) { SSchemeHeroTalentConfig config = HeroTalentConfigPage.Instance.GetHeroTalentConfig(nHeroId, nTalentId); if (config == null) { return; } int nSlotId = config.nSlotId; if (IsOutOfSkillArray(nSlotId)) { return; } this.skillItemArray[nSlotId].SetTalentLearnActive(config.sTalentName, config.sTalenDescInWar); }
private void InitShowDataInfo(int nHeroId) { if (LogicDataCenter.heroTalentDataManager.dicTalentInfoData == null || !LogicDataCenter.heroTalentDataManager.dicTalentInfoData.ContainsKey(nHeroId)) { CloseMainHeroTalentView(); return; } if (nHeroId <= 0) { return; } m_wndView.ClearHeroTalentData(); HeroTalentConfigPage Instance = HeroTalentConfigPage.Instance; List <HeroTalentDataManager.HeroTalentInfo> listInfo = LogicDataCenter.heroTalentDataManager.dicTalentInfoData[nHeroId]; Dictionary <int, int> dicTalentLevelRecord = new Dictionary <int, int>(); foreach (HeroTalentDataManager.HeroTalentInfo info in listInfo) { SSchemeHeroTalentConfig config = Instance.GetHeroTalentConfig(nHeroId, info.nTalentId); if (config == null) { continue; } string sTalentDescInStatic = info.bActive ? config.sTalenActiveDescInStatic : config.sTalenDisableDescInStatic; int nLevelLimit = config.nLevelLimit; dicTalentLevelRecord[nLevelLimit] = 0; m_wndView.AddHeroTalentListData(info.nTalentId, info.bActive, config.nShowType, config.nTalentIconId, nLevelLimit, config.sTalentName, sTalentDescInStatic, config.sTalenDescInWar, config.nOnlyActive, config.nTalentTermId, config.nRecommandShow > 0); } CalculateWithLevelArray(dicTalentLevelRecord); m_wndView.SetHeroTalentListData(); }
public void OnShowPrizePopupWnd(UPrizePopupData data) { if (data.nPrizeIdList == null) { return; } int nPrizeCount = data.nPrizeIdList.Count; // 动态改变UI大小 //// 方案1水平排列 //RectTransform rectParent = this.gameObject.transform as RectTransform; //RectTransform rectItem = PrizeTemplate.transform as RectTransform; //float fNeedWidth = (nPrizeCount + 1) * rectItem.sizeDelta.x; //Vector2 vecParentSize = rectParent.sizeDelta; //vecParentSize.x = Mathf.Max(500.0f, fNeedWidth); //rectParent.sizeDelta = vecParentSize; // 方案2竖直排列 //RectTransform rectParent = this.gameObject.transform as RectTransform; //RectTransform rectItem = PrizeTemplate.transform as RectTransform; //Vector2 vecParentSize = rectParent.sizeDelta; //vecParentSize.y = ((nPrizeCount - 1) / 4 + 1) * rectItem.sizeDelta.y + 212;// 4个Item一行 //rectParent.sizeDelta = vecParentSize; // 设置基础 PrizeTitle.text = data.strPrizeTitle; PrizeDescription.text = data.strPrizeDesc; PrizeDescription.gameObject.SetActive(!String.IsNullOrEmpty(data.strPrizeDesc)); ConfirmBtnDesc.text = ULocalizationService.Instance.Get("UIView", "Common", "ConfirmBtn"); // 设置奖励Item int nChildCount = PrizeFrame.childCount; for (int i = nChildCount - 1; i >= 0; i--) { Transform trans = PrizeFrame.GetChild(i); if (trans) { var temp = trans.gameObject; ResNode.DestroyRes(ref temp); } } // 普通奖励 if (data.nPrizeIdList != null) { for (int i = 0; i < nPrizeCount && data.nPrizeIdList[i] > 0; i++) { GameObject prizeObj = ResNode.InstantiateRes(PrizeTemplate); if (!prizeObj) { return; } RectTransform prizeRect = prizeObj.transform as RectTransform; if (!prizeRect) { return; } prizeRect.SetParent(PrizeFrame, false); LegendCupPrizeItem prizeItem = prizeObj.GetComponent <LegendCupPrizeItem>(); if (!prizeItem) { return; } prizeItem.SetData(data.nPrizeIdList[i]); } } // 天赋奖励 if (data.nTalentIDList != null) { int nHeroID = data.nHeroID; for (int j = 0; j < data.nTalentIDList.Count; ++j) { GameObject prizeObj = ResNode.InstantiateRes(PrizeTemplate); if (!prizeObj) { return; } RectTransform prizeRect = prizeObj.transform as RectTransform; if (!prizeRect) { return; } prizeRect.SetParent(PrizeFrame, false); LegendCupPrizeItem prizeItem = prizeObj.GetComponent <LegendCupPrizeItem>(); if (!prizeItem) { return; } int nTalentID = data.nTalentIDList[j]; SSchemeHeroTalentConfig talentConfig = HeroTalentConfigPage.Instance.GetHeroTalentConfig(nHeroID, nTalentID); prizeItem.SetData(talentConfig); } } // 金币、经验奖励 if (data.nMoneyCount > 0) { GameObject prizeObj = ResNode.InstantiateRes(PrizeTemplate); if (!prizeObj) { return; } RectTransform prizeRect = prizeObj.transform as RectTransform; if (!prizeRect) { return; } prizeRect.SetParent(PrizeFrame, false); LegendCupPrizeItem prizeItem = prizeObj.GetComponent <LegendCupPrizeItem>(); if (!prizeItem) { return; } prizeItem.SetData(data.nMoneyCount, ECupPrizeType.ECPT_Gold); } if (data.nExpCount > 0) { GameObject prizeObj = ResNode.InstantiateRes(PrizeTemplate); if (!prizeObj) { return; } RectTransform prizeRect = prizeObj.transform as RectTransform; if (!prizeRect) { return; } prizeRect.SetParent(PrizeFrame, false); LegendCupPrizeItem prizeItem = prizeObj.GetComponent <LegendCupPrizeItem>(); if (!prizeItem) { return; } prizeItem.SetData(data.nExpCount, ECupPrizeType.ECPT_Exp); } PrizeTemplate.SetActive(false); }