white armor,weapon to junk

This commit is contained in:
Salikh Gurgenidze
2026-01-19 18:46:51 +04:00
parent e9ccf2a4f9
commit 4caed37406
2 changed files with 36 additions and 6 deletions
+19 -5
View File
@@ -590,10 +590,17 @@ local function AddSortKeys(items)
item.isMount = isMount
-- Class and slot ordering
if itemRarity == 0 or IsItemGrayTooltip(item.bagID, item.slot, item.data.link) then
-- Check for items that should be treated as junk:
-- 1. Gray items (quality 0)
-- 2. Items with gray tooltip
-- 3. White equippable items (quality 1 Weapon/Armor) - vendor trash
local isGrayItem = itemRarity == 0 or IsItemGrayTooltip(item.bagID, item.slot, item.data.link)
local isWhiteEquip = (itemRarity == 1) and (itemCategory == "Weapon" or itemCategory == "Armor")
if isGrayItem or isWhiteEquip then
item.sortedClass = CATEGORY_ORDER["Junk"] or 99
item.equipSlotOrder = 999
item.isEquippable = false -- Treat gray gear as junk, not gear
item.isEquippable = false -- Treat junk gear as junk, not gear
elseif isEquippable then
item.sortedClass = 1 -- All equippable gear gets priority class
item.equipSlotOrder = EQUIP_SLOT_ORDER[itemSubType] or 999
@@ -1042,12 +1049,19 @@ local function BuildGreyTailPositions(bagIDs, greyCount)
return tailSlots
end
-- Split a list of collected items into non-greys and greys (quality 0)
-- Split a list of collected items into non-junk and junk items
-- Junk includes: gray items (quality 0), gray tooltip items, white equippable items (quality 1 Weapon/Armor)
local function SplitGreyItems(items)
local nonGreys, greys = {}, {}
for _, item in ipairs(items) do
-- Use same logic as AddSortKeys for determining Junk/Grey status (stability)
if tonumber(item.quality or 0) == 0 or IsItemGrayTooltip(item.bagID, item.slot, item.data.link) then
-- Use same logic as AddSortKeys for determining Junk status (stability)
local quality = tonumber(item.quality or 0)
local isGray = quality == 0 or IsItemGrayTooltip(item.bagID, item.slot, item.data.link)
-- White equippable items (Weapon/Armor) are also treated as junk
local itemClass = item.class or ""
local isWhiteEquip = (quality == 1) and (itemClass == "Weapon" or itemClass == "Armor")
if isGray or isWhiteEquip then
table.insert(greys, item)
else
table.insert(nonGreys, item)