diff --git a/apps/openmw/mwlua/luabindings.cpp b/apps/openmw/mwlua/luabindings.cpp index e922eb7db5..efb64244e8 100644 --- a/apps/openmw/mwlua/luabindings.cpp +++ b/apps/openmw/mwlua/luabindings.cpp @@ -274,6 +274,8 @@ namespace MWLua }); api["_runStandardActivationAction"] = [context](const GObject& object, const GObject& actor) { + if (!object.ptr().getRefData().activate()) + return; context.mLuaManager->addAction( [object, actor] { const MWWorld::Ptr& objPtr = object.ptr(); diff --git a/apps/openmw/mwworld/worldimp.cpp b/apps/openmw/mwworld/worldimp.cpp index 4c090b2701..033c6d5afc 100644 --- a/apps/openmw/mwworld/worldimp.cpp +++ b/apps/openmw/mwworld/worldimp.cpp @@ -3707,8 +3707,7 @@ namespace MWWorld void World::activate(const Ptr& object, const Ptr& actor) { breakInvisibility(actor); - if (object.getRefData().activate()) - MWBase::Environment::get().getLuaManager()->objectActivated(object, actor); + MWBase::Environment::get().getLuaManager()->objectActivated(object, actor); } struct ResetActorsVisitor