Добавлен Parom_Harona
Прошу, кто может помочь сделать обратный отсчет начиная от 25 секунды и до 1. После применения способности, что бы шел таймер и цифра с отсчетом появлялась на екране
function Trig_Timer_for_ability_Actions takes nothing returns nothing
local timer LocTimer1 = CreateTimer( )
local integer HandleID = GetHandleId( LocTimer1 )
call SaveUnitHandle( GameHashTable, HandleID, StringHash( "Hero" ), GetTriggerUnit( ) )
call SaveBoolean( GameHashTable, GetHandleId( GetTriggerUnit( ) ), StringHash( "Timer_for_ability" ), true )
call TimerStart( LocTimer1, .01, true, function Timer_for_ability )
call DestroyTimer( LocTimer1 )
set LocTimer1 = null
local timer LocTimer1 = CreateTimer( )
local integer HandleID = GetHandleId( LocTimer1 )
call SaveUnitHandle( GameHashTable, HandleID, StringHash( "Hero" ), GetTriggerUnit( ) )
call SaveBoolean( GameHashTable, GetHandleId( GetTriggerUnit( ) ), StringHash( "Timer_for_ability" ), true )
call TimerStart( LocTimer1, .01, true, function Timer_for_ability )
call DestroyTimer( LocTimer1 )
set LocTimer1 = null
До конца не могу понять, как запустить обратный отсчет, только первые хаши на джассе , любой пример с отсчетом до каста или конца абилки, кто может? Помогите!
Принятый ответ
Ваша ошибка
call TimerStart( LocTimer1, .01, true, function Timer_for_ability ) //Вы запускаете таймер
call DestroyTimer( LocTimer1 ) //И тутже его уничтожаете, т.е. останавливаете
Используйте DestroyTimer когда он вам больше не будет нужен, т.е. когда он истёк, и действия совершились (Тогда же и чистите ХТ)
Также не оч понимаю для чего эта строка:
Также не оч понимаю для чего эта строка:
call SaveBoolean( GameHashTable, GetHandleId( GetTriggerUnit( ) ), StringHash( "Timer_for_ability" ), true )
Но в целом этот кусок кода должен работать
Сек, сделаю пример на коленке
Сек, сделаю пример на коленке
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Сохраняешь инт со значением 25. Таймер запускаешь с периодом в одну секунду, каждую итерацию перезаписываешь инт как: инт - 1. Проверяем условием, что инт > 1, если нет, то останавливаем таймер, удаляем, чистим хэш, если да, то твои действия. Например вывод этого инта на экран.
Также не оч понимаю для чего эта строка:
Сек, сделаю пример на коленке
Отредактирован Parom_Harona