public int Compare(IHeroData l, IHeroData r) { if (l == null || l.heroCfgInfo == null) { return(1); } if (r == null || r.heroCfgInfo == null) { return(-1); } switch (this.m_sortType) { case CMallSortHelper.HeroViewSortType.Name: return(this.CompareName(l, r)); case CMallSortHelper.HeroViewSortType.Proficiency: return(this.CompareProficiency(l, r)); case CMallSortHelper.HeroViewSortType.ReleaseTime: return(this.CompareReleaseTime(l, r)); default: return(this.CompareDefault(l, r)); } }
private void SetHeroItem(CMallItemWidget mallWidget, ResHeroCfgInfo heroInfo, CUIFormScript form) { Image component = mallWidget.m_icon.GetComponent <Image>(); component.color = CUIUtility.s_Color_White; string prefabPath = string.Format("{0}{1}", CUIUtility.s_Sprite_Dynamic_BustHero_Dir, heroInfo.szImagePath); component.SetSprite(prefabPath, form, false, true, true); mallWidget.m_skinLabel.CustomSetActive(false); mallWidget.m_topNameLeftText.GetComponent <Text>().text = heroInfo.szName; mallWidget.m_topNameRightText.CustomSetActive(false); IHeroData data = CHeroDataFactory.CreateHeroData(heroInfo.dwCfgID); if (data != null) { ResHeroPromotion resPromotion = data.promotion(); this._payInfoTemp = CMallSystem.GetPayInfoSetOfGood(heroInfo, resPromotion); uint num = this.SetItemPriceInfo(mallWidget, ref this._payInfoTemp); this.SetItemTag(mallWidget, resPromotion, null, form); stUIEventParams eventParams = new stUIEventParams { heroId = heroInfo.dwCfgID, commonUInt64Param1 = this._curFriendUid, commonBool = this._curFriendIsSns, commonUInt32Param1 = this._curWorldId }; mallWidget.m_buyBtn.GetComponent <CUIEventScript>().SetUIEvent(enUIEventType.Click, enUIEventID.HeroView_OpenBuyHeroForFriend, eventParams); mallWidget.m_item.GetComponent <CUIEventScript>().SetUIEvent(enUIEventType.Click, enUIEventID.None, eventParams); } }
private static void SetTeamHeroList(GameObject list, List <uint> heroIds, out int teamPower) { CUIListScript component = list.GetComponent <CUIListScript>(); CUIListElementScript elemenet = null; teamPower = 0; component.SetElementAmount(heroIds.Count); for (int i = 0; i < heroIds.Count; i++) { elemenet = component.GetElemenet(i); GameObject gameObject = elemenet.gameObject.transform.Find("heroItemCell").gameObject; if (heroIds[i] > 0) { IHeroData data = CHeroDataFactory.CreateHeroData(heroIds[i]); teamPower += data.combatEft; CUICommonSystem.SetHeroItemData(elemenet.m_belongedFormScript, gameObject, data, enHeroHeadType.enIcon, false, enHeroInfoShowType.enPVE); elemenet.gameObject.CustomSetActive(true); gameObject.gameObject.CustomSetActive(true); } else { elemenet.gameObject.CustomSetActive(false); gameObject.gameObject.CustomSetActive(false); } } }
private static void OnSelectHeroTimeout(int seq) { CUIFormScript form = Singleton <CUIManager> .GetInstance().GetForm(CHeroSelectNormalSystem.s_heroSelectFormPath); if (form != null) { RoomInfo roomInfo = Singleton <CRoomSystem> .GetInstance().roomInfo; if (roomInfo != null && roomInfo.GetMasterMemberInfo() != null) { ListView <IHeroData> pvPHeroList = CHeroDataFactory.GetPvPHeroList(CMallSortHelper.HeroViewSortType.Name); DebugHelper.Assert(pvPHeroList.get_Count() > CFakePvPHelper.ChosenHeroes.get_Count(), "May have not enough Candidate Heroes!!!"); int num = Random.Range(0, pvPHeroList.get_Count()); IHeroData heroData = pvPHeroList.get_Item(num); while (CFakePvPHelper.ChosenHeroes.ContainsValue(heroData.cfgID)) { num = Random.Range(0, pvPHeroList.get_Count()); heroData = pvPHeroList.get_Item(num); } MemberInfo masterMemberInfo = roomInfo.GetMasterMemberInfo(); masterMemberInfo.ChoiceHero[0].stBaseInfo.stCommonInfo.dwHeroID = heroData.cfgID; CFakePvPHelper.ReqStartSingleWarmBattle(); } } }
public static ListView <IHeroData> GetHostHeroList(bool isIncludeValidExperienceHero, CMallSortHelper.HeroViewSortType sortType = CMallSortHelper.HeroViewSortType.Name) { ListView <IHeroData> listView = new ListView <IHeroData>(); CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo == null) { return(listView); } DictionaryView <uint, CHeroInfo> .Enumerator enumerator = masterRoleInfo.GetHeroInfoDic().GetEnumerator(); while (enumerator.MoveNext()) { if (isIncludeValidExperienceHero) { CRoleInfo arg_41_0 = masterRoleInfo; KeyValuePair <uint, CHeroInfo> current = enumerator.get_Current(); if (arg_41_0.IsOwnHero(current.get_Key())) { goto IL_66; } CRoleInfo arg_5C_0 = masterRoleInfo; KeyValuePair <uint, CHeroInfo> current2 = enumerator.get_Current(); if (arg_5C_0.IsValidExperienceHero(current2.get_Key())) { goto IL_66; } continue; IL_66: ListView <IHeroData> arg_7C_0 = listView; KeyValuePair <uint, CHeroInfo> current3 = enumerator.get_Current(); arg_7C_0.Add(CHeroDataFactory.CreateHeroData(current3.get_Key())); } else { CRoleInfo arg_97_0 = masterRoleInfo; KeyValuePair <uint, CHeroInfo> current4 = enumerator.get_Current(); if (arg_97_0.IsOwnHero(current4.get_Key())) { ListView <IHeroData> arg_B7_0 = listView; KeyValuePair <uint, CHeroInfo> current5 = enumerator.get_Current(); arg_B7_0.Add(CHeroDataFactory.CreateHeroData(current5.get_Key())); } } } if (CSysDynamicBlock.bLobbyEntryBlocked) { for (int i = listView.get_Count() - 1; i >= 0; i--) { IHeroData heroData = listView.get_Item(i); if (heroData.heroCfgInfo.bIOSHide > 0) { listView.Remove(heroData); } } } CHeroOverviewSystem.SortHeroList(ref listView, sortType, false); return(listView); }
public static ListView <IHeroData> GetTrainingHeroList(CMallSortHelper.HeroViewSortType sortType = CMallSortHelper.HeroViewSortType.Name) { ListView <IHeroData> listView = new ListView <IHeroData>(); List <uint> list = new List <uint>(); CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo == null) { return(listView); } DictionaryView <uint, CHeroInfo> .Enumerator enumerator = masterRoleInfo.GetHeroInfoDic().GetEnumerator(); while (enumerator.MoveNext()) { KeyValuePair <uint, CHeroInfo> current = enumerator.Current; if ((current.get_Value().MaskBits & 2u) > 0u) { ListView <IHeroData> listView2 = listView; KeyValuePair <uint, CHeroInfo> current2 = enumerator.Current; listView2.Add(CHeroDataFactory.CreateHeroData(current2.get_Key())); List <uint> list2 = list; KeyValuePair <uint, CHeroInfo> current3 = enumerator.Current; list2.Add(current3.get_Key()); } } for (int i = 0; i < masterRoleInfo.freeHeroList.get_Count(); i++) { if (!masterRoleInfo.GetHeroInfoDic().ContainsKey(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID)) { listView.Add(CHeroDataFactory.CreateHeroData(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID)); list.Add(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID); } } ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); for (int j = 0; j < allHeroList.Count; j++) { if (allHeroList[j].bIsTrainUse == 1 && !list.Contains(allHeroList[j].dwCfgID)) { listView.Add(CHeroDataFactory.CreateHeroData(allHeroList[j].dwCfgID)); } } if (CSysDynamicBlock.bLobbyEntryBlocked) { for (int k = listView.Count - 1; k >= 0; k--) { IHeroData heroData = listView[k]; if (heroData.heroCfgInfo.bIOSHide > 0) { listView.Remove(heroData); } } } CHeroOverviewSystem.SortHeroList(ref listView, sortType, false); return(listView); }
public int GetHeroIndexByConfigId(uint inCfgId) { for (int i = 0; i < this.m_heroList.get_Count(); i++) { IHeroData heroData = this.m_heroList.get_Item(i); if (heroData.cfgID == inCfgId) { return(i); } } return(0); }
public int GetHeroIndexByConfigId(uint inCfgId) { for (int i = 0; i < this.m_heroList.Count; i++) { IHeroData data = this.m_heroList[i]; if (data.cfgID == inCfgId) { return(i); } } return(0); }
private void OnExperienceHeroAdd(uint heroId, int experienceDays) { if (!Singleton <CHeroSelectBaseSystem> .instance.m_isInHeroSelectState) { CUICommonSystem.ShowNewHeroOrSkin(heroId, 0, enUIEventID.None, true, COM_REWARDS_TYPE.COM_REWARDS_TYPE_HERO, false, null, enFormPriority.Priority1, 0, experienceDays); } else if (!Singleton <CHeroSelectBaseSystem> .instance.IsMultilMode() && (Singleton <CHeroSelectBaseSystem> .instance.uiType == enUIType.enNormal)) { IHeroData selectHeroData = CHeroDataFactory.CreateHeroData(heroId); Singleton <CHeroSelectNormalSystem> .instance.HeroSelect_SelectHero(selectHeroData); } }
protected void FilterHeroData() { ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); for (int i = 0; i < allHeroList.Count; i++) { if ((this.m_selectHeroType == enHeroJobType.All) || (allHeroList[i].bJob == ((byte)this.m_selectHeroType))) { IHeroData item = CHeroDataFactory.CreateHeroData(allHeroList[i].dwCfgID); this.m_heroList.Add(item); } } SortHeroList(ref this.m_heroList); }
private static void SetTeamHeroList(GameObject list, COMDT_BATTLELIST_LIST battleList, uint battleListID, out int teamPower) { CUIListScript component = list.GetComponent <CUIListScript>(); teamPower = 0; component.SetElementAmount(0); if (battleList == null || battleList.dwListNum == 0u) { return; } int num = 0; while ((long)num < (long)((ulong)battleList.dwListNum)) { if (battleList.astBattleList[num].dwBattleListID == battleListID) { if (battleList.astBattleList[num].stBattleList.wHeroCnt == 0) { return; } component.SetElementAmount((int)battleList.astBattleList[num].stBattleList.wHeroCnt); int num2 = 0; for (int i = 0; i < (int)battleList.astBattleList[num].stBattleList.wHeroCnt; i++) { CUIListElementScript elemenet = component.GetElemenet(i); GameObject gameObject = elemenet.gameObject.transform.Find("heroItemCell").gameObject; if (battleList.astBattleList[num].stBattleList.BattleHeroList[i] > 0u) { IHeroData heroData = CHeroDataFactory.CreateHeroData(battleList.astBattleList[num].stBattleList.BattleHeroList[i]); teamPower += heroData.combatEft; CUICommonSystem.SetHeroItemData(elemenet.m_belongedFormScript, gameObject, heroData, enHeroHeadType.enIcon, false, true); elemenet.gameObject.CustomSetActive(true); gameObject.gameObject.CustomSetActive(true); num2++; } else { elemenet.gameObject.CustomSetActive(false); gameObject.gameObject.CustomSetActive(false); } } break; } else { num++; } } }
private int CompareReleaseTime(IHeroData l, IHeroData r) { ResHeroShop resHeroShop = null; ResHeroShop resHeroShop2 = null; GameDataMgr.heroShopInfoDict.TryGetValue(l.cfgID, out resHeroShop); GameDataMgr.heroShopInfoDict.TryGetValue(r.cfgID, out resHeroShop2); if (resHeroShop == null) { return(1); } if (resHeroShop2 == null) { return(-1); } return(resHeroShop.dwReleaseId.CompareTo(resHeroShop2.dwReleaseId)); }
/// <summary> /// Initialize the test server host, test client and the databse /// for the use of the integration tests /// </summary> protected static void TestInitialize() { _server = new TestServer(new WebHostBuilder() .UseContentRoot(TestConfigurations.ContentRootPath) .UseStartup <Startup>()); var dbContext = _server.Host.Services.GetService(typeof(ApplicationDbContext)) as ApplicationDbContext; _dbContext = dbContext; _client = _server.CreateClient(); if (_heroData == null) { _heroData = new SqliteHeroData(dbContext); } }
private static void SetTeamHeroList(GameObject list, COMDT_BATTLELIST_LIST battleList, uint battleListID, out int teamPower) { CUIListScript component = list.GetComponent <CUIListScript>(); CUIListElementScript elemenet = null; teamPower = 0; component.SetElementAmount(0); if ((battleList != null) && (battleList.dwListNum != 0)) { for (int i = 0; i < battleList.dwListNum; i++) { if (battleList.astBattleList[i].dwBattleListID == battleListID) { if (battleList.astBattleList[i].stBattleList.wHeroCnt == 0) { return; } component.SetElementAmount(battleList.astBattleList[i].stBattleList.wHeroCnt); int num2 = 0; for (int j = 0; j < battleList.astBattleList[i].stBattleList.wHeroCnt; j++) { elemenet = component.GetElemenet(j); GameObject gameObject = elemenet.gameObject.transform.Find("heroItemCell").gameObject; if (battleList.astBattleList[i].stBattleList.BattleHeroList[j] > 0) { IHeroData data = CHeroDataFactory.CreateHeroData(battleList.astBattleList[i].stBattleList.BattleHeroList[j]); teamPower += data.combatEft; CUICommonSystem.SetHeroItemData(elemenet.m_belongedFormScript, gameObject, data, enHeroHeadType.enIcon, false, enHeroInfoShowType.enPVE); elemenet.gameObject.CustomSetActive(true); gameObject.gameObject.CustomSetActive(true); num2++; } else { elemenet.gameObject.CustomSetActive(false); gameObject.gameObject.CustomSetActive(false); } } break; } } } }
public CMallItem(uint heroID, CMallItem.IconType iconType = CMallItem.IconType.Normal) { this.m_type = CMallItem.ItemType.Hero; this.m_iconType = iconType; this.m_heroData = CHeroDataFactory.CreateHeroData(heroID); if (this.m_heroData != null) { this.m_firstName = this.m_heroData.heroName; this.m_secondName = null; string s_Sprite_Dynamic_Icon_Dir = CUIUtility.s_Sprite_Dynamic_Icon_Dir; if (iconType == CMallItem.IconType.Small) { this.m_useable = CUseableManager.CreateUseable(4, heroID, 1); if (this.m_useable != null) { this.m_iconPath = this.m_useable.GetIconPath(); } else { this.m_iconPath = null; } } else if (this.m_heroData.heroCfgInfo != null) { this.m_iconPath = CUIUtility.s_Sprite_Dynamic_BustHero_Dir + this.m_heroData.heroCfgInfo.szImagePath; } else { this.m_iconPath = null; } ResHeroPromotion resPromotion = this.m_heroData.promotion(); this.m_payInfoSet = CMallSystem.GetPayInfoSetOfGood(this.m_heroData.heroCfgInfo, resPromotion); } else { this.m_useable = null; this.m_firstName = null; this.m_secondName = null; this.m_iconPath = null; this.m_payInfoSet = default(stPayInfoSet); } }
private int CompareProficiency(IHeroData l, IHeroData r) { if (l.proficiencyLV != r.proficiencyLV) { return(r.proficiencyLV.CompareTo(l.proficiencyLV)); } if (l.proficiency != r.proficiency) { return(r.proficiency.CompareTo(l.proficiency)); } if (l.bPlayerOwn && !r.bPlayerOwn) { return(-1); } if (r.bPlayerOwn && !l.bPlayerOwn) { return(1); } return(this.CompareName(l, r)); }
private int CompareDefault(IHeroData l, IHeroData r) { CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo == null) { DebugHelper.Assert(false, "CompareDefault role is null"); return(0); } if (l.bPlayerOwn && !r.bPlayerOwn) { return(-1); } if (r.bPlayerOwn && !l.bPlayerOwn) { return(1); } if (!r.bPlayerOwn && !l.bPlayerOwn) { if (masterRoleInfo.IsFreeHero(l.cfgID) && !masterRoleInfo.IsFreeHero(r.cfgID)) { return(-1); } if (masterRoleInfo.IsFreeHero(r.cfgID) && !masterRoleInfo.IsFreeHero(l.cfgID)) { return(1); } if (!masterRoleInfo.IsFreeHero(r.cfgID) && !masterRoleInfo.IsFreeHero(l.cfgID)) { if (masterRoleInfo.IsValidExperienceHero(l.cfgID) && !masterRoleInfo.IsValidExperienceHero(r.cfgID)) { return(-1); } if (masterRoleInfo.IsValidExperienceHero(r.cfgID) && !masterRoleInfo.IsValidExperienceHero(l.cfgID)) { return(1); } } } return(l.sortId.CompareTo(r.sortId)); }
public static ListView <IHeroData> GetPvPHeroList(CMallSortHelper.HeroViewSortType sortType = CMallSortHelper.HeroViewSortType.Name) { ListView <IHeroData> listView = new ListView <IHeroData>(); CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo == null) { return(listView); } DictionaryView <uint, CHeroInfo> .Enumerator enumerator = masterRoleInfo.GetHeroInfoDic().GetEnumerator(); while (enumerator.MoveNext()) { KeyValuePair <uint, CHeroInfo> current = enumerator.get_Current(); if ((current.get_Value().MaskBits & 2u) > 0u) { ListView <IHeroData> arg_5D_0 = listView; KeyValuePair <uint, CHeroInfo> current2 = enumerator.get_Current(); arg_5D_0.Add(CHeroDataFactory.CreateHeroData(current2.get_Key())); } } for (int i = 0; i < masterRoleInfo.freeHeroList.get_Count(); i++) { if (!masterRoleInfo.GetHeroInfoDic().ContainsKey(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID)) { listView.Add(CHeroDataFactory.CreateHeroData(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID)); } } if (CSysDynamicBlock.bLobbyEntryBlocked) { for (int j = listView.get_Count() - 1; j >= 0; j--) { IHeroData heroData = listView.get_Item(j); if (heroData.heroCfgInfo.bIOSHide > 0) { listView.Remove(heroData); } } } CHeroOverviewSystem.SortHeroList(ref listView, sortType, false); return(listView); }
private void FilterHeroData(bool bOnlySort) { ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); if (!bOnlySort) { this.m_heroList.Clear(); for (int i = 0; i < allHeroList.get_Count(); i++) { if (this.m_selectHeroType == enHeroJobType.All || allHeroList.get_Item(i).bMainJob == (byte)this.m_selectHeroType || allHeroList.get_Item(i).bMinorJob == (byte)this.m_selectHeroType) { IHeroData heroData = CHeroDataFactory.CreateHeroData(allHeroList.get_Item(i).dwCfgID); CMallItem cMallItem = new CMallItem(heroData.cfgID, CMallItem.IconType.Normal); if (this.m_ownFlag) { if (cMallItem.Owned(false)) { this.m_heroList.Add(heroData); } } else { this.m_heroList.Add(heroData); } } } } HeroViewSortImp heroViewSortImp = CMallSortHelper.CreateHeroViewSorter(); if (heroViewSortImp != null) { heroViewSortImp.SetSortType(this.m_heroSortType); this.m_heroList.Sort(heroViewSortImp); if (this.m_bSortDesc) { this.m_heroList.Reverse(); } } }
private static void OnSelectHeroTimeout(int seq) { if (Singleton <CUIManager> .GetInstance().GetForm(CHeroSelectNormalSystem.s_heroSelectFormPath) != null) { RoomInfo roomInfo = Singleton <CRoomSystem> .GetInstance().roomInfo; if ((roomInfo != null) && (roomInfo.GetMasterMemberInfo() != null)) { ListView <IHeroData> pvPHeroList = CHeroDataFactory.GetPvPHeroList(); DebugHelper.Assert(pvPHeroList.Count > ChosenHeroes.Count, "May have not enough Candidate Heroes!!!"); int num = UnityEngine.Random.Range(0, pvPHeroList.Count); IHeroData data = pvPHeroList[num]; while (ChosenHeroes.ContainsValue(data.cfgID)) { num = UnityEngine.Random.Range(0, pvPHeroList.Count); data = pvPHeroList[num]; } roomInfo.GetMasterMemberInfo().ChoiceHero[0].stBaseInfo.stCommonInfo.dwHeroID = data.cfgID; ReqStartSingleWarmBattle(); } } }
public CMallItem(uint heroID, uint skinID, CMallItem.IconType iconType = CMallItem.IconType.Normal) { this.m_type = CMallItem.ItemType.Skin; this.m_iconType = iconType; this.m_heroData = CHeroDataFactory.CreateHeroData(heroID); this.m_skinData = CSkinInfo.GetHeroSkin(heroID, skinID); if (this.m_heroData != null && this.m_skinData != null) { this.m_firstName = this.m_heroData.heroName; this.m_secondName = this.m_skinData.szSkinName; if (iconType == CMallItem.IconType.Small) { this.m_useable = CUseableManager.CreateUseable(7, this.m_skinData.dwID, 1); if (this.m_useable != null) { this.m_iconPath = this.m_useable.GetIconPath(); } else { this.m_iconPath = null; } } else { this.m_iconPath = CUIUtility.s_Sprite_Dynamic_BustHero_Dir + this.m_skinData.szSkinPicID; } ResSkinPromotion skinPromotion = CSkinInfo.GetSkinPromotion(heroID, skinID); this.m_payInfoSet = CMallSystem.GetPayInfoSetOfGood(this.m_skinData, skinPromotion); } else { this.m_useable = null; this.m_firstName = null; this.m_secondName = null; this.m_iconPath = null; this.m_payInfoSet = default(stPayInfoSet); } }
public CMallItem(uint heroID, IconType iconType = 0) { this.m_type = ItemType.Hero; this.m_iconType = iconType; this.m_heroData = CHeroDataFactory.CreateHeroData(heroID); if (this.m_heroData != null) { this.m_firstName = this.m_heroData.heroName; this.m_secondName = null; string str = CUIUtility.s_Sprite_Dynamic_Icon_Dir; if (iconType == IconType.Small) { this.m_useable = CUseableManager.CreateUseable(COM_ITEM_TYPE.COM_OBJTYPE_HERO, heroID, 1); if (this.m_useable != null) { this.m_iconPath = this.m_useable.GetIconPath(); } else { this.m_iconPath = null; } } else { this.m_iconPath = CUIUtility.s_Sprite_Dynamic_BustHero_Dir + this.m_heroData.imagePath; } ResHeroPromotion resPromotion = this.m_heroData.promotion(); this.m_payInfoSet = CMallSystem.GetPayInfoSetOfGood(this.m_heroData.heroCfgInfo, resPromotion); } else { this.m_useable = null; this.m_firstName = null; this.m_secondName = null; this.m_iconPath = null; this.m_payInfoSet = new stPayInfoSet(); } }
public CMallItem(uint heroID, uint skinID, IconType iconType = 0) { this.m_type = ItemType.Skin; this.m_iconType = iconType; this.m_heroData = CHeroDataFactory.CreateHeroData(heroID); this.m_skinData = CSkinInfo.GetHeroSkin(heroID, skinID); if ((this.m_heroData != null) && (this.m_skinData != null)) { this.m_firstName = this.m_heroData.heroName; this.m_secondName = this.m_skinData.szSkinName; if (iconType == IconType.Small) { this.m_useable = CUseableManager.CreateUseable(COM_ITEM_TYPE.COM_OBJTYPE_HEROSKIN, this.m_skinData.dwID, 1); if (this.m_useable != null) { this.m_iconPath = this.m_useable.GetIconPath(); } else { this.m_iconPath = null; } } else { this.m_iconPath = CUIUtility.s_Sprite_Dynamic_BustHero_Dir + this.m_skinData.szSkinPicID; } ResSkinPromotion skinPromotion = CSkinInfo.GetSkinPromotion(heroID, skinID); this.m_payInfoSet = CMallSystem.GetPayInfoSetOfGood(this.m_skinData, skinPromotion); } else { this.m_useable = null; this.m_firstName = null; this.m_secondName = null; this.m_iconPath = null; this.m_payInfoSet = new stPayInfoSet(); } }
public Game() { this.HeroData = new HeroData(); }
public void SetMediator(IHeroData hero) { heroData = hero; }
private void OnCommonHeroItemEnable(CUIEvent uiEvent) { CPlayerProfile profile = Singleton <CPlayerInfoSystem> .get_instance().GetProfile(); int srcWidgetIndexInBelongedList = uiEvent.m_srcWidgetIndexInBelongedList; GameObject srcWidget = uiEvent.m_srcWidget; GameObject gameObject = Utility.FindChild(srcWidget, "heroItem"); ListView <COMDT_MOST_USED_HERO_INFO> listView = profile.MostUsedHeroList(); if (listView == null || srcWidgetIndexInBelongedList >= listView.get_Count()) { return; } COMDT_MOST_USED_HERO_INFO cOMDT_MOST_USED_HERO_INFO = listView.get_Item(srcWidgetIndexInBelongedList); CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo == null) { return; } IHeroData heroData = CHeroDataFactory.CreateHeroData(cOMDT_MOST_USED_HERO_INFO.dwHeroID); GameObject proficiencyIcon = Utility.FindChild(gameObject, "heroProficiencyImg"); GameObject proficiencyBg = Utility.FindChild(gameObject, "heroProficiencyBgImg"); CUICommonSystem.SetHeroProficiencyIconImage(uiEvent.m_srcFormScript, proficiencyIcon, (int)cOMDT_MOST_USED_HERO_INFO.dwProficiencyLv); CUICommonSystem.SetHeroProficiencyBgImage(uiEvent.m_srcFormScript, proficiencyBg, (int)cOMDT_MOST_USED_HERO_INFO.dwProficiencyLv, false); if (!CPlayerInfoSystem.isSelf(profile.m_uuid)) { CUICommonSystem.SetHeroItemImage(uiEvent.m_srcFormScript, gameObject, CSkinInfo.GetHeroSkinPic(cOMDT_MOST_USED_HERO_INFO.dwHeroID, cOMDT_MOST_USED_HERO_INFO.dwSkinID), enHeroHeadType.enBust, false, true); } else { CUICommonSystem.SetHeroItemImage(uiEvent.m_srcFormScript, gameObject, masterRoleInfo.GetHeroSkinPic(cOMDT_MOST_USED_HERO_INFO.dwHeroID), enHeroHeadType.enBust, false, true); } GameObject root = Utility.FindChild(gameObject, "profession"); CUICommonSystem.SetHeroJob(uiEvent.m_srcFormScript, root, (enHeroJobType)heroData.heroType); Text componetInChild = Utility.GetComponetInChild <Text>(gameObject, "heroNameText"); componetInChild.text = heroData.heroName; Text componetInChild2 = Utility.GetComponetInChild <Text>(gameObject, "TotalCount"); componetInChild2.text = Singleton <CTextManager> .get_instance().GetText("Player_Info_PVP_Total_Count", new string[] { (cOMDT_MOST_USED_HERO_INFO.dwGameWinNum + cOMDT_MOST_USED_HERO_INFO.dwGameLoseNum).ToString() }); Text componetInChild3 = Utility.GetComponetInChild <Text>(gameObject, "WinRate"); componetInChild3.text = Singleton <CTextManager> .get_instance().GetText("Player_Info_PVP_Win_Rate", new string[] { CPlayerProfile.Round(CPlayerProfile.Divide(cOMDT_MOST_USED_HERO_INFO.dwGameWinNum, cOMDT_MOST_USED_HERO_INFO.dwGameWinNum + cOMDT_MOST_USED_HERO_INFO.dwGameLoseNum) * 100f) }); ulong num = 0uL; ulong num2 = 0uL; ulong num3 = 0uL; uint num4 = 0u; COMDT_HERO_STATISTIC_DETAIL stStatisticDetail = cOMDT_MOST_USED_HERO_INFO.stStatisticDetail; uint dwNum = stStatisticDetail.dwNum; int num5 = 0; while ((long)num5 < (long)((ulong)dwNum)) { COMDT_HERO_STATISTIC_INFO cOMDT_HERO_STATISTIC_INFO = stStatisticDetail.astTypeDetail[num5]; num += cOMDT_HERO_STATISTIC_INFO.ullKDAPct; num2 += cOMDT_HERO_STATISTIC_INFO.ullTotalHurtHero; num3 += cOMDT_HERO_STATISTIC_INFO.ullTotalBeHurt; num4 = num4 + cOMDT_HERO_STATISTIC_INFO.dwWinNum + cOMDT_HERO_STATISTIC_INFO.dwLoseNum; num5++; } num4 = ((num4 != 0u) ? num4 : 1u); Utility.GetComponetInChild <Text>(gameObject, "AverKDA").text = Singleton <CTextManager> .get_instance().GetText("Player_Info_PVP_AverKDA", new string[] { (num / (ulong)num4 / 100uL).ToString("0.0") }); Utility.GetComponetInChild <Text>(gameObject, "AverHurt").text = Singleton <CTextManager> .get_instance().GetText("Player_Info_PVP_AverHurt", new string[] { (num2 / (ulong)num4).ToString("d") }); Utility.GetComponetInChild <Text>(gameObject, "AverTakenHurt").text = Singleton <CTextManager> .get_instance().GetText("Player_Info_PVP_AverTakenHurt", new string[] { (num3 / (ulong)num4).ToString("d") }); }
public void OnSkillTipsShow() { if (this.m_FormScript != null) { GameObject gameObject = this.m_FormScript.transform.Find("SkillTipsBg").gameObject; if (!gameObject.activeSelf) { gameObject.CustomSetActive(true); } SkillSlotType[] typeArray1 = new SkillSlotType[4]; typeArray1[1] = SkillSlotType.SLOT_SKILL_1; typeArray1[2] = SkillSlotType.SLOT_SKILL_2; typeArray1[3] = SkillSlotType.SLOT_SKILL_3; SkillSlotType[] typeArray = typeArray1; GameObject[] objArray = new GameObject[typeArray.Length]; objArray[0] = gameObject.transform.Find("Panel0").gameObject; objArray[1] = gameObject.transform.Find("Panel1").gameObject; objArray[2] = gameObject.transform.Find("Panel2").gameObject; objArray[3] = gameObject.transform.Find("Panel3").gameObject; Skill skillObj = null; if (Singleton <GamePlayerCenter> .instance.GetHostPlayer() != null) { PoolObjHandle <ActorRoot> captain = Singleton <GamePlayerCenter> .instance.GetHostPlayer().Captain; if (captain != 0) { IHeroData data = CHeroDataFactory.CreateHeroData((uint)captain.handle.TheActorMeta.ConfigId); SkillSlot[] skillSlotArray = captain.handle.SkillControl.SkillSlotArray; for (int i = 0; i < typeArray.Length; i++) { SkillSlot slot = skillSlotArray[(int)typeArray[i]]; objArray[i].CustomSetActive(true); if (slot != null) { skillObj = slot.SkillObj; } else if ((i < (typeArray.Length - 1)) && (i > 0)) { skillObj = new Skill((captain.handle.TheActorMeta.ConfigId * 100) + (i * 10)); } else { skillObj = null; } if (skillObj != null) { Image component = objArray[i].transform.Find("SkillMask/SkillImg").GetComponent <Image>(); if ((component != null) && !string.IsNullOrEmpty(skillObj.IconName)) { component.SetSprite(CUIUtility.s_Sprite_Dynamic_Skill_Dir + skillObj.IconName, Singleton <CUIManager> .GetInstance().GetForm(s_battleHeroInfoForm), true, false, false); } Text text = objArray[i].transform.Find("Text_Tittle").GetComponent <Text>(); if ((text != null) && (skillObj.cfgData.szSkillName.Length > 0)) { text.text = StringHelper.UTF8BytesToString(ref skillObj.cfgData.szSkillName); } Text text2 = objArray[i].transform.Find("Text_CD").GetComponent <Text>(); int skillCDMax = 0; if (slot != null) { skillCDMax = slot.GetSkillCDMax(); } text2.text = (i != 0) ? Singleton <CTextManager> .instance.GetText("Skill_Cool_Down_Tips", new string[1]) : Singleton <CTextManager> .instance.GetText("Skill_Common_Effect_Type_5"); if ((i < typeArray.Length) && (i > 0)) { Text text3 = objArray[i].transform.Find("Text_EnergyCost").GetComponent <Text>(); if (slot == null) { string[] args = new string[] { skillObj.cfgData.iEnergyCost.ToString() }; text3.text = Singleton <CTextManager> .instance.GetText(CUICommonSystem.GetEnergyMaxOrCostText(skillObj.cfgData.dwEnergyCostType, EnergyShowType.CostValue), args); } else { string[] textArray3 = new string[] { slot.NextSkillEnergyCostTotal().ToString() }; text3.text = Singleton <CTextManager> .instance.GetText(CUICommonSystem.GetEnergyMaxOrCostText(skillObj.cfgData.dwEnergyCostType, EnergyShowType.CostValue), textArray3); } } uint[] skillEffectType = skillObj.cfgData.SkillEffectType; GameObject obj3 = null; for (int j = 1; j <= 2; j++) { obj3 = objArray[i].transform.Find(string.Format("EffectNode{0}", j)).gameObject; if ((j <= skillEffectType.Length) && (skillEffectType[j - 1] != 0)) { obj3.CustomSetActive(true); obj3.GetComponent <Image>().SetSprite(CSkillData.GetEffectSlotBg((SkillEffectType)skillEffectType[j - 1]), this.m_FormScript, true, false, false); obj3.transform.Find("Text").GetComponent <Text>().text = CSkillData.GetEffectDesc((SkillEffectType)skillEffectType[j - 1]); } else { obj3.CustomSetActive(false); } } Text text4 = objArray[i].transform.Find("Text_Detail").GetComponent <Text>(); ValueDataInfo[] actorValue = captain.handle.ValueComponent.mActorValue.GetActorValue(); if ((text4 != null) && (skillObj.cfgData.szSkillDesc.Length > 0)) { text4.text = CUICommonSystem.GetSkillDesc(skillObj.cfgData.szSkillDesc, actorValue, slot.GetSkillLevel(), captain.handle.ValueComponent.actorSoulLevel); } } else if (i == (typeArray.Length - 1)) { Text text5 = objArray[i].transform.Find("Text_Detail").GetComponent <Text>(); if (Singleton <BattleLogic> .GetInstance().GetCurLvelContext().IsMobaMode()) { text5.text = Singleton <CTextManager> .GetInstance().GetText("Skill_Text_Lock_PVP"); } else { text5.text = Singleton <CTextManager> .GetInstance().GetText("Skill_Text_Lock_PVE"); } } } } } } }
private int CompareName(IHeroData l, IHeroData r) { return(string.Compare(l.heroCfgInfo.szName, r.heroCfgInfo.szName, this.m_culture, 0)); }
public static void SetPveHeroItemData(CUIFormScript formScript, GameObject listItem, IHeroData data) { if (listItem == null || data == null) { return; } bool bPlayerOwn = data.bPlayerOwn; Transform transform = listItem.transform; Transform transform2 = transform.Find("heroProficiencyImg"); Transform transform3 = transform.Find("heroProficiencyBgImg"); CUICommonSystem.SetHeroProficiencyIconImage(formScript, transform2.gameObject, (int)data.proficiencyLV); CUICommonSystem.SetHeroProficiencyBgImage(formScript, transform3.gameObject, (int)data.proficiencyLV, false); CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo != null) { transform3.GetComponent <Image>().color = ((!masterRoleInfo.IsHaveHero(data.cfgID, true)) ? CUIUtility.s_Color_GrayShader : Color.white); transform2.GetComponent <Image>().color = ((!masterRoleInfo.IsHaveHero(data.cfgID, true)) ? CUIUtility.s_Color_GrayShader : Color.white); } bool flag = false; bool flag2 = false; if (masterRoleInfo != null) { flag = masterRoleInfo.IsFreeHero(data.cfgID); flag2 = masterRoleInfo.IsCreditFreeHero(data.cfgID); bool flag3 = masterRoleInfo.IsValidExperienceHero(data.cfgID); CUICommonSystem.SetHeroItemImage(formScript, listItem, masterRoleInfo.GetHeroSkinPic(data.cfgID), enHeroHeadType.enBust, !bPlayerOwn && !flag && !flag3, true); } GameObject gameObject = transform.Find("profession").gameObject; CUICommonSystem.SetHeroJob(formScript, gameObject, (enHeroJobType)data.heroType); Text component = transform.Find("heroNameText").GetComponent <Text>(); component.text = data.heroName; Transform transform4 = transform.Find("TxtFree"); Transform transform5 = transform.Find("TxtCreditFree"); if (transform4 != null) { transform4.gameObject.CustomSetActive(flag && !flag2); } if (transform5 != null) { transform5.gameObject.CustomSetActive(flag2); } GameObject gameObject2 = transform.Find("imgExperienceMark").gameObject; gameObject2.CustomSetActive(data.IsValidExperienceHero()); CUIEventScript component2 = listItem.GetComponent <CUIEventScript>(); stUIEventParams eventParams = default(stUIEventParams); eventParams.openHeroFormPar.heroId = data.cfgID; eventParams.openHeroFormPar.openSrc = enHeroFormOpenSrc.HeroListClick; component2.SetUIEvent(enUIEventType.Click, enUIEventID.HeroInfo_OpenForm, eventParams); }
private void Draw(CMail mail) { if (this.form != null) { Text componetInChild = Utility.GetComponetInChild <Text>(this.form.gameObject, "Panel/msgContainer/name"); Text componetInChild2 = Utility.GetComponetInChild <Text>(this.form.gameObject, "Panel/msgContainer/msg"); Text componetInChild3 = Utility.GetComponetInChild <Text>(this.form.gameObject, "Panel/msgContainer/from"); if (componetInChild == null || componetInChild2 == null || componetInChild3 == null) { return; } CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo == null) { DebugHelper.Assert(false, "Master Role Info is null"); return; } componetInChild.set_text(string.Format(Singleton <CTextManager> .GetInstance().GetText("Mail_Ask_For_Myself"), masterRoleInfo.Name)); componetInChild2.set_text(mail.mailContent); componetInChild3.set_text(string.Format(Singleton <CTextManager> .GetInstance().GetText("Mail_Ask_For_From", new string[] { mail.from }), new object[0])); if (mail.accessUseable == null || mail.accessUseable.Count == 0) { return; } CUseable cUseable = mail.accessUseable[0]; switch (cUseable.m_type) { case COM_ITEM_TYPE.COM_OBJTYPE_HERO: { ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey(cUseable.m_baseID); DebugHelper.Assert(dataByKey != null); if (dataByKey != null) { Text component = this.form.transform.Find("Panel/Title/titleText").GetComponent <Text>(); component.set_text(Singleton <CTextManager> .GetInstance().GetText("Ask_For_Hero_Friend_Title")); Text component2 = this.form.transform.Find("Panel/skinBgImage/skinNameText").GetComponent <Text>(); component2.set_text(StringHelper.UTF8BytesToString(ref dataByKey.szName)); Image component3 = this.form.transform.Find("Panel/skinBgImage/skinIconImage").GetComponent <Image>(); component3.SetSprite(CUIUtility.s_Sprite_Dynamic_BustHero_Dir + StringHelper.UTF8BytesToString(ref dataByKey.szImagePath), this.form, false, true, true, true); this.form.transform.Find("Panel/Panel_Prop").gameObject.CustomSetActive(false); Transform transform = this.form.transform.Find("Panel/skinPricePanel"); Transform costIcon = transform.Find("costImage"); CHeroSkinBuyManager.SetPayCostIcon(this.form, costIcon, enPayType.DianQuan); Transform costTypeText = transform.Find("costTypeText"); CHeroSkinBuyManager.SetPayCostTypeText(costTypeText, enPayType.DianQuan); uint payValue = 0u; IHeroData heroData = CHeroDataFactory.CreateHeroData(cUseable.m_baseID); ResHeroPromotion resPromotion = heroData.promotion(); stPayInfoSet payInfoSetOfGood = CMallSystem.GetPayInfoSetOfGood(dataByKey, resPromotion); for (int i = 0; i < payInfoSetOfGood.m_payInfoCount; i++) { if (payInfoSetOfGood.m_payInfos[i].m_payType == enPayType.Diamond || payInfoSetOfGood.m_payInfos[i].m_payType == enPayType.DianQuan || payInfoSetOfGood.m_payInfos[i].m_payType == enPayType.DiamondAndDianQuan) { payValue = payInfoSetOfGood.m_payInfos[i].m_payValue; break; } } Transform transform2 = transform.Find("costPanel"); if (transform2) { Transform currentPrice = transform2.Find("costText"); CHeroSkinBuyManager.SetPayCurrentPrice(currentPrice, payValue); } } break; } case COM_ITEM_TYPE.COM_OBJTYPE_HEROSKIN: { uint heroId = 0u; uint skinId = 0u; CSkinInfo.ResolveHeroSkin(cUseable.m_baseID, out heroId, out skinId); ResHeroSkin heroSkin = CSkinInfo.GetHeroSkin(cUseable.m_baseID); DebugHelper.Assert(heroSkin != null, "heroSkin is null"); if (heroSkin != null) { Text component4 = this.form.transform.Find("Panel/Title/titleText").GetComponent <Text>(); component4.set_text(Singleton <CTextManager> .GetInstance().GetText("Ask_For_Skin_Friend_Title")); Image component5 = this.form.transform.Find("Panel/skinBgImage/skinIconImage").GetComponent <Image>(); string prefabPath = string.Format("{0}{1}", CUIUtility.s_Sprite_Dynamic_BustHero_Dir, StringHelper.UTF8BytesToString(ref heroSkin.szSkinPicID)); component5.SetSprite(prefabPath, this.form, false, true, true, true); Text component6 = this.form.transform.Find("Panel/skinBgImage/skinNameText").GetComponent <Text>(); component6.set_text(StringHelper.UTF8BytesToString(ref heroSkin.szSkinName)); this.form.transform.Find("Panel/Panel_Prop").gameObject.CustomSetActive(true); GameObject gameObject = this.form.transform.Find("Panel/Panel_Prop/List_Prop").gameObject; CSkinInfo.GetHeroSkinProp(heroId, skinId, ref CHeroInfoSystem2.s_propArr, ref CHeroInfoSystem2.s_propPctArr, ref CHeroInfoSystem2.s_propImgArr); CUICommonSystem.SetListProp(gameObject, ref CHeroInfoSystem2.s_propArr, ref CHeroInfoSystem2.s_propPctArr); Transform transform3 = this.form.transform.Find("Panel/skinPricePanel"); Transform costIcon2 = transform3.Find("costImage"); CHeroSkinBuyManager.SetPayCostIcon(this.form, costIcon2, enPayType.DianQuan); Transform costTypeText2 = transform3.Find("costTypeText"); CHeroSkinBuyManager.SetPayCostTypeText(costTypeText2, enPayType.DianQuan); uint payValue2 = 0u; stPayInfoSet skinPayInfoSet = CSkinInfo.GetSkinPayInfoSet(heroId, skinId); for (int j = 0; j < skinPayInfoSet.m_payInfoCount; j++) { if (skinPayInfoSet.m_payInfos[j].m_payType == enPayType.Diamond || skinPayInfoSet.m_payInfos[j].m_payType == enPayType.DianQuan || skinPayInfoSet.m_payInfos[j].m_payType == enPayType.DiamondAndDianQuan) { payValue2 = skinPayInfoSet.m_payInfos[j].m_payValue; break; } } Transform transform4 = transform3.Find("costPanel"); if (transform4 != null) { Transform currentPrice2 = transform4.Find("costText"); CHeroSkinBuyManager.SetPayCurrentPrice(currentPrice2, payValue2); } } break; } } } }