public static void HandleMessage(ClientStructure client, IClientMessageBase message)
        {
            var messageData = (ChatMsgData)message.Data;

            if (messageData.From != client.PlayerName)
            {
                return;
            }

            if (messageData.Relay)
            {
                MessageQueuer.SendToAllClients <ChatSrvMsg>(messageData);
                LunaLog.ChatMessage($"{messageData.From}: {messageData.Text}");
            }
            else //Is a PM to server msg
            {
                LunaLog.Warning($"{messageData.From}: {messageData.Text}");
            }
        }
        public void HandleChannelMessage(ClientStructure client, ChatChannelMsgData message)
        {
            if (message.SendToAll)
            {
                //send it to the player and send it to the other players too
                MessageQueuer.SendToAllClients <ChatSrvMsg>(message);
                LunaLog.ChatMessage($"{message.From} -> #Global: {message.Text}");
            }
            else //Is a channel message
            {
                //send it to the player
                MessageQueuer.SendToClient <ChatSrvMsg>(client, message);

                foreach (var player in GetClientsInChannel(message.Channel))
                {
                    MessageQueuer.SendToClient <ChatSrvMsg>(player, message);
                }
                LunaLog.ChatMessage($"{message.From} -> #{message.Channel}: {message.Text}");
            }
        }
 public void HandlePrivateMessage(ClientStructure client, ChatPrivateMsgData message)
 {
     if (message.To != GeneralSettings.SettingsStore.ConsoleIdentifier)
     {
         var findClient = ClientRetriever.GetClientByName(message.To);
         if (findClient != null)
         {
             MessageQueuer.SendToClient <ChatSrvMsg>(client, message);     //Send it to the sender
             MessageQueuer.SendToClient <ChatSrvMsg>(findClient, message); //Send it to destination
             LunaLog.ChatMessage($"{message.From} -> @{message.To}: {message.Text}");
         }
         else
         {
             LunaLog.ChatMessage($"{message.From} -X-> @{message.To}: {message.Text}");
         }
     }
     else
     {
         //Send it to the sender only as we as server already received it
         MessageQueuer.SendToClient <ChatSrvMsg>(client, message);
         LunaLog.ChatMessage($"{message.From} -> @{message.To}: {message.Text}");
     }
 }