aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMelanie Thielker2008-11-11 19:08:59 +0000
committerMelanie Thielker2008-11-11 19:08:59 +0000
commit47a5d71b7e7e8a354bd5640055cf4efdb881b954 (patch)
treeaaea097d01d36e826f9596bcb4139f445b919888 /OpenSim/Region
parentminor: refactor some SceneTests code for future tests (diff)
downloadopensim-SC-47a5d71b7e7e8a354bd5640055cf4efdb881b954.zip
opensim-SC-47a5d71b7e7e8a354bd5640055cf4efdb881b954.tar.gz
opensim-SC-47a5d71b7e7e8a354bd5640055cf4efdb881b954.tar.bz2
opensim-SC-47a5d71b7e7e8a354bd5640055cf4efdb881b954.tar.xz
Prevent pieces from other people's HUDs from displaying at the center of
every user's HUD
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs9
-rw-r--r--OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs4
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectPart.cs3
-rw-r--r--OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs5
4 files changed, 14 insertions, 7 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 06280ca..f25f3eb 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2332,8 +2332,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2332 /// <param name="localID"></param> 2332 /// <param name="localID"></param>
2333 /// <param name="rotation"></param> 2333 /// <param name="rotation"></param>
2334 /// <param name="attachPoint"></param> 2334 /// <param name="attachPoint"></param>
2335 public void AttachObject(uint localID, Quaternion rotation, byte attachPoint) 2335 public void AttachObject(uint localID, Quaternion rotation, byte attachPoint, UUID ownerID)
2336 { 2336 {
2337 if (attachPoint > 30 && ownerID != AgentId) // Someone else's HUD
2338 return;
2337 2339
2338 ObjectAttachPacket attach = (ObjectAttachPacket)PacketPool.Instance.GetPacket(PacketType.ObjectAttach); 2340 ObjectAttachPacket attach = (ObjectAttachPacket)PacketPool.Instance.GetPacket(PacketType.ObjectAttach);
2339 Console.WriteLine("Attach object!"); 2341 Console.WriteLine("Attach object!");
@@ -2458,8 +2460,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2458 /// 2460 ///
2459 /// </summary> 2461 /// </summary>
2460 public void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, Vector3 position, 2462 public void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, Vector3 position,
2461 Quaternion rotation, Vector3 velocity, Vector3 rotationalvelocity, byte state, UUID AssetId) 2463 Quaternion rotation, Vector3 velocity, Vector3 rotationalvelocity, byte state, UUID AssetId, UUID ownerID, int attachPoint)
2462 { 2464 {
2465 if (attachPoint > 30 && ownerID != AgentId) // Someone else's HUD
2466 return;
2467
2463 if (rotation.X == rotation.Y && rotation.Y == rotation.Z && rotation.Z == rotation.W && rotation.W == 0) 2468 if (rotation.X == rotation.Y && rotation.Y == rotation.Z && rotation.Z == rotation.W && rotation.W == 0)
2464 rotation = Quaternion.Identity; 2469 rotation = Quaternion.Identity;
2465 ImprovedTerseObjectUpdatePacket terse = (ImprovedTerseObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ImprovedTerseObjectUpdate); 2470 ImprovedTerseObjectUpdatePacket terse = (ImprovedTerseObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ImprovedTerseObjectUpdate);
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
index 7b077ec..2792bf8 100644
--- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
@@ -560,7 +560,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
560 { 560 {
561 } 561 }
562 562
563 public virtual void AttachObject(uint localID, Quaternion rotation, byte attachPoint) 563 public virtual void AttachObject(uint localID, Quaternion rotation, byte attachPoint, UUID ownerID)
564 { 564 {
565 } 565 }
566 566
@@ -587,7 +587,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
587 } 587 }
588 public virtual void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, 588 public virtual void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID,
589 Vector3 position, Quaternion rotation, Vector3 velocity, 589 Vector3 position, Quaternion rotation, Vector3 velocity,
590 Vector3 rotationalvelocity, byte state, UUID AssetId) 590 Vector3 rotationalvelocity, byte state, UUID AssetId, UUID ownerID, int attachPoint)
591 { 591 {
592 } 592 }
593 593
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
index 05b23aa..c5f20da 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
@@ -3362,7 +3362,8 @@ if (m_shape != null) {
3362 (ushort)(m_parentGroup.GetTimeDilation() * 3362 (ushort)(m_parentGroup.GetTimeDilation() *
3363 (float)ushort.MaxValue), LocalId, lPos, 3363 (float)ushort.MaxValue), LocalId, lPos,
3364 RotationOffset, Velocity, 3364 RotationOffset, Velocity,
3365 RotationalVelocity, state, FromAssetID); 3365 RotationalVelocity, state, FromAssetID,
3366 OwnerID, (int)AttachmentPoint);
3366 } 3367 }
3367 } 3368 }
3368} 3369}
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
index 66fb6d8..44ad400 100644
--- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
@@ -473,7 +473,7 @@ namespace OpenSim.Region.Examples.SimpleModule
473 { 473 {
474 } 474 }
475 475
476 public virtual void AttachObject(uint localID, Quaternion rotation, byte attachPoint) 476 public virtual void AttachObject(uint localID, Quaternion rotation, byte attachPoint, UUID ownerID)
477 { 477 {
478 } 478 }
479 479
@@ -500,7 +500,8 @@ namespace OpenSim.Region.Examples.SimpleModule
500 } 500 }
501 public virtual void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, 501 public virtual void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID,
502 Vector3 position, Quaternion rotation, Vector3 velocity, 502 Vector3 position, Quaternion rotation, Vector3 velocity,
503 Vector3 rotationalvelocity, byte state, UUID AssetId) 503 Vector3 rotationalvelocity, byte state, UUID AssetId,
504 UUID ownerID, int attachPoint)
504 { 505 {
505 } 506 }
506 507