예제 #1
0
    public static void HandleChat(Player sender, string message)
    {
        // Check if message is empty.
        message = message.Trim();
        if (message.Length == 0)
        {
            return;
        }

        bool   isAdmin          = sender.GetAccessLevel() > 99;
        string lowercaseMessage = message.ToLowerInvariant().Replace("\\s{2,}", " "); // Also remove all double spaces.

        if (lowercaseMessage.Equals(COMMAND_LOCATION))
        {
            LocCommand.Handle(sender);
        }
        else if (lowercaseMessage.Equals(COMMAND_RETURN))
        {
            ReturnCommand.Handle(sender);
        }
        else if (lowercaseMessage.StartsWith(COMMAND_PERSONAL_MESSAGE))
        {
            TellCommand.Handle(sender, lowercaseMessage, message);
        }
        else if (isAdmin && lowercaseMessage.StartsWith(COMMAND_SPAWN))
        {
            SpawnCommand.Handle(sender, lowercaseMessage);
        }
        else if (isAdmin && lowercaseMessage.Equals(COMMAND_DELETE))
        {
            DeleteCommand.Handle(sender);
        }
        else // Normal message.
        {
            sender.ChannelSend(new ChatResult(CHAT_TYPE_NORMAL, sender.GetName(), message));
            List <Player> players = WorldManager.GetVisiblePlayers(sender);
            for (int i = 0; i < players.Count; i++)
            {
                players[i].ChannelSend(new ChatResult(CHAT_TYPE_NORMAL, sender.GetName(), message));
            }
            // Log chat.
            if (Config.LOG_CHAT)
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("[");
                sb.Append(sender.GetName());
                sb.Append("] ");
                sb.Append(message);
                LogManager.LogChat(sb.ToString());
            }
        }
    }
예제 #2
0
파일: TradosLib.cs 프로젝트: PavelPZ/NetNew
 public exportCmlItem(string SeeUrl, int Id, string Name, LocCommand actCmd, string TransText, string OldSrcText, string NewSrcText) :
   this(SeeUrl, Id, Name, actCmd, TransText, OldSrcText, NewSrcText, 0) { }
예제 #3
0
파일: TradosLib.cs 프로젝트: PavelPZ/NetNew
 public exportCmlItem(string SeeUrl, int Id, string Name, LocCommand actCmd, string TransText, string OldSrcText, string NewSrcText, int newSrcId) {
   this.SeeUrl = SeeUrl; this.Id = Id; this.Name = Name; this.actCmd = actCmd; this.TransText = TransText;
   this.OldSrcText = OldSrcText; this.NewSrcText = NewSrcText; this.newSrcId = newSrcId;
 }