Beispiel #1
0
        public void HandleNetMessage(NetIncomingMessage message)
        {
            //Read the chat message and pass it on
            var    channel = (ChatChannel)message.ReadByte();
            string text    = message.ReadString();
            string name    = _serverMain.GetClient(message.SenderConnection).PlayerName;

            LogManager.Log("CHAT- Channel " + channel.ToString() + " - Player " + name + "Message: " + text + "\n");
            var entityId = IoCManager.Resolve <IPlayerManager>().GetSessionByConnection(message.SenderConnection).AttachedEntityUid;

            bool hasChannelIdentifier = false;

            if (channel != ChatChannel.Lobby)
            {
                channel = DetectChannel(text, out hasChannelIdentifier);
            }
            if (hasChannelIdentifier)
            {
                text = text.Substring(1);
            }
            text = text.Trim(); // Remove whitespace
            //if (text[0] == '/')
            //    ProcessCommand(text, name, channel, entityId, message.SenderConnection);
            if (text[0] == '*')
            {
                ProcessEmote(text, name, channel, entityId, message.SenderConnection);
            }
            else
            {
                SendChatMessage(channel, text, name, entityId);
            }
        }
Beispiel #2
0
 public IClient GetClient(NetConnection clientConnection)
 {
     return(instance.GetClient(clientConnection));
 }