почему пишет необъявленной переменной
Code
function Trig_q_Func004C takes nothing returns boolean
if ( not ( GetUnitTypeId(GetConstructedStructure()) == 'hwtw' ) ) then
return false
endif
return true
endfunction
function Trig_q_Func005Func002C takes nothing returns boolean
if ( not ( IsUnitInGroup(GetSpellTargetUnit(), otred) == true ) ) then
return false
endif
return true
endfunction
function Trig_q_Func005C takes nothing returns boolean
if ( not ( GetSpellAbilityId() == 'A000' ) ) then
return false
endif
return true
endfunction
function Trig_q_Func006Func002Func001C takes nothing returns boolean
if ( not ( GetUnitTypeId(GetDyingUnit()) == 'hwtw' ) ) then
return false
endif
return true
endfunction
function Trig_q_Func006Func002C takes nothing returns boolean
if ( not ( IsUnitInGroup(GetDyingUnit(), otred) == true ) ) then
return false
endif
return true
endfunction
function Trig_q_Func006Func003C takes nothing returns boolean
if ( ( IsUnitInGroup(GetDyingUnit(), otred) == true ) ) then
return true
endif
if ( ( GetUnitTypeId(GetDyingUnit()) == 'hwtw' ) ) then
return true
endif
return false
endfunction
function Trig_q_Func006C takes nothing returns boolean
if ( not Trig_q_Func006Func003C() ) then
return false
endif
return true
endfunction
function Trig_q_Func007Func004A takes nothing returns nothing
call AddLightningLoc( "CLPB", GetUnitLoc(edeniza), GetUnitLoc(GetEnumUnit()) )
// создать переменую молнии molnie
local lightning molnie
set molnie = GetLastCreatedLightningBJ()
// создать переменую боевая еденица edeniza2
local unit edeniza2
set edeniza2 = GetEnumUnit()
call SetUnitManaBJ( edeniza2, ( GetUnitStateSwap(UNIT_STATE_MANA, edeniza2) + 1 ) )
call SetUnitManaBJ( edeniza, ( GetUnitStateSwap(UNIT_STATE_MANA, edeniza) - 1 ) )
call TriggerSleepAction( 0.50 )
call DestroyLightningBJ( molnie )
// удалить переменую молнии molnie
set molnie = null
// удалить переменую боевой еденицы edeniza2
set edeniza2 = null
endfunction
function Trig_q_Func007C takes nothing returns boolean
if ( not ( CountUnitsInGroup(otred) > 0 ) ) then
return false
endif
if ( not ( GetUnitStateSwap(UNIT_STATE_MANA, edeniza) > 0.00 ) ) then
return false
endif
return true
endfunction
function Trig_q_Actions takes nothing returns nothing
if ( Trig_q_Func004C() ) then
// создать переменую отряд otred
local group otred
// создать переменую боевая еденица edeniza
local unit edeniza
set udg_edeniza = GetConstructedStructure()
else
call DoNothing( )
endif
if ( Trig_q_Func005C() ) then
if ( Trig_q_Func005Func002C() ) then
call GroupRemoveUnitSimple( GetSpellTargetUnit(), otred )
else
call GroupAddUnitSimple( GetSpellTargetUnit(), otred )
endif
else
call DoNothing( )
endif
if ( Trig_q_Func006C() ) then
if ( Trig_q_Func006Func002C() ) then
call GroupRemoveUnitSimple( GetDyingUnit(), otred )
else
if ( Trig_q_Func006Func002Func001C() ) then
call GroupClear( otred )
// удалить переменую отряда otred
set otred = null
// удалить переменую еденицы edeniza
set edeniza = null
return
else
call DoNothing( )
endif
endif
else
call DoNothing( )
endif
if ( Trig_q_Func007C() ) then
call ForGroupBJ( otred, function Trig_q_Func007Func004A )
else
call DoNothing( )
endif
endfunction
//===========================================================================
function InitTrig_q takes nothing returns nothing
set gg_trg_q = CreateTrigger( )
call TriggerRegisterTimerEventPeriodic( gg_trg_q, 1.00 )
call TriggerRegisterAnyUnitEventBJ( gg_trg_q, EVENT_PLAYER_UNIT_SPELL_CAST )
call TriggerRegisterAnyUnitEventBJ( gg_trg_q, EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterAnyUnitEventBJ( gg_trg_q, EVENT_PLAYER_UNIT_CONSTRUCT_FINISH )
call TriggerAddAction( gg_trg_q, function Trig_q_Actions )
endfunction