remove the use of Vector3 for axis locks on the rest of engines

This commit is contained in:
UbitUmarov
2015-10-21 00:15:09 +01:00
parent ce5d5fc8dc
commit deb4364f42
7 changed files with 13 additions and 26 deletions

View File

@@ -300,7 +300,7 @@ public sealed class BSCharacter : BSPhysObject
}
public override void LockAngularMotion(OMV.Vector3 axis) { return; }
public override void LockAngularMotion(byte axislocks) { return; }
public override OMV.Vector3 Position {
get {

View File

@@ -280,20 +280,20 @@ public class BSPrim : BSPhysObject
});
}
public override void LockAngularMotion(OMV.Vector3 axis)
public override void LockAngularMotion(byte axislocks)
{
DetailLog("{0},BSPrim.LockAngularMotion,call,axis={1}", LocalID, axis);
DetailLog("{0},BSPrim.LockAngularMotion,call,axis={1}", LocalID, axislocks);
ApplyAxisLimits(ExtendedPhysics.PHYS_AXIS_UNLOCK_ANGULAR, 0f, 0f);
if (axis.X != 1)
if ((axislocks & 0x02) != 0)
{
ApplyAxisLimits(ExtendedPhysics.PHYS_AXIS_LOCK_ANGULAR_X, 0f, 0f);
}
if (axis.Y != 1)
if ((axislocks & 0x04) != 0)
{
ApplyAxisLimits(ExtendedPhysics.PHYS_AXIS_LOCK_ANGULAR_Y, 0f, 0f);
}
if (axis.Z != 1)
if ((axislocks & 0x08) != 0)
{
ApplyAxisLimits(ExtendedPhysics.PHYS_AXIS_LOCK_ANGULAR_Z, 0f, 0f);
}