Main fix for func_movelinear.

I have an idea on how to expand this for SetParent()
This commit is contained in:
ZombieRoxtar 2015-06-12 22:02:00 -04:00
parent 7b4d8a7cc6
commit 5cddf875ce

View file

@ -84,9 +84,15 @@ void CFuncMoveLinear::Spawn( void )
m_flMoveDistance = DotProductAbs( m_vecMoveDir, vecOBB ) - m_flLip;
}
/* BM: Fixing this based on: https://developer.valvesoftware.com/wiki/CFuncMoveLinear_Fix
m_vecPosition1 = GetAbsOrigin() - (m_vecMoveDir * m_flMoveDistance * m_flStartPosition);
m_vecPosition2 = m_vecPosition1 + (m_vecMoveDir * m_flMoveDistance);
m_vecFinalDest = GetAbsOrigin();
//*/
m_vecPosition1 = GetLocalOrigin() - (m_vecMoveDir * m_flMoveDistance * m_flStartPosition);
m_vecPosition2 = m_vecPosition1 + (m_vecMoveDir * m_flMoveDistance);
m_vecFinalDest = GetLocalOrigin();
//*/ The start & end positions are now calculated in local (parent) space.
SetTouch( NULL );