diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 4a76ffc..2ff6ced 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -2307,11 +2307,23 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
2307 | OutPacket(remove, ThrottleOutPacketType.Asset); | 2307 | OutPacket(remove, ThrottleOutPacketType.Asset); |
2308 | } | 2308 | } |
2309 | 2309 | ||
2310 | /* | ||
2311 | private uint adjustControls(int input) | ||
2312 | { | ||
2313 | uint ret = (uint)input; | ||
2314 | uint masked = ret & 0x0f; | ||
2315 | masked <<= 19; | ||
2316 | ret |= masked; | ||
2317 | return ret; | ||
2318 | } | ||
2319 | */ | ||
2320 | |||
2310 | public void SendTakeControls(int controls, bool passToAgent, bool TakeControls) | 2321 | public void SendTakeControls(int controls, bool passToAgent, bool TakeControls) |
2311 | { | 2322 | { |
2312 | ScriptControlChangePacket scriptcontrol = (ScriptControlChangePacket)PacketPool.Instance.GetPacket(PacketType.ScriptControlChange); | 2323 | ScriptControlChangePacket scriptcontrol = (ScriptControlChangePacket)PacketPool.Instance.GetPacket(PacketType.ScriptControlChange); |
2313 | ScriptControlChangePacket.DataBlock[] data = new ScriptControlChangePacket.DataBlock[1]; | 2324 | ScriptControlChangePacket.DataBlock[] data = new ScriptControlChangePacket.DataBlock[1]; |
2314 | ScriptControlChangePacket.DataBlock ddata = new ScriptControlChangePacket.DataBlock(); | 2325 | ScriptControlChangePacket.DataBlock ddata = new ScriptControlChangePacket.DataBlock(); |
2326 | // ddata.Controls = adjustControls(controls); | ||
2315 | ddata.Controls = (uint)controls; | 2327 | ddata.Controls = (uint)controls; |
2316 | ddata.PassToAgent = passToAgent; | 2328 | ddata.PassToAgent = passToAgent; |
2317 | ddata.TakeControls = TakeControls; | 2329 | ddata.TakeControls = TakeControls; |
@@ -3762,6 +3774,22 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3762 | OutPacket(useCachedMuteList, ThrottleOutPacketType.Task); | 3774 | OutPacket(useCachedMuteList, ThrottleOutPacketType.Task); |
3763 | } | 3775 | } |
3764 | 3776 | ||
3777 | public void SendEmpytMuteList() | ||
3778 | { | ||
3779 | GenericMessagePacket gmp = new GenericMessagePacket(); | ||
3780 | |||
3781 | gmp.AgentData.AgentID = AgentId; | ||
3782 | gmp.AgentData.SessionID = m_sessionId; | ||
3783 | gmp.AgentData.TransactionID = UUID.Zero; | ||
3784 | |||
3785 | gmp.MethodData.Method = Util.StringToBytes256("emptymutelist"); | ||
3786 | gmp.ParamList = new GenericMessagePacket.ParamListBlock[1]; | ||
3787 | gmp.ParamList[0] = new GenericMessagePacket.ParamListBlock(); | ||
3788 | gmp.ParamList[0].Parameter = new byte[0]; | ||
3789 | |||
3790 | OutPacket(gmp, ThrottleOutPacketType.Task); | ||
3791 | } | ||
3792 | |||
3765 | public void SendMuteListUpdate(string filename) | 3793 | public void SendMuteListUpdate(string filename) |
3766 | { | 3794 | { |
3767 | MuteListUpdatePacket muteListUpdate = (MuteListUpdatePacket)PacketPool.Instance.GetPacket(PacketType.MuteListUpdate); | 3795 | MuteListUpdatePacket muteListUpdate = (MuteListUpdatePacket)PacketPool.Instance.GetPacket(PacketType.MuteListUpdate); |
@@ -11008,9 +11036,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
11008 | } | 11036 | } |
11009 | else | 11037 | else |
11010 | { | 11038 | { |
11011 | SendUseCachedMuteList(); | 11039 | if(muteListRequest.MuteData.MuteCRC == 0) |
11040 | SendEmpytMuteList(); | ||
11041 | else | ||
11042 | SendUseCachedMuteList(); | ||
11012 | } | 11043 | } |
11013 | return true; | 11044 | return true; |
11014 | } | 11045 | } |
11015 | 11046 | ||
11016 | private bool HandleUpdateMuteListEntry(IClientAPI client, Packet Packet) | 11047 | private bool HandleUpdateMuteListEntry(IClientAPI client, Packet Packet) |