From 0ddf00c7bece48e63eb9aa84b81eea87c858e396 Mon Sep 17 00:00:00 2001 From: Gultask <100873791+Gultask@users.noreply.github.com> Date: Wed, 1 Mar 2023 17:36:56 -0300 Subject: [PATCH] fix(Core/Gameobject): Fix lootable chests related to quests but not having quest loot (#15197) Authored-by: Shauren --- data/sql/updates/pending_db_world/rev_1677339915510744100.sql | 4 ++++ src/server/game/Entities/GameObject/GameObject.cpp | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 data/sql/updates/pending_db_world/rev_1677339915510744100.sql diff --git a/data/sql/updates/pending_db_world/rev_1677339915510744100.sql b/data/sql/updates/pending_db_world/rev_1677339915510744100.sql new file mode 100644 index 000000000..6537ace77 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1677339915510744100.sql @@ -0,0 +1,4 @@ +-- Delete hack fix +UPDATE `gameobject_template` SET `Data1` = 0 WHERE (`entry` = 182583); + +DELETE FROM `gameobject_loot_template` WHERE `Entry` = 19414; diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp index 7431b5050..1365834de 100644 --- a/src/server/game/Entities/GameObject/GameObject.cpp +++ b/src/server/game/Entities/GameObject/GameObject.cpp @@ -1343,7 +1343,7 @@ bool GameObject::ActivateToQuest(Player* target) const case GAMEOBJECT_TYPE_CHEST: { // scan GO chest with loot including quest items - if (LootTemplates_Gameobject.HaveQuestLootForPlayer(GetGOInfo()->GetLootId(), target)) + if (target->GetQuestStatus(GetGOInfo()->chest.questId) == QUEST_STATUS_INCOMPLETE || LootTemplates_Gameobject.HaveQuestLootForPlayer(GetGOInfo()->GetLootId(), target)) { //TODO: fix this hack //look for battlegroundAV for some objects which are only activated after mine gots captured by own team