Feature request: do not auto sell gray BOEs
KyrosKrane opened this issue ยท 7 comments
Is your feature request related to a problem? Please describe.
With 10.0.5, gray items are now transmoggable. Scrap still auto sells them, which can lead to the loss of transmogs or sellable items.
Describe the solution you'd like
-
Add a new option to Scrap to not sell equippable, poor-quality (gray), BOE items. Non-equippable items, BOP gray items, and non-binding equippable gray items can continue to be sold.
-
Add a second option to auto-vendor items kept by option 1 if you already know the appearance and appearance source of that item. (Blizzard tracks two entries for transmogs: the appearance of the item, and the source of that appearance. It's possible to have a specific appearance, but when you search for that appearance by the name of the item, it won't appear, because you learned that appearance from some other source item with an identical appearance but different name.)
The manual keep and vendor lists should still override the options above. That is, if I mark an item as vendorable, it should still be sold if it meets the criteria of 1; and if I mark an item as always keep, it should always be kept even though it qualifies for 2.
It's also possible to just add 1, and let the user manage 2 by marking each item as vendorable when the appearance/source is learned.
Describe alternatives you've considered
In practice, Blizzard's changes mean I have to manually manage selling gray items to a vendor. I've turned on the Scrap option to sell 10 at a time, and I review each group of sales to see if it included any BOEs, then I manually buy them back and either mark them excluded or learn them right away. I also have to be super careful when randomly visiting a vendor with gray items in my bags, which can lead to mogs being sold unintentionally.
Additional context
Thanks in advance!
I added this in my copy.
in
addons/main/main.lua
Line 129: Change
local _, link, quality, level,_,_,_,_, slot, _, value, class, subclass = GetItemInfo(id)
to
local _, link, quality, level,_,_,_,_, slot, _, value, class, subclass, bindType = GetItemInfo(id)
Line 137: Change
if quality == POOR then
to
if quality == POOR and bindType ~= LE_ITEM_BIND_ON_EQUIP then
Line 146
elseif quality == POOR then
to
elseif quality == POOR and bindType ~= LE_ITEM_BIND_ON_EQUIP then
Those were the only two places I could find where it actually queries game data for the quality, so adding the additional condition for the bind type should make it not sell grey boes.
beware that v10.0.11 of Scrap was pushed today on Curseforge without any changes about gray BoE transmogs (i.e. it still tries to sell them)... if you patched the files locally then you'll have to re-apply the changes.
I would point out that the lines you need to change are the lines 153, 161 and 170 in the current version of the addon
I added this in my copy.
in
addons/main/main.lua
Line 129: Change
local _, link, quality, level,_,_,_,_, slot, _, value, class, subclass = GetItemInfo(id)
tolocal _, link, quality, level,_,_,_,_, slot, _, value, class, subclass, bindType = GetItemInfo(id)
Line 137: Change
if quality == POOR then
toif quality == POOR and bindType ~= LE_ITEM_BIND_ON_EQUIP then
Line 146
elseif quality == POOR then
toelseif quality == POOR and bindType ~= LE_ITEM_BIND_ON_EQUIP then
Those were the only two places I could find where it actually queries game data for the quality, so adding the additional condition for the bind type should make it not sell grey boes.
Added in new version! Thank you for the community implementation, it's hard to get to all the requests!