Wait
Как можно пользоваться таймером вместо вейтов без хэша?

Лучший ответ:
Юзать структуры, свои собственные системы хранения данных.
Если вы только решили слезть с гуи+ вейты на jass, то вам рано думать о таком.
Таймер + хештаблицы в помощь, в статьях есть много информации на эту тему.
Что вам еще непонятно?
ImbaStyle, что есть TriggerSleepActions и timer вам известно?



Просмотров: 195

XGM Bot #1 - 8 месяцев назад 0
Похожие вопросы:

» ответ
Эта сволочь продолжает работать при паузах
Разве? :hmm: Часто проверял эту ерунду на работу в паузах, положительный результат не давало.
Вейт плох своей неточностью, могут быть отклонения по несколько миллисек.
Вейт 0.00 сек = вейту 0.10 сек, при этом неточности не будет, он будет ровно 0.1
Вейт нельзя запаузить как таймер или остановить, вейт паузит действия триггера, что идут после него.
Использовать вейт или нет - всегда зависит от ситуации. В основном его удобно юзать, когда не будет проблемы обращения к объекту вызвавшему событие.

Например юнит произнёс спелл
убрать эффект [номер юнита или игрока]
Создать спецэффект на юните
присвоить эффект [номер юнита или игрока] = этот эффект
вейт 2.5 сек
убрать эффект [номер юнита или игрока]
  • создавать определённый эффект на юните на время...

Или во время махинаций с предметами, скиллами, морфами и т.п. могут случаться баги из-за мгновенной обработки и часто там можно влепить вейт 0.00 сек, который не принесёт проблем, а пользу принесёт.
» ответ
в четвёртый аргумент надо вписывать функцию которую ты хочешь вызвать
функция должна быть takes nothing returns nothing
таймер не замена вейта
просто многие люди пытаются заменить таймер вейтом
и вопрос закрыть не забудь
» ответ
Сама функция TriggerSleepAction (Wait) не вызывает утечек, но багнута и при использовании в качестве задержек может способствовать утечкам, поэтому никаких вейтов в спеллах и всяких респаунах - только таймеры, вейты нужны для синхронизации данных и роликов и точка!
» ответ
Steal nerves:
переходишь на jass? немного посмотри примеры и почитай статьи. набери в поиск таймеры + хэш-таблица и прочее
» раскрыть
На триггерах это будет глупо и неудобно. Нужно создать или хотя бы иметь существующий таймер, потом запустить в определенный момент. Но для начала нужно сохранить данные, с которыми будешь взаимодействовать (например, юнит). К примеру дали пассивный скилл, через 5 минут удалил.
есть несколько способов, это запускать таймер. А другим триггером отлавливать с помощью события завершения времени таймера. Или вызывать напрямую функцию.
используется нативка
native TimerStart takes timer whichTimer, real timeout, boolean periodic, code handlerFunc returns nothing
или это. здесь функцию не вызывают, а просто запускают таймер. Завершение таймера отлавливают с помощью другого триггера. Очень неудобно
function StartTimerBJ takes timer t, boolean periodic, real timeout returns timer
    set bj_lastStartedTimer = t
    call TimerStart(t, timeout, periodic, null)
    return bj_lastStartedTimer
endfunction

quq_CCCP #2 - 8 месяцев назад 0

Юзать структуры, свои собственные системы хранения данных.
Если вы только решили слезть с гуи+ вейты на jass, то вам рано думать о таком.
Таймер + хештаблицы в помощь, в статьях есть много информации на эту тему.
Что вам еще непонятно?
ImbaStyle, что есть TriggerSleepActions и timer вам известно?
ImbaStyle #3 - 8 месяцев назад 0
quq_CCCP:
Юзать структуры, свои собственные системы хранения данных.
Если вы только решили слезть с гуи+ вейты на jass, то вам рано думать о таком.
Таймер + хештаблицы в помощь, в статьях есть много информации на эту тему.
Что вам еще непонятно?
ImbaStyle, что есть TriggerSleepActions и timer вам известно?
"Без хэша", про структуры понял, только учусь как их правильно аттачить к юнитам, думал есть еще какие-либо способы
quq_CCCP #4 - 8 месяцев назад 0
ImbaStyle, зачем? Написать примитивный спелл с задержкой? Для этого хватит хештаблицы, ненужны вам никакие аттачи и прочее, ничего это вам не даст. Пишите пока как умеете, начинайте с простого.
ImbaStyle #5 - 8 месяцев назад 0
quq_CCCP:
ImbaStyle, зачем? Написать примитивный спелл с задержкой? Для этого хватит хештаблицы, ненужны вам никакие аттачи и прочее, ничего это вам не даст. Пишите пока как умеете, начинайте с простого.
Да нет, это все нужно дл разных систем, типо систем проверки бафов на каждом юните и т.д.