aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs34
1 files changed, 27 insertions, 7 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 0a7d923..58fd2e7 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -3461,11 +3461,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3461 new CoarseLocationUpdatePacket.IndexBlock(); 3461 new CoarseLocationUpdatePacket.IndexBlock();
3462 loc.Location = new CoarseLocationUpdatePacket.LocationBlock[total]; 3462 loc.Location = new CoarseLocationUpdatePacket.LocationBlock[total];
3463 loc.AgentData = new CoarseLocationUpdatePacket.AgentDataBlock[total]; 3463 loc.AgentData = new CoarseLocationUpdatePacket.AgentDataBlock[total];
3464 3464 int selfindex = -1;
3465 for (int i = 0; i < total; i++) 3465 for (int i = 0; i < total; i++)
3466 { 3466 {
3467 CoarseLocationUpdatePacket.LocationBlock lb = 3467 CoarseLocationUpdatePacket.LocationBlock lb =
3468 new CoarseLocationUpdatePacket.LocationBlock(); 3468 new CoarseLocationUpdatePacket.LocationBlock();
3469
3469 lb.X = (byte)CoarseLocations[i].X; 3470 lb.X = (byte)CoarseLocations[i].X;
3470 lb.Y = (byte)CoarseLocations[i].Y; 3471 lb.Y = (byte)CoarseLocations[i].Y;
3471 3472
@@ -3473,8 +3474,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3473 loc.Location[i] = lb; 3474 loc.Location[i] = lb;
3474 loc.AgentData[i] = new CoarseLocationUpdatePacket.AgentDataBlock(); 3475 loc.AgentData[i] = new CoarseLocationUpdatePacket.AgentDataBlock();
3475 loc.AgentData[i].AgentID = users[i]; 3476 loc.AgentData[i].AgentID = users[i];
3477 if (users[i] == AgentId)
3478 selfindex = i;
3476 } 3479 }
3477 ib.You = -1; 3480 ib.You = (short)selfindex;
3478 ib.Prey = -1; 3481 ib.Prey = -1;
3479 loc.Index = ib; 3482 loc.Index = ib;
3480 loc.Header.Reliable = false; 3483 loc.Header.Reliable = false;
@@ -10122,11 +10125,28 @@ namespace OpenSim.Region.ClientStack.LindenUDP
10122 Utils.BytesToString(avatarNotesUpdate.Data.Notes)); 10125 Utils.BytesToString(avatarNotesUpdate.Data.Notes));
10123 break; 10126 break;
10124 10127
10125// case PacketType.AvatarInterestsUpdate: 10128 case PacketType.AvatarInterestsUpdate:
10126// AvatarInterestsUpdatePacket avatarInterestUpdate = 10129 AvatarInterestsUpdatePacket avatarInterestUpdate =
10127// (AvatarInterestsUpdatePacket)Pack; 10130 (AvatarInterestsUpdatePacket)Pack;
10128// 10131
10129// break; 10132 #region Packet Session and User Check
10133 if (m_checkPackets)
10134 {
10135 if (avatarInterestUpdate.AgentData.SessionID != SessionId ||
10136 avatarInterestUpdate.AgentData.AgentID != AgentId)
10137 break;
10138 }
10139 #endregion
10140
10141 AvatarInterestUpdate handlerAvatarInterestUpdate = OnAvatarInterestUpdate;
10142 if (handlerAvatarInterestUpdate != null)
10143 handlerAvatarInterestUpdate(this,
10144 avatarInterestUpdate.PropertiesData.WantToMask,
10145 Utils.BytesToString(avatarInterestUpdate.PropertiesData.WantToText),
10146 avatarInterestUpdate.PropertiesData.SkillsMask,
10147 Utils.BytesToString(avatarInterestUpdate.PropertiesData.SkillsText),
10148 Utils.BytesToString(avatarInterestUpdate.PropertiesData.LanguagesText));
10149 break;
10130 10150
10131 case PacketType.PlacesQuery: 10151 case PacketType.PlacesQuery:
10132 PlacesQueryPacket placesQueryPacket = 10152 PlacesQueryPacket placesQueryPacket =