aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authorTeravus Ovares2008-05-10 20:25:40 +0000
committerTeravus Ovares2008-05-10 20:25:40 +0000
commit05de723e51ba27e083e4d5c530bd96311e95c4d9 (patch)
treec59baaac5894041e589ef6342b991fb47c41ee6d /OpenSim/Region/ClientStack
parent* More OutPacket refactors. (diff)
downloadopensim-SC_OLD-05de723e51ba27e083e4d5c530bd96311e95c4d9.zip
opensim-SC_OLD-05de723e51ba27e083e4d5c530bd96311e95c4d9.tar.gz
opensim-SC_OLD-05de723e51ba27e083e4d5c530bd96311e95c4d9.tar.bz2
opensim-SC_OLD-05de723e51ba27e083e4d5c530bd96311e95c4d9.tar.xz
* Refactored two more OutPackets. ObjectPropertiesFamily, and Object Properties.
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs73
1 files changed, 73 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index aff43d5..bf45006 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2257,6 +2257,79 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2257 OutPacket(pack, ThrottleOutPacketType.Task); 2257 OutPacket(pack, ThrottleOutPacketType.Task);
2258 } 2258 }
2259 2259
2260 public void SendObjectPropertiesFamilyData(uint RequestFlags, LLUUID ObjectUUID, LLUUID OwnerID, LLUUID GroupID,
2261 uint BaseMask, uint OwnerMask, uint GroupMask, uint EveryoneMask,
2262 uint NextOwnerMask, int OwnershipCost, byte SaleType,int SalePrice, uint Category,
2263 LLUUID LastOwnerID, string ObjectName, string Description)
2264 {
2265 ObjectPropertiesFamilyPacket objPropFamilyPack = (ObjectPropertiesFamilyPacket)PacketPool.Instance.GetPacket(PacketType.ObjectPropertiesFamily);
2266 // TODO: don't create new blocks if recycling an old packet
2267
2268 ObjectPropertiesFamilyPacket.ObjectDataBlock objPropDB = new ObjectPropertiesFamilyPacket.ObjectDataBlock();
2269 objPropDB.RequestFlags = RequestFlags;
2270 objPropDB.ObjectID = ObjectUUID;
2271 objPropDB.OwnerID = OwnerID;
2272 objPropDB.GroupID = GroupID;
2273 objPropDB.BaseMask = BaseMask;
2274 objPropDB.OwnerMask = OwnerMask;
2275 objPropDB.GroupMask = GroupMask;
2276 objPropDB.EveryoneMask = EveryoneMask;
2277 objPropDB.NextOwnerMask = NextOwnerMask;
2278
2279 // TODO: More properties are needed in SceneObjectPart!
2280 objPropDB.OwnershipCost = OwnershipCost;
2281 objPropDB.SaleType = SaleType;
2282 objPropDB.SalePrice = SalePrice;
2283 objPropDB.Category = Category;
2284 objPropDB.LastOwnerID = LastOwnerID;
2285 objPropDB.Name = Helpers.StringToField(ObjectName);
2286 objPropDB.Description = Helpers.StringToField(Description);
2287 objPropFamilyPack.ObjectData = objPropDB;
2288 objPropFamilyPack.Header.Zerocoded = true;
2289 OutPacket(objPropFamilyPack, ThrottleOutPacketType.Task);
2290 }
2291
2292 public void SendObjectPropertiesReply(LLUUID ItemID, ulong CreationDate, LLUUID CreatorUUID, LLUUID FolderUUID, LLUUID FromTaskUUID,
2293 LLUUID GroupUUID, short InventorySerial, LLUUID LastOwnerUUID, LLUUID ObjectUUID,
2294 LLUUID OwnerUUID, string TouchTitle, byte[] TextureID, string SitTitle, string ItemName,
2295 string ItemDescription, uint OwnerMask, uint NextOwnerMask, uint GroupMask, uint EveryoneMask,
2296 uint BaseMask)
2297 {
2298 ObjectPropertiesPacket proper = (ObjectPropertiesPacket)PacketPool.Instance.GetPacket(PacketType.ObjectProperties);
2299 // TODO: don't create new blocks if recycling an old packet
2300
2301 proper.ObjectData = new ObjectPropertiesPacket.ObjectDataBlock[1];
2302 proper.ObjectData[0] = new ObjectPropertiesPacket.ObjectDataBlock();
2303 proper.ObjectData[0].ItemID = ItemID;
2304 proper.ObjectData[0].CreationDate = CreationDate;
2305 proper.ObjectData[0].CreatorID = CreatorUUID;
2306 proper.ObjectData[0].FolderID = FolderUUID;
2307 proper.ObjectData[0].FromTaskID = FromTaskUUID;
2308 proper.ObjectData[0].GroupID = GroupUUID;
2309 proper.ObjectData[0].InventorySerial = InventorySerial;
2310
2311 proper.ObjectData[0].LastOwnerID = LastOwnerUUID;
2312 // proper.ObjectData[0].LastOwnerID = LLUUID.Zero;
2313
2314 proper.ObjectData[0].ObjectID = ObjectUUID;
2315 proper.ObjectData[0].OwnerID = OwnerUUID;
2316 proper.ObjectData[0].TouchName = Helpers.StringToField(TouchTitle);
2317 proper.ObjectData[0].TextureID = TextureID;
2318 proper.ObjectData[0].SitName = Helpers.StringToField(SitTitle);
2319 proper.ObjectData[0].Name = Helpers.StringToField(ItemName);
2320 proper.ObjectData[0].Description = Helpers.StringToField(ItemDescription);
2321 proper.ObjectData[0].OwnerMask = OwnerMask;
2322 proper.ObjectData[0].NextOwnerMask = NextOwnerMask;
2323 proper.ObjectData[0].GroupMask = GroupMask;
2324 proper.ObjectData[0].EveryoneMask = EveryoneMask;
2325 proper.ObjectData[0].BaseMask = BaseMask;
2326 // proper.ObjectData[0].AggregatePerms = 53;
2327 // proper.ObjectData[0].AggregatePermTextures = 0;
2328 // proper.ObjectData[0].AggregatePermTexturesOwner = 0;
2329 proper.Header.Zerocoded = true;
2330 OutPacket(proper, ThrottleOutPacketType.Task);
2331 }
2332
2260 #endregion 2333 #endregion
2261 2334
2262 #region Estate Data Sending Methods 2335 #region Estate Data Sending Methods