diff options
More work on the AllNewSceneObject* classes.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs | 85 |
1 files changed, 84 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs b/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs index e43329d..8fd8e52 100644 --- a/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs +++ b/OpenSim/Region/Environment/Scenes/AllNewSceneObjectGroup2.cs | |||
@@ -18,6 +18,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
18 | protected AllNewSceneObjectPart2 m_rootPart; | 18 | protected AllNewSceneObjectPart2 m_rootPart; |
19 | protected Dictionary<LLUUID, AllNewSceneObjectPart2> m_parts = new Dictionary<LLUUID, AllNewSceneObjectPart2>(); | 19 | protected Dictionary<LLUUID, AllNewSceneObjectPart2> m_parts = new Dictionary<LLUUID, AllNewSceneObjectPart2>(); |
20 | 20 | ||
21 | protected ulong m_regionHandle; | ||
22 | protected Scene m_scene; | ||
23 | |||
21 | public event PrimCountTaintedDelegate OnPrimCountTainted; | 24 | public event PrimCountTaintedDelegate OnPrimCountTainted; |
22 | 25 | ||
23 | /// <summary> | 26 | /// <summary> |
@@ -45,9 +48,14 @@ namespace OpenSim.Region.Environment.Scenes | |||
45 | /// <summary> | 48 | /// <summary> |
46 | /// | 49 | /// |
47 | /// </summary> | 50 | /// </summary> |
48 | public AllNewSceneObjectGroup2() | 51 | public AllNewSceneObjectGroup2(Scene world, ulong regionHandle, LLUUID ownerID, uint localID, LLVector3 pos, PrimitiveBaseShape shape) |
49 | { | 52 | { |
53 | m_regionHandle = regionHandle; | ||
54 | m_scene = world; | ||
50 | 55 | ||
56 | this.Pos = pos; | ||
57 | this.m_rootPart = new AllNewSceneObjectPart2(m_regionHandle, this, ownerID, localID, shape, pos); | ||
58 | this.m_parts.Add(this.m_rootPart.UUID, this.m_rootPart); | ||
51 | } | 59 | } |
52 | 60 | ||
53 | /// <summary> | 61 | /// <summary> |
@@ -142,6 +150,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
142 | return false; | 150 | return false; |
143 | } | 151 | } |
144 | 152 | ||
153 | /// <summary> | ||
154 | /// | ||
155 | /// </summary> | ||
145 | public void TriggerTainted() | 156 | public void TriggerTainted() |
146 | { | 157 | { |
147 | if (OnPrimCountTainted != null) | 158 | if (OnPrimCountTainted != null) |
@@ -194,6 +205,50 @@ namespace OpenSim.Region.Environment.Scenes | |||
194 | client.OutPacket(proper); | 205 | client.OutPacket(proper); |
195 | } | 206 | } |
196 | 207 | ||
208 | /// <summary> | ||
209 | /// | ||
210 | /// </summary> | ||
211 | /// <param name="remoteClient"></param> | ||
212 | /// <param name="localID"></param> | ||
213 | public void GetInventory(IClientAPI remoteClient, uint localID) | ||
214 | { | ||
215 | AllNewSceneObjectPart2 part = this.GetChildPrim(localID); | ||
216 | if (part != null) | ||
217 | { | ||
218 | part.GetInventory(remoteClient, localID); | ||
219 | } | ||
220 | } | ||
221 | |||
222 | /// <summary> | ||
223 | /// | ||
224 | /// </summary> | ||
225 | /// <param name="localID"></param> | ||
226 | /// <param name="type"></param> | ||
227 | /// <param name="inUse"></param> | ||
228 | /// <param name="data"></param> | ||
229 | public void UpdateExtraParam(uint localID, ushort type, bool inUse, byte[] data) | ||
230 | { | ||
231 | AllNewSceneObjectPart2 part = this.GetChildPrim(localID); | ||
232 | if (part != null) | ||
233 | { | ||
234 | part.UpdateExtraParam(type, inUse, data); | ||
235 | } | ||
236 | } | ||
237 | |||
238 | /// <summary> | ||
239 | /// | ||
240 | /// </summary> | ||
241 | /// <param name="localID"></param> | ||
242 | /// <param name="textureEntry"></param> | ||
243 | public void UpdateTextureEntry(uint localID, byte[] textureEntry) | ||
244 | { | ||
245 | AllNewSceneObjectPart2 part = this.GetChildPrim(localID); | ||
246 | if (part != null) | ||
247 | { | ||
248 | part.UpdateTextureEntry(textureEntry); | ||
249 | } | ||
250 | } | ||
251 | |||
197 | #region Shape | 252 | #region Shape |
198 | /// <summary> | 253 | /// <summary> |
199 | /// | 254 | /// |
@@ -210,11 +265,20 @@ namespace OpenSim.Region.Environment.Scenes | |||
210 | #endregion | 265 | #endregion |
211 | 266 | ||
212 | #region Position | 267 | #region Position |
268 | /// <summary> | ||
269 | /// | ||
270 | /// </summary> | ||
271 | /// <param name="pos"></param> | ||
213 | public void UpdateGroupPosition(LLVector3 pos) | 272 | public void UpdateGroupPosition(LLVector3 pos) |
214 | { | 273 | { |
215 | this.m_pos = pos; | 274 | this.m_pos = pos; |
216 | } | 275 | } |
217 | 276 | ||
277 | /// <summary> | ||
278 | /// | ||
279 | /// </summary> | ||
280 | /// <param name="pos"></param> | ||
281 | /// <param name="localID"></param> | ||
218 | public void UpdateSinglePosition(LLVector3 pos, uint localID) | 282 | public void UpdateSinglePosition(LLVector3 pos, uint localID) |
219 | { | 283 | { |
220 | AllNewSceneObjectPart2 part = this.GetChildPrim(localID); | 284 | AllNewSceneObjectPart2 part = this.GetChildPrim(localID); |
@@ -231,6 +295,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
231 | } | 295 | } |
232 | } | 296 | } |
233 | 297 | ||
298 | /// <summary> | ||
299 | /// | ||
300 | /// </summary> | ||
301 | /// <param name="pos"></param> | ||
234 | private void UpdateRootPosition(LLVector3 pos) | 302 | private void UpdateRootPosition(LLVector3 pos) |
235 | { | 303 | { |
236 | LLVector3 newPos = new LLVector3(pos.X, pos.Y, pos.Z); | 304 | LLVector3 newPos = new LLVector3(pos.X, pos.Y, pos.Z); |
@@ -258,6 +326,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
258 | #endregion | 326 | #endregion |
259 | 327 | ||
260 | #region Roation | 328 | #region Roation |
329 | /// <summary> | ||
330 | /// | ||
331 | /// </summary> | ||
332 | /// <param name="rot"></param> | ||
261 | public void UpdateGroupRotation(LLQuaternion rot) | 333 | public void UpdateGroupRotation(LLQuaternion rot) |
262 | { | 334 | { |
263 | this.m_rootPart.UpdateRotation(rot); | 335 | this.m_rootPart.UpdateRotation(rot); |
@@ -274,6 +346,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
274 | this.m_pos = pos; | 346 | this.m_pos = pos; |
275 | } | 347 | } |
276 | 348 | ||
349 | /// <summary> | ||
350 | /// | ||
351 | /// </summary> | ||
352 | /// <param name="rot"></param> | ||
353 | /// <param name="localID"></param> | ||
277 | public void UpdateSingleRotation(LLQuaternion rot, uint localID) | 354 | public void UpdateSingleRotation(LLQuaternion rot, uint localID) |
278 | { | 355 | { |
279 | AllNewSceneObjectPart2 part = this.GetChildPrim(localID); | 356 | AllNewSceneObjectPart2 part = this.GetChildPrim(localID); |
@@ -289,6 +366,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
289 | } | 366 | } |
290 | } | 367 | } |
291 | } | 368 | } |
369 | |||
370 | /// <summary> | ||
371 | /// | ||
372 | /// </summary> | ||
373 | /// <param name="rot"></param> | ||
292 | private void UpdateRootRotation(LLQuaternion rot) | 374 | private void UpdateRootRotation(LLQuaternion rot) |
293 | { | 375 | { |
294 | this.m_rootPart.UpdateRotation(rot); | 376 | this.m_rootPart.UpdateRotation(rot); |
@@ -310,6 +392,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
310 | } | 392 | } |
311 | } | 393 | } |
312 | } | 394 | } |
395 | |||
313 | #endregion | 396 | #endregion |
314 | /// <summary> | 397 | /// <summary> |
315 | /// | 398 | /// |