diff options
author | MW | 2007-05-19 18:32:01 +0000 |
---|---|---|
committer | MW | 2007-05-19 18:32:01 +0000 |
commit | 274ce6987e0b017800ddb62fe65143e0d5e1cae5 (patch) | |
tree | 4842cdbb9e209451136b1ab9149da5d5dd84db70 /OpenSim.RegionServer | |
parent | (no commit message) (diff) | |
download | opensim-SC-274ce6987e0b017800ddb62fe65143e0d5e1cae5.zip opensim-SC-274ce6987e0b017800ddb62fe65143e0d5e1cae5.tar.gz opensim-SC-274ce6987e0b017800ddb62fe65143e0d5e1cae5.tar.bz2 opensim-SC-274ce6987e0b017800ddb62fe65143e0d5e1cae5.tar.xz |
Border crossing back to mostly working, still seems a problem in that you need to stop walking just after you cross the border for it to work properly (else you will continue moving into a negative position in the first sim)
Diffstat (limited to 'OpenSim.RegionServer')
-rw-r--r-- | OpenSim.RegionServer/AuthenticateSessionsBase.cs | 23 | ||||
-rw-r--r-- | OpenSim.RegionServer/AuthenticateSessionsRemote.cs | 2 | ||||
-rw-r--r-- | OpenSim.RegionServer/SimClient.cs | 8 | ||||
-rw-r--r-- | OpenSim.RegionServer/world/World.cs | 2 |
4 files changed, 31 insertions, 4 deletions
diff --git a/OpenSim.RegionServer/AuthenticateSessionsBase.cs b/OpenSim.RegionServer/AuthenticateSessionsBase.cs index f784f54..91bc54d 100644 --- a/OpenSim.RegionServer/AuthenticateSessionsBase.cs +++ b/OpenSim.RegionServer/AuthenticateSessionsBase.cs | |||
@@ -81,8 +81,29 @@ namespace OpenSim | |||
81 | this.AgentCircuits[(uint)agentData.circuitcode].firstname = agentData.firstname; | 81 | this.AgentCircuits[(uint)agentData.circuitcode].firstname = agentData.firstname; |
82 | this.AgentCircuits[(uint)agentData.circuitcode].lastname = agentData.lastname; | 82 | this.AgentCircuits[(uint)agentData.circuitcode].lastname = agentData.lastname; |
83 | this.AgentCircuits[(uint)agentData.circuitcode].startpos = agentData.startpos; | 83 | this.AgentCircuits[(uint)agentData.circuitcode].startpos = agentData.startpos; |
84 | // Console.WriteLine("update user start pos is " + agentData.startpos.X + " , " + agentData.startpos.Y + " , " + agentData.startpos.Z); | ||
85 | |||
86 | } | ||
87 | |||
88 | } | ||
89 | |||
90 | public void UpdateAgentChildStatus(uint circuitcode, bool childstatus) | ||
91 | { | ||
92 | if (this.AgentCircuits.ContainsKey(circuitcode)) | ||
93 | { | ||
94 | this.AgentCircuits[circuitcode].child = childstatus; | ||
95 | |||
96 | } | ||
97 | } | ||
98 | |||
99 | public bool GetAgentChildStatus(uint circuitcode) | ||
100 | { | ||
101 | if (this.AgentCircuits.ContainsKey(circuitcode)) | ||
102 | { | ||
103 | return this.AgentCircuits[circuitcode].child; | ||
104 | |||
84 | } | 105 | } |
85 | 106 | return false; | |
86 | } | 107 | } |
87 | } | 108 | } |
88 | } | 109 | } |
diff --git a/OpenSim.RegionServer/AuthenticateSessionsRemote.cs b/OpenSim.RegionServer/AuthenticateSessionsRemote.cs index 57c98e4..0802d75 100644 --- a/OpenSim.RegionServer/AuthenticateSessionsRemote.cs +++ b/OpenSim.RegionServer/AuthenticateSessionsRemote.cs | |||
@@ -34,6 +34,8 @@ namespace OpenSim | |||
34 | { | 34 | { |
35 | agentData.startpos = new LLVector3(Convert.ToUInt32(requestData["startpos_x"]), Convert.ToUInt32(requestData["startpos_y"]), Convert.ToUInt32(requestData["startpos_z"])); | 35 | agentData.startpos = new LLVector3(Convert.ToUInt32(requestData["startpos_x"]), Convert.ToUInt32(requestData["startpos_y"]), Convert.ToUInt32(requestData["startpos_z"])); |
36 | agentData.child = false; | 36 | agentData.child = false; |
37 | // Console.WriteLine("expect user start pos is " + agentData.startpos.X + " , " + agentData.startpos.Y + " , " + agentData.startpos.Z); | ||
38 | |||
37 | } | 39 | } |
38 | 40 | ||
39 | this.AddNewCircuit(agentData.circuitcode, agentData); | 41 | this.AddNewCircuit(agentData.circuitcode, agentData); |
diff --git a/OpenSim.RegionServer/SimClient.cs b/OpenSim.RegionServer/SimClient.cs index daaa6dd..9ae08f4 100644 --- a/OpenSim.RegionServer/SimClient.cs +++ b/OpenSim.RegionServer/SimClient.cs | |||
@@ -118,7 +118,9 @@ namespace OpenSim | |||
118 | 118 | ||
119 | if (m_gridServer.GetName() == "Remote") | 119 | if (m_gridServer.GetName() == "Remote") |
120 | { | 120 | { |
121 | this.m_child = m_authenticateSessionsHandler.GetAgentChildStatus(initialcirpack.CircuitCode.Code); | ||
121 | this.startpos = m_authenticateSessionsHandler.GetPosition(initialcirpack.CircuitCode.Code); | 122 | this.startpos = m_authenticateSessionsHandler.GetPosition(initialcirpack.CircuitCode.Code); |
123 | //Console.WriteLine("start pos is " + this.startpos.X + " , " + this.startpos.Y + " , " + this.startpos.Z); | ||
122 | } | 124 | } |
123 | else | 125 | else |
124 | { | 126 | { |
@@ -142,13 +144,15 @@ namespace OpenSim | |||
142 | # region Client Methods | 144 | # region Client Methods |
143 | public void UpgradeClient() | 145 | public void UpgradeClient() |
144 | { | 146 | { |
147 | Console.WriteLine("updateclient being called"); | ||
145 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "SimClient.cs:UpgradeClient() - upgrading child to full agent"); | 148 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "SimClient.cs:UpgradeClient() - upgrading child to full agent"); |
146 | this.m_child = false; | 149 | this.m_child = false; |
147 | this.m_world.RemoveViewerAgent(this); | 150 | this.m_world.RemoveViewerAgent(this); |
148 | if (!this.m_sandboxMode) | 151 | if (!this.m_sandboxMode) |
149 | { | 152 | { |
150 | this.startpos = ((RemoteGridBase)m_gridServer).agentcircuits[CircuitCode].startpos; | 153 | this.startpos = m_authenticateSessionsHandler.GetPosition(CircuitCode); |
151 | ((RemoteGridBase)m_gridServer).agentcircuits[CircuitCode].child = false; | 154 | m_authenticateSessionsHandler.UpdateAgentChildStatus(CircuitCode, false); |
155 | //Console.WriteLine("upgrade start pos is " + this.startpos.X + " , " + this.startpos.Y + " , " + this.startpos.Z); | ||
152 | } | 156 | } |
153 | this.InitNewClient(); | 157 | this.InitNewClient(); |
154 | } | 158 | } |
diff --git a/OpenSim.RegionServer/world/World.cs b/OpenSim.RegionServer/world/World.cs index 72214d4..ecf9c69 100644 --- a/OpenSim.RegionServer/world/World.cs +++ b/OpenSim.RegionServer/world/World.cs | |||
@@ -585,7 +585,7 @@ namespace OpenSim.world | |||
585 | } | 585 | } |
586 | if (agentClient.ClientAvatar.PhysActor != null) | 586 | if (agentClient.ClientAvatar.PhysActor != null) |
587 | { | 587 | { |
588 | this.phyScene.RemoveAvatar(agentClient.ClientAvatar.PhysActor); | 588 | //this.phyScene.RemoveAvatar(agentClient.ClientAvatar.PhysActor); |
589 | } | 589 | } |
590 | } | 590 | } |
591 | catch (Exception e) | 591 | catch (Exception e) |