From 8376bba57925eda08e72d72e04fe6ce39fa354e2 Mon Sep 17 00:00:00 2001 From: Kitzunu <24550914+Kitzunu@users.noreply.github.com> Date: Tue, 2 Feb 2021 20:02:39 +0100 Subject: [PATCH] fix(Core/Player): Prevent exploit to loot items that are already looted * https://github.com/TrinityCore/TrinityCore/commit/586c00fe2e226da99968ebe763d3226c6134658c Co-Authored-By: Gildor <521036+Jildor@users.noreply.github.com> --- src/server/game/Entities/Player/Player.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index cfcc59b328..e2f59f76de 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -25362,16 +25362,16 @@ void Player::StoreLootItem(uint8 lootSlot, Loot* loot) LootItem* item = loot->LootItemInSlot(lootSlot, this, &qitem, &ffaitem, &conditem); - if (!item) + if (!item || item->is_looted) { - SendEquipError(EQUIP_ERR_ALREADY_LOOTED, NULL, nullptr); + SendEquipError(EQUIP_ERR_ALREADY_LOOTED, nullptr, nullptr); return; } // Xinef: exploit protection, dont allow to loot normal items if player is not master loot // Xinef: only quest, ffa and conditioned items if (!IS_ITEM_GUID(GetLootGUID()) && GetGroup() && GetGroup()->GetLootMethod() == MASTER_LOOT && GetGUID() != GetGroup()->GetMasterLooterGuid()) - if (qitem == NULL && ffaitem == NULL && conditem == nullptr) + if (qitem == nullptr && ffaitem == nullptr && conditem == nullptr) { SendLootRelease(GetLootGUID()); return;