private static void OnSendIm(Session Session, ClientMessage Message) { uint UserId = Message.PopWiredUInt32(); string Text = UserInputFilter.FilterString(Message.PopString()).Trim(); if (UserId <= 0 || Text.Length < 1) { return; } if (Session.CharacterInfo.IsMuted) { Session.SendData(MessengerImErrorComposer.Compose(4, UserId)); return; } if (!Session.MessengerFriendCache.Friends.Contains(UserId)) { Session.SendData(MessengerImErrorComposer.Compose(6, UserId)); return; } Session TargetSession = SessionManager.GetSessionByCharacterId(UserId); if (TargetSession == null) { Session.SendData(MessengerImErrorComposer.Compose(5, UserId)); return; } if (TargetSession.CharacterInfo.IsMuted) { Session.SendData(MessengerImErrorComposer.Compose(3, UserId)); } TargetSession.SendData(MessengerImMessageComposer.Compose(Session.CharacterId, Wordfilter.Filter(Text))); using (SqlDatabaseClient MySqlClient = SqlDatabaseManager.GetClient()) { ModerationLogs.LogChatMessage(MySqlClient, Session.CharacterId, 0, "(MESSAGE to " + TargetSession.CharacterInfo.Username + " [" + TargetSession.CharacterId + "]) " + Text); } }
private static void OnSendIm(Session Session, ClientMessage Message) { uint UserId = Message.PopWiredUInt32(); string Text = UserInputFilter.FilterString(Message.PopString()).Trim(); if (UserId <= 0 || Text.Length < 1) { return; } if (Session.CharacterInfo.IsMuted) { Session.SendData(MessengerImErrorComposer.Compose(4, UserId)); return; } if (!Session.MessengerFriendCache.Friends.Contains(UserId)) { Session.SendData(MessengerImErrorComposer.Compose(6, UserId)); return; } Session TargetSession = SessionManager.GetSessionByCharacterId(UserId); if (TargetSession == null) { Session.SendData(MessengerImErrorComposer.Compose(5, UserId)); return; } if (TargetSession.CharacterInfo.IsMuted) { Session.SendData(MessengerImErrorComposer.Compose(3, UserId)); return; } TargetSession.SendData(MessengerImMessageComposer.Compose(Session.CharacterId, Text)); }