aboutsummaryrefslogtreecommitdiff
path: root/src/content_cao.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/content_cao.cpp')
-rw-r--r--src/content_cao.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/content_cao.cpp b/src/content_cao.cpp
index 42f4e22a6..7659871b6 100644
--- a/src/content_cao.cpp
+++ b/src/content_cao.cpp
@@ -1150,9 +1150,17 @@ void GenericCAO::updateAnimation()
#endif
}
+void GenericCAO::updateAnimationSpeed()
+{
+ if (!m_animated_meshnode)
+ return;
+
+ m_animated_meshnode->setAnimationSpeed(m_animation_speed);
+}
+
void GenericCAO::updateBonePosition()
{
- if(m_bone_position.empty() || !m_animated_meshnode)
+ if (m_bone_position.empty() || !m_animated_meshnode)
return;
m_animated_meshnode->setJointMode(irr::scene::EJUOR_CONTROL); // To write positions to the mesh on render
@@ -1351,6 +1359,9 @@ void GenericCAO::processMessage(const std::string &data)
updateAnimation();
}
}
+ } else if (cmd == GENERIC_CMD_SET_ANIMATION_SPEED) {
+ m_animation_speed = readF1000(is);
+ updateAnimationSpeed();
} else if (cmd == GENERIC_CMD_SET_BONE_POSITION) {
std::string bone = deSerializeString(is);
v3f position = readV3F1000(is);