为discord.js锁定命令



我需要为我正在使用discord.js制作的机器人制作锁命令,但我不知道如何。我需要它在执行"。lock"时锁定频道通过更改"发送消息"设置为"社区";角色设置为false,当我执行"。unlock"时,将其设置回True。

有人知道怎么做吗?

步骤如下:

  1. 获得"社区";角色的id。将其存储在某个变量中(在本例中我称之为communityRoleId)。
  2. 当有人调用lock命令时,呼叫<Message>.channel.permissionOverwrites.edit(communityRoleId, { SEND_MESSAGES: false })。这会为社区角色创建权限覆盖,表示该角色不能在通道中发送消息。
  3. 对于unlock命令,您可以删除使用lock命令所做的权限覆盖,也可以编辑该权限覆盖,以便团体角色可以再次发送消息。要删除它,可以使用<Message>.channel.permissionOverwrites.delete(communityRoleId),要编辑它,可以使用<Message>.channel.permissionOverwrites.edit(communityRoleId, { SEND_MESSAGES: true })

编辑:请确保还运行检查,以查看使用该命令的人是否具有"admin"角色或足够的权限或类似的东西,您不希望随机的人能够锁定通道!

最新更新