首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不一致机器人我该如何让机器人检查服务器所有权

不一致机器人我该如何让机器人检查服务器所有权
EN

Stack Overflow用户
提问于 2020-10-04 01:12:35
回答 2查看 782关注 0票数 1

我正在尝试创建专属于行会所有者的命令,我该如何检查?我想要的最接近的是ADMINISTRATOR权限,而不是所有者

EN

回答 2

Stack Overflow用户

发布于 2020-10-04 01:20:08

只需使用Guild#owner,如下所示:

代码语言:javascript
复制
msg.member.id === msg.guild.ownerID // Returns true if the message was sent by the guild owner.
票数 2
EN

Stack Overflow用户

发布于 2020-10-04 06:07:32

D Pardal的答案是100%正确的。我不确定您对这些文档有多熟悉,但开始了解如何从Discord.js文档中找到类似的内容可能会有所帮助。至少对我来说,它有助于理解它们提供的每个对象/类到底做了什么。如果你已经知道了这一点,只是有一点心理障碍,那就忽略它&祝你有一个愉快的一天。否则,我正在等待我自己的问题,所以我想我应该用我所知道的来帮助解决这个问题。我邀请你和我一起浏览Discord.js.org上的文档,因为我将解释这一点,以了解我到底在说什么。直到最近,我还发现Discord.js.org文档非常复杂和令人费解,所以我希望我可以让您和其他任何可以从中受益的人更容易一些。

要收集的信息是,可以在代表行业协会的guild对象中找到有关行业协会成员的数据。我们怎么找到它呢?

好吧,我们唯一需要开始的地方(可能,假设你的机器人只是接收消息并根据它们执行命令)我们接收的消息,我们称之为消息。转到Discord.JS文档,滚动浏览边上的类,最终我们看到实际上有一个Message class

现在,我们可以查看它附带的数据,这是一系列可能对您有用的东西。如果我们看得足够仔细,消息obj确实有一个听起来像我们要找的属性,Message.Guild!文档显示该属性的类型为Guild &单击超链接,它会将我们带到Guild的类定义。

根据definition的说法,一个行会对象代表了一个关于不和谐的行会,所以如果幸运的话,我们可以得到一些关于这个行会中事情的信息。知道我们正在寻找工会中的特定成员,我们可能会忍不住去查看Guild#members属性-虽然这可能是有用的,但它并不能让我们特别接近知道谁是所有者,只是谁是所有的成员。

最后,如果我们再滚动一点,就会看到Guild类有一个名为Owner的属性,还有ownerID!取决于我们想要的是什么,两者都可能是有用的。Owner是一个GuildMember对象,一个包含大量细节的用户表示(就像一个行会对象是一个包含大量信息的行会的表示一样)。但是,如果我们只是需要ID来做一些事情,比如检查命令发送者的ID和所有者的ID,我们可以只获得所有者对象的ID属性。

在展开形式中,您可以将其可视化为

代码语言:javascript
复制
const guild = message.guild
const ownerID = guild.ownerID

或者被压缩成

代码语言:javascript
复制
const ownerID = message.guild.ownerID

如果有什么我可以进一步澄清的,请告诉我!我知道我在很长一段时间内都不能理解这些文档,所以我希望这至少能有一些帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64186888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档