diff --git a/apps/openmw/mwlua/objectbindings.cpp b/apps/openmw/mwlua/objectbindings.cpp index b2d5824629..0a1098f450 100644 --- a/apps/openmw/mwlua/objectbindings.cpp +++ b/apps/openmw/mwlua/objectbindings.cpp @@ -133,6 +133,12 @@ namespace MWLua else { newPtr = world->moveObject(ptr, destCell, pos); + if (MWBase::Environment::get().getWorldScene()->isCellActive(*srcCell)) + { + ESM::RefId script = cls.getScript(newPtr); + if (!script.empty()) + world->getLocalScripts().add(script, newPtr); + } world->rotateObject(newPtr, rot, MWBase::RotationFlag_none); } if (placeOnGround) diff --git a/apps/openmw/mwworld/cellstore.cpp b/apps/openmw/mwworld/cellstore.cpp index a41fbb150a..8fb86f2cad 100644 --- a/apps/openmw/mwworld/cellstore.cpp +++ b/apps/openmw/mwworld/cellstore.cpp @@ -1239,7 +1239,7 @@ namespace MWWorld // no need to clearCorpse, handled as part of get() if (!ptr.getRefData().isDeleted()) ptr.getClass().respawn(ptr); - return false; + return true; }); } }