Бонус Бод

Я пытался заставить этого бота работать какое-то время. Я не кодер, у меня есть около 100% знаний по этой теме. Некоторые из функций работают, но когда дело доходит до добавления очков, это не работает вообще.

ПОЛНОЕ РАСКРЫТИЕ!!!! Это не мой бот. Я нашел его здесь.

function housePointsFunc(args) {
    var house = this,

        user = args.message.member,
        roles = user.roles,

        canGivePoints = false,
        canTakePoints = false,
        canSetPoints = false;

    roles.map((value, index, arr) => {
        for (let i = 0; i < config.roles.doAllOfTheAbove.length; i++) {
            if (config.roles.doAllOfTheAbove[i] === value.name.toLowerCase()) {
                canGivePoints = true;
                canTakePoints = true;
                canSetPoints = true;
            }
        }

        
        if (!canTakePoints) {
            for (let i = 0; i < config.roles.takePoints.length; i++) {
                if (config.roles.takePoints[i] === value.name.toLowerCase()) {
                    canTakePoints = true;
                    break;
                }
            }
        }

        if (!canGivePoints) {
            for (let i = 0; i < config.roles.givePoints.length; i++) {
                if (config.roles.givePoints[i] === value.name.toLowerCase()) {
                    canGivePoints = true;
                    break;
                }
            }
        }

        if (!canSetPoints) {
            for (let i = 0; i < config.roles.setPoints.length; i++) {
                if (config.roles.setPoints[i] === value.name.toLowerCase()) {
                    canSetPoints = true;
                    break;
                }
            }
        }
    });

    var firstParam = args.params[0];
    if (firstParam !== undefined) {
        if (firstParam.toLowerCase !== undefined) {
            firstParam = firstParam.toLowerCase();
        }
    }

    if (firstParam === 'points' || firstParam === 'point' || firstParam === 'p' || firstParam === undefined) {
        args.send(house.capitalize() + ' has ' + points[house] + ' point(s)!');
    } else if ((firstParam === 'add' || firstParam === 'increase' || firstParam === '+' || firstParam === 'give') && canGivePoints === true) {
        if (isNaN(args.params[1]) || args.params[1] === 'Infinity' || args.params[1] === '-Infinity') {
            args.send(' ' + args.params[1] + ' is not a number!');
        } else {
            points[house] += Number(args.params[1]);
            if (points[house] < 0) {
                points[house] = 0;
            }
            args.send('Added ' + args.params[1] + ' point(s) to ' + house.capitalize() + '!
' + house.capitalize() + ' has ' + points[house] + ' point(s) now!');
            writeJSON(__dirname + '/JSON/points.json', points);
        }
    } else if ((firstParam === 'subtract' || firstParam === 'sub' || firstParam === 'decrease' || firstParam === '-' || firstParam === 'take') && canTakePoints === true) {
        if (isNaN(args.params[1]) || args.params[1] === 'Infinity' || args.params[1] === '-Infinity') {
            args.send(' ' + args.params[1] + ' is not a number!');
        } else {
            points[house] -= Number(args.params[1]);
            if (points[house] < 0) {
                points[house] = 0;
            }
            args.send('Subtracted ' + args.params[1] + ' point(s) from ' + house.capitalize() + '!
' + house.capitalize() + ' has ' + points[house] + ' point(s) now!');
            writeJSON(__dirname + '/JSON/points.json', points);
        }
    } else if ((firstParam === 'set' || firstParam === 'setas') && canSetPoints === true) {
        if (isNaN(args.params[1]) || args.params[1] === 'Infinity' || args.params[1] === '-Infinity') {
            args.send(' ' + args.params[1] + ' is not a number!');
        } else {
            points[house] = Number(args.params[1]);
            if (points[house] < 0) {
                points[house] = 0;
            }
            args.send('Set ' + house.capitalize() + " house's points to " + args.params[1] + '!
' + house.capitalize() + ' has ' + points[house] + ' point(s) now!');
            writeJSON(__dirname + '/JSON/points.json', points);
        }

Это бит кода, с которым у меня возникают проблемы. (Или, по крайней мере, я думаю, что это так.)

Я также пытался выяснить, как ограничить функции этого бота только определенными ролями, но это уже в течение другого дня! Ха-ха. Может ли кто-нибудь увидеть, что здесь не так? Это что-то мне не хватает?

О, и да, я пытался найти контактную информацию для создателя, но я не могу найти его нигде. -вздох-

Любая помощь будет принята с благодарностью.

Благодарю, Razzi

javascript,bots,discord,points,

0

Ответов: 0

Бонус Бод

Я пытался заставить этого бота работать какое-то время. Я не кодер, у меня есть около 100% знаний по этой теме. Некоторые из функций работают, но когда дело доходит до добавления очков, это не работает вообще.

ПОЛНОЕ РАСКРЫТИЕ!!!! Это не мой бот. Я нашел его здесь.

function housePointsFunc(args) {
    var house = this,

        user = args.message.member,
        roles = user.roles,

        canGivePoints = false,
        canTakePoints = false,
        canSetPoints = false;

    roles.map((value, index, arr) => {
        for (let i = 0; i < config.roles.doAllOfTheAbove.length; i++) {
            if (config.roles.doAllOfTheAbove[i] === value.name.toLowerCase()) {
                canGivePoints = true;
                canTakePoints = true;
                canSetPoints = true;
            }
        }

        
        if (!canTakePoints) {
            for (let i = 0; i < config.roles.takePoints.length; i++) {
                if (config.roles.takePoints[i] === value.name.toLowerCase()) {
                    canTakePoints = true;
                    break;
                }
            }
        }

        if (!canGivePoints) {
            for (let i = 0; i < config.roles.givePoints.length; i++) {
                if (config.roles.givePoints[i] === value.name.toLowerCase()) {
                    canGivePoints = true;
                    break;
                }
            }
        }

        if (!canSetPoints) {
            for (let i = 0; i < config.roles.setPoints.length; i++) {
                if (config.roles.setPoints[i] === value.name.toLowerCase()) {
                    canSetPoints = true;
                    break;
                }
            }
        }
    });

    var firstParam = args.params[0];
    if (firstParam !== undefined) {
        if (firstParam.toLowerCase !== undefined) {
            firstParam = firstParam.toLowerCase();
        }
    }

    if (firstParam === 'points' || firstParam === 'point' || firstParam === 'p' || firstParam === undefined) {
        args.send(house.capitalize() + ' has ' + points[house] + ' point(s)!');
    } else if ((firstParam === 'add' || firstParam === 'increase' || firstParam === '+' || firstParam === 'give') && canGivePoints === true) {
        if (isNaN(args.params[1]) || args.params[1] === 'Infinity' || args.params[1] === '-Infinity') {
            args.send(' ' + args.params[1] + ' is not a number!');
        } else {
            points[house] += Number(args.params[1]);
            if (points[house] < 0) {
                points[house] = 0;
            }
            args.send('Added ' + args.params[1] + ' point(s) to ' + house.capitalize() + '!
' + house.capitalize() + ' has ' + points[house] + ' point(s) now!');
            writeJSON(__dirname + '/JSON/points.json', points);
        }
    } else if ((firstParam === 'subtract' || firstParam === 'sub' || firstParam === 'decrease' || firstParam === '-' || firstParam === 'take') && canTakePoints === true) {
        if (isNaN(args.params[1]) || args.params[1] === 'Infinity' || args.params[1] === '-Infinity') {
            args.send(' ' + args.params[1] + ' is not a number!');
        } else {
            points[house] -= Number(args.params[1]);
            if (points[house] < 0) {
                points[house] = 0;
            }
            args.send('Subtracted ' + args.params[1] + ' point(s) from ' + house.capitalize() + '!
' + house.capitalize() + ' has ' + points[house] + ' point(s) now!');
            writeJSON(__dirname + '/JSON/points.json', points);
        }
    } else if ((firstParam === 'set' || firstParam === 'setas') && canSetPoints === true) {
        if (isNaN(args.params[1]) || args.params[1] === 'Infinity' || args.params[1] === '-Infinity') {
            args.send(' ' + args.params[1] + ' is not a number!');
        } else {
            points[house] = Number(args.params[1]);
            if (points[house] < 0) {
                points[house] = 0;
            }
            args.send('Set ' + house.capitalize() + " house's points to " + args.params[1] + '!
' + house.capitalize() + ' has ' + points[house] + ' point(s) now!');
            writeJSON(__dirname + '/JSON/points.json', points);
        }

Это бит кода, с которым у меня возникают проблемы. (Или, по крайней мере, я думаю, что это так.)

Я также пытался выяснить, как ограничить функции этого бота только определенными ролями, но это уже в течение другого дня! Ха-ха. Может ли кто-нибудь увидеть, что здесь не так? Это что-то мне не хватает?

О, и да, я пытался найти контактную информацию для создателя, но я не могу найти его нигде. -вздох-

Любая помощь будет принята с благодарностью.

Благодарю, Razzi

00JavaScript, ботов, диссонанс, очки,
Похожие вопросы