aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMelanie2013-08-14 21:25:22 +0100
committerMelanie2013-08-14 21:25:22 +0100
commitdf7a1e68f6b3f8d136c7f8fe2c973e1fa5b6701b (patch)
treed6e2983a501d41c2793fe30b7a87beb717d298f7 /OpenSim/Region
parentMerge branch 'master' into careminster (diff)
parentIf pCampbot has been asked to shutdown, don't carry on logging in queued bots (diff)
downloadopensim-SC_OLD-df7a1e68f6b3f8d136c7f8fe2c973e1fa5b6701b.zip
opensim-SC_OLD-df7a1e68f6b3f8d136c7f8fe2c973e1fa5b6701b.tar.gz
opensim-SC_OLD-df7a1e68f6b3f8d136c7f8fe2c973e1fa5b6701b.tar.bz2
opensim-SC_OLD-df7a1e68f6b3f8d136c7f8fe2c973e1fa5b6701b.tar.xz
Merge branch 'master' into careminster
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs12
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneBase.cs13
-rw-r--r--OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs14
3 files changed, 32 insertions, 7 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 6323a88..4fa4a7c 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3540,6 +3540,18 @@ namespace OpenSim.Region.Framework.Scenes
3540 } 3540 }
3541 } 3541 }
3542 3542
3543 /// <summary>
3544 /// Remove the given client from the scene.
3545 /// </summary>
3546 /// <remarks>
3547 /// Only clientstack code should call this directly. All other code should call IncomingCloseAgent() instead
3548 /// to properly operate the state machine and avoid race conditions with other close requests (such as directly
3549 /// from viewers).
3550 /// </remarks>
3551 /// <param name='agentID'>ID of agent to close</param>
3552 /// <param name='closeChildAgents'>
3553 /// Close the neighbour child agents associated with this client.
3554 /// </param>
3543 public override void RemoveClient(UUID agentID, bool closeChildAgents) 3555 public override void RemoveClient(UUID agentID, bool closeChildAgents)
3544 { 3556 {
3545 AgentCircuitData acd = m_authenticateHandler.GetAgentCircuitData(agentID); 3557 AgentCircuitData acd = m_authenticateHandler.GetAgentCircuitData(agentID);
diff --git a/OpenSim/Region/Framework/Scenes/SceneBase.cs b/OpenSim/Region/Framework/Scenes/SceneBase.cs
index 4eef162..1dac676 100644
--- a/OpenSim/Region/Framework/Scenes/SceneBase.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneBase.cs
@@ -218,6 +218,19 @@ namespace OpenSim.Region.Framework.Scenes
218 #region Add/Remove Agent/Avatar 218 #region Add/Remove Agent/Avatar
219 219
220 public abstract ISceneAgent AddNewClient(IClientAPI client, PresenceType type); 220 public abstract ISceneAgent AddNewClient(IClientAPI client, PresenceType type);
221
222 /// <summary>
223 /// Remove the given client from the scene.
224 /// </summary>
225 /// <remarks>
226 /// Only clientstack code should call this directly. All other code should call IncomingCloseAgent() instead
227 /// to properly operate the state machine and avoid race conditions with other close requests (such as directly
228 /// from viewers).
229 /// </remarks>
230 /// <param name='agentID'>ID of agent to close</param>
231 /// <param name='closeChildAgents'>
232 /// Close the neighbour child agents associated with this client.
233 /// </param>
221 public abstract void RemoveClient(UUID agentID, bool closeChildAgents); 234 public abstract void RemoveClient(UUID agentID, bool closeChildAgents);
222 235
223 public bool TryGetScenePresence(UUID agentID, out object scenePresence) 236 public bool TryGetScenePresence(UUID agentID, out object scenePresence)
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
index d584782..502f85f 100644
--- a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
@@ -89,13 +89,6 @@ public sealed class BSCharacter : BSPhysObject
89 // set _avatarVolume and _mass based on capsule size, _density and Scale 89 // set _avatarVolume and _mass based on capsule size, _density and Scale
90 ComputeAvatarVolumeAndMass(); 90 ComputeAvatarVolumeAndMass();
91 91
92 // The avatar's movement is controlled by this motor that speeds up and slows down
93 // the avatar seeking to reach the motor's target speed.
94 // This motor runs as a prestep action for the avatar so it will keep the avatar
95 // standing as well as moving. Destruction of the avatar will destroy the pre-step action.
96 m_moveActor = new BSActorAvatarMove(PhysScene, this, AvatarMoveActorName);
97 PhysicalActors.Add(AvatarMoveActorName, m_moveActor);
98
99 DetailLog("{0},BSCharacter.create,call,size={1},scale={2},density={3},volume={4},mass={5},pos={6}", 92 DetailLog("{0},BSCharacter.create,call,size={1},scale={2},density={3},volume={4},mass={5},pos={6}",
100 LocalID, _size, Scale, Density, _avatarVolume, RawMass, pos); 93 LocalID, _size, Scale, Density, _avatarVolume, RawMass, pos);
101 94
@@ -106,6 +99,13 @@ public sealed class BSCharacter : BSPhysObject
106 // New body and shape into PhysBody and PhysShape 99 // New body and shape into PhysBody and PhysShape
107 PhysScene.Shapes.GetBodyAndShape(true, PhysScene.World, this); 100 PhysScene.Shapes.GetBodyAndShape(true, PhysScene.World, this);
108 101
102 // The avatar's movement is controlled by this motor that speeds up and slows down
103 // the avatar seeking to reach the motor's target speed.
104 // This motor runs as a prestep action for the avatar so it will keep the avatar
105 // standing as well as moving. Destruction of the avatar will destroy the pre-step action.
106 m_moveActor = new BSActorAvatarMove(PhysScene, this, AvatarMoveActorName);
107 PhysicalActors.Add(AvatarMoveActorName, m_moveActor);
108
109 SetPhysicalProperties(); 109 SetPhysicalProperties();
110 }); 110 });
111 return; 111 return;