Beispiel #1
0
        public async Task Kick([Summary("The user you want to kick. (@ them)")] SocketUser kUser, [Summary("The Reason you're kicking them.")][Remainder] string reason)
        {
            var requestingUser = (SocketGuildUser)Context.User;
            var kickedUser     = (IGuildUser)kUser;
            var reportChannel  = (ISocketMessageChannel)Context.Guild.GetChannel(514112072326578207);

            if (UtilService.IsOfficer(requestingUser.Roles))
            {
                await kickedUser.KickAsync(reason);
                await ReplyAsync($"{kickedUser.Username} with ID {kUser.Id} has been kicked from {Context.Guild.Name}");

                await reportChannel.SendMessageAsync("", false, UtilService.KickReport(kUser, Context.User, (SocketChannel)Context.Channel, reason));

                LoggingService.Log("admin", LogSeverity.Info, $"{Context.User.Username} has kicked {kickedUser.Username}");
                return;
            }
            else
            {
                await ReplyAsync("You do not have the required role to do that.");

                LoggingService.Log("admin", LogSeverity.Warning, $"{Context.User.Username} Requested a command without permision.");
            }
        }