Use chode character actor.SetMomentum() to force full restore Velocity in scenepresence TeleportWithMomentum(), since actor.Velocity was selected by original coders as the input of a desired velocity (even 'forces') that is modified by character conditions, like not changing velocity.Z if it is in free fall.

This commit is contained in:
UbitUmarov
2012-04-14 05:07:52 +01:00
parent b574d43c5d
commit 3999822e13
2 changed files with 22 additions and 2 deletions

View File

@@ -1082,7 +1082,9 @@ namespace OpenSim.Region.Framework.Scenes
CheckLandingPoint(ref pos);
AbsolutePosition = pos;
AddToPhysicalScene(isFlying);
Velocity = vel;
if (PhysicsActor != null)
PhysicsActor.SetMomentum(vel);
SendTerseUpdateToAllClients();
}