Если я правильно понял тогда под это
Цитата
С 15% случайное оружее
С 20% случайная часть доспеха
С 20% случайный реагент
С 25% случайное зелье
Делаем 4 разные функции:
dropОружие
dropДоспех
dropРеагент
dropЗельеИ соответственно 1 функцию под "не выпало ничего, даем бинт"
dropБинтДальше делаем массив всех дропфункций, по которым нам надо бежать от начала до конца, пока не выпадет какой то предмет с функции (тогда прирываем цикл), а если так ничего и не выпало - тогда дойдя до конца - должы выполнить
dropБинтвыйдет что-то вроде:
Код
const runDropArr = [dropОружие, dropДоспех, dropРеагент, dropЗелье];
const dropOrNo = false;
for (i=0; i < runDropArr.length; i++) {
dropOrNo = runDropArr[i]();
}
if (!runDropArr) dropБинт();
пример функции дропа что-то вроде
Код
dropОружие() {
if (rand_100 <= шанс) {
<генерируем выпадение предмета>
return false;
}
return false;
}
Сори за псевдокод, но как я понял у вас именно путаница была в логике реализации
Если не получится самим набросать - пинганите, я доберусь до сферы могу попробовать реализовать и скинуть