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

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

Ответ
 
DioD

offline
Опыт: 45,134
Активность:
Объединение тригеров
Значит так, вопрос очень простой, как правильно объединить в один тригер, текстовый я имею ввиду, следующие компоненты:

function Trig_Get_Copy_Func002A takes nothing returns nothing
call TriggerRegisterDeathEvent( gg_trg_Revive, GetEnumDestructable() )
endfunction

function Trig_Get_Copy_Actions takes nothing returns nothing
call EnumDestructablesInRectAll( GetPlayableMapRect(), function Trig_Get_Copy_Func002A )
endfunction

function InitTrig_Get_Copy takes nothing returns nothing
set gg_trg_Get_Copy = CreateTrigger( )
call TriggerAddAction( gg_trg_Get_Copy, function Trig_Get_Copy_Actions )
endfunction

function Trig_Revive_Copy_Actions takes nothing returns nothing
local destructable fun=GetDyingDestructable()
call TriggerSleepAction( 5.00 )
call DestructableRestoreLife(fun, GetDestructableMaxLife(fun), true )
set fun=null
endfunction

function InitTrig_Revive_Copy takes nothing returns nothing
set gg_trg_Revive_Copy = CreateTrigger( )
call TriggerAddAction( gg_trg_Revive_Copy, function Trig_Revive_Copy_Actions )
endfunction

Но сделать это требуется БЕЗ глобалок вовсе, проблема возникает только в одном месте :

call TriggerRegisterDeathEvent(gg_trg_Revive, GetEnumDestructable() )

эта переменная должна возращать EVENT но в её отсутствие я получаю handle, может кто-нибудь предложит решение этой проблемы?
Старый 27.05.2006, 20:47
Celebrate

offline
Опыт: 849
Активность:
DioD ты забыл написать, что триггер дожен делать.
Нифига не понятно.
Старый 28.05.2006, 09:59
DioD

offline
Опыт: 45,134
Активность:
Если ты не понял что он делает то помочь мне не сможешь, так что писать это безполезно.
Тригер помечает все деревья на карте, другим тригером, который эти деревья воскрешает.
Старый 28.05.2006, 12:46
Celebrate

offline
Опыт: 849
Активность:
DioD если я не понял, что делает триггер с тупыми названиями функций, то это значит, что я не понял что делает триггер с тупыми названиями функций. Я твои мысли читать не умею, и лишний раз глаза ломать не буду.
Старый 28.05.2006, 14:47
Toadcop

offline
Опыт: 54,313
Активность:
DioD короче если проблема в глобальном триггере то это не проблема =) короче не пойму сложности задачи...

ЗЫ вот это флуд !
Старый 28.05.2006, 15:00
DioD

offline
Опыт: 45,134
Активность:
Кстати, делал эксперимент с РБ, возращал юнитов как деструктеблы и выставлял им здоровье, не работает! во как.
Если нету сложности, так помоги, дело в том что функция EnumDestructablesInRectAll
требует другую функцию, а без глобалок, другая функция считается handle и всё зависает на этом.
Старый 28.05.2006, 15:09
Toadcop

offline
Опыт: 54,313
Активность:
Цитата:
возращал юнитов как деструктеблы и выставлял им здоровье, не работает! во как.
- ООООООО !!! ты нафиг следущий Сасодемон !!! ... <_< и что я давно уже такой фигней страдал... и это ничего не даст так как нет совпадения типов !


Цитата:
Если нету сложности, так помоги, дело в том что функция EnumDestructablesInRectAll
требует другую функцию, а без глобалок, другая функция считается handle и всё зависает на этом.
-О_0 ? короче вообще проблемы с синтаксом алгоритмов каждый должен сам решать... и вообще проблемы на открытом месте ! если я чего то не понял то не тихарся и выложи полный пример !
Старый 28.05.2006, 15:17
Ответ

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

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

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

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



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