aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs41
1 files changed, 24 insertions, 17 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 54e8d50..107d9b6 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -775,7 +775,9 @@ namespace OpenSim.Region.Framework.Scenes
775 set { m_LoopSoundSlavePrims = value; } 775 set { m_LoopSoundSlavePrims = value; }
776 } 776 }
777 777
778 // The UUID for the Region this Object is in. 778 /// <summary>
779 /// The UUID for the region this object is in.
780 /// </summary>
779 public UUID RegionUUID 781 public UUID RegionUUID
780 { 782 {
781 get 783 get
@@ -788,6 +790,22 @@ namespace OpenSim.Region.Framework.Scenes
788 } 790 }
789 } 791 }
790 792
793 /// <summary>
794 /// The item ID that this object was rezzed from, if applicable.
795 /// </summary>
796 /// <remarks>
797 /// If not applicable will be UUID.Zero
798 /// </remarks>
799 public UUID FromItemID { get; set; }
800
801 /// <summary>
802 /// The folder ID that this object was rezzed from, if applicable.
803 /// </summary>
804 /// <remarks>
805 /// If not applicable will be UUID.Zero
806 /// </remarks>
807 public UUID FromFolderID { get; set; }
808
791 #endregion 809 #endregion
792 810
793// ~SceneObjectGroup() 811// ~SceneObjectGroup()
@@ -851,18 +869,6 @@ namespace OpenSim.Region.Framework.Scenes
851 } 869 }
852 } 870 }
853 871
854 public void SetFromItemID(UUID AssetId)
855 {
856 SceneObjectPart[] parts = m_parts.GetArray();
857 for (int i = 0; i < parts.Length; i++)
858 parts[i].FromItemID = AssetId;
859 }
860
861 public UUID GetFromItemID()
862 {
863 return m_rootPart.FromItemID;
864 }
865
866 /// <summary> 872 /// <summary>
867 /// Hooks this object up to the backup event so that it is persisted to the database when the update thread executes. 873 /// Hooks this object up to the backup event so that it is persisted to the database when the update thread executes.
868 /// </summary> 874 /// </summary>
@@ -1498,7 +1504,7 @@ namespace OpenSim.Region.Framework.Scenes
1498 return; 1504 return;
1499 1505
1500 detachedpos = avatar.AbsolutePosition; 1506 detachedpos = avatar.AbsolutePosition;
1501 RootPart.FromItemID = UUID.Zero; 1507 FromItemID = UUID.Zero;
1502 1508
1503 AbsolutePosition = detachedpos; 1509 AbsolutePosition = detachedpos;
1504 AttachedAvatar = UUID.Zero; 1510 AttachedAvatar = UUID.Zero;
@@ -3379,6 +3385,7 @@ namespace OpenSim.Region.Framework.Scenes
3379 { 3385 {
3380 m_rootPart.AttachedPos = pos; 3386 m_rootPart.AttachedPos = pos;
3381 } 3387 }
3388
3382 if (RootPart.GetStatusSandbox()) 3389 if (RootPart.GetStatusSandbox())
3383 { 3390 {
3384 if (Util.GetDistanceTo(RootPart.StatusSandboxPos, pos) > 10) 3391 if (Util.GetDistanceTo(RootPart.StatusSandboxPos, pos) > 10)
@@ -3389,8 +3396,8 @@ namespace OpenSim.Region.Framework.Scenes
3389 ChatTypeEnum.DebugChannel, 0x7FFFFFFF, RootPart.AbsolutePosition, Name, UUID, false); 3396 ChatTypeEnum.DebugChannel, 0x7FFFFFFF, RootPart.AbsolutePosition, Name, UUID, false);
3390 } 3397 }
3391 } 3398 }
3392 AbsolutePosition = pos;
3393 3399
3400 AbsolutePosition = pos;
3394 HasGroupChanged = true; 3401 HasGroupChanged = true;
3395 } 3402 }
3396 3403
@@ -4032,7 +4039,7 @@ namespace OpenSim.Region.Framework.Scenes
4032 4039
4033 public virtual string ExtraToXmlString() 4040 public virtual string ExtraToXmlString()
4034 { 4041 {
4035 return "<ExtraFromItemID>" + GetFromItemID().ToString() + "</ExtraFromItemID>"; 4042 return "<ExtraFromItemID>" + FromItemID.ToString() + "</ExtraFromItemID>";
4036 } 4043 }
4037 4044
4038 public virtual void ExtraFromXmlString(string xmlstr) 4045 public virtual void ExtraFromXmlString(string xmlstr)
@@ -4044,7 +4051,7 @@ namespace OpenSim.Region.Framework.Scenes
4044 UUID uuid = UUID.Zero; 4051 UUID uuid = UUID.Zero;
4045 UUID.TryParse(id, out uuid); 4052 UUID.TryParse(id, out uuid);
4046 4053
4047 SetFromItemID(uuid); 4054 FromItemID = uuid;
4048 } 4055 }
4049 4056
4050 public void ResetOwnerChangeFlag() 4057 public void ResetOwnerChangeFlag()