public static void HandleChatClientPrivateMessage(WorldClient client, ChatClientPrivateMessage message) { if (!string.IsNullOrEmpty(message.content)) { Character character = Singleton <World> .Instance.GetCharacter(message.receiver); if (character != null) { if (client.Character.IsMuted()) { client.Character.SendInformationMessage(TextInformationTypeEnum.TEXT_INFORMATION_ERROR, 123, new object[] { (int)client.Character.GetMuteRemainingTime().TotalSeconds }); } else { if (client.Character != character) { if (!character.IsAway) { if (client.Character.IsAway) { client.Character.SendInformationMessage(TextInformationTypeEnum.TEXT_INFORMATION_MESSAGE, 72, new object[0]); } ChatHandler.SendChatServerCopyMessage(client, character, character, ChatActivableChannelsEnum.PSEUDO_CHANNEL_PRIVATE, message.content); ChatHandler.SendChatServerMessage(character.Client, client.Character, ChatActivableChannelsEnum.PSEUDO_CHANNEL_PRIVATE, message.content); BsonDocument document = new BsonDocument { { "SenderId", client.Character.Id }, { "ReceiverId", character.Id }, { "Message", message.content }, { "Date", System.DateTime.Now.ToString(System.Globalization.CultureInfo.InvariantCulture) } }; Singleton <MongoLogger> .Instance.Insert("PrivateMSG", document); } else { client.Character.SendInformationMessage(TextInformationTypeEnum.TEXT_INFORMATION_ERROR, 14, new object[] { character.Name }); } } else { ChatHandler.SendChatErrorMessage(client, ChatErrorEnum.CHAT_ERROR_INTERIOR_MONOLOGUE); } } } else { ChatHandler.SendChatErrorMessage(client, ChatErrorEnum.CHAT_ERROR_RECEIVER_NOT_FOUND); } } }
public static void SendChatAdminServerMessage(IPacketReceiver client, Character sender, ChatActivableChannelsEnum channel, string message, int timestamp, string fingerprint) { ChatHandler.SendChatAdminServerMessage(client, channel, message, timestamp, fingerprint, sender.Id, sender.Name, sender.Account.Id); }
public static void SendChatServerCopyMessage(IPacketReceiver client, Character sender, Character receiver, ChatActivableChannelsEnum channel, string message) { ChatHandler.SendChatServerCopyMessage(client, sender, receiver, channel, message, System.DateTime.Now.GetUnixTimeStamp(), ""); }
public static void SendChatServerMessage(IPacketReceiver client, string message) { ChatHandler.SendChatServerMessage(client, ChatActivableChannelsEnum.PSEUDO_CHANNEL_INFO, message, System.DateTime.Now.GetUnixTimeStamp(), "", 0, "", 0); }