aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
diff options
context:
space:
mode:
authordiva2009-02-09 22:27:27 +0000
committerdiva2009-02-09 22:27:27 +0000
commit2c685bff1493451849580cfb6bf44b88322bf0a4 (patch)
tree4179700c2b1fcbcc7a5ab07f7bc65b3bf97a79d9 /OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
parentThank you kindly, TLaukkan (Timmil) for a patch that: (diff)
downloadopensim-SC-2c685bff1493451849580cfb6bf44b88322bf0a4.zip
opensim-SC-2c685bff1493451849580cfb6bf44b88322bf0a4.tar.gz
opensim-SC-2c685bff1493451849580cfb6bf44b88322bf0a4.tar.bz2
opensim-SC-2c685bff1493451849580cfb6bf44b88322bf0a4.tar.xz
Moved prim crossing out of OGS1 and into RESTComms and LocalInterregionComms. This breaks interregion comms with older versions in what concerns prim crossing. In the process of moving the comms, a few things seem to be working better, namely this may address mantis #3011, mantis #1698. Hopefully, this doesn't break anything else. But I'm still seeing weirdnesses with attchments jumping out of place after a cross/TP.
The two most notable changes in the crossing process were: * Object gets passed in only one message, not two as done before. * Local object crossings do not get serialized, as done before.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs29
1 files changed, 28 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index d3b9626..e732b42 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -29,6 +29,7 @@ using System;
29using System.Collections.Generic; 29using System.Collections.Generic;
30using System.Drawing; 30using System.Drawing;
31using System.IO; 31using System.IO;
32using System.Threading;
32using System.Xml; 33using System.Xml;
33using System.Xml.Serialization; 34using System.Xml.Serialization;
34using OpenMetaverse; 35using OpenMetaverse;
@@ -84,7 +85,7 @@ namespace OpenSim.Region.Framework.Scenes
84 /// A scene object group is conceptually an object in the scene. The object is constituted of SceneObjectParts 85 /// A scene object group is conceptually an object in the scene. The object is constituted of SceneObjectParts
85 /// (often known as prims), one of which is considered the root part. 86 /// (often known as prims), one of which is considered the root part.
86 /// </summary> 87 /// </summary>
87 public partial class SceneObjectGroup : EntityBase 88 public partial class SceneObjectGroup : EntityBase, ISceneObject
88 { 89 {
89 // private PrimCountTaintedDelegate handlerPrimCountTainted = null; 90 // private PrimCountTaintedDelegate handlerPrimCountTainted = null;
90 91
@@ -3030,5 +3031,31 @@ namespace OpenSim.Region.Framework.Scenes
3030 part.SetAttachmentPoint(point); 3031 part.SetAttachmentPoint(point);
3031 } 3032 }
3032 } 3033 }
3034
3035 #region ISceneObject
3036
3037 public virtual ISceneObject CloneForNewScene()
3038 {
3039 SceneObjectGroup sog = Copy(this.OwnerID, this.GroupID, false);
3040 return sog;
3041 }
3042
3043 public virtual string ExtraToXmlString()
3044 {
3045 return "<ExtraFromAssetID>" + GetFromAssetID().ToString() + "</ExtraFromAssetID>";
3046 }
3047
3048 public virtual void ExtraFromXmlString(string xmlstr)
3049 {
3050 string id = xmlstr.Substring(xmlstr.IndexOf("<ExtraFromAssetID>"));
3051 id = xmlstr.Replace("<ExtraFromAssetID>", "");
3052 id = id.Replace("</ExtraFromAssetID>", "");
3053
3054 UUID uuid = UUID.Zero;
3055 UUID.TryParse(id, out uuid);
3056
3057 SetFromAssetID(uuid);
3058 }
3059 #endregion
3033 } 3060 }
3034} 3061}