aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/PhysicsModules/SharedBase
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/PhysicsModules/SharedBase')
-rw-r--r--OpenSim/Region/PhysicsModules/SharedBase/PhysicsActor.cs15
1 files changed, 14 insertions, 1 deletions
diff --git a/OpenSim/Region/PhysicsModules/SharedBase/PhysicsActor.cs b/OpenSim/Region/PhysicsModules/SharedBase/PhysicsActor.cs
index a5c2c0e..83f8af8 100644
--- a/OpenSim/Region/PhysicsModules/SharedBase/PhysicsActor.cs
+++ b/OpenSim/Region/PhysicsModules/SharedBase/PhysicsActor.cs
@@ -230,7 +230,20 @@ namespace OpenSim.Region.PhysicsModules.SharedBase
230 230
231 public abstract void delink(); 231 public abstract void delink();
232 232
233 public abstract void LockAngularMotion(Vector3 axis); 233 public virtual void LockAngularMotion(Vector3 axis) { }
234
235 public virtual void LockAngularMotion(byte axislocks)
236 {
237 Vector3 lrRotationAxis = Vector3.One;
238 if((axislocks & 0x02) != 0 )
239 lrRotationAxis.X = 0f;
240 if((axislocks & 0x04) != 0 )
241 lrRotationAxis.Y = 0f;
242 if((axislocks & 0x08) != 0 )
243 lrRotationAxis.Z = 0f;
244
245 LockAngularMotion(lrRotationAxis);
246 }
234 247
235 public virtual void RequestPhysicsterseUpdate() 248 public virtual void RequestPhysicsterseUpdate()
236 { 249 {