public int CompareTo(ItemBase other) { int result = Type.CompareTo(other.Type); if (result == 0) { result = Name.CompareTo(other.Name); } if (result == 0) { result = Rarity.CompareTo(other.Rarity); } if (result == 0) { result = Compare(other); } return(result); }