В теории это происходит так: юнит произносит заклинание, и время останавливается (на всей карте). Что б замирало всё (ну или хотя бы юниты и здания) кроме самого кастера. Возможно ли такое? Если да, то какие условия/действия надо задавать?

Боевая единица => Pause/Unpause Units
Боевая единица => Pause/Unpause кастера
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
21
Вообще если не бояться последствий паузы это тупо делается так:
Юнит применяет способность
Условие - применяемая способность равно НАШ ТАЙМСТОП
Действие - каждые 0.5 секунды (православно таймером, но если нет, то можно на гуи так косо, как хочется) - паузить всех, кроме нашего юнита - его офк в переменную, чтобы запомнить
и так, пока спелл не кончится, в его конце всех анпаузить
и муи без всяких извратов и бла-бла-бла
если во время таймстопа одного таки как-то скастуется другой, они подействуют практически независимо, ну разве что на какую-то долю секунды один таймстоп после завершения распаузит всех из второго, но это будет практически незаметно и можно сократить период, чтобы еще меньше оказалась эта распауза, но это уже нерационально имхо
/
распаузы ненужной можно вообще избежать, и даже без сильного снижения производительности, мной бы тогда хэшами на напаузенных сохранялись значения, сколько их раз напаузили при стартовых кастах таймстопов... но это уже замута имхо совсем мало себя оправдывающая
а вообще всем vignette.wikia.nocookie.net/jjba/images/a/af/TheWorld_doom.png/r... =)
26
ClotPh:
А вдруг кто-то после смерти создает юнита, или какие-то независимые триггеры на спавн юнитов... да дохрена чего может быть
Так ведь триггер будешь не в чужой карте делать, учтёшь все триггерные тонкости. Например, сделаешь параллельно второй триггер, который будет во время действия способности ставить на паузу юнитов, которые вошли в игровую область, а также паузить все таймеры, кроме таймера окончания действия способности.
21
8gabriel8, ну я всегда стараюсь сделать максимально уникальный самодостаточный вариант, подходящий для любых случаев и особенностей
вот см. выше как мной предложено
а если все эти "тонкости" учитывать и под них подстраиваться для каждого спелла, то это иногда может в разы неудобнее быть
26
ClotPh:
вот см. выше как мной предложено
Шедевр) Таймеры не паузятся, новые юниты полсекунды имеют на чтение любых триггерных способностей.
21
в 95% случаев этих юнитов не будет вообще, а в 99% случаев из тех, когда они будут, они просто не успеют за полсекунды че-то вменяемое сделать
ну я и говорю ниче не мешает сократить период хоть до 0.04 секунды если jass таймером периодическим
просто производительность... хотя учитывая, что это таймстоп и мало че другое будет - ниче страшного скорее всего
и такой спелл любой изи себе импортировать сможет
26
ClotPh, что тебя не устраивает в событии, когда новый юнит появляется в игровой области?
Явно экономичнее, чем периодический таймер с паузой.
21
8gabriel8, экономичнее, да, но надо отдельный триггер тогда создавать еще и/или включать/выключать
9
Условия:
Боевая единица - (Кастер) завершает применение способности
Сравнения:
Сравнение - Способность ("Остановка времени") равно да
Действие:
Пауза всех юнитов (Pause all units)
Продолжить (Кастер) (Unpause "Кастер")
Вот и всё,ничего сложного :3
Анти-баги типа "А что если какой-то новый юнит появится"?
Можно решить так (Каждую) Every 0.01 seconds (Секунду) Pause all units (Пауза всех юнитов)
(Unpause "caster") продолжить кастер,по идеи это так должно быть
21
Misha34, а я чо пишу? мой вариант тем и хорош, что любому идиоту понятен
только нахрена 0.01-то, см. выше, это упорото так часто
26
ClotPh:
надо отдельный триггер тогда создавать еще и/или включать/выключать
Вот проблемы-то! И мне ещё твердят, чтобы с GUI на JASS переходил, где гораздо сложнее ролики создавать, а теперь ещё и триггеры включать/выключать.
21
8gabriel8, короче, всегда есть варианты потупее и менее оптимальные иногда, но значительно проще в реализации, что любой идиот сможет
или более эффективные в результате, но не такие простые для понимания и реализации
каждый пользует то, что ему больше подходит
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.