Всем доброго времени суток, подскажите плз, мне нужно сделать так: У меня есть 6 триггеров, и каждые 10 мин один из этих триггеров (рандомно) должен запуститься. И тот, который запускается, должен выбыть из этого рандома и больше не запускаться. Останется 5 триггеров. А потом через 10 мин опять и опять, пока все 6 триггеров не закончатся. Нужно что бы каждые 10 мин они рандомно запускались и не повторялись!
Как можно это сделать? Я не пойму совсем...
`
ОЖИДАНИЕ РЕКЛАМЫ...
26
Записываешь все свои триггеры в масссив:
set MyTriggers[1] = (Trigger 001)
set MyTriggers[2] = (Trigger 002)
set MyTriggers[3] = (Trigger 003)
set MyTriggers[4] = (Trigger 004)
set MyTriggers[5] = (Trigger 005)
set MyTriggers[6] = (Trigger 005)
set MyTriggers_MAX = 6
В нужный момент выбираешь рандомный триггер и убираешь его из общего списка.
if MyTriggers_MAX > 0 then
set N = (случайное число от 1 до MyTriggers_MAX)
Запустить триггер (MyTriggers[N])
set MyTriggers[N] = MyTriggers[MyTriggers_MAX]
set MyTriggers_MAX = MyTriggers_MAX - 1
30
Extremator, хоть бы расписал алгоритм, а то непонятно:
  • выбираем любой триггер из массива
  • запускаем
  • устанавливаем на его место последний триггер из массива
  • уменьшаем размер массива на единицу
26
Именно это и было написано.
Или надо внестисти ясность и объяснить что слоги "МА" и "МА" вместе читаются как "МАМА" ?
12
Записываешь все свои триггеры в масссив:
set MyTriggers[1] = (Trigger 001)
set MyTriggers[2] = (Trigger 002)
set MyTriggers[3] = (Trigger 003)
set MyTriggers[4] = (Trigger 004)
set MyTriggers[5] = (Trigger 005)
set MyTriggers[6] = (Trigger 005)
set MyTriggers_MAX = 6
Спасибо... Но я не понял как сделать > set MyTriggers_MAX = 6
Там нет MAX, там только цифры... И вот это тоже не понятно set N = (случайное число от 1 до MyTriggers_MAX)
Я пытался разобраться, но как человек, который не особо разбирается в триггерах, у меня не получилось
Нету случайно примера на карте? Я так бы понял, скопировал бы
30
Или надо внестисти ясность и объяснить что слоги "МА" и "МА" вместе читаются как "МАМА" ?
Спасибо... Но я не понял как сделать > set MyTriggers_MAX = 6
26
не понял как сделать > set MyTriggers_MAX = 6
Так это не индекс массива, а отдельная переменная.
Одна переиенная - массив триггеров.
Другая переменная - целое число.
4
не понял как сделать > set MyTriggers_MAX = 6
Так это не индекс массива, а отдельная переменная.
Одна переиенная - массив триггеров.
Другая переменная - целое число.
Лично мне, яснее не стало.)
Можно сделать через случайное число.
Событие: Или создай таймер, или просто каждые 10 минут.
Условия:
Действие:
If(если всё условия истинны), Then (то делай это), Else(иначе, делай это):
Условие: Случайное число от 1 до 10 равно 1
То: Запустить тригер1.
Иначе:
If(если всё условия истинны), Then (то делай это), Else(иначе, делай это):
Условие: Случайное число от 1 до 10 равно 2
То: Запустить тригер2
Иначе:........
И так по кругу. Мой вариант конечно не так прост, кликать больше, но он в понятийном плане на мой взгляд проще.)))
18
Попробую с пояснением:
переменная - тип Триггер галочка что массив и размер на единицу больше количества триггеров название например MyTriggers,
переменая - тип целочисленная название MyTriggerMax
Событие при инитиализации карты
Установить переменная MyTriggers[1] = триггер из списка
Установить переменная MyTriggers[2] = другой триггер из списка

и так же с остальными которые будут запускатся
В конце установить переменная MyTriggersMax равно количеству установленых триггеров.
Переменной х(любая целочислення) ставим случайное число от 1 до MyTriggerMax
Запускаем триггер MyTriggers[х]
Установить переменную MyTriggers[x] равно MyTriggers[MyTriggerMax], то есть, на место триггера который больше не будет использоваться переносим триггер из конца списка, а максимальное количество списка уменьшим на 1, и тогда конец списка не випадет, так как случайное число от 1 до макс. количества.
Установить переменную MyTriggersMax равную (Арифметика) MyTriggersMax - 1
30
WorldEdition, где в твоём случае гарантия, что один триггер два раза подряд не выполнится?
Чтобы оставить комментарий, пожалуйста, войдите на сайт.