簡體   English   中英

discord 中的自動角色分配

[英]Automatic role assignment in discord

在與朋友的一個項目中,我決定自己制作一個機器人,我被要求讓機器人在 2 個已經存在的范圍內分配一個隨機范圍,但它不起作用,它甚至沒有給我一個錯誤。

if (command === 'rol') {
        module.exports = (client, member) => {
            const logChannel = member.guild.channels.find(channel => channel.name === "log");
            var list = Array("rol1", "rol2");
            var alet = Math.floor(Math.random()*(list.length));              
            var op = list[alet];
            if (op === "rol1") {
                let member = member.user;
                let rol = "rol1";
                let role = message.guild.roles.find("name", rol);
                miembro.addRole(role).catch(console.error);
                logChannel.send(console.error);
            } else if (op === "rol2") {
                let member = member.user;
                var rol = "rol2";
                let role = message.guild.roles.find("name", rol);
                miembro.addRole(role).catch(console.error);
                logChannel.send(console.error);
            }
            else {
                logChannel.send(console.error);
            } 
        }

    };

可能只是您需要在這里卸下剎車:

var alet = Math.floor(Math.random()*(list.length));

所以它會變成:

var alet = Math.floor(Math.random() * list.length);

我也認為你不需要有 2 個 if 語句,你可以:

if (command === 'rol') {
    module.exports = (client, member) => {
        const logChannel = member.guild.channels.find(channel => channel.name === "log");
        var list = Array("rol1", "rol2");
        var alet = Math.floor(Math.random()*(list.length));              
        var op = list[alet];
            let member = member.user;
            let role = message.guild.roles.find("name", op);
            miembro.addRole(role).catch(console.error);
            logChannel.send(console.error);

}
};

試試看。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM