diff --git a/data/sql/updates/pending_db_world/DM_FactoryDoor_Fix.sql b/data/sql/updates/pending_db_world/DM_FactoryDoor_Fix.sql new file mode 100644 index 000000000..5cc50ac84 --- /dev/null +++ b/data/sql/updates/pending_db_world/DM_FactoryDoor_Fix.sql @@ -0,0 +1 @@ +UPDATE `smart_scripts` SET `action_type`=9, `comment`='Rhahk\'Zor - On Just Died - Activate Gameobject' WHERE `entryorguid`=644 AND `source_type`=0 AND `id`=2 AND `link`=3; diff --git a/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp b/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp index 0d92d33a6..27371a4b5 100644 --- a/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp +++ b/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp @@ -50,8 +50,9 @@ public: break; case GO_FACTORY_DOOR: gameobject->UpdateSaveToDb(true); + // GoState (Door opened) is restored during GO creation, but we need to set LootState to prevent Lever from closing it again if (_encounters[TYPE_RHAHK_ZOR] == DONE) - gameobject->SetGoState(GO_STATE_ACTIVE); + gameobject->SetLootState(GO_ACTIVATED); break; case GO_IRON_CLAD_DOOR: gameobject->UpdateSaveToDb(true);