如何限制命令的使用次数(Discord.js)

时间:2020-04-15 16:45:25

标签: javascript discord.js

我最近不得不创建一个命令以添加用于注册事件的角色,但是我将需要能够使用另一个命令来限制第一个命令的使用次数。

示例:如果我写!limit-inscriptions 20,我希望!inscrit命令只能使用20次。

问题是我是一个初学者,我不知道如何执行!limit-inscriptions命令。所以,如果您对如何操作有任何想法,我会打电话给您。这是我的!inscrit命令的(功能)代码:

 if(message.content === '!inscrit') {
        message.delete();
        let role = message.guild.roles.find(r => r.name === "Inscrit");

        if (message.member.roles.find(r => r.name === "Inscrit")) {
            message.member.removeRole(role)
            message.reply('vient de se désinscrire!')
        }
        else {
            message.member.addRole(role)
            message.reply(`vient de s'inscrire!`)
        }
    }

1 个答案:

答案 0 :(得分:0)

这是个好主意,但我想在Heroku上托管该bot,所以我真的不能,这是修改命令!inscrit的代码的开始,不幸的是,这个代码不起作用(我首先想要从命令!inscrit放入限制,然后我将使用命令!limit-inscriptions来做到):

var participants = 1;
var nbInscrit = 0;
if (message.content === '!inscrit') {
     message.delete();
     let role = message.guild.roles.find(r => r.name === "Inscrit");

     if (nbInscrit < participants) {

       if (message.member.roles.find(r => r.name === "Inscrit")) {
         message.member.removeRole(role)
         nbInscrit = nbInscrit - 1
         message.reply('vient de se désinscrire!')
       }
       else {
         message.member.addRole(role)
         nbInscrit = nbInscrit + 1
         message.reply("vient de s'inscrire!")
       }
     } else {
       message.channel.send('Le nombre Maximal de Participants est déjà atteint!');
     }
   }