Нужно при некоторых условиях дропнуть один случайный предмет из героя или воина со способностью "Носильщик".
Кто подскажет?
Заранее попрошу тех, кто не разбирается не писать. Мне нужно именно **случайный** предмет дропать, а прямого способа в тригерах, как я вижу, нету.

Ну задай рандомную переменную от 1 до 6 и дропай предмет из слота под этим номером
Единственная проблема - если у носильщика меньше 6 слотов, то появляется вероятность не дропнуть ничего, ну тут можно циклом как-то, типа если дропнутый предмет = нет предмета, повторить (ток еще, чтобы цикл не мог стать вечным, проверить, что у юнита хоть 1 предмет вообще есть)
`
ОЖИДАНИЕ РЕКЛАМЫ...
21
Ну задай рандомную переменную от 1 до 6 и дропай предмет из слота под этим номером
Единственная проблема - если у носильщика меньше 6 слотов, то появляется вероятность не дропнуть ничего, ну тут можно циклом как-то, типа если дропнутый предмет = нет предмета, повторить (ток еще, чтобы цикл не мог стать вечным, проверить, что у юнита хоть 1 предмет вообще есть)
Принятый ответ
6
В таком случает предметы же будут выпадать по очереди - 1 слот, потом 2 и так далее, а мне надо рандомно.
13
Почему они у тебя будут по очереди выпадать, если ты используешь рандомное число от 0 до 5?
21
Maxwell_Hive, ясное дело, что, как хоть 1 предмет дропнется, цикл надо завершать.
NekoriDes, почему от 0 до 5? Слоты предметов в Jass 0,1,2,3,4,5 нумеруются?
28
ClotPh, на западе натуральные числа идут с 0
например наш 1 этаж у них 0 и т.д.
а т.к. jass почти все остальные языки программирования изобретены на западе то и нумерация в них идёт с 0
27
Единственная проблема - если у носильщика меньше 6 слотов
есть функция. макс. кол-во слотов в инвентаре
native UnitInventorySize takes unit whichUnit returns integer
22
есть проверка на количесто слотов инвентаря получаем и делаем с 0 до макс слота рандом
Чтобы оставить комментарий, пожалуйста, войдите на сайт.