【发布时间】:2019-07-04 05:46:47
【问题描述】:
所以,称我为笨蛋...但我无法弄清楚如何从服务器中永久删除角色。我为在频道中玩游戏的每一对用户设定了角色。该角色纯粹是为了只允许2名玩家在频道中发表评论。游戏完成后,我试图删除角色。角色可以是两种格式之一,具体取决于在之前的单独命令中谁被指定为玩家 A,而谁是玩家 B。
下面的代码给出的错误是:
"(node:19308) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'delete' of null"
console.log(bRole) 行显示的是两个用户的用户名而不是昵称,所以这可能是 find 给出 null 的原因?该命令最初需要提及。我无法删除所有角色或特定角色 ID,因为角色是在不同的命令中生成的,其中两个玩家的名字作为角色标题。
代码如下:
// !endbrawl winner [username] loser [username]
let messageArray = message.content.split(" ")
let winner = messageArray[2]
let winnerUser = message.mentions.users.first();
let loser = messageArray[4]
let loserUser = message.mentions.users.last();
bRole = `${winner.displayName} vs ${loser.displayName}` || `${loser.displayName} vs ${winner.displayName}`
console.log(bRole)
guild.roles.find("name", bRole).delete();
我只是不确定如何让机器人找到角色以便将其删除。我可能只是错过了一些超级简单和容易的东西。非常感谢您提前提供的帮助。
【问题讨论】:
-
你能告诉我你定义的
guild吗? -
我今天一直在搞砸它,但我想我在发布上面的代码时已经“让公会 = message.guild”。该命令发布在将使用该角色的服务器上的频道中。
标签: node.js roles discord.js