diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 2187bc8..92275e8 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -262,6 +262,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
262 | 262 | ||
263 | private DirPlacesQuery handlerDirPlacesQuery = null; | 263 | private DirPlacesQuery handlerDirPlacesQuery = null; |
264 | 264 | ||
265 | private MapItemRequest handlerMapItemRequest = null; | ||
266 | |||
265 | //private TerrainUnacked handlerUnackedTerrain = null; | 267 | //private TerrainUnacked handlerUnackedTerrain = null; |
266 | 268 | ||
267 | //** | 269 | //** |
@@ -988,6 +990,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
988 | 990 | ||
989 | public event DirPlacesQuery OnDirPlacesQuery; | 991 | public event DirPlacesQuery OnDirPlacesQuery; |
990 | 992 | ||
993 | public event MapItemRequest OnMapItemRequest; | ||
991 | 994 | ||
992 | // voire si c'est necessaire | 995 | // voire si c'est necessaire |
993 | public void ActivateGesture(UUID assetId, UUID gestureId) | 996 | public void ActivateGesture(UUID assetId, UUID gestureId) |
@@ -6215,6 +6218,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
6215 | //break; | 6218 | //break; |
6216 | case PacketType.MapItemRequest: | 6219 | case PacketType.MapItemRequest: |
6217 | // TODO: handle this packet | 6220 | // TODO: handle this packet |
6221 | MapItemRequestPacket mirpk = (MapItemRequestPacket)Pack; | ||
6222 | //System.Console.WriteLine(mirpk.ToString()); | ||
6223 | handlerMapItemRequest = OnMapItemRequest; | ||
6224 | if (handlerMapItemRequest != null) | ||
6225 | { | ||
6226 | handlerMapItemRequest(this,mirpk.AgentData.Flags, mirpk.AgentData.EstateID, | ||
6227 | mirpk.AgentData.Godlike,mirpk.RequestData.ItemType, | ||
6228 | mirpk.RequestData.RegionHandle); | ||
6229 | |||
6230 | } | ||
6218 | //m_log.Warn("[CLIENT]: unhandled MapItemRequest packet"); | 6231 | //m_log.Warn("[CLIENT]: unhandled MapItemRequest packet"); |
6219 | break; | 6232 | break; |
6220 | case PacketType.TransferAbort: | 6233 | case PacketType.TransferAbort: |
@@ -6756,6 +6769,27 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
6756 | 6769 | ||
6757 | OutPacket(packet, ThrottleOutPacketType.Task); | 6770 | OutPacket(packet, ThrottleOutPacketType.Task); |
6758 | } | 6771 | } |
6772 | public void SendMapItemReply(mapItemReply[] replies, uint mapitemtype, uint flags) | ||
6773 | { | ||
6774 | MapItemReplyPacket mirplk = new MapItemReplyPacket(); | ||
6775 | mirplk.AgentData.AgentID = AgentId; | ||
6776 | mirplk.RequestData.ItemType = mapitemtype; | ||
6777 | mirplk.Data = new MapItemReplyPacket.DataBlock[replies.Length]; | ||
6778 | for (int i = 0; i < replies.Length; i++ ) | ||
6779 | { | ||
6780 | MapItemReplyPacket.DataBlock mrdata = new MapItemReplyPacket.DataBlock(); | ||
6781 | mrdata.X = replies[i].x; | ||
6782 | mrdata.Y = replies[i].y; | ||
6783 | mrdata.ID = replies[i].id; | ||
6784 | mrdata.Extra = replies[i].Extra; | ||
6785 | mrdata.Extra2 = replies[i].Extra2; | ||
6786 | mrdata.Name = Utils.StringToBytes(replies[i].name); | ||
6787 | mirplk.Data[i] = mrdata; | ||
6788 | } | ||
6789 | //System.Console.WriteLine(mirplk.ToString()); | ||
6790 | OutPacket(mirplk, ThrottleOutPacketType.Task); | ||
6791 | |||
6792 | } | ||
6759 | 6793 | ||
6760 | public void KillEndDone() | 6794 | public void KillEndDone() |
6761 | { | 6795 | { |