aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs55
1 files changed, 54 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index a86941f..fa608a9 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -249,6 +249,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
249 249
250 private ForceReleaseControls handlerForceReleaseControls = null; 250 private ForceReleaseControls handlerForceReleaseControls = null;
251 251
252 private UUIDNameRequest handlerUUIDGroupNameRequest = null;
253
254 private RequestObjectPropertiesFamily handlerObjectGroupRequest = null;
255
252 /* Properties */ 256 /* Properties */
253 257
254 public LLUUID SecureSessionId 258 public LLUUID SecureSessionId
@@ -828,12 +832,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP
828 832
829 public event UUIDNameRequest OnTeleportHomeRequest; 833 public event UUIDNameRequest OnTeleportHomeRequest;
830 834
835 public event UUIDNameRequest OnUUIDGroupNameRequest;
836
831 public event ScriptAnswer OnScriptAnswer; 837 public event ScriptAnswer OnScriptAnswer;
832 public event RequestPayPrice OnRequestPayPrice; 838 public event RequestPayPrice OnRequestPayPrice;
833 public event AgentSit OnUndo; 839 public event AgentSit OnUndo;
834 840
835 public event ForceReleaseControls OnForceReleaseControls; 841 public event ForceReleaseControls OnForceReleaseControls;
836 842
843 public event RequestObjectPropertiesFamily OnObjectGroupRequest;
844
837 public event DetailedEstateDataRequest OnDetailedEstateDataRequest; 845 public event DetailedEstateDataRequest OnDetailedEstateDataRequest;
838 public event SetEstateFlagsRequest OnSetEstateFlagsRequest; 846 public event SetEstateFlagsRequest OnSetEstateFlagsRequest;
839 public event SetEstateTerrainBaseTexture OnSetEstateTerrainBaseTexture; 847 public event SetEstateTerrainBaseTexture OnSetEstateTerrainBaseTexture;
@@ -3044,6 +3052,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3044 AddLocalPacketHandler(PacketType.MultipleObjectUpdate, MultipleObjUpdate); 3052 AddLocalPacketHandler(PacketType.MultipleObjectUpdate, MultipleObjUpdate);
3045 AddLocalPacketHandler(PacketType.MoneyTransferRequest, HandleMoneyTransferRequest); 3053 AddLocalPacketHandler(PacketType.MoneyTransferRequest, HandleMoneyTransferRequest);
3046 AddLocalPacketHandler(PacketType.ParcelBuy, HandleParcelBuyRequest); 3054 AddLocalPacketHandler(PacketType.ParcelBuy, HandleParcelBuyRequest);
3055 AddLocalPacketHandler(PacketType.UUIDGroupNameRequest, HandleUUIDGroupNameRequest);
3056 AddLocalPacketHandler(PacketType.ObjectGroup, HandleObjectGroupRequest);
3047 } 3057 }
3048 3058
3049 private bool HandleMoneyTransferRequest(IClientAPI sender, Packet Pack) 3059 private bool HandleMoneyTransferRequest(IClientAPI sender, Packet Pack)
@@ -3090,6 +3100,39 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3090 3100
3091 } 3101 }
3092 3102
3103 private bool HandleUUIDGroupNameRequest(IClientAPI sender, Packet Pack)
3104 {
3105 UUIDGroupNameRequestPacket upack = (UUIDGroupNameRequestPacket) Pack;
3106
3107 for (int i=0;i< upack.UUIDNameBlock.Length; i++)
3108 {
3109 handlerUUIDGroupNameRequest = OnUUIDGroupNameRequest;
3110 if (handlerUUIDGroupNameRequest != null)
3111 {
3112 handlerUUIDGroupNameRequest(upack.UUIDNameBlock[i].ID,this);
3113 }
3114 }
3115
3116 return true;
3117 }
3118
3119 public bool HandleObjectGroupRequest(IClientAPI sender, Packet Pack)
3120 {
3121
3122 ObjectGroupPacket ogpack = (ObjectGroupPacket)Pack;
3123 handlerObjectGroupRequest = OnObjectGroupRequest;
3124 if (handlerObjectGroupRequest != null)
3125 {
3126 for (int i = 0; i < ogpack.ObjectData.Length; i++)
3127 {
3128 handlerObjectGroupRequest(this, ogpack.AgentData.GroupID, ogpack.ObjectData[i].ObjectLocalID, LLUUID.Zero);
3129 }
3130 }
3131 return true;
3132 }
3133
3134
3135
3093 private bool HandleViewerEffect(IClientAPI sender, Packet Pack) 3136 private bool HandleViewerEffect(IClientAPI sender, Packet Pack)
3094 { 3137 {
3095 ViewerEffectPacket viewer = (ViewerEffectPacket)Pack; 3138 ViewerEffectPacket viewer = (ViewerEffectPacket)Pack;
@@ -5838,7 +5881,17 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5838 OutPacket(Groupupdate, ThrottleOutPacketType.Task); 5881 OutPacket(Groupupdate, ThrottleOutPacketType.Task);
5839 5882
5840 } 5883 }
5841 5884 public void SendGroupNameReply(LLUUID groupLLUID, string GroupName)
5885 {
5886 UUIDGroupNameReplyPacket pack = new UUIDGroupNameReplyPacket();
5887 UUIDGroupNameReplyPacket.UUIDNameBlockBlock[] uidnameblock = new UUIDGroupNameReplyPacket.UUIDNameBlockBlock[1];
5888 UUIDGroupNameReplyPacket.UUIDNameBlockBlock uidnamebloc = new UUIDGroupNameReplyPacket.UUIDNameBlockBlock();
5889 uidnamebloc.ID = groupLLUID;
5890 uidnamebloc.GroupName = Helpers.StringToField(GroupName);
5891 uidnameblock[0] = uidnamebloc;
5892 pack.UUIDNameBlock = uidnameblock;
5893 OutPacket(pack, ThrottleOutPacketType.Task);
5894 }
5842 public ClientInfo GetClientInfo() 5895 public ClientInfo GetClientInfo()
5843 { 5896 {
5844 //MainLog.Instance.Verbose("CLIENT", "GetClientInfo BGN"); 5897 //MainLog.Instance.Verbose("CLIENT", "GetClientInfo BGN");