aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/SceneObject.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/SceneObject.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObject.cs21
1 files changed, 16 insertions, 5 deletions
diff --git a/OpenSim/Region/Environment/Scenes/SceneObject.cs b/OpenSim/Region/Environment/Scenes/SceneObject.cs
index 00df447..2c55a7d 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObject.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObject.cs
@@ -41,7 +41,7 @@ namespace OpenSim.Region.Environment.Scenes
41 { 41 {
42 private System.Text.Encoding enc = System.Text.Encoding.ASCII; 42 private System.Text.Encoding enc = System.Text.Encoding.ASCII;
43 private Dictionary<LLUUID, Primitive> ChildPrimitives = new Dictionary<LLUUID, Primitive>(); //list of all primitive id's that are part of this group 43 private Dictionary<LLUUID, Primitive> ChildPrimitives = new Dictionary<LLUUID, Primitive>(); //list of all primitive id's that are part of this group
44 protected Primitive rootPrimitive; 44 public Primitive rootPrimitive;
45 private Scene m_world; 45 private Scene m_world;
46 protected ulong m_regionHandle; 46 protected ulong m_regionHandle;
47 47
@@ -99,6 +99,16 @@ namespace OpenSim.Region.Environment.Scenes
99 99
100 } 100 }
101 101
102
103 /// <summary>
104 ///
105 /// </summary>
106 /// <param name="primObject"></param>
107 public void AddNewChildPrims(SceneObject primObject)
108 {
109 this.rootPrimitive.AddToChildren(primObject);
110 }
111
102 /// <summary> 112 /// <summary>
103 /// 113 ///
104 /// </summary> 114 /// </summary>
@@ -145,6 +155,7 @@ namespace OpenSim.Region.Environment.Scenes
145 public void GrapMovement(LLVector3 offset, LLVector3 pos, IClientAPI remoteClient) 155 public void GrapMovement(LLVector3 offset, LLVector3 pos, IClientAPI remoteClient)
146 { 156 {
147 this.Pos = pos; 157 this.Pos = pos;
158 this.rootPrimitive.Pos = pos;
148 this.rootPrimitive.SendTerseUpdateForAllChildren(remoteClient); 159 this.rootPrimitive.SendTerseUpdateForAllChildren(remoteClient);
149 } 160 }
150 161
@@ -161,17 +172,17 @@ namespace OpenSim.Region.Environment.Scenes
161 proper.ObjectData[0] = new ObjectPropertiesPacket.ObjectDataBlock(); 172 proper.ObjectData[0] = new ObjectPropertiesPacket.ObjectDataBlock();
162 proper.ObjectData[0].ItemID = LLUUID.Zero; 173 proper.ObjectData[0].ItemID = LLUUID.Zero;
163 proper.ObjectData[0].CreationDate = (ulong)this.rootPrimitive.CreationDate; 174 proper.ObjectData[0].CreationDate = (ulong)this.rootPrimitive.CreationDate;
164 proper.ObjectData[0].CreatorID = this.rootPrimitive.OwnerID; 175 proper.ObjectData[0].CreatorID = this.rootPrimitive.CreatorID;
165 proper.ObjectData[0].FolderID = LLUUID.Zero; 176 proper.ObjectData[0].FolderID = LLUUID.Zero;
166 proper.ObjectData[0].FromTaskID = LLUUID.Zero; 177 proper.ObjectData[0].FromTaskID = LLUUID.Zero;
167 proper.ObjectData[0].GroupID = LLUUID.Zero; 178 proper.ObjectData[0].GroupID = LLUUID.Zero;
168 proper.ObjectData[0].InventorySerial = 0; 179 proper.ObjectData[0].InventorySerial = 0;
169 proper.ObjectData[0].LastOwnerID = LLUUID.Zero; 180 proper.ObjectData[0].LastOwnerID = this.rootPrimitive.LastOwnerID;
170 proper.ObjectData[0].ObjectID = this.rootUUID; 181 proper.ObjectData[0].ObjectID = this.rootUUID;
171 proper.ObjectData[0].OwnerID = this.rootPrimitive.OwnerID; 182 proper.ObjectData[0].OwnerID = this.rootPrimitive.OwnerID;
172 proper.ObjectData[0].TouchName = new byte[0]; 183 proper.ObjectData[0].TouchName = enc.GetBytes(this.rootPrimitive.TouchName + "\0");
173 proper.ObjectData[0].TextureID = new byte[0]; 184 proper.ObjectData[0].TextureID = new byte[0];
174 proper.ObjectData[0].SitName = new byte[0]; 185 proper.ObjectData[0].SitName = enc.GetBytes(this.rootPrimitive.SitName +"\0") ;
175 proper.ObjectData[0].Name = enc.GetBytes(this.rootPrimitive.Name +"\0"); 186 proper.ObjectData[0].Name = enc.GetBytes(this.rootPrimitive.Name +"\0");
176 proper.ObjectData[0].Description = enc.GetBytes(this.rootPrimitive.Description +"\0"); 187 proper.ObjectData[0].Description = enc.GetBytes(this.rootPrimitive.Description +"\0");
177 proper.ObjectData[0].OwnerMask = this.rootPrimitive.OwnerMask; 188 proper.ObjectData[0].OwnerMask = this.rootPrimitive.OwnerMask;