From 960b7e93b1fd48f240a11343716dc0be7e7b782d Mon Sep 17 00:00:00 2001
From: Teravus Ovares
Date: Fri, 4 Jan 2008 02:24:05 +0000
Subject: * Added the ability for estate managers to use the magic secondlife
blue card of death to send out region and estate messages. * Switched over
Region Restart notices to the magic secondlife blue card of death method.
---
OpenSim/Region/ClientStack/ClientView.cs | 35 ++++++++++++++++++++++++--------
1 file changed, 27 insertions(+), 8 deletions(-)
(limited to 'OpenSim/Region/ClientStack/ClientView.cs')
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs
index 7bdbb67..c2c514e 100644
--- a/OpenSim/Region/ClientStack/ClientView.cs
+++ b/OpenSim/Region/ClientStack/ClientView.cs
@@ -134,6 +134,14 @@ namespace OpenSim.Region.ClientStack
}
///
+ /// This is a utility method used by single states to not duplicate kicks and blue card of death messages.
+ ///
+ public bool ChildAgentStatus()
+ {
+ return m_scene.PresenceChildStatus(AgentId);
+ }
+
+ ///
/// First name of the agent/avatar represented by the client
///
public string FirstName
@@ -257,13 +265,16 @@ namespace OpenSim.Region.ClientStack
public void Kick(string message)
{
- KickUserPacket kupack = (KickUserPacket) PacketPool.Instance.GetPacket(PacketType.KickUser);
- kupack.UserInfo.AgentID = AgentId;
- kupack.UserInfo.SessionID = SessionId;
- kupack.TargetBlock.TargetIP = (uint) 0;
- kupack.TargetBlock.TargetPort = (ushort) 0;
- kupack.UserInfo.Reason = Helpers.StringToField(message);
- OutPacket(kupack, ThrottleOutPacketType.Task);
+ if (!ChildAgentStatus())
+ {
+ KickUserPacket kupack = (KickUserPacket)PacketPool.Instance.GetPacket(PacketType.KickUser);
+ kupack.UserInfo.AgentID = AgentId;
+ kupack.UserInfo.SessionID = SessionId;
+ kupack.TargetBlock.TargetIP = (uint)0;
+ kupack.TargetBlock.TargetPort = (ushort)0;
+ kupack.UserInfo.Reason = Helpers.StringToField(message);
+ OutPacket(kupack, ThrottleOutPacketType.Task);
+ }
}
public void Stop()
@@ -2786,7 +2797,7 @@ namespace OpenSim.Region.ClientStack
{
ObjectAddPacket addPacket = (ObjectAddPacket) Pack;
PrimitiveBaseShape shape = GetShapeFromAddPacket(addPacket);
- MainLog.Instance.Verbose("REZData", addPacket.ToString());
+ // MainLog.Instance.Verbose("REZData", addPacket.ToString());
//BypassRaycast: 1
//RayStart: <69.79469, 158.2652, 98.40343>
//RayEnd: <61.97724, 141.995, 92.58341>
@@ -3585,6 +3596,14 @@ namespace OpenSim.Region.ClientStack
return shape;
}
+ public void SendBlueBoxMessage(LLUUID FromAvatarID, LLUUID fromSessionID, String FromAvatarName, String Message)
+ {
+ if (!ChildAgentStatus())
+ SendInstantMessage(FromAvatarID, fromSessionID, Message, AgentId, SessionId, FromAvatarName, (byte)1, (uint)Util.UnixTimeSinceEpoch());
+
+ //SendInstantMessage(FromAvatarID, fromSessionID, Message, AgentId, SessionId, FromAvatarName, (byte)21,(uint) Util.UnixTimeSinceEpoch());
+ }
+
public void SendLogoutPacket()
{
LogoutReplyPacket logReply = (LogoutReplyPacket) PacketPool.Instance.GetPacket(PacketType.LogoutReply);
--
cgit v1.1