From 844266c4d5d75bdf967a643abccfa28d1685c40c Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sun, 20 Dec 2015 11:43:27 +0000 Subject: change the return list of objects costs, sending a answer if none found --- .../Linden/Caps/BunchOfCaps/BunchOfCaps.cs | 68 ++++++++++------------ 1 file changed, 30 insertions(+), 38 deletions(-) (limited to 'OpenSim/Region/ClientStack/Linden/Caps') diff --git a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs index b61959d..91b2ee7 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs @@ -1442,41 +1442,36 @@ namespace OpenSim.Region.ClientStack.Linden UUID uuid = object_ids[i].AsUUID(); SceneObjectPart part = m_Scene.GetSceneObjectPart(uuid); - + SceneObjectGroup grp = null; if (part != null) + grp = part.ParentGroup; + if (grp != null) { - SceneObjectGroup grp = part.ParentGroup; - if (grp != null) - { - float linksetCost; - float linksetPhysCost; - float partCost; - float partPhysCost; - - grp.GetResourcesCosts(part, out linksetCost, out linksetPhysCost, out partCost, out partPhysCost); - - OSDMap object_data = new OSDMap(); - object_data["linked_set_resource_cost"] = linksetCost; - object_data["resource_cost"] = partCost; - object_data["physics_cost"] = partPhysCost; - object_data["linked_set_physics_cost"] = linksetPhysCost; + float linksetCost; + float linksetPhysCost; + float partCost; + float partPhysCost; - resp[uuid.ToString()] = object_data; - } - else - { - OSDMap object_data = new OSDMap(); - object_data["linked_set_resource_cost"] = 0; - object_data["resource_cost"] = 0; - object_data["physics_cost"] = 0; - object_data["linked_set_physics_cost"] = 0; - - resp[uuid.ToString()] = object_data; - } + grp.GetResourcesCosts(part,out linksetCost,out linksetPhysCost,out partCost,out partPhysCost); + OSDMap object_data = new OSDMap(); + object_data["linked_set_resource_cost"] = linksetCost; + object_data["resource_cost"] = partCost; + object_data["physics_cost"] = partPhysCost; + object_data["linked_set_physics_cost"] = linksetPhysCost; + object_data["resource_limiting_type"] = "legacy"; + resp[uuid.ToString()] = object_data; } } - + if(resp.Count == 0) + { + OSDMap object_data = new OSDMap(); + object_data["linked_set_resource_cost"] = 0; + object_data["resource_cost"] = 0; + object_data["physics_cost"] = 0; + object_data["linked_set_physics_cost"] = 0; + resp[UUID.Zero.ToString()] = object_data; + } string response = OSDParser.SerializeLLSDXmlString(resp); return response; } @@ -1538,17 +1533,14 @@ namespace OpenSim.Region.ClientStack.Linden } } - // if (simul != 0) - { - OSDMap object_data = new OSDMap(); + OSDMap object_data = new OSDMap(); - object_data["physics"] = phys; - object_data["streaming"] = stream; - object_data["simulation"] = simul; - - resp["selected"] = object_data; - } + object_data["physics"] = phys; + object_data["streaming"] = stream; + object_data["simulation"] = simul; + resp["selected"] = object_data; +// resp["transaction_id"] = "undef"; string response = OSDParser.SerializeLLSDXmlString(resp); return response; } -- cgit v1.1