Beispiel #1
0
        internal async Task Execute(MessageCreateEventArgs e)
        {
            var cmdEvent = new CommandEvent(e.Message)
            {
                Author            = e.Author,
                Guild             = e.Guild,
                MentionedChannels = e.MentionedChannels,
                MentionedRoles    = e.MentionedRoles,
                MentionedUsers    = e.MentionedUsers
            };

            if (e.Author is DiscordMember member)
            {
                cmdEvent.Member = member;
            }

            var returned = await OnCommand(cmdEvent);

            if (!string.IsNullOrEmpty(returned))
            {
                await e.Channel.SendMessageAsync(returned);
            }
        }
Beispiel #2
0
 protected abstract Task <string> OnCommand(CommandEvent e);