最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

从服务器删除角色

运维笔记admin7浏览0评论

从服务器删除角色

从服务器删除角色

所以,称我为哑巴...但是我无法找到从服务器上永久删除角色的方法。我要为在频道中玩游戏的每对用户扮演角色。角色纯粹是只允许2位玩家在频道中发表评论。游戏结束后,我尝试删除该角色。该角色可以是两种格式中的一种,具体取决于在先前的单独命令中谁被指定为玩家A,以及谁是玩家B。

下面的代码给出错误:

“(node:19308)UnhandledPromiseRejectionWarning:TypeError:无法读取属性'delete'为null”

console.log(bRole)行显示的两个用户的用户名不是昵称,所以这可能是查找结果为空的原因吗?该命令最初需要提及。我无法删除所有角色或特定的角色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();

我只是不确定如何让机器人找到该角色以便将其删除。我可能只是缺少一些超级简单和容易的东西。非常感谢您的提前帮助。

回答如下:

Cannot read property 'delete' of null"表示guild.roles.find("name", bRole)返回了null,很可能是因为找不到角色!您可以尝试使用普通的.find()

guild.roles.find(role => role.name === 'RoleName').delete();

当角色更改名称时,您想这样做

guild.roles.find(role => role.name == `${winner.displayName} vs ${loser.displayName}` || role.name ==`${loser.displayName} vs ${winner.displayName}`).delete();

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论