public void SendEstateExperienceAccessRemoveTrusted(ScriptInstance instance, ViewerAgentAccessor agent, LSLKey transactionid, LSLKey invoice, int allEstates, LSLKey experience) { EstateExperienceDeltaFlags flags = EstateExperienceDeltaFlags.RemoveTrusted; if (allEstates != 0) { flags |= EstateExperienceDeltaFlags.AllEstates; } SendEstateExperienceAccess(instance, agent, transactionid, invoice, flags, experience); }
private void SendEstateExperienceAccess(ScriptInstance instance, ViewerAgentAccessor agent, LSLKey transactionid, LSLKey invoice, EstateExperienceDeltaFlags flags, LSLKey experience) { lock (instance) { ViewerConnection vc; ViewerCircuit viewerCircuit; if (m_Clients.TryGetValue(agent.AgentID, out vc) && vc.ViewerCircuits.TryGetValue((uint)agent.CircuitCode, out viewerCircuit)) { var msg = new EstateOwnerMessage { AgentID = agent.AgentID, SessionID = viewerCircuit.SessionID, Method = "estateexperiencedelta", TransactionID = transactionid, Invoice = invoice }; msg.ParamList.Add("0".ToUTF8Bytes()); msg.ParamList.Add(((uint)flags).ToString().ToUTF8Bytes()); msg.ParamList.Add(experience.AsUUID.ToString().ToUTF8Bytes()); viewerCircuit.SendMessage(msg); } } }