From 77e46769fa81201c387a14089d442e0a26d1489e Mon Sep 17 00:00:00 2001 From: patou01 <2592673+patou01@users.noreply.github.com> Date: Fri, 1 Oct 2021 10:59:24 +0200 Subject: [PATCH] Fix(Core/Uldaman): Door behind Archaedas can close after event. (#8024) * Fix(Core/Uldaman): Door behind Archaedas can close after event. Once the boss is dead, we shouldn't be able to close the doors anymore. Closes https://github.com/azerothcore/azerothcore-wotlk/issues/7358 * removed unnecessary check to make CI happy --- .../EasternKingdoms/Uldaman/instance_uldaman.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp index 4b33d440a..81f578136 100644 --- a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp +++ b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp @@ -92,6 +92,15 @@ public: SaveToDB(); } + uint32 GetData(uint32 data) const override + { + if (data < MAX_ENCOUNTERS) + { + return _encounters[data]; + } + return 0; + } + std::string GetSaveData() override { std::ostringstream saveStream; @@ -227,7 +236,8 @@ public: void HandleSendEvent(SpellEffIndex /*effIndex*/) { InstanceScript* instance = GetCaster()->GetInstanceScript(); - if (!instance || instance->GetData(DATA_ARCHAEDAS) == IN_PROGRESS) + + if (!instance || instance->GetData(DATA_ARCHAEDAS) == IN_PROGRESS || instance->GetData(DATA_ARCHAEDAS) == DONE) return; instance->SetData(DATA_ARCHAEDAS, IN_PROGRESS);