#node.js #discord #discord.js
#node.js #Discord #discord.js
Вопрос:
Я пытался воспроизвести алгоритм работы известного Discord Discord бота Mee6 в NodeJS (OG-бот на Python), но каждая попытка ставила меня в тупик из-за статических значений.
function XPValue(min, max) {
return Math.floor(Math.random() * (max - min 1)) min;
}
XPValue(15, 25) // This Randomizes as normal
const curLevel = Math.floor(0.5 * Math.sqrt(XPValue(15, 25))); //When put it here it becomes a static number and never changes
Я не понимаю, как я могу рандомизировать XP, как я на самом деле хочу, чтобы это было сделано с помощью XPValue
функции, даже если она прошла через то, что function
она сохраняет статическое значение 2
Комментарии:
1. Вы хотите сказать, что хотите, чтобы число изменилось после того, как оно было рассчитано?
2. Да, я пытаюсь получить случайное значение XP для передачи игроку в зависимости от выполнения рассматриваемого скрипта. @Львица 100
3. Я все еще не думаю, что понимаю. Если вы просто хотите сгенерировать случайное число, тогда что происходит не так? Получаете ли вы один и тот же номер всякий раз, когда запускаете функцию?
4. У меня был друг на plexidev, который помог мне в этом вопросе, собираюсь опубликовать ответ 🙂 Спасибо за помощь @Lioness100
Ответ №1:
проблема заключалась в том, что после присвоения переменной она не изменяла значение за выполнение, где, поскольку использование getter исправило эту проблему:
const Experience = {
get random() {
var rand = Math.floor(Math.random() * 15);
return rand (25 - 15);
}
};
Кредиты Зелаку (PlexiDev)