diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Primitive.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Primitive.cs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Primitive.cs b/OpenSim/Region/Environment/Scenes/Primitive.cs index 4818348..bca8e0c 100644 --- a/OpenSim/Region/Environment/Scenes/Primitive.cs +++ b/OpenSim/Region/Environment/Scenes/Primitive.cs | |||
@@ -588,6 +588,24 @@ namespace OpenSim.Region.Environment.Scenes | |||
588 | 588 | ||
589 | #endregion | 589 | #endregion |
590 | 590 | ||
591 | public void UpdateExtraParam(ushort type, bool inUse, byte[] data) | ||
592 | { | ||
593 | this.m_Shape.ExtraParams = new byte[data.Length + 7]; | ||
594 | int i =0; | ||
595 | uint length = (uint) data.Length; | ||
596 | this.m_Shape.ExtraParams[i++] = 1; | ||
597 | this.m_Shape.ExtraParams[i++] = (byte)(type % 256); | ||
598 | this.m_Shape.ExtraParams[i++] = (byte)((type >> 8) % 256); | ||
599 | |||
600 | this.m_Shape.ExtraParams[i++] = (byte)(length % 256); | ||
601 | this.m_Shape.ExtraParams[i++] = (byte)((length >> 8) % 256); | ||
602 | this.m_Shape.ExtraParams[i++] = (byte)((length >> 16) % 256); | ||
603 | this.m_Shape.ExtraParams[i++] = (byte)((length >> 24) % 256); | ||
604 | Array.Copy(data, 0, this.m_Shape.ExtraParams, i, data.Length); | ||
605 | |||
606 | this.ScheduleFullUpdate(); | ||
607 | } | ||
608 | |||
591 | #region Texture | 609 | #region Texture |
592 | 610 | ||
593 | /// <summary> | 611 | /// <summary> |