From 179695909a8967bcdb092720a19c264d52fb4515 Mon Sep 17 00:00:00 2001 From: Teravus Ovares Date: Thu, 15 Nov 2007 07:32:24 +0000 Subject: * Implemented the little friendly pop tooltip messages that appear when you hover your mouse over prim with the object name, description, ownerid.. etc. --- .../Region/Environment/Scenes/SceneObjectGroup.cs | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs') diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index c9b6e9f..38e1609 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs @@ -462,6 +462,7 @@ namespace OpenSim.Region.Environment.Scenes dupe.AbsolutePosition = new LLVector3(AbsolutePosition.X, AbsolutePosition.Y, AbsolutePosition.Z); dupe.m_scene = m_scene; dupe.m_regionHandle = m_regionHandle; + dupe.CopyRootPart(m_rootPart, OwnerID, GroupID); @@ -519,6 +520,7 @@ namespace OpenSim.Region.Environment.Scenes SetPartAsRoot(newPart); } public void SetRootPartOwner(SceneObjectPart part, LLUUID cAgentID, LLUUID cGroupID) { + part.LastOwnerID = part.OwnerID; part.OwnerID = cAgentID; part.GroupID = cGroupID; part.ScheduleFullUpdate(); @@ -535,6 +537,38 @@ namespace OpenSim.Region.Environment.Scenes m_parts.Add(newPart.UUID, newPart); SetPartAsNonRoot(newPart); } + + /// + /// + /// + /// + public void ServiceObjectPropertiesFamilyRequest(IClientAPI remoteClient,LLUUID AgentID, uint RequestFlags) + { + //RootPart.ServiceObjectPropertiesFamilyRequest(remoteClient, AgentID, RequestFlags); + ObjectPropertiesFamilyPacket objPropFamilyPack = new ObjectPropertiesFamilyPacket(); + ObjectPropertiesFamilyPacket.ObjectDataBlock objPropDB = new ObjectPropertiesFamilyPacket.ObjectDataBlock(); + objPropDB.RequestFlags = RequestFlags; + objPropDB.ObjectID = RootPart.UUID; + objPropDB.OwnerID = RootPart.ObjectOwner; + objPropDB.GroupID = RootPart.GroupID; + objPropDB.BaseMask = RootPart.BaseMask; + objPropDB.OwnerMask = RootPart.OwnerMask; + objPropDB.GroupMask = RootPart.GroupMask; + objPropDB.EveryoneMask = RootPart.EveryoneMask; + objPropDB.NextOwnerMask = RootPart.NextOwnerMask; + + // TODO: More properties are needed in SceneObjectPart! + objPropDB.OwnershipCost = RootPart.OwnershipCost; + objPropDB.SaleType = RootPart.ObjectSaleType; + objPropDB.SalePrice = RootPart.SalePrice; + objPropDB.Category = RootPart.Category; + objPropDB.LastOwnerID = RootPart.CreatorID; + objPropDB.Name = Helpers.StringToField(RootPart.Name); + objPropDB.Description = Helpers.StringToField(RootPart.Description); + objPropFamilyPack.ObjectData = objPropDB; + remoteClient.OutPacket(objPropFamilyPack); + + } public void SetPartOwner(SceneObjectPart part, LLUUID cAgentID, LLUUID cGroupID) { part.OwnerID = cAgentID; -- cgit v1.1