private function Knockback takes nothing returns nothing
local unit u = GetEnumUnit()
local real angle = 57.2958 * Atan2(GetUnitY(u) - GetUnitY(Data(TempStruct).caster), GetUnitX(u) - GetUnitX(Data(TempStruct).caster))
local real facing = GetUnitFacing(Data(TempStruct).caster)
if KBS_IsUnitSliding(u) == false and Filters_Enum() then
call GroupAddUnit(gr, u)
if ONLY_FRONT == false and angle >= facing + 25. and angle >= facing - 25. then
call KBS_BeginCommon(u,DISTANCE,SPEED,angle)
endif
if angle <= facing + 25. and angle >= facing then
set angle = angle + 25.
call KBS_BeginCommon(u,DISTANCE,SPEED,angle)
elseif angle >= facing - 25. and angle <= facing then
set angle = angle - 25.
call KBS_BeginCommon(u,DISTANCE,SPEED,angle)
endif
endif
endfunction
function StartFunc takes nothing returns nothing
local trigger t = CreateTrigger()
local integer i = 1
local integer allowboot = 1
local real x
local real y
local player p
call StartSound(gg_snd_ALICEBeep)
call DisplayTimedTextToPlayer(GetLocalPlayer(),0.0,0.0,10.0,"Initializing...")
call TriggerSleepAction(0.)
call TriggerRegisterPlayerUnitEvent(gg_trg_NVG, p, EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
call SetUnitTimeScalePercent( gg_unit_h00F_0031, 0.00 )
call SetUnitTimeScalePercent( gg_unit_h00F_0029, 0.00 )
call SetUnitTimeScalePercent( gg_unit_h00G_0033, 0.00 )
call SetUnitTimeScalePercent( gg_unit_h00G_0038, 0.00 )
call SetUnitTimeScalePercent( gg_unit_h00G_0037, 0.00 )
set t = null
set i=1
endfunction
function NVGConditions takes nothing returns boolean
return GetSpellAbilityId()==039;A007039;
endfunction
function NVG takes nothing returns nothing
local unit u = GetTriggerUnit()
local player p = GetOwningPlayer(u)
local integer i = GetConvertedPlayerId(p)
set udg_NightVision<i> = not(udg_NightVision<i>)
call NightVision(p,udg_NightVision<i>)
set bj_meleeNearestMineDist = GetUnitX(u)
set bj_lastTransmissionDuration = GetUnitY(u)
set u = null
endfunction
//===========================================================================
function InitTrig_NVG takes nothing returns nothing
set gg_trg_NVG = CreateTrigger()
call TriggerAddCondition(gg_trg_NVG,Condition(function NVGConditions))
call TriggerAddAction(gg_trg_NVG,function NVG)
endfunction</i></i></i>