4️⃣3️⃣ Выбор случайных значений из указанного диапазона чисел.
Сложность:
⭐️⭐️⭐️⭐️⭐️
Создание команды, которая позволяет выбирать случайные значения из указанного диапазона чисел. Диапазон чисел указывается через пробел от минимального до максимального. Третий параметр указывает, количество случайных чисел которое нужно выбрать. Выбранные случайные числа не должны повторятся.
Команда: !rnd
min max num
min – минимальное значение диапазона
max – максимальное значение диапазона
num – количество выбираемых чисел
Например команда: !rnd 10 100 20 вернет 20 случайных чисел в диапазоне от 10 до 100.
Для этого необходимо:
↙️Команды —
➕Создать↙️ — Регулярное выражение:
/!rnd\s+(\d+)\s+(\d+)\s+(\d+)/i
—
⚙️Настройки —
☑️Доступно в чате
В
🔗 Триггер команды добавить следующие реакции:
⚡️localVarSet
— Тип:
Число — Название:
minNum
— Значение:
${exec.1}
⚡️localVarSet
— Тип:
Число — Название:
maxNum
— Значение:
${exec.2}
⚡️localVarSet
— Тип:
Число — Название:
quanNum
— Значение:
${exec.3}
⚡️runScript
— Текст:
function getRND(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
var minNum = qnext.getValue("localVar.minNum", 0);
var maxNum = qnext.getValue("localVar.maxNum", 0);
var quanNum = qnext.getValue("localVar.quanNum", 0);
var numRes = [];
if ((maxNum - minNum) >= quanNum) {
while (numRes.length < quanNum) {
var rndNum = getRND(minNum, maxNum);
var found = false;
for (var i = 0; i < numRes.length; i++) {
if (numRes[i] === rndNum){
found = true;
break;
}
}
if (!found) { numRes[numRes.length]=rndNum; }
}
numRes = numRes.sort(function(a, b){return a - b});
} else {
numRes[0] = -1;
}
exports.numRes = numRes;
⚡️message
— Текст:
Min: ${localVar.minNum}
Max: ${localVar.maxNum}
Кол-во: ${localVar.quanNum}
${localVar.numRes}
— Файл:
➖Пропустить
(Установить:
☑️Ответить в чате)
#localVar #JScript #command
Требуется помощь?