1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-10 06:39:49 +00:00
OpenMW/apps/openmw/mwscript
fredzio e5fa457fe7 Properly account for interleaved move of actors.
Before this change, if an actor position was changed while the physics
simulation was running, the simulation result would be discarded. It is
fine in case of one off event such as teleport, but in the case of
scripts making use of this functionality to make lifts or conveyor (such
as Sotha Sil Expanded mod) it broke actor movement.

To alleviate this issue, at the end of the simulation, the position of the Actor
in the world is compared to the position it had at the beginning of the
simulation. A difference indicate a force move occured. In this case,
the Actor mPosition and mPreviousPosition are translated by the difference of position.

Since the Actor position will be really set while the next simulation runs, we
save it in the mNextPosition field.
2020-11-14 20:39:16 +01:00
..
docs
aiextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
aiextensions.hpp
animationextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
animationextensions.hpp
cellextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
cellextensions.hpp
compilercontext.cpp
compilercontext.hpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
consoleextensions.cpp
consoleextensions.hpp
containerextensions.cpp Fix remove item regression 2020-10-26 20:13:24 +01:00
containerextensions.hpp
controlextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
controlextensions.hpp
dialogueextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
dialogueextensions.hpp
extensions.cpp
extensions.hpp
globalscripts.cpp Use emplace_back instead of push_back 2020-10-18 10:27:35 +04:00
globalscripts.hpp
guiextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
guiextensions.hpp
interpretercontext.cpp
interpretercontext.hpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
locals.cpp Use emplace_back instead of push_back 2020-10-18 10:27:35 +04:00
locals.hpp
miscextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
miscextensions.hpp
ref.cpp
ref.hpp
scriptmanagerimp.cpp
scriptmanagerimp.hpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
skyextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
skyextensions.hpp
soundextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
soundextensions.hpp
statsextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
statsextensions.hpp
transformationextensions.cpp Properly account for interleaved move of actors. 2020-11-14 20:39:16 +01:00
transformationextensions.hpp
userextensions.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
userextensions.hpp