Столкнулся со специфической ситуацией: при добавлении триггера перестаёт работать ряд других триггеров. Между собой они не взаимосвязаны. Триггеры отключающиеся завязаны на переменных (локальных или как правильно называются, когда переменной устанавливаются через область?).
При удалении этого триггера все вновь работает.
В чём причина?

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

Дело именно в количестве триггеров а не в их начинки и назначении, создавать триггеры динамически по мере надобности в гуях нельзя, так что переходите на jass.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
2
48
7 лет назад
2
Сталкивался с такой же ситуацией, помогла оптимизация переменных (занес все в массив). По триггерам не знаю, но стараюсь триггеры делать общие (одно условия для разных случаев, к примеру таймера).
0
32
7 лет назад
0
Есть лимит операций, а так же кривое гуи.
Вы превысили лимит операций напихав 100500 триггеров которые, функция инициализации которых уходит в обрыв потока, т.к превышает лимит операций потока.
Выход, подумывать о переходе на jass или более правильно использовать триггеры, не создавая овер 100500 штук.
0
12
7 лет назад
0
molot39, quq_CCCP:
Есть лимит операций, а так же кривое гуи.
Вы превысили лимит операций напихав 100500 триггеров которые, функция инициализации которых уходит в обрыв потока, т.к превышает лимит операций потока.
Выход, подумывать о переходе на jass или более правильно использовать триггеры, не создавая овер 100500 штук.
Снизить общее число триггеров?
"функция инициализации которых уходит в обрыв потока"
а можно по-русски, для ламера, буду благодарен.
Данные триггеры основаны основаны на условии "юнит атакован", в этом причина? Поможет ли изменение на условие юнит атакует?
0
32
7 лет назад
0
GRESHNIK1, все ваши красивые гуи - переводятся в jass интерпретатором в момент сохранения карты, все триггеры - это такие обьекты, как к примеру юниты которых вы видите, триггеры нужно сначала создать, потом добавить в них события и дейсвия, а их овер дофига.
Для инициализации гуи триггеров используется отдельная функция InitCustomTriggers( ), в нее записываются все триггеры которые нужно создать, перед стартом игры, в момент когда загрузка почти завершилась. В jass есть лимит операций, когда в одной функции очень много действий, которые превышают этот лимит, функция считается зависшей, и движок перестает её выполнять. Вот почему триггеры перестали работать - да их просто не создали.
Потом вопрос зачем вам столько триггеров?
0
12
7 лет назад
0
Ну, в целом триггеров очень много потому что в карте охватывается период с кампании Рока до начала ВОВ классик. Море квестов для 9 фракций, сюжетно связанных. Различные системы, триггерные способности и прочее...
Прошу подтвердить мое понимание:
В качестве решения получится ли использовать такую конструкцию:
Событие:
Юнит атакован
Условие:-
Действие:
Если атакованный юнит типа Х то ..... иначе если атакованный юнит У то ... - и так пока все объекты не будут перечислены?

Таким громоздким триггером заменить 10-к простых, будет ли эффект?
Я недоконца уверен, что понял суть - проблема в начинке или количестве триггеров?
quq_CCCP, прошу немного уделить внимания , сам всегда ввел сюжетную часть и юнитов. Триггерить пришлось с уходом омновного триггерщика.
1
32
7 лет назад
1
Дело именно в количестве триггеров а не в их начинки и назначении, создавать триггеры динамически по мере надобности в гуях нельзя, так что переходите на jass.
Принятый ответ
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.