void InitCache() { var list = DicPlayerMgr.GetAllForCache(); _playersDic = list.ToDictionary(d => d.Idx, d => d); _playerEntities = list; var list2 = DicStarskillsMgr.GetAllForCache(); _starskillDic = new Dictionary <int, List <DicStarskillsEntity> >(list2.Count); _starskillPlusList = new List <string>(list2.Count); _starskillplusCount = 0; foreach (var entity in list2) { if (entity.IsValid) { if (!_starskillDic.ContainsKey(entity.PlayerId)) { _starskillDic[entity.PlayerId] = new List <DicStarskillsEntity>(); } _starskillDic[entity.PlayerId].Add(entity); _starskillPlusList.Add(entity.PlusCode); _starskillplusCount++; } } _notSynthesisPlayer = new List <int>(); var playerString = CacheFactory.AppsettingCache.GetAppSetting(EnumAppsetting.NotSynthesisPlayer); var pList = playerString.Split(','); foreach (var p in pList) { int pid = ConvertHelper.ConvertToInt(p, 0); if (pid != 0) { _notSynthesisPlayer.Add(pid); } } _playerLinkDetailDic = new Dictionary <int, List <int> >(); var list3 = DicPlayerlinkMgr.GetAll(); foreach (var entity in list3) { if (!_playerLinkDetailDic.ContainsKey(entity.LinkId)) { _playerLinkDetailDic.Add(entity.LinkId, new List <int>()); } _playerLinkDetailDic[entity.LinkId].Add(entity.Idx); } foreach (var entity in list3) { if (!_playerLinkDetailDic.ContainsKey(entity.Idx)) { _playerLinkDetailDic.Add(entity.Idx, new List <int>()); } _playerLinkDetailDic[entity.Idx].Add(entity.LinkId); var links = _playerLinkDetailDic[entity.LinkId]; foreach (var link in links) { if (link != entity.Idx) { _playerLinkDetailDic[entity.Idx].Add(link); } } } _theStarDic = new Dictionary <int, ConfigPlayerthestarEntity>(); var allTheStar = ConfigPlayerthestarMgr.GetAll(); _theStarDic = allTheStar.ToDictionary(r => r.Idx, r => r); var allPotential = ConfigPotentialMgr.GetAll(); _potentialDic = new Dictionary <int, ConfigPotentialEntity>(); allPotentialId = new List <int>(); foreach (var item in allPotential) { if (!allPotentialId.Exists(r => r == item.PotentialId)) { allPotentialId.Add(item.PotentialId); } var key = GetKey(item.Level, item.PotentialId); if (!_potentialDic.ContainsKey(key)) { _potentialDic.Add(key, item); } } _potentialCardDic = new Dictionary <string, List <ConfigPotentialcardEntity> >(); var allcard = ConfigPotentialcardMgr.GetAll(); foreach (var item in allcard) { if (!_potentialCardDic.ContainsKey(item.CardLevel)) { _potentialCardDic.Add(item.CardLevel, new List <ConfigPotentialcardEntity>()); } _potentialCardDic[item.CardLevel].Add(item); } }
public static SkillTipsEntity ExportSkillTips(bool includeStarSkillLevel = false) { var tips = new SkillTipsEntity(); tips.SkillCard = DicSkillcardtipsMgr.GetAll(); tips.StarSkill = DicStarskilltipsMgr.GetAll(); tips.ManagerTalent = DicManagertalenttipsMgr.GetAll(); tips.ClubSkills = DicClubskillMgr.GetAll(); var wills = DicManagerwilltipsMgr.GetAll(); var willParts = DicManagerwillparttipsMgr.GetAll(); var dicWill = new Dictionary <string, DicManagerwilltipsEntity>(wills.Count); tips.LowWill = new List <DicManagerwilltipsEntity>(); tips.HighWill = new List <DicManagerwilltipsEntity>(); var strengthList = ConfigStrengthMgr.GetAll(); var _configStrengthDic = new Dictionary <int, ConfigStrengthEntity>(strengthList.Count); foreach (var entity in strengthList) { var key = BuildStrengthKey(entity.CardLevel, entity.Source, entity.Target); if (!_configStrengthDic.ContainsKey(key)) { _configStrengthDic.Add(key, entity); } } tips.PlayerStrengthDic = _configStrengthDic; var allSkillConfig = ConfigSkillupgradeMgr.GetAll(); var _SkillUpgradeDic = new Dictionary <int, ConfigSkillupgradeEntity>(allSkillConfig.Count); foreach (var item in allSkillConfig) { var key = GetKey(item.SkillLevel, item.Quality); if (!_SkillUpgradeDic.ContainsKey(key)) { _SkillUpgradeDic.Add(key, item); } else { _SkillUpgradeDic[key] = item; } } tips.SkillUpGradeDic = _SkillUpgradeDic; var allprpo = ConfigPrposellMgr.GetAll(); tips.PrpoSelllist = allprpo; var allSkill = DicSkillstreeMgr.GetAll(); var allSkillDesc = DicSkillstreedesdicMgr.GetAll(); var skillList = new List <ManagerSkillTree>(); foreach (var skill in allSkill) { var desc = allSkillDesc.FindAll(r => r.SkillCode == skill.SkillCode); foreach (var d in desc) { var sk = new ManagerSkillTree(); sk.CoditionPoint = skill.ConditionPoint; sk.Condition = skill.Condition; sk.Description = d.Description; sk.ManagerLevel = skill.RequireManagerLevel; sk.ManagerType = skill.ManagerType; sk.MaxPoint = skill.MaxPoint; sk.SkillCode = skill.SkillCode; sk.SkillLevel = d.SkillLevel; sk.SkillName = skill.SkillName; sk.Opener = skill.Opener; skillList.Add(sk); } } tips.ManagerSkillTree = skillList; #region CombLink //var combLinks = DicPlayerlinkMgr.GetAll(); var cdic = new SortedDictionary <int, int>(); int cno = 0; int cnt = 0; //foreach (var item in combLinks) //{ // if (!cdic.TryGetValue(item.Idx, out cno)) // { // if (!cdic.TryGetValue(item.LinkId, out cno)) // cno = ++cnt; // } // cdic[item.Idx] = cno; // cdic[item.LinkId] = cno; //} var dicComb = new Dictionary <int, string>(); var list = new List <int>(); for (int i = 0; i <= cnt; i++) { cno = 0; list.Clear(); foreach (var kvp in cdic) { if (kvp.Value != i) { continue; } if (cno == 0) { cno = kvp.Key; } else { list.Add(kvp.Key); } } if (list.Count > 0) { dicComb[cno] = string.Join(",", list.ToArray()); } } #endregion foreach (var item in wills) { if (item.WillRank == 1) { tips.LowWill.Add(item); } else { tips.HighWill.Add(item); } dicWill[item.SkillCode] = item; } DicManagerwilltipsEntity will = null; foreach (var g in willParts.GroupBy(i => i.SkillCode)) { if (!dicWill.TryGetValue(g.Key, out will)) { continue; } will.PartList = g.ToList(); } CombTipsEntity comb = null; tips.Combs = new List <CombTipsEntity>(); foreach (var item in dicWill.Values) { if (item.WillRank == 1) { continue; } comb = new CombTipsEntity(item); comb.PartList = new List <CombPartTipsEntity>(); foreach (var part in item.PartList) { if (dicComb.ContainsKey(part.Pid)) { part.LinkPid = dicComb[part.Pid]; } else { part.LinkPid = string.Empty; } comb.PartList.Add(new CombPartTipsEntity(part)); } tips.Combs.Add(comb); } //tips.StarArousalSkills = DicStararousalskillsMgr.GetAll(); tips.Potential = new Dictionary <int, List <ConfigPotentialEntity> >(); var allPotential = ConfigPotentialMgr.GetAll(); foreach (var item in allPotential) { if (!tips.Potential.ContainsKey(item.PotentialId)) { tips.Potential.Add(item.PotentialId, new List <ConfigPotentialEntity>()); } tips.Potential[item.PotentialId].Add(item); } if (includeStarSkillLevel) { tips.StarSkillLevels = DicStarskillleveltipsMgr.GetAll(); } return(tips); }