Мой триггер, который должен запоминать, скажем так "перезарядку способности", На вид всё выглядит работоспособным, только вот условия никак не хотят отлавливать истекший таймер-массив. Я сделал событие "каждую 0.1 сек", проверять "оставшиеся" или "истекшее" время таймера;
Всё работало не гладко, условие истечения\оставления ни в какую не хочет отлавливать таймер из массива. Индекс я определил верно, он соотнесён с обычным значением ю.
- Как мне отследить истекший таймер в массиве?
'
'
'
'
'
'
P.s.вот пруфы проблемного триггера если надо, цветными выделено Событие, Проблемное условие, Быстрая проверка что триггер сработал (возможен случай, если визуально не будет видно действие этого триггера)

Принятый ответ

A.W.K.:
событие кстати такое есть таймер истекает, а вот условия я не найду и как раз ставится эта переменная с индексом
Есть, Как оно называется? Я такого никак не найду. Есть только "Таймер истекает", но в этом событии нужно указывать КАКОЙ таймер истекает.
а больше и нет, дальше нужно создавать таймеры, и уже вписывать эти таймеры в событие. Я не триггерщик я обычный человек, один из знающих людей тебе уже отвечали выше
0
19
7 лет назад
0
Похожие вопросы:

ответ
Ige, да о чем вы говорите. ИМХО, самое оптимальное предложение содержится в 3 комментарии.
И еще тут много лишних функций. Да и просто первый признак jass - отсутствие бж за исключением дебага( хоть мои слова кажется трепом и выпендрежем, но без чистого скрипта на нативах.... )
ответ
Так и есть, а почему его убрал. Я писал про запуск, но не про паузу/остановку. И в принципе всё.
ответ
глобальный массив не нужен. сохраняй группу в хэш-таблицу на хэндл героя, потом загружай ее когда надо. у каждого героя будет своя группа
вот пример, молот бурь съедает юнита а удар грома ставит всех юнитов обратно
ответ
XGM Bot:
Похожие вопросы:

ответ
оказывается, во втором триггере я использовал ту же переменную индекса, что и в первом. Melissa и naxim , спасибо вам =)
ответ
Всё, разобрался, вопрос снимаю)
ответ
Tapper, не ,не помогает.
Если ты конечно про
//! nocjass

//! endnocjass
В общем, такая проблема возникает только на JNGP Requiem.
ответ
Сейчас попробую integer SHV_N = 0 . Это единственное чо я смог предположить
ответ
Проблема возникает также при переносе вот этого вот в инициализацию триггера тест.
Но при этом если вместо строки вроде "12345" использовать, например, GetAbilityName('Aloc') - то все работает.
Это какой-то баг со строками?
Еще у меня почему-то происходит фантомный клик по центру карты в начале игры
Вобщем не стоит юзать имена функций напрямую в экзекуте и вообще таймеры лучше


0
32
7 лет назад
0
Что за бред, какое сравнение времени? Ч с такими познаниями Нафиг делать в редакторе триггеров.
событие, таймер истек. Условие последний истекший таймер = таймер с иедексоМ N где N итератор цикла ы котором идет проверка.
0
12
7 лет назад
Отредактирован A.W.K.
0
quq_CCCP, где я тебе найду "Событие: таймер истек"? Если бы он там был, я бы сюда не писал. Прописать событие таймера можно только к КОНКРЕТНОЙ переменной.
0
17
7 лет назад
0
A.W.K.:
quq_CCCP, где я тебе найду "Событие: таймер истек"? Если бы он там был, я бы сюда не писал. Прописать событие таймера можно только к КОНКРЕТНОЙ переменной.
а ты создавал переменную с галочкой массив?
0
12
7 лет назад
Отредактирован A.W.K.
0
bazeba:
A.W.K.:
quq_CCCP, где я тебе найду "Событие: таймер истек"? Если бы он там был, я бы сюда не писал. Прописать событие таймера можно только к КОНКРЕТНОЙ переменной.
а ты создавал переменную с галочкой массив?
Да, я думал это и так понятно. В общем, событие указывает напрямую на переменную.
У меня с таймером-массивом не работает условие "истёкшее время таймера"
0
17
7 лет назад
Отредактирован bazeba
0
A.W.K.:
bazeba:
A.W.K.:
quq_CCCP, где я тебе найду "Событие: таймер истек"? Если бы он там был, я бы сюда не писал. Прописать событие таймера можно только к КОНКРЕТНОЙ переменной.
а ты создавал переменную с галочкой массив?
Да, я думал это и так понятно. В общем, событие указывает напрямую на переменную.
У меня с таймером-массивом не работает условие "истёкшее время таймера"
событие кстати такое есть таймер истекает, а вот условия я не найду и как раз ставится эта переменная с индексом
0
12
7 лет назад
Отредактирован A.W.K.
0
событие кстати такое есть таймер истекает, а вот условия я не найду и как раз ставится эта переменная с индексом
Есть, Как оно называется? Я такого никак не найду. Есть только "Таймер истекает", но в этом событии нужно указывать КАКОЙ таймер истекает.
2
17
7 лет назад
2
A.W.K.:
событие кстати такое есть таймер истекает, а вот условия я не найду и как раз ставится эта переменная с индексом
Есть, Как оно называется? Я такого никак не найду. Есть только "Таймер истекает", но в этом событии нужно указывать КАКОЙ таймер истекает.
а больше и нет, дальше нужно создавать таймеры, и уже вписывать эти таймеры в событие. Я не триггерщик я обычный человек, один из знающих людей тебе уже отвечали выше
Принятый ответ
0
27
7 лет назад
Отредактирован MpW
0
В триггерах такой есть. Либо заранее создаете или через действие. В гуи неудобно. Его можно найти в действиях, в разделе триггер, там добавить событие к триггеру, что какой-то таймер истек. Ты будешь к каждому таймеру добавлять событие. Не лучше ли использовать хэш, и немного jass получить? Соглашайся, это на триггере неудобно
0
12
7 лет назад
0
bazeba:
Спасибо что отозвался)
Steal nerves:
В триггерах такой есть. Его можно найти в действиях, в разделе триггер, там добавить событие к триггеру, что какой-то таймер истек. Не лучше ли использовать хэш, и немного jass получить? Соглашайся, это на триггере неудобно
Я трудностей не боюсь. Добавить событие? Мне лишние события никак не помогут, мне скорее нужно починить "условие".
Всё я понял. Я нашел другой полностью без использования таймеров.
0
27
7 лет назад
Отредактирован MpW
0
Условие есть такое - нужно сравнивать таймеры. Переменная [] = Истекший таймер.
код
Первый триггер
Создаём таймер
Set k = k +1 (это будет типа счётчиком, поможет узнать до сколько циклом пробегатт)
Set T[k] = созданный таймер (засовываем в массив код k)
Вешаем на второй триггер событие, что таймер истек
Запускаем таймер
Второй триггер
Цикл A от 1 до k 
If T[A] = Истекший таймер then //вот ваше условие
// Делать действия с номером А
Endif
A.W.K., можно без событий, но там вызывают функции. Это нужно на jass переходить
Оставшее время, истекшее время - реальные числа, и нам нужно реальные значения сравнивать. Но это не лучшая идея
0
32
7 лет назад
0
Интересно что пытается изобрести автор?
0
16
7 лет назад
0
в 2010 подобное делал для sfwars на гуи. пришел к выводу, что бесполезно.
либо создавай вручную каждый отдельно (GUI), либо бери яйца в руки и переходи на полноценный JASS, где всё это более, чем возможно и просто
1
28
7 лет назад
Отредактирован nvc123
1
нафига вообще массив таймеров?
типо в карте мало потоков/объектов/лагов, надо ещё навернуть?
0
16
7 лет назад
0
nvc123:
нафига вообще массив таймеров?
ну вот тебе гуи-кейс - таймеры респавна героев каждого игрока. Чтобы 10 раз не копировать, хотелось просто узнать, какой именно из таймеров истек, и соответвтующий индекс героя воскресить. Но - херушки. Поэтому 10 копий.
0
28
7 лет назад
Отредактирован nvc123
0
DracoL1ch, имхо лучше через 1 таймер + мультибоард/лидербоард
а если так сильно нужны стандартные окошки таймеров то можно атачить индекс героя к таймеру через эксплоит
ну а у триггера соответственно 10 событий по 1 на каждый таймер
0
16
7 лет назад
0
если уж жарить, то поставленный таск через GetHandle решал бы - таймеры создавались бы подряд, просто отнял хендл сработавшего от базы и получил индекс. А когда уже умеешь что-то выше гуи, таких задач попросту не появляется.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.