private void GetHeroRcmdSymbolList() { if (!this.m_cfgHeroRcmdSymbolList.TryGetValue(this.m_curHeroId, out this.m_rcmdSymbolList)) { ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey(this.m_curHeroId); if (dataByKey == null) { DebugHelper.Assert(false, "GetHeroRcmdSymbolList heroCfgInfo is null heroId = " + this.m_curHeroId); } else { List <uint>[] listArray = new List <uint> [CSymbolInfo.s_maxSymbolLevel]; HashSet <object> .Enumerator enumerator = GameDataMgr.symbolRcmdDatabin.GetDataByKey(dataByKey.dwSymbolRcmdID).GetEnumerator(); while (enumerator.MoveNext()) { ResSymbolRcmd current = (ResSymbolRcmd)enumerator.Current; if (listArray[current.wSymbolLvl - 1] == null) { listArray[current.wSymbolLvl - 1] = new List <uint>(); } for (int i = 0; i < current.SymbolID.Length; i++) { if (current.SymbolID[i] > 0) { listArray[current.wSymbolLvl - 1].Add(current.SymbolID[i]); } } } this.m_cfgHeroRcmdSymbolList.Add(this.m_curHeroId, listArray); this.m_rcmdSymbolList = listArray; } } }
private void GetHeroRcmdSymbolList() { if (this.m_cfgHeroRcmdSymbolList.TryGetValue(this.m_curHeroId, ref this.m_rcmdSymbolList)) { return; } ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey(this.m_curHeroId); if (dataByKey == null) { DebugHelper.Assert(false, "GetHeroRcmdSymbolList heroCfgInfo is null heroId = " + this.m_curHeroId); return; } List <uint>[] array = new List <uint> [CSymbolInfo.s_maxSymbolLevel]; HashSet <object> dataByKey2 = GameDataMgr.symbolRcmdDatabin.GetDataByKey(dataByKey.dwSymbolRcmdID); HashSet <object> .Enumerator enumerator = dataByKey2.GetEnumerator(); while (enumerator.MoveNext()) { ResSymbolRcmd resSymbolRcmd = (ResSymbolRcmd)enumerator.get_Current(); if (array[(int)(resSymbolRcmd.wSymbolLvl - 1)] == null) { array[(int)(resSymbolRcmd.wSymbolLvl - 1)] = new List <uint>(); } for (int i = 0; i < resSymbolRcmd.SymbolID.Length; i++) { if (resSymbolRcmd.SymbolID[i] > 0u) { array[(int)(resSymbolRcmd.wSymbolLvl - 1)].Add(resSymbolRcmd.SymbolID[i]); } } } this.m_cfgHeroRcmdSymbolList.Add(this.m_curHeroId, array); this.m_rcmdSymbolList = array; }