diff options
author | Teravus Ovares (Dan Olivares) | 2009-10-15 02:01:29 -0400 |
---|---|---|
committer | Teravus Ovares (Dan Olivares) | 2009-10-15 02:01:29 -0400 |
commit | 6d3d985511a8e70624c3a06a042890002f223978 (patch) | |
tree | 81fe4a32e0ebbf50969a4073713355767ed19515 /OpenSim/Region/ClientStack | |
parent | Merge branch 'master' of ssh://opensimulator.org/var/git/opensim (diff) | |
download | opensim-SC_OLD-6d3d985511a8e70624c3a06a042890002f223978.zip opensim-SC_OLD-6d3d985511a8e70624c3a06a042890002f223978.tar.gz opensim-SC_OLD-6d3d985511a8e70624c3a06a042890002f223978.tar.bz2 opensim-SC_OLD-6d3d985511a8e70624c3a06a042890002f223978.tar.xz |
* Request from lkalif to have the Sim send a coarselocationupdate for each avatar in the sim, including yourself.
* Apparently the LLClientView should have been doing this previously.. Also fixed the 'You' on the index block.. so the client doesn't display an extra green dot.
* Thanks lkalif for bringing it to our attention.
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 8487adc..4b27fa2 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -3289,11 +3289,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3289 | new CoarseLocationUpdatePacket.IndexBlock(); | 3289 | new CoarseLocationUpdatePacket.IndexBlock(); |
3290 | loc.Location = new CoarseLocationUpdatePacket.LocationBlock[total]; | 3290 | loc.Location = new CoarseLocationUpdatePacket.LocationBlock[total]; |
3291 | loc.AgentData = new CoarseLocationUpdatePacket.AgentDataBlock[total]; | 3291 | loc.AgentData = new CoarseLocationUpdatePacket.AgentDataBlock[total]; |
3292 | 3292 | int selfindex = -1; | |
3293 | for (int i = 0; i < total; i++) | 3293 | for (int i = 0; i < total; i++) |
3294 | { | 3294 | { |
3295 | CoarseLocationUpdatePacket.LocationBlock lb = | 3295 | CoarseLocationUpdatePacket.LocationBlock lb = |
3296 | new CoarseLocationUpdatePacket.LocationBlock(); | 3296 | new CoarseLocationUpdatePacket.LocationBlock(); |
3297 | |||
3297 | lb.X = (byte)CoarseLocations[i].X; | 3298 | lb.X = (byte)CoarseLocations[i].X; |
3298 | lb.Y = (byte)CoarseLocations[i].Y; | 3299 | lb.Y = (byte)CoarseLocations[i].Y; |
3299 | 3300 | ||
@@ -3301,8 +3302,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3301 | loc.Location[i] = lb; | 3302 | loc.Location[i] = lb; |
3302 | loc.AgentData[i] = new CoarseLocationUpdatePacket.AgentDataBlock(); | 3303 | loc.AgentData[i] = new CoarseLocationUpdatePacket.AgentDataBlock(); |
3303 | loc.AgentData[i].AgentID = users[i]; | 3304 | loc.AgentData[i].AgentID = users[i]; |
3305 | if (users[i] == AgentId) | ||
3306 | selfindex = i; | ||
3304 | } | 3307 | } |
3305 | ib.You = -1; | 3308 | ib.You = (short)selfindex; |
3306 | ib.Prey = -1; | 3309 | ib.Prey = -1; |
3307 | loc.Index = ib; | 3310 | loc.Index = ib; |
3308 | loc.Header.Reliable = false; | 3311 | loc.Header.Reliable = false; |