diff options
Changed the DeRezObject event so it passes a list<uint> of localIDs in one event trigger rather than triggering the event once for every localid in the derez packet.
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 74a8874..3fdb386 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -5065,16 +5065,20 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5065 | handlerDeRezObject = OnDeRezObject; | 5065 | handlerDeRezObject = OnDeRezObject; |
5066 | if (handlerDeRezObject != null) | 5066 | if (handlerDeRezObject != null) |
5067 | { | 5067 | { |
5068 | List<uint> deRezIDs = new List<uint>(); | ||
5069 | |||
5068 | foreach (DeRezObjectPacket.ObjectDataBlock data in | 5070 | foreach (DeRezObjectPacket.ObjectDataBlock data in |
5069 | DeRezPacket.ObjectData) | 5071 | DeRezPacket.ObjectData) |
5070 | { | 5072 | { |
5073 | deRezIDs.Add(data.ObjectLocalID); | ||
5074 | } | ||
5071 | // It just so happens that the values on the DeRezAction enumerator match the Destination | 5075 | // It just so happens that the values on the DeRezAction enumerator match the Destination |
5072 | // values given by a Second Life client | 5076 | // values given by a Second Life client |
5073 | handlerDeRezObject(this, data.ObjectLocalID, | 5077 | handlerDeRezObject(this, deRezIDs, |
5074 | DeRezPacket.AgentBlock.GroupID, | 5078 | DeRezPacket.AgentBlock.GroupID, |
5075 | (DeRezAction)DeRezPacket.AgentBlock.Destination, | 5079 | (DeRezAction)DeRezPacket.AgentBlock.Destination, |
5076 | DeRezPacket.AgentBlock.DestinationID); | 5080 | DeRezPacket.AgentBlock.DestinationID); |
5077 | } | 5081 | |
5078 | } | 5082 | } |
5079 | break; | 5083 | break; |
5080 | 5084 | ||