【发布时间】:2018-03-18 21:34:09
【问题描述】:
public async Task ExecuteAsync(SocketUserMessage input, string[] parameters)
{
if (parameters.Length == 0)
{
parameters[0] = "Unspecified";
return;
}
var allBans = await Context.Guild.GetBansAsync();
bool isBanned = allBans.Select(b => b.User).Where(u => u.Username == Context.User.Username).Any();
if (!isBanned)
{
var targetHighest = (Context.User as SocketGuildUser).Hierarchy;
var senderHighest = (Context.User as SocketGuildUser).Hierarchy;
if (targetHighest < senderHighest)
{
await Context.Guild.AddBanAsync(Context.User);
await Context.Channel.SendMessageAsync($"**{Context.User.Username}** has been banned by Moderator {Context.User}. Reason: **{parameters}**");
var dmChannel = await Context.User.GetOrCreateDMChannelAsync();
await dmChannel.SendMessageAsync($"You have been banned from **{Context.Guild.Name}** by Moderator **{Context.User}** for **{parameters}**");
}
}
}
所以我正在尝试制定一个禁止人员的命令,但 allBans 不断获得 null 值。我不确定我是否写错了什么或者这是一个实际的错误..
感谢您的帮助。
【问题讨论】:
-
请描述您的代码..
标签: visual-studio discord discord.net