aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment/Scenes')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs2
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs23
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectPart.cs4
3 files changed, 28 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs b/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
index afa4ea5..10bdd54 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
@@ -752,7 +752,7 @@ namespace OpenSim.Region.Environment.Scenes
752 } 752 }
753 } 753 }
754 754
755 public void ProcessObjectGrab(uint localID, LLVector3 offsetPos, IClientAPI remoteClient) 755 public virtual void ProcessObjectGrab(uint localID, LLVector3 offsetPos, IClientAPI remoteClient)
756 { 756 {
757 this.EventManager.TriggerObjectGrab(localID, offsetPos, remoteClient); 757 this.EventManager.TriggerObjectGrab(localID, offsetPos, remoteClient);
758 } 758 }
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
index 3bd83aa..77d936d 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
@@ -863,5 +863,28 @@ namespace OpenSim.Region.Environment.Scenes
863 m_rootPart.Text = text; 863 m_rootPart.Text = text;
864 m_rootPart.ScheduleTerseUpdate(); 864 m_rootPart.ScheduleTerseUpdate();
865 } 865 }
866
867 public void ObjectGrabHandler(uint localId, LLVector3 offsetPos, IClientAPI remoteClient)
868 {
869 if( m_rootPart.LocalID == localId )
870 {
871 OnGrabGroup(offsetPos, remoteClient);
872 }
873 else
874 {
875 SceneObjectPart part = GetChildPrim(localId);
876 OnGrabPart(part, offsetPos, remoteClient);
877 }
878 }
879
880 public virtual void OnGrabPart(SceneObjectPart part, LLVector3 offsetPos, IClientAPI remoteClient)
881 {
882 part.OnGrab(offsetPos, remoteClient);
883 }
884
885 public virtual void OnGrabGroup(LLVector3 offsetPos, IClientAPI remoteClient)
886 {
887
888 }
866 } 889 }
867} 890}
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
index c4752a5..8e570d4 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
@@ -566,6 +566,10 @@ namespace OpenSim.Region.Environment.Scenes
566 public virtual void UpdateMovement() 566 public virtual void UpdateMovement()
567 { 567 {
568 } 568 }
569
570 public virtual void OnGrab(LLVector3 offsetPos, IClientAPI remoteClient)
571 {
572 }
569 } 573 }
570} 574}
571 575