aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework
diff options
context:
space:
mode:
authorUbitUmarov2015-10-20 18:21:13 +0100
committerUbitUmarov2015-10-20 18:21:13 +0100
commit3c690711457c96f7f00d15f1ef5055cb7349ffc2 (patch)
treef963e788b7d8c1124acf7f2783301efb67213cdc /OpenSim/Region/Framework
parent store rotation axis locks in MySql and SQlite dbs ( others need to be update... (diff)
downloadopensim-SC-3c690711457c96f7f00d15f1ef5055cb7349ffc2.zip
opensim-SC-3c690711457c96f7f00d15f1ef5055cb7349ffc2.tar.gz
opensim-SC-3c690711457c96f7f00d15f1ef5055cb7349ffc2.tar.bz2
opensim-SC-3c690711457c96f7f00d15f1ef5055cb7349ffc2.tar.xz
also apply axis locks, when creating a prim physics actor
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs14
1 files changed, 14 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index 6e7b568..4d193ba 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -4880,6 +4880,20 @@ SendFullUpdateToClient(remoteClient, Position) ignores position parameter
4880 pa.Friction = Friction; 4880 pa.Friction = Friction;
4881 pa.Restitution = Restitution; 4881 pa.Restitution = Restitution;
4882 4882
4883 if(LocalId == ParentGroup.RootPart.LocalId)
4884 {
4885 // ugly code: physics should also get a byte and not a Vector3 TODO
4886 Vector3 lrRotationAxis = Vector3.One;
4887 if((RotationAxisLocks & (byte)SceneObjectGroup.axisSelect.STATUS_ROTATE_X) != 0 )
4888 lrRotationAxis.X = 0f;
4889 if((RotationAxisLocks & (byte)SceneObjectGroup.axisSelect.STATUS_ROTATE_Y) != 0 )
4890 lrRotationAxis.Y = 0f;
4891 if((RotationAxisLocks & (byte)SceneObjectGroup.axisSelect.STATUS_ROTATE_Z) != 0 )
4892 lrRotationAxis.Z = 0f;
4893
4894 pa.LockAngularMotion(lrRotationAxis);
4895 }
4896
4883 if (VolumeDetectActive) // change if not the default only 4897 if (VolumeDetectActive) // change if not the default only
4884 pa.SetVolumeDetect(1); 4898 pa.SetVolumeDetect(1);
4885 4899