diff --git a/Runtime/Particle/CModVectorElement.cpp b/Runtime/Particle/CModVectorElement.cpp index ff0163f42..ef8edc8a3 100644 --- a/Runtime/Particle/CModVectorElement.cpp +++ b/Runtime/Particle/CModVectorElement.cpp @@ -90,10 +90,11 @@ bool CMVELinearImplosion::GetValue(int frame, zeus::CVector3f& pVel, zeus::CVect bool CMVETimeChain::GetValue(int frame, zeus::CVector3f& pVel, zeus::CVector3f& pPos) const { int v; xc_swFrame->GetValue(frame, v); - if (frame >= v) - return x8_b->GetValue(frame, pVel, pPos); - else + if (frame < v) { return x4_a->GetValue(frame, pVel, pPos); + } else { + return x8_b->GetValue(frame - v, pVel, pPos); + } } CMVEBounce::CMVEBounce(std::unique_ptr&& planePoint, std::unique_ptr&& planeNormal,