diff options
Little bit more work on AllNewSceneObjectPart2
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/AllNewSceneObjectPart2.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/AllNewSceneObjectPart2.cs | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/AllNewSceneObjectPart2.cs b/OpenSim/Region/Environment/Scenes/AllNewSceneObjectPart2.cs index cf511ae..3552f33 100644 --- a/OpenSim/Region/Environment/Scenes/AllNewSceneObjectPart2.cs +++ b/OpenSim/Region/Environment/Scenes/AllNewSceneObjectPart2.cs | |||
@@ -32,10 +32,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
32 | public uint BaseMask = FULL_MASK_PERMISSIONS; | 32 | public uint BaseMask = FULL_MASK_PERMISSIONS; |
33 | 33 | ||
34 | protected PrimitiveBaseShape m_Shape; | 34 | protected PrimitiveBaseShape m_Shape; |
35 | protected byte[] m_particleSystem = new byte[0]; | ||
35 | 36 | ||
36 | protected AllNewSceneObjectGroup2 m_parentGroup; | 37 | protected AllNewSceneObjectGroup2 m_parentGroup; |
37 | 38 | ||
38 | |||
39 | #region Properties | 39 | #region Properties |
40 | 40 | ||
41 | protected LLUUID m_uuid; | 41 | protected LLUUID m_uuid; |
@@ -271,6 +271,35 @@ namespace OpenSim.Region.Environment.Scenes | |||
271 | } | 271 | } |
272 | #endregion | 272 | #endregion |
273 | 273 | ||
274 | #region Inventory | ||
275 | public void GetInventory(IClientAPI client, uint localID) | ||
276 | { | ||
277 | if (localID == this.m_localID) | ||
278 | { | ||
279 | client.SendTaskInventory(this.m_uuid, 0, new byte[0]); | ||
280 | } | ||
281 | } | ||
282 | #endregion | ||
283 | |||
284 | public void UpdateExtraParam(ushort type, bool inUse, byte[] data) | ||
285 | { | ||
286 | this.m_Shape.ExtraParams = new byte[data.Length + 7]; | ||
287 | int i = 0; | ||
288 | uint length = (uint)data.Length; | ||
289 | this.m_Shape.ExtraParams[i++] = 1; | ||
290 | this.m_Shape.ExtraParams[i++] = (byte)(type % 256); | ||
291 | this.m_Shape.ExtraParams[i++] = (byte)((type >> 8) % 256); | ||
292 | |||
293 | this.m_Shape.ExtraParams[i++] = (byte)(length % 256); | ||
294 | this.m_Shape.ExtraParams[i++] = (byte)((length >> 8) % 256); | ||
295 | this.m_Shape.ExtraParams[i++] = (byte)((length >> 16) % 256); | ||
296 | this.m_Shape.ExtraParams[i++] = (byte)((length >> 24) % 256); | ||
297 | Array.Copy(data, 0, this.m_Shape.ExtraParams, i, data.Length); | ||
298 | |||
299 | //this.ScheduleFullUpdate(); | ||
300 | } | ||
301 | |||
302 | |||
274 | #region Texture | 303 | #region Texture |
275 | /// <summary> | 304 | /// <summary> |
276 | /// | 305 | /// |
@@ -282,6 +311,12 @@ namespace OpenSim.Region.Environment.Scenes | |||
282 | } | 311 | } |
283 | #endregion | 312 | #endregion |
284 | 313 | ||
314 | public void AddNewParticleSystem(libsecondlife.Primitive.ParticleSystem pSystem) | ||
315 | { | ||
316 | this.m_particleSystem = pSystem.GetBytes(); | ||
317 | } | ||
318 | |||
319 | |||
285 | #region Position | 320 | #region Position |
286 | /// <summary> | 321 | /// <summary> |
287 | /// | 322 | /// |