查看用户是否是具有 hasPermission 和提及的管理员
See if a user is admin with hasPermission and mentions
我最近一直在尝试制作一个 Discord Bot,并且在这部分停留了一段时间。我基本上是在尝试制作一个 Embed,发送播放器的配置文件,该配置文件被不同的信息 ping 过,比如他的 name/ID/in 他是哪个语音频道等。问题是,我不知道如何制作我创建的 "isAdmin" var 已识别。
通过 console.log()
我将问题缩小到 1 个部分; message.mentions.members.first()
未被定义但未被读取,它只是跳过命令,就像从未输入过一样。这是我的来源:
case "profile":
var isAdmin = "undefined";
let profileMentionned = message.mentions.members.first();
if (!profileMentionned) return message.channel.send("some error message")
if (profileMentionned.hasPermission("MANAGE_MESSAGES"))
{
return isAdmin = "Admin boi";
}else{
return isAdmin = "Member pleb";
}
var embed = new Discord.RichEmbed()
Embed values....
感谢您的回答 <3 :)
哦,我刚注意到:
if (profileMentionned.hasPermission("MANAGE_MESSAGES"))
{
return isAdmin = "Admin boi";
// ^^^^^^
} else {
return isAdmin = "Member pleb";
// ^^^^^^
}
你不能在那个 if 上加上 return,因为它会停止做剩下的事情。
而只是做 isAdmin = "Admin boi";
,所以这样的事情会起作用:
var isAdmin = "undefined";
let profileMentionned = message.mentions.members.first();
if (!profileMentionned) return message.channel.send("some error message")
if (profileMentionned.hasPermission("MANAGE_MESSAGES")) {
isAdmin = "Admin boi";
} else {
isAdmin = "Member pleb";
}
var embed = new Discord.RichEmbed()
//...
我最近一直在尝试制作一个 Discord Bot,并且在这部分停留了一段时间。我基本上是在尝试制作一个 Embed,发送播放器的配置文件,该配置文件被不同的信息 ping 过,比如他的 name/ID/in 他是哪个语音频道等。问题是,我不知道如何制作我创建的 "isAdmin" var 已识别。
通过 console.log()
我将问题缩小到 1 个部分; message.mentions.members.first()
未被定义但未被读取,它只是跳过命令,就像从未输入过一样。这是我的来源:
case "profile":
var isAdmin = "undefined";
let profileMentionned = message.mentions.members.first();
if (!profileMentionned) return message.channel.send("some error message")
if (profileMentionned.hasPermission("MANAGE_MESSAGES"))
{
return isAdmin = "Admin boi";
}else{
return isAdmin = "Member pleb";
}
var embed = new Discord.RichEmbed()
Embed values....
感谢您的回答 <3 :)
哦,我刚注意到:
if (profileMentionned.hasPermission("MANAGE_MESSAGES"))
{
return isAdmin = "Admin boi";
// ^^^^^^
} else {
return isAdmin = "Member pleb";
// ^^^^^^
}
你不能在那个 if 上加上 return,因为它会停止做剩下的事情。
而只是做 isAdmin = "Admin boi";
,所以这样的事情会起作用:
var isAdmin = "undefined";
let profileMentionned = message.mentions.members.first();
if (!profileMentionned) return message.channel.send("some error message")
if (profileMentionned.hasPermission("MANAGE_MESSAGES")) {
isAdmin = "Admin boi";
} else {
isAdmin = "Member pleb";
}
var embed = new Discord.RichEmbed()
//...