private Packet OutAvatarPropertiesRequestHandler(Packet requestpacket, IPEndPoint sim) { if (!form.checkBox1profilekey.Checked) { return(requestpacket); } if (requestpacket.Header.Resent) { return(requestpacket); } AvatarPropertiesRequestPacket packet = (AvatarPropertiesRequestPacket)requestpacket; UUID uuid = packet.AgentData.AvatarID; if (shared.key2name.ContainsKey(uuid)) { frame.SayToUser(shared.key2name[uuid] + " = " + uuid.ToString()); } else { plugin.RequestNameFromKey(uuid); pending.Add(uuid); } return(packet); }
private Packet LocationIN(Packet p, IPEndPoint sim) { //if (sim.Address != shared.ip || sim.Port != shared.port) return p; if (sim.ToString() != proxy.activeCircuit.ToString()) { return(p); } CoarseLocationUpdatePacket c = (CoarseLocationUpdatePacket)p; List <UUID> temp = new List <UUID>(); bool say = false; if (c.AgentData.Length < 1) { return(p); } lock (avs) { foreach (CoarseLocationUpdatePacket.AgentDataBlock a in c.AgentData) { if (!avs.Contains(a.AgentID)) { say = true; form.listBox1.Items.Add(a.AgentID.ToString()); if (shared.key2name.ContainsKey(a.AgentID)) { form.listBox2.Items.Add(shared.key2name[a.AgentID]); } else { plugin.RequestNameFromKey(a.AgentID); pending.Add(a.AgentID); } } temp.Add(a.AgentID); } foreach (UUID u in avs) { if (!temp.Contains(u)) { say = true; form.listBox1.Items.Remove(u.ToString()); if (shared.key2name.ContainsKey(u)) { if (form.listBox2.Items.Contains(shared.key2name[u])) { form.listBox2.Items.Remove(shared.key2name[u]); } } } } } avs = temp; if (say) { if (form.checkBox1.Checked) { sendUpdate(); } } return(p); }