à bạn giải thích dùm mấy cái lệnh này dùm mình nha mò mẫm ko nổi
+1
function Trig_Follow_Move_Func001Func001C takes nothing returns boolean
if ( not ( CountUnitsInGroup(GetUnitsOfPlayerAndTypeId(GetEnumPlayer(), 'ewsp')) >= 2 ) ) then
return false
endif
return true
endfunction
function Trig_Follow_Move_Func001A takes nothing returns nothing
if ( Trig_Follow_Move_Func001Func001C() ) then
call RemoveUnit( GroupPickRandomUnit(GetUnitsOfPlayerAndTypeId(GetEnumPlayer(), 'ewsp')) )
else
endif
endfunction
function Trig_Follow_Move_Func002001002 takes nothing returns boolean
return ( GetUnitTypeId(GetFilterUnit()) == 'H02D' )
endfunction
function Trig_Follow_Move_Func002Func001003001002 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_HERO) == true )
endfunction
function Trig_Follow_Move_Func002A takes nothing returns nothing
call IssueTargetOrderBJ( GetEnumUnit(), "move", GroupPickRandomUnit(GetUnitsOfPlayerMatching(GetOwningPlayer(GetEnumUnit()), Condition(function Trig_Follow_Move_Func002Func001003001002))) )
endfunction
function Trig_Follow_Move_Actions takes nothing returns nothing
call ForForce( GetPlayersAll(), function Trig_Follow_Move_Func001A )
call ForGroupBJ( GetUnitsInRectMatching(GetPlayableMapRect(), Condition(function Trig_Follow_Move_Func002001002)), function Trig_Follow_Move_Func002A )
endfunction
//===========================================================================
function InitTrig_Follow_Move takes nothing returns nothing
set gg_trg_Follow_Move = CreateTrigger( )
call TriggerRegisterTimerEventPeriodic( gg_trg_Follow_Move, 1.00 )
call TriggerAddAction( gg_trg_Follow_Move, function Trig_Follow_Move_Actions )
endfunction
+2
function Trig_Enforce_Region_Func001Func001001001001001001002 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_HERO) == true )
endfunction
function Trig_Enforce_Region_Func001Func001Func001Func001Func001002001001002 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_HERO) == true )
endfunction
function Trig_Enforce_Region_Func001Func001Func001Func001A takes nothing returns nothing
call SetUnitPositionLoc( GetEnumUnit(), GetUnitLoc(GroupPickRandomUnit(GetUnitsOfPlayerMatching(GetEnumPlayer(), Condition(function Trig_Enforce_Region_Func001Func001Func001Func001Func001002001001002)))) )
endfunction
function Trig_Enforce_Region_Func001Func001Func001C takes nothing returns boolean
if ( not ( RectContainsUnit(RectFromCenterSizeBJ(GetUnitLoc(GetEnumUnit()), 500.00, 500.00), GroupPickRandomUnit(GetUnitsOfPlayerAndTypeId(GetEnumPlayer(), 'ewsp'))) == true ) ) then
return false
endif
return true
endfunction
function Trig_Enforce_Region_Func001Func001A takes nothing returns nothing
if ( Trig_Enforce_Region_Func001Func001Func001C() ) then
call DoNothing( )
else
call ForGroupBJ( GetUnitsOfPlayerAndTypeId(GetEnumPlayer(), 'ewsp'), function Trig_Enforce_Region_Func001Func001Func001Func001A )
endif
endfunction
function Trig_Enforce_Region_Func001A takes nothing returns nothing
call ForGroupBJ( GetUnitsInRectAll(RectFromCenterSizeBJ(GetUnitLoc(GroupPickRandomUnit(GetUnitsOfPlayerMatching(GetEnumPlayer(), Condition(function Trig_Enforce_Region_Func001Func001001001001001001002)))), 500.00, 500.00)), function Trig_Enforce_Region_Func001Func001A )
endfunction
function Trig_Enforce_Region_Actions takes nothing returns nothing
call ForForce( GetPlayersAll(), function Trig_Enforce_Region_Func001A )
endfunction
//===========================================================================
function InitTrig_Enforce_Region takes nothing returns nothing
set gg_trg_Enforce_Region = CreateTrigger( )
call TriggerRegisterTimerEventPeriodic( gg_trg_Enforce_Region, 3.00 )
call TriggerAddAction( gg_trg_Enforce_Region, function Trig_Enforce_Region_Actions )
endfunction
+3
function Trig_Pause_Orb_Conditions takes nothing returns boolean
if ( not ( IsUnitType(GetDyingUnit(), UNIT_TYPE_HERO) == true ) ) then
return false
endif
if ( not ( GetPlayerController(GetOwningPlayer(GetDyingUnit())) == MAP_CONTROL_USER ) ) then
return false
endif
return true
endfunction
function Trig_Pause_Orb_Func001A takes nothing returns nothing
call PauseUnitBJ( true, GetEnumUnit() )
endfunction
function Trig_Pause_Orb_Actions takes nothing returns nothing
call ForGroupBJ( GetUnitsOfPlayerAndTypeId(GetOwningPlayer(GetDyingUnit()), 'ewsp'), function Trig_Pause_Orb_Func001A )
endfunction
//===========================================================================
function InitTrig_Pause_Orb takes nothing returns nothing
set gg_trg_Pause_Orb = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Pause_Orb, EVENT_PLAYER_UNIT_DEATH )
call TriggerAddCondition( gg_trg_Pause_Orb, Condition( function Trig_Pause_Orb_Conditions ) )
call TriggerAddAction( gg_trg_Pause_Orb, function Trig_Pause_Orb_Actions )
endfunction
+4
function Trig_Unpause_Orb_Func001A takes nothing returns nothing
call PauseUnitBJ( false, GetEnumUnit() )
endfunction
function Trig_Unpause_Orb_Actions takes nothing returns nothing
call ForGroupBJ( GetUnitsOfPlayerAndTypeId(GetOwningPlayer(GetRevivingUnit()), 'ewsp'), function Trig_Unpause_Orb_Func001A )
endfunction
//===========================================================================
function InitTrig_Unpause_Orb takes nothing returns nothing
set gg_trg_Unpause_Orb = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Unpause_Orb, EVENT_PLAYER_HERO_REVIVE_FINISH )
call TriggerAddAction( gg_trg_Unpause_Orb, function Trig_Unpause_Orb_Actions )
endfunction
giải thích mấy cái dòng lệnh dùm nha cảm ơn trước hì
