Всем привет, подскажите плз как сделать рандом по типу такого:
Спустя 100 сек игры, должно рандомно произойди одно из этих событий: "заспавнятся 8 пехотинцев в определённой зоне", "заспавнятся 5 стрелков в определённой зоне" или "заспавнятся 10 рыцарей в определённой зоне".
Вроде всё просто, но я плохо разбираюсь в триггерах! Можете плз подробно написать как это сделать (или скрины скинуть, либо карту где это реализовано)
`
LOADING AD...
23
Похожие вопросы:

ответ
Хозяин Миров, для начала прочитать весь список функций
или научится юзать поиск по функциям
ибо GetRandomInt(n,m)
где n начало промежутка из которого берутся числа а m конец
ответ
нормальный в варкрафте рандом, это человек делает микроскопическую выборку и удивляется результатам
ответ
~8gabriel8:
Файл - Параметры - Проверка карты - "Фиксированный случайный разброс"

28
Создай переменную типа целочисленная. Спустя 100 секунд в действиях установи рандомное значение этой переменной от 1 до 3. Используй ветки если тогда иначе, в которые пихни условие если целочисленная = 0/1/2 то создать пехотинцев/охотников/драконов
5
Создаешь переменную с типом целочисленное(инт, integer), устанавливаешь ей случайное значение в диапозоне от 1 до 3, потом условием проверяешь:
если (перменная = 1) то
создать 8 пехов
иначе
Если переменная = 2 то
создать 5 стрелков
иначе
если переменная = 3 то
создать 10 рыцарей
18
Еще вариант. Создать переменную массив тип юнита, целое число дальше TypeUnit, Count.
TypeUnit[0] = пехотинец
TypeUnit[1] = стрелок
TypeUnit[2] = рицарь
Count[0] = 8
...
...
Соб - спустя 100сек.
Integer int = RandomInt(0,2)
Создать Count[ int ] юнитов TypeUnit[ int ] в центре твоей области
8
Вложил в карту Арену наработку, где генерируется 500 рандомных волн, с рандомными характеристиками и размерами юнитов, случайные магазины, и случайно удаляются с карты определенные декорации, случайно появляются в магазинах скиллы на изучение и почти все на GUI. полезно для вариации рандома и как его можно использовать.
//Плохой пример
if GetRandomInt(1,3)==1 then
	call CreateUnit
elseif GetRandomInt(2,3)==2 then
	call CreateUnit
else
	call CreateUnit
elseif

endif
ИЛИ
local integer random = GetRandomInt (1,3)
if random == 1 then
	call CreateUnit
elseif random == 2 then
	call CreateUnit
else
	call CreateUnit
endif
To leave a comment please sign in to the site.