diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp index c8a7d9d71a1..ad6d16d7e0e 100644 --- a/src/server/game/Entities/GameObject/GameObject.cpp +++ b/src/server/game/Entities/GameObject/GameObject.cpp @@ -880,7 +880,9 @@ void GameObject::Update(uint32 diff) m_usetimes = 0; } - SetGoState(GO_STATE_READY); + // Only goobers with a lock id or a reset time may reset their go state + if (GetGOInfo()->GetLockId() || GetGOInfo()->GetAutoCloseTime()) + SetGoState(GO_STATE_READY); //any return here in case battleground traps if (GameObjectOverride const* goOverride = GetGameObjectOverride())