XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
MupaMaX
Мой статус
offline
Опыт: 1,495
Активность:
Вот такой вопрос, если мне не нужно 0.01... и какие утечьки у TriggerSleepAction ?
И еще такое, для чего создавать 2 десятка Глобальных переменных, которые в итоге ( из-за случайности одинаковых имен ) очень хорошо конфликтовать, на большом проекте, а делать постоянно переменные типа Trig_my_frost_ability_timer_action, или Trig_my_frost_ability_damage, очень усложняют чтение... и когда у меня в способности около 9 переменных... это уж напряжно...
Прошу объяснить на фактах, чем хуже нативная функция... и какие утечки, что в ней такого плохого...
Старый 18.06.2009, 00:50
Hellfim
Новичок
offline
Опыт: 79,707
Активность:
MupaMaX, TriggerSleepAction отсчитывает реальное время, т.е. если ты нажал на паузу она не считается паузой для данной функции. Тогда уж юзай PolledWait2, НО! Именно PolledWait2, сам код этой функции посмотри на сайте.
Старый 18.06.2009, 00:57
ScorpioT1000
Работаем
offline
Опыт: отключен
нет утечек никаких, просто держит не короче чем 0.1 сек.
Цитата:
на большом проекте, а делать постоянно переменные типа Trig_my_frost_ability_timer_action, или Trig_my_frost_ability_damage, очень усложняют чтение..

в jngp существуют library и private, которые устраняют проблему, хотя лично я привык использовать списки переменных типа
type AbilityName_ParameterName1 = value
или
constant type AbilityName_GLOBALPARAMETERNAME1 = value
Старый 18.06.2009, 00:58
MupaMaX
Мой статус
offline
Опыт: 1,495
Активность:
Народ, а кто может показать пример лупа на таймере ? ну что б было 0.01 сек
Старый 20.06.2009, 16:56
SRes
1110101000
offline
Опыт: 9,997
Активность:
Код:
globals
   timer MyTimer
endglobals

function TimerFunc takes nothing returns nothing
   local integer i = 0
   loop
   exitwhen i > 5
   // o.o
   set i = i + 1
   endloop
endfunction

function MegaSpell takes nothing returns nothing
   call TimerStart( MyTimer,  0.01, true, function TimerFunc)
endfunction
Старый 20.06.2009, 17:17
MupaMaX
Мой статус
offline
Опыт: 1,495
Активность:
SRes не совсем правильно понял, мне нужен период 0.01 сек, и что б делать действия... как выключить таймер потом... я не понимаю... хотя догадываюсь...
Старый 21.06.2009, 02:18
SRes
1110101000
offline
Опыт: 9,997
Активность:
Я ответил на твой вопрос, запускается таймер с периодом 0.01 и сам по себе он периодический, т.е. пока не остановишь будет работать.
Старый 21.06.2009, 15:03
MupaMaX
Мой статус
offline
Опыт: 1,495
Активность:
а как его остановить ?
хотя примерно догадываюсь )))
Старый 22.06.2009, 00:42
Ranger21
I love beatiul days XD
offline
Опыт: 13,274
Активность:
Код:
globals
   timer MyTimer=CreateTimer()
endglobals

function TimerFunc takes nothing returns nothing
   local integer i = 0
   loop
   exitwhen i > 5
   set i = i + 1
   endloop

if blablabla==blobloblo then
call PauseTimer(MyTimer)
endif
endfunction

function MegaSpell takes nothing returns nothing
   call TimerStart( MyTimer,  0.01, true, function TimerFunc)
endfunction
Старый 22.06.2009, 00:50
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 02:29.