diff options
Diffstat (limited to 'OpenSim/OpenSim.Region/World/SceneObject.cs')
-rw-r--r-- | OpenSim/OpenSim.Region/World/SceneObject.cs | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/OpenSim/OpenSim.Region/World/SceneObject.cs b/OpenSim/OpenSim.Region/World/SceneObject.cs index 87c9bb0..6ded881 100644 --- a/OpenSim/OpenSim.Region/World/SceneObject.cs +++ b/OpenSim/OpenSim.Region/World/SceneObject.cs | |||
@@ -41,9 +41,10 @@ namespace OpenSim.Region | |||
41 | public class SceneObject : Entity | 41 | public class SceneObject : Entity |
42 | { | 42 | { |
43 | private LLUUID rootUUID; | 43 | private LLUUID rootUUID; |
44 | private Dictionary<LLUUID, Primitive> ChildPrimitives = new Dictionary<LLUUID, Primitive>(); | 44 | //private Dictionary<LLUUID, Primitive> ChildPrimitives = new Dictionary<LLUUID, Primitive>(); |
45 | private Dictionary<uint, IClientAPI> m_clientThreads; | 45 | protected Primitive rootPrimitive; |
46 | private World m_world; | 46 | private World m_world; |
47 | protected ulong regionHandle; | ||
47 | 48 | ||
48 | /// <summary> | 49 | /// <summary> |
49 | /// | 50 | /// |
@@ -61,6 +62,8 @@ namespace OpenSim.Region | |||
61 | /// <param name="localID"></param> | 62 | /// <param name="localID"></param> |
62 | public void CreateFromPacket(ObjectAddPacket addPacket, LLUUID agentID, uint localID) | 63 | public void CreateFromPacket(ObjectAddPacket addPacket, LLUUID agentID, uint localID) |
63 | { | 64 | { |
65 | this.rootPrimitive = new Primitive(null, this.regionHandle, this.m_world); | ||
66 | this.rootPrimitive.CreateFromPacket(addPacket, agentID, localID); | ||
64 | } | 67 | } |
65 | 68 | ||
66 | /// <summary> | 69 | /// <summary> |
@@ -94,33 +97,33 @@ namespace OpenSim.Region | |||
94 | /// <param name="client"></param> | 97 | /// <param name="client"></param> |
95 | public void GetProperites(IClientAPI client) | 98 | public void GetProperites(IClientAPI client) |
96 | { | 99 | { |
97 | /* | 100 | //needs changing |
98 | ObjectPropertiesPacket proper = new ObjectPropertiesPacket(); | 101 | ObjectPropertiesPacket proper = new ObjectPropertiesPacket(); |
99 | proper.ObjectData = new ObjectPropertiesPacket.ObjectDataBlock[1]; | 102 | proper.ObjectData = new ObjectPropertiesPacket.ObjectDataBlock[1]; |
100 | proper.ObjectData[0] = new ObjectPropertiesPacket.ObjectDataBlock(); | 103 | proper.ObjectData[0] = new ObjectPropertiesPacket.ObjectDataBlock(); |
101 | proper.ObjectData[0].ItemID = LLUUID.Zero; | 104 | proper.ObjectData[0].ItemID = LLUUID.Zero; |
102 | proper.ObjectData[0].CreationDate = (ulong)this.primData.CreationDate; | 105 | proper.ObjectData[0].CreationDate = (ulong)this.rootPrimitive.primData.CreationDate; |
103 | proper.ObjectData[0].CreatorID = this.primData.OwnerID; | 106 | proper.ObjectData[0].CreatorID = this.rootPrimitive.primData.OwnerID; |
104 | proper.ObjectData[0].FolderID = LLUUID.Zero; | 107 | proper.ObjectData[0].FolderID = LLUUID.Zero; |
105 | proper.ObjectData[0].FromTaskID = LLUUID.Zero; | 108 | proper.ObjectData[0].FromTaskID = LLUUID.Zero; |
106 | proper.ObjectData[0].GroupID = LLUUID.Zero; | 109 | proper.ObjectData[0].GroupID = LLUUID.Zero; |
107 | proper.ObjectData[0].InventorySerial = 0; | 110 | proper.ObjectData[0].InventorySerial = 0; |
108 | proper.ObjectData[0].LastOwnerID = LLUUID.Zero; | 111 | proper.ObjectData[0].LastOwnerID = LLUUID.Zero; |
109 | proper.ObjectData[0].ObjectID = this.uuid; | 112 | proper.ObjectData[0].ObjectID = this.uuid; |
110 | proper.ObjectData[0].OwnerID = primData.OwnerID; | 113 | proper.ObjectData[0].OwnerID = this.rootPrimitive.primData.OwnerID; |
111 | proper.ObjectData[0].TouchName = new byte[0]; | 114 | proper.ObjectData[0].TouchName = new byte[0]; |
112 | proper.ObjectData[0].TextureID = new byte[0]; | 115 | proper.ObjectData[0].TextureID = new byte[0]; |
113 | proper.ObjectData[0].SitName = new byte[0]; | 116 | proper.ObjectData[0].SitName = new byte[0]; |
114 | proper.ObjectData[0].Name = new byte[0]; | 117 | proper.ObjectData[0].Name = new byte[0]; |
115 | proper.ObjectData[0].Description = new byte[0]; | 118 | proper.ObjectData[0].Description = new byte[0]; |
116 | proper.ObjectData[0].OwnerMask = this.primData.OwnerMask; | 119 | proper.ObjectData[0].OwnerMask = this.rootPrimitive.primData.OwnerMask; |
117 | proper.ObjectData[0].NextOwnerMask = this.primData.NextOwnerMask; | 120 | proper.ObjectData[0].NextOwnerMask = this.rootPrimitive.primData.NextOwnerMask; |
118 | proper.ObjectData[0].GroupMask = this.primData.GroupMask; | 121 | proper.ObjectData[0].GroupMask = this.rootPrimitive.primData.GroupMask; |
119 | proper.ObjectData[0].EveryoneMask = this.primData.EveryoneMask; | 122 | proper.ObjectData[0].EveryoneMask = this.rootPrimitive.primData.EveryoneMask; |
120 | proper.ObjectData[0].BaseMask = this.primData.BaseMask; | 123 | proper.ObjectData[0].BaseMask = this.rootPrimitive.primData.BaseMask; |
121 | 124 | ||
122 | client.OutPacket(proper); | 125 | client.OutPacket(proper); |
123 | * */ | 126 | |
124 | } | 127 | } |
125 | 128 | ||
126 | } | 129 | } |