aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorUbitUmarov2015-09-26 03:14:06 +0100
committerUbitUmarov2015-09-26 03:14:06 +0100
commit05db03e8095d2c68b7bbd1c5b02817df87364d06 (patch)
treefac023353afadb4b4919c92ae20b763ec01ecb31
parent fix object rez on terrain, i broke adding physics assistance (diff)
downloadopensim-SC-05db03e8095d2c68b7bbd1c5b02817df87364d06.zip
opensim-SC-05db03e8095d2c68b7bbd1c5b02817df87364d06.tar.gz
opensim-SC-05db03e8095d2c68b7bbd1c5b02817df87364d06.tar.bz2
opensim-SC-05db03e8095d2c68b7bbd1c5b02817df87364d06.tar.xz
fix unscripted sits without physics help
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs13
1 files changed, 4 insertions, 9 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index df1352d..ea20c36 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -3044,7 +3044,6 @@ namespace OpenSim.Region.Framework.Scenes
3044 { 3044 {
3045 m_requestedSitTargetID = part.LocalId; 3045 m_requestedSitTargetID = part.LocalId;
3046 m_requestedSitTargetUUID = part.UUID; 3046 m_requestedSitTargetUUID = part.UUID;
3047
3048 } 3047 }
3049 else 3048 else
3050 { 3049 {
@@ -3058,9 +3057,7 @@ namespace OpenSim.Region.Framework.Scenes
3058 public bool PhysicsSit(SceneObjectPart part, Vector3 offset) 3057 public bool PhysicsSit(SceneObjectPart part, Vector3 offset)
3059 { 3058 {
3060 if (part == null || part.ParentGroup.IsAttachment) 3059 if (part == null || part.ParentGroup.IsAttachment)
3061 {
3062 return true; 3060 return true;
3063 }
3064 3061
3065 if ( m_scene.PhysicsScene == null) 3062 if ( m_scene.PhysicsScene == null)
3066 return false; 3063 return false;
@@ -3078,12 +3075,10 @@ namespace OpenSim.Region.Framework.Scenes
3078 return true; 3075 return true;
3079 } 3076 }
3080 3077
3081
3082 // not doing autopilot
3083 m_requestedSitTargetID = 0;
3084
3085 if (m_scene.PhysicsScene.SitAvatar(part.PhysActor, AbsolutePosition, CameraPosition, offset, new Vector3(0.35f, 0, 0.65f), PhysicsSitResponse) != 0) 3078 if (m_scene.PhysicsScene.SitAvatar(part.PhysActor, AbsolutePosition, CameraPosition, offset, new Vector3(0.35f, 0, 0.65f), PhysicsSitResponse) != 0)
3079 {
3086 return true; 3080 return true;
3081 }
3087 3082
3088 return false; 3083 return false;
3089 } 3084 }
@@ -3161,7 +3156,7 @@ namespace OpenSim.Region.Framework.Scenes
3161 m_pos = offset; 3156 m_pos = offset;
3162 3157
3163 ControllingClient.SendSitResponse( 3158 ControllingClient.SendSitResponse(
3164 part.ParentGroup.UUID, offset, Orientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook); 3159 part.ParentGroup.UUID, offset, Orientation, true, cameraAtOffset, cameraEyeOffset, forceMouselook);
3165 3160
3166 3161
3167 m_requestedSitTargetID = 0; 3162 m_requestedSitTargetID = 0;
@@ -4459,7 +4454,7 @@ namespace OpenSim.Region.Framework.Scenes
4459 PhysicsActor = scene.AddAvatar( 4454 PhysicsActor = scene.AddAvatar(
4460 LocalId, Firstname + "." + Lastname, pVec, 4455 LocalId, Firstname + "." + Lastname, pVec,
4461 Appearance.AvatarBoxSize,Appearance.AvatarFeetOffset, isFlying); 4456 Appearance.AvatarBoxSize,Appearance.AvatarFeetOffset, isFlying);
4462 4457 PhysicsActor.Orientation = m_bodyRot;
4463 //PhysicsActor.OnRequestTerseUpdate += SendTerseUpdateToAllClients; 4458 //PhysicsActor.OnRequestTerseUpdate += SendTerseUpdateToAllClients;
4464 PhysicsActor.OnCollisionUpdate += PhysicsCollisionUpdate; 4459 PhysicsActor.OnCollisionUpdate += PhysicsCollisionUpdate;
4465 PhysicsActor.OnOutOfBounds += OutOfBoundsCall; // Called for PhysicsActors when there's something wrong 4460 PhysicsActor.OnOutOfBounds += OutOfBoundsCall; // Called for PhysicsActors when there's something wrong