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."); } }