Exemple #1
0
        private void LoadItems(StatsDat sDat, TagsDat tagsDat)
        {
            foreach (var address in RecordAddresses())
            {
                var r = new ModRecord(M, sDat, tagsDat, address);

                if (records.ContainsKey(r.Key))
                {
                    continue;
                }

                DictionaryRecords.Add(address, r);
                records.Add(r.Key, r);

                if (r.Domain == ModDomain.Monster)
                {
                    continue;
                }

                var byTierKey = Tuple.Create(r.Group, r.AffixType);

                if (!recordsByTier.TryGetValue(byTierKey, out var groupMembers))
                {
                    groupMembers             = new List <ModRecord>();
                    recordsByTier[byTierKey] = groupMembers;
                }

                groupMembers.Add(r);
            }

            foreach (var list in recordsByTier.Values)
            {
                list.Sort(ModRecord.ByLevelComparer);
            }
        }
Exemple #2
0
 public ModRecord GetModByAddress(long address)
 {
     DictionaryRecords.TryGetValue(address, out var result);
     return(result);
 }