BGE patch: change constraint location actuator to work in local coordinates. It won't change anything for root objects but will be of some use for child objects.

This commit is contained in:
Benoit Bolsee 2008-09-18 19:28:28 +00:00
parent a283e7e4af
commit 02a91ac784

@ -359,7 +359,7 @@ bool KX_ConstraintActuator::Update(double curtime, bool frame)
case KX_ACT_CONSTRAINT_LOCX:
case KX_ACT_CONSTRAINT_LOCY:
case KX_ACT_CONSTRAINT_LOCZ:
newposition = position;
newposition = position = obj->GetSGNode()->GetLocalPosition();
switch (m_locrot) {
case KX_ACT_CONSTRAINT_LOCX:
Clamp(newposition[0], m_minimumBound, m_maximumBound);
@ -375,7 +375,8 @@ bool KX_ConstraintActuator::Update(double curtime, bool frame)
if (m_posDampTime) {
newposition = filter*position + (1.0-filter)*newposition;
}
break;
obj->NodeSetLocalPosition(newposition);
goto CHECK_TIME;
}
if (result) {
// set the new position but take into account parent if any