mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
Fix buyback request flow and prune temporary diagnostics
- implement vendor buyback state in GameHandler (buyback item list + pending sell tracking) - send CMSG_BUYBACK_ITEM with WotLK/AzerothCore absolute buyback slot (74 + ui index) - consume 0x46A/0x480 vendor side-channel packets safely without relying on token slot mapping - keep sell/buy failure handling synced with buyback list and chat errors - remove temporary packet hex/trace logging used during buyback debugging
This commit is contained in:
parent
871da33942
commit
1fdf450c5e
2 changed files with 176 additions and 7 deletions
|
|
@ -808,6 +808,13 @@ public:
|
|||
void sellItem(uint64_t vendorGuid, uint64_t itemGuid, uint32_t count);
|
||||
void sellItemBySlot(int backpackIndex);
|
||||
void sellItemInBag(int bagIndex, int slotIndex);
|
||||
struct BuybackItem {
|
||||
uint64_t itemGuid = 0;
|
||||
ItemDef item;
|
||||
uint32_t count = 1;
|
||||
};
|
||||
void buyBackItem(uint32_t buybackSlot);
|
||||
const std::deque<BuybackItem>& getBuybackItems() const { return buybackItems_; }
|
||||
void autoEquipItemBySlot(int backpackIndex);
|
||||
void autoEquipItemInBag(int bagIndex, int slotIndex);
|
||||
void useItemBySlot(int backpackIndex);
|
||||
|
|
@ -1532,6 +1539,11 @@ private:
|
|||
// Vendor
|
||||
bool vendorWindowOpen = false;
|
||||
ListInventoryData currentVendorItems;
|
||||
std::deque<BuybackItem> buybackItems_;
|
||||
std::unordered_map<uint64_t, BuybackItem> pendingSellToBuyback_;
|
||||
int pendingBuybackSlot_ = -1;
|
||||
uint32_t pendingBuyItemId_ = 0;
|
||||
uint32_t pendingBuyItemSlot_ = 0;
|
||||
|
||||
// Trainer
|
||||
bool trainerWindowOpen_ = false;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue