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

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

Ответ
 
Windrunner
Верь мне!
offline
Опыт: 4,565
Активность:
Триггер должен брать данные из таблицы 1 раз.
вот код
function move_text takes nothing returns nothing
local unit u
local texttag t
set t = LoadTextTagHandle(udg_hash,1,2)
set u = LoadUnitHandle(udg_hash,1,3)
call SetTextTagPosUnit(t, u, 0)
endfunction

function Actions takes nothing returns nothing
    local trigger tr = CreateTrigger()
    local unit u
    local texttag t
    local timer v = CreateTimer()
    set udg_hash = InitHashtable()
    set u = GetTriggerUnit()
    call CreateTextTagUnitBJ( GetUnitName(GetTriggerUnit()), u, 0, 10, 100, 100, 100, 0 )
    set t = bj_lastCreatedTextTag
    call TriggerRegisterTimerEventPeriodic( tr, 0.05 )
    call TriggerAddAction( tr, function move_text)
    call SaveTextTagHandle(udg_hash,1,2,t)
    call SaveUnitHandle(udg_hash,1,3,u)
    call TimerStart(v,.01,true,function move_text)
    call TriggerSleepAction(4.)
    call TimerStart(v,.01,false,function move_text)
    loop
    exitwhen udg_i == 40
    call DestroyTextTag(t)
    set t = null
    endloop
    call DestroyTimer(v)
    set v = null
endfunction

function InitTrig_vvod takes nothing returns nothing
    local trigger t = CreateTrigger(  )
    call TriggerRegisterUnitInRangeSimple( t, 200.00, gg_unit_hkni_0000 )
    call TriggerAddAction( t, function Actions )
    set t = null
endfunction
В созданном тригере получается что каждые 0.05 сек берутся данные из таблицы и заносятся в переменные и делаются действия
Но мне нужно как то сделать так чтобы новый созданный тригер 1 раз брал данные из таблиц и все как ето сделать?
Поясню чтобы после 1-ого запуска вместо
unction move_text takes nothing returns nothing
local unit u
local texttag t
set t = LoadTextTagHandle(udg_hash,1,2)
set u = LoadUnitHandle(udg_hash,1,3)
call SetTextTagPosUnit(t, u, 0)
endfunction
стало
local unit u
local texttag t
call SetTextTagPosUnit(t, u, 0)
Заранее спасибо
[+] замечание от Hellfim: Название темы не отражает суть вопроса.
Старый 07.08.2009, 20:59
Ответ

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

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

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

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



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