using SharpChat.Events; using SharpChat.Packet; using System; namespace SharpChat.Commands { public class MessageBroadcastCommand : IUserCommand { public bool IsMatch(UserCommandContext ctx) { return ctx.NameEquals("say") || ctx.NameEquals("broadcast"); } public void Dispatch(UserCommandContext ctx) { if(!ctx.User.Permissions.HasFlag(UserPermissions.Broadcast)) { ctx.Chat.SendTo(ctx.User, new CommandNotAllowedErrorPacket(ctx.Name)); return; } ctx.Chat.DispatchEvent(new MessageCreateEvent( SharpId.Next(), string.Empty, ctx.User, DateTimeOffset.Now, string.Join(' ', ctx.Args), false, false, true )); } } }