我需要我的机器人回复一个特定的角色,如果用户没有这个角色,机器人会回复另一条消息说“你不允许执行这个命令”,这是我的代码:
client.on("message", (message) => {
// Command handler, seen previously
if (message.content === "#سرقة") {
let frole = message.guild.roles.cache.get("861336755197575178");
if (frole) return message.channel.send("u are not allowed to use this command");
message.reply("يرجى تحديد نوع السرقة");
message.channel.send(" -بقالة");
message.channel.send("-محل ملابس");
message.channel.send("-البنك المركزي");
}
});
您可以使用GuildMemberRoleManager#缓存
has()
确定GuildMember
是否具有角色。
client.on("message", (message) => {
if (message.content === "#سرقة") {
if (message.member.roles.cache.has("861336755197575178")) {
message.reply("You are allowed to use this command.");
} else {
message.channel.send("You are not allowed to use this command.");
}
}
});
如何让机器人只响应我编写命令的特定通道
我一直在制作一个Discord.js(V12)机器人,它支持命令“说”的类型(请注意,我是新来的),但是当我使用这个“说”命令并在特定的消息中单击“回复”时,它只是发送我已经写道,它根本不显示我回复的原始消息。这是我用机器人写的,这里是结果。 我的“say”命令代码很简单,因为我找不到实际的回复函数,所以无法添加它(我必须删除内容,以便更准确)。 我发现还有另一种方式可以回答。这里有两个:第一个是
所以我在让我的自动角色发挥作用方面遇到了一个小问题,我一直在尝试通过消息对其进行排序。js和在reactionrole中。js,但它仍然给出了同样的问题,想知道是否有人可以帮助将不胜感激,因为我已经通过教程查看了它,除了一些差异,由于不同的文本/细节,它没有帮助 此外,如果这有助于避免错误,我将使用命令处理程序V2 反应角色。js message.js
我想挑拨离间。当一个用户在聊天中键入任何内容时,js bot将回复该用户,但我在定义该用户时遇到了问题。代码如下:
我正在尝试使用客户端将当前服务器的bot角色设置为粉红色。打开(“准备就绪”),但每当我使用当前拥有的内容运行bot时,控制台将返回: 这是我目前使用的代码。我知道我需要在每个公会上进行for循环,但我不确定我将如何做到这一点,我可以使用for或只是a。然而,我找不到这样做的正确方法。 提前感谢任何回复和帮助我留言的人。
我是一个编程新手。几天前,我开始开发我的第一个discord机器人,你知道,让我和我的朋友一起玩。现在,让我们假设我想让这个机器人检测消息中的单词,并在每次有人提到该单词时回复,无论消息的哪个部分。我能做到,但现在有个问题。假设我要找的单词是“你好”。如果有人说“哦,你好”,“你好”,一条写着“你好”的消息,机器人会回复“你好”。但是机器人也会在自己的消息中检测到hello,并一遍又一遍地回复自己