using SharpChat.Events; using System.Linq; namespace SharpChat.SockChat.Commands { public class MessageActionCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("action") || ctx.NameEquals("me"); } public void Dispatch(SockChatClientCommandContext ctx) { if(!ctx.Args.Any()) return; string actionStr = string.Join(' ', ctx.Args); if(string.IsNullOrWhiteSpace(actionStr)) return; ctx.Chat.Events.Dispatch("msg:add", ctx.Channel, ctx.User, new MessageAddEventData(actionStr, true)); } } }