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); } }
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); }