public void onActivedTalent(int nTalentID) { if (CheckActiveTalentIdIsCorrect(nTalentID) == false) { return; } UListHeroTalentData itemData = getTalentData(nTalentID); if (itemData != null) { UIMsgCmdData uiResult = new UIMsgCmdData((int)WndMsgID.WND_ID_HEROTALENTVIEW_LEARNHEROTALENT, itemData.nTalentId, "", IntPtr.Zero, 0); UISystem.Instance.SendWndMessage(WndMsgID.WND_ID_HEROTALENTVIEW_LEARNHEROTALENT, uiResult); } }
// 天赋项点击事件 public void OnHeroTalentItemClick(int nIndex, ListViewItem item) { if (nIndex < 0 || nIndex >= HeroTalentList.DataSource.Count) { return; } UListHeroTalentData itemData = HeroTalentList.DataSource[nIndex]; // 激活天赋 if (ActiveTalent(itemData)) { ShowMainTalent(false); } }
// 激活天赋 private bool ActiveTalent(UListHeroTalentData itemData) { if (itemData == null) { return(false); } if (!LogicDataCenter.heroTalentDataManager.isCanActiveTalent(itemData.nTalentId, itemData.nTalentLevel)) { onTalentCantActive(); return(false); } if (itemData.nTalentTermId > 0) { // 判断前置天赋是否已经激活 bool bTermActive = LogicDataCenter.heroTalentDataManager.isActivedThisTalent(itemData.nTalentTermId); if (!bTermActive) { return(false); } } int nTalentId = itemData.nTalentId; // 判断该等级是否激活次数用完了 if (LogicDataCenter.heroTalentDataManager.isTalentActivedThisLv(itemData.nTalentLevel)) { onTalentCantActive(); return(false); } // 激活天赋 cmd_Entity_Hero_Talent data = new cmd_Entity_Hero_Talent(); data.nHeroTalentId = nTalentId; EntityEventHelper.Instance.SendCommand <cmd_Entity_Hero_Talent>(EntityFactory.MainHeroID, EntityLogicDef.ENTITY_CMD_ACTIVE_TALENT, ref data); return(true); }
public void AddHeroTalentListData(int nTalentId, bool bCanUse, int nShowType, int nIconId, int nTalentLevel, string sTalentName, string sTalentDescInStatic, string sTalenDescInWar, int nOnlyActive, int nTalentTermId, bool isRecommandShow) { if (bCanUse == false) { return; } string sTalentDesc = sTalenDescInWar; UListHeroTalentData data = new UListHeroTalentData(); data.nTalentId = nTalentId; data.nTalentIconId = nIconId; data.nTalentLevel = nTalentLevel; data.sTalentName = sTalentName; data.sTalentDesc = sTalentDesc; data.bOnlyActive = nOnlyActive > 0; data.bLock = !bCanUse; data.nTalentTermId = nTalentTermId; data.bRecommand = isRecommandShow; AddHeroTalentListData(data); }
public void AddHeroTalentListData(UListHeroTalentData data) { HeroTalentData.Add(data); }