function Trig_ObjectDeath_Actions takes nothing returns nothing local group g=CreateGroup() local unit e BJDebugMsg("умер") if GetUnitTypeId(GetTriggerUnit())=='h002' then BJDebugMsg("умер1") set winr[1]=winr[1]+1 call DisplayTextToPlayer(GetLocalPlayer(),0.,0.,"|cFFFF0303Огненная Колесница|r УНИЧТОЖЕННА! Победила Первая Команда!") call DisplayTextToPlayer(GetLocalPlayer(),0.,0.,"Очки Первой Команды: " + I2S(winr[1])) call DisplayTextToPlayer(GetLocalPlayer(),0.,0.,"Очки Второй Команды: " + I2S(winr[2])) call GroupEnumUnitsInRect(g,bj_mapInitialPlayableArea,null) loop set e=FirstOfGroup(g) exitwhen e==null call PauseUnit(e,true) if GetLocalPlayer()==GetOwningPlayer(e) then call PanCameraToTimed(GetWidgetX(e),GetWidgetY(e),0) call ClearSelection() call SelectUnit(e,true) endif call SetUnitX(e,GetStartLocationX(GetPlayerStartLocation(GetOwningPlayer(e)))) call SetUnitY(e,GetStartLocationY(GetPlayerStartLocation(GetOwningPlayer(e)))) call GroupRemoveUnit(g,e) endloop call DestroyGroup(g) call TriggerExecute(gg_trg_ObjectSpawun) elseif GetUnitTypeId(GetTriggerUnit())=='h001' then set winr[2]=winr[2]+1 call DisplayTextToPlayer(GetLocalPlayer(),0.,0.,"|cFFFF0303Осадной Голем|r УНИЧТОЖЕН! Победила Вторая Команда!") call DisplayTextToPlayer(GetLocalPlayer(),0.,0.,"Очки Первой Команды: " + I2S(winr[1])) call DisplayTextToPlayer(GetLocalPlayer(),0.,0.,"Очки Второй Команды: " + I2S(winr[2])) call GroupEnumUnitsInRect(g,bj_mapInitialPlayableArea,null) loop set e=FirstOfGroup(g) exitwhen e==null call PauseUnit(e,true) if GetLocalPlayer()==GetOwningPlayer(e) then call PanCameraToTimed(GetWidgetX(e),GetWidgetY(e),0) call ClearSelection() call SelectUnit(e,true) endif call SetUnitX(e,GetStartLocationX(GetPlayerStartLocation(GetOwningPlayer(e)))) call SetUnitY(e,GetStartLocationY(GetPlayerStartLocation(GetOwningPlayer(e)))) call GroupRemoveUnit(g,e) endloop call DestroyGroup(g) call TriggerExecute(gg_trg_ObjectSpawun) endif endfunction
//=========================================================================== function InitTrig_ObjectDeath takes nothing returns nothing set gg_trg_ObjectDeath = CreateTrigger( ) call TriggerRegisterAnyUnitEventBJ( gg_trg_ObjectDeath, EVENT_PLAYER_UNIT_DEATH ) call TriggerAddAction( gg_trg_ObjectDeath, function Trig_ObjectDeath_Actions ) endfunction
Жутко извеняюсь за такой большой код,но! Триггер не срабатывает =\ я даже не знаю почему. Да есть немножко мусора в коде но суть не в это триггер не робит ОО Он то работет то не работает =\
^ кликабельно Archers Of The Island v1.8 - на стадии завершения
SirNikolas, угу когда как. Кароче я нашел ошибку я просто игрока не стал заносить в переменную. И тогда все работает. Я не знаю с чем это может быть связанно.
^ кликабельно Archers Of The Island v1.8 - на стадии завершения