Example #1
0
        public static SortStatus SortStatus(this ItemSortInfo sortInfo, int index)
        {
            switch (sortInfo.IndexStatus(index))
            {
            case ItemIndexStatus.NoMatchingIndex:
                return(Classes.SortStatus.NoMatchingIndex);

            case ItemIndexStatus.BelongsInIndexAndOthers:
            case ItemIndexStatus.BelongsInIndex:
                return(Classes.SortStatus.BelongsInIndex);

            case ItemIndexStatus.NoSpaceInAnyIndex:
            case ItemIndexStatus.NoSpaceInIndex:
            case ItemIndexStatus.UniqueButNoSpace:
                return(Classes.SortStatus.MoveButUnable);

            case ItemIndexStatus.BelongsElsewhere:
                return(Classes.SortStatus.Move);

            case ItemIndexStatus.Unknown:
                return(Classes.SortStatus.Unknown);

            default:
                return(Classes.SortStatus.Unknown);
            }
        }
Example #2
0
 public bool AllBelong()
 {
     foreach (var idCountPair in ItemCounts.Where(x => x.Key > 0 && x.Value > 0))
     {
         ItemSortInfo sortInfo = ItemSortStatus.GetSortInfo(idCountPair.Key);
         if (Index != ItemSortStatus.PlayerInventoryIndex &&
             sortInfo.ItemInfo.Unique &&
             ItemSortStatus.PlayerInventoryUniques.Contains(sortInfo.TrueItemId))
         {
             continue;
         }
         if (sortInfo.SortStatus(Index) == SortStatus.Move)
         {
             return(false);
         }
     }
     return(true);
 }