Exemplo n.º 1
0
 public void InitLootables(ILootTypeFetcher <string> fetcher, ItemLibraryMode startMode)
 {
     currMode = startMode;
     if (!lootHashMap.Keys.Contains(startMode))
     {
         lootHashMap.Add(startMode, new List <ILootable <string> >());
     }
     InitLootables(fetcher);
 }
Exemplo n.º 2
0
        private SplitItemHandler(ILootTypeFetcher <string> fetcher, ItemLibraryMode startMode)
        {
            allLoot     = new List <ILootable <string> >();
            lootHashMap = new Dictionary <ItemLibraryMode, List <ILootable <string> > >()
            {
                { ItemLibraryMode.All, allLoot }
            };

            InitLootables(fetcher, startMode);
        }
Exemplo n.º 3
0
        /// <exception cref="IndexOutOfRangeException">At uneven Array lengths</exception>
        public void InitLootables(ILootTypeFetcher <string>[] fetchers, ItemLibraryMode[] modes)
        {
            if (fetchers.Length != modes.Length)
            {
                throw new IndexOutOfRangeException("Uneven Array length. Both Arrays must have the same length");
            }
            for (int i = 0; i < fetchers.Length; i++)
            {
                if (!lootHashMap.Keys.Contains(modes[i]))
                {
                    lootHashMap.Add(modes[i], new List <ILootable <string> >());
                }
                InitLootables(fetchers[i], modes[i]);
            }

            currMode = ItemLibraryMode.All;
        }