diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/PhysicsModules/SharedBase/PhysicsActor.cs | 15 |
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 | { |