function Trig_limit_break_sets_Copy_Conditions takes nothing returns boolean
if ( not ( GetSpellAbilityId() == 'A00P' ) ) then
return false
endif
return true
endfunction
function Trig_limit_break_sets_Copy_Func008C takes nothing returns boolean
if ( not ( GetUnitAbilityLevelSwapped('A00P', udg_testhero[0]) == 1 ) ) then
return false
endif
return true
endfunction
function Trig_limit_break_sets_Copy_Func009C takes nothing returns boolean
if ( not ( GetUnitAbilityLevelSwapped('A00P', udg_testhero[0]) == 2 ) ) then
return false
endif
return true
endfunction
function Trig_limit_break_sets_Copy_Func010C takes nothing returns boolean
if ( not ( GetUnitAbilityLevelSwapped('A00P', udg_testhero[0]) == 3 ) ) then
return false
endif
return true
endfunction
function Trig_limit_break_sets_Copy_Func011C takes nothing returns boolean
if ( not ( GetUnitAbilityLevelSwapped('A00P', udg_testhero[0]) == 4 ) ) then
return false
endif
return true
endfunction
function Trig_limit_break_sets_Copy_Actions takes nothing returns nothing
set udg_testhero[0] = GetSpellAbilityUnit()
set udg_skill_loca[0] = GetUnitLoc(udg_testhero[0])
set udg_skill_loca[1] = GetSpellTargetLoc()
set udg_skill_in[0] = R2I(DistanceBetweenPoints(udg_skill_loca[0], udg_skill_loca[1]))
set udg_skill_in[1] = R2I(GetUnitFacing(GetSpellTargetUnit()))
set udg_skill_angle[0] = AngleBetweenPoints(udg_skill_loca[0], udg_skill_loca[1])
if ( Trig_limit_break_sets_Copy_Func008C() ) then
set udg_loop[0] = 2
else
endif
if ( Trig_limit_break_sets_Copy_Func009C() ) then
set udg_loop[0] = 3
else
endif
if ( Trig_limit_break_sets_Copy_Func010C() ) then
set udg_loop[0] = 4
else
endif
if ( Trig_limit_break_sets_Copy_Func011C() ) then
set udg_loop[0] = 5
else
endif
call AddSpecialEffectTargetUnitBJ( "weapon", udg_testhero[0], "Abilities\\Weapons\\IllidanMissile\\IllidanMissil e.mdl" )
set udg_temp_sf[5] = GetLastCreatedEffectBJ()
call AddSpecialEffectTargetUnitBJ( "weapon", udg_testhero[0], "Abilities\\Weapons\\SeaElementalMissile\\SeaEleme ntalMissile.mdl" )
set udg_temp_sf[6] = GetLastCreatedEffectBJ()
call AddSpecialEffectTargetUnitBJ( "weapon", udg_testhero[0], "Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missi le_mini.mdl" )
set udg_temp_sf[7] = GetLastCreatedEffectBJ()
call AddSpecialEffectTargetUnitBJ( "chest", udg_testhero[0], "Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilMi ssile.mdl" )
set udg_temp_sf[8] = GetLastCreatedEffectBJ()
call AddSpecialEffectTargetUnitBJ( "weapon", udg_testhero[0], "Abilities\\Weapons\\AvengerMissile\\AvengerMissil e.mdl" )
set udg_temp_sf[9] = GetLastCreatedEffectBJ()
set udg_slide_adjust[0] = 0
call TriggerExecute( gg_trg_words )
call TriggerSleepAction( 0.25 )
call AddSpecialEffectTargetUnitBJ( "origin", udg_testhero[0], "Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageC aster.mdl" )
set udg_temp_sf[10] = GetLastCreatedEffectBJ()
call DestroyEffectBJ( udg_temp_sf[10] )
call TriggerSleepAction( 0.25 )
call EnableTrigger( gg_trg_limit_break_does )
endfunction
//================================================== =========================
function InitTrig_limit_break_sets_Copy takes nothing returns nothing
set gg_trg_limit_break_sets_Copy = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_limit_break_sets_Copy, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( gg_trg_limit_break_sets_Copy, Condition( function Trig_limit_break_sets_Copy_Conditions ) )
call TriggerAddAction( gg_trg_limit_break_sets_Copy, function Trig_limit_break_sets_Copy_Actions )
endfunction
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~
function Trig_limit_break_does_Copy_Func002Func003002003001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE) == false )
endfunction
function Trig_limit_break_does_Copy_Func002Func003002003002 001 takes nothing returns boolean
return ( IsUnitDeadBJ(GetFilterUnit()) == false )
endfunction
function Trig_limit_break_does_Copy_Func002Func003002003002 002 takes nothing returns boolean
return ( IsPlayerEnemy(GetFilterPlayer(), GetOwningPlayer(udg_testhero[0])) == true )
endfunction
function Trig_limit_break_does_Copy_Func002Func003002003002 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_does_Copy_Func002Func003002003002 001(), Trig_limit_break_does_Copy_Func002Func003002003002 002() )
endfunction
function Trig_limit_break_does_Copy_Func002Func003002003 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_does_Copy_Func002Func003002003001 (), Trig_limit_break_does_Copy_Func002Func003002003002 () )
endfunction
function Trig_limit_break_does_Copy_Func002Func004A takes nothing returns nothing
call UnitDamageTargetBJ( udg_testhero[0], GetEnumUnit(), 100.00, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL )
endfunction
function Trig_limit_break_does_Copy_Func002C takes nothing returns boolean
if ( not ( RectContainsLoc(GetPlayableMapRect(), udg_skill_loca[1]) == true ) ) then
return false
endif
if ( not ( R2I(DistanceBetweenPoints(udg_skill_loca[0], udg_skill_loca[1])) >= 700 ) ) then
return false
endif
return true
endfunction
function Trig_limit_break_does_Copy_Actions takes nothing returns nothing
if ( Trig_limit_break_does_Copy_Func002C() ) then
call RemoveLocation(udg_skill_loca[1])
set udg_skill_loca[1] = PolarProjectionBJ(udg_skill_loca[0], ( 500.00 - I2R(udg_slide_adjust[0]) ), udg_skill_angle[0])
set udg_skill_in[0] = R2I(DistanceBetweenPoints(udg_skill_loca[0], udg_skill_loca[1]))
set udg_slide_adjust[0] = 48
else
call SelectUnitRemove( udg_testhero[0] )
call SetUnitInvulnerable( udg_testhero[0], true )
set udg_casted_ug[5] = GetUnitsInRangeOfLocMatching(250.00, udg_skill_loca[0], Condition(function Trig_limit_break_does_Copy_Func002Func003002003))
call ForGroupBJ( udg_casted_ug[5], function Trig_limit_break_does_Copy_Func002Func004A )
call SetUnitPositionLoc( udg_testhero[0], PolarProjectionBJ(udg_skill_loca[0], I2R(udg_skill_in[0]), udg_skill_angle[0]) )
call RemoveLocation(udg_skill_loca[1])
call DestroyGroup(udg_casted_ug[5])
call DisableTrigger( GetTriggeringTrigger() )
call TriggerExecute( gg_trg_limit_break_continues )
endif
endfunction
//================================================== =========================
function InitTrig_limit_break_does_Copy takes nothing returns nothing
set gg_trg_limit_break_does_Copy = CreateTrigger( )
call DisableTrigger( gg_trg_limit_break_does_Copy )
call TriggerRegisterTimerEventPeriodic( gg_trg_limit_break_does_Copy, 2.00 )
call TriggerAddAction( gg_trg_limit_break_does_Copy, function Trig_limit_break_does_Copy_Actions )
endfunction
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
function Trig_limit_break_continues_Copy_Func001Func0030020 03001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE) == false )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0030020 03002001 takes nothing returns boolean
return ( IsUnitAliveBJ(GetFilterUnit()) == true )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0030020 03002002 takes nothing returns boolean
return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_testhero[0])) == true )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0030020 03002 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_continues_Copy_Func001Func0030020 03002001(), Trig_limit_break_continues_Copy_Func001Func0030020 03002002() )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0030020 03 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_continues_Copy_Func001Func0030020 03001(), Trig_limit_break_continues_Copy_Func001Func0030020 03002() )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0070020 03001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE) == false )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0070020 03002001 takes nothing returns boolean
return ( IsUnitAliveBJ(GetFilterUnit()) == true )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0070020 03002002 takes nothing returns boolean
return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_testhero[0])) == true )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0070020 03002 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_continues_Copy_Func001Func0070020 03002001(), Trig_limit_break_continues_Copy_Func001Func0070020 03002002() )
endfunction
function Trig_limit_break_continues_Copy_Func001Func0070020 03 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_continues_Copy_Func001Func0070020 03001(), Trig_limit_break_continues_Copy_Func001Func0070020 03002() )
endfunction
function Trig_limit_break_continues_Copy_Func001Func008Func 006002003001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE) == false )
endfunction
function Trig_limit_break_continues_Copy_Func001Func008Func 006002003002001 takes nothing returns boolean
return ( IsUnitDeadBJ(GetFilterUnit()) == false )
endfunction
function Trig_limit_break_continues_Copy_Func001Func008Func 006002003002002 takes nothing returns boolean
return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_testhero[0])) == true )
endfunction
function Trig_limit_break_continues_Copy_Func001Func008Func 006002003002 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_continues_Copy_Func001Func008Func 006002003002001(), Trig_limit_break_continues_Copy_Func001Func008Func 006002003002002() )
endfunction
function Trig_limit_break_continues_Copy_Func001Func008Func 006002003 takes nothing returns boolean
return GetBooleanAnd( Trig_limit_break_continues_Copy_Func001Func008Func 006002003001(), Trig_limit_break_continues_Copy_Func001Func008Func 006002003002() )
endfunction
function Trig_limit_break_continues_Copy_Func001Func008Func 007A takes nothing returns nothing
call UnitDamageTargetBJ( udg_testhero[0], GetEnumUnit(), 100.00, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL )
endfunction
function Trig_limit_break_continues_Copy_Func001Func008C takes nothing returns boolean
if ( not ( IsUnitGroupEmptyBJ(udg_casted_ug[1]) == false ) ) then
return false
endif
return true
endfunction
function Trig_limit_break_continues_Copy_Actions takes nothing returns nothing
set bj_forLoopAIndex = 1
set bj_forLoopAIndexEnd = udg_loop[0]
loop
exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
call TriggerSleepAction( 1.50 )
set udg_skill_loca[333] = GetUnitLoc(udg_testhero[0])
set udg_casted_ug[1] = GetUnitsInRangeOfLocMatching(500.00, udg_skill_loca[333], Condition(function Trig_limit_break_continues_Copy_Func001Func0030020 03))
set udg_skill_loca[222] = GetUnitLoc(GroupPickRandomUnit(udg_casted_ug[1]))
set udg_skill_loca[1] = PolarProjectionBJ(udg_skill_loca[333], GetRandomReal(300.00, 400.00), AngleBetweenPoints(udg_skill_loca[333], udg_skill_loca[222]))
call DestroyGroup(udg_casted_ug[1])
set udg_casted_ug[1] = GetUnitsInRangeOfLocMatching(400.00, udg_skill_loca[1], Condition(function Trig_limit_break_continues_Copy_Func001Func0070020 03))
if ( Trig_limit_break_continues_Copy_Func001Func008C() ) then
call AddSpecialEffectLocBJ( udg_skill_loca[333], "Abilities\\Spells\\Human\\Thunderclap\\ThunderCla pCaster.mdl" )
set udg_temp_sf[0] = GetLastCreatedEffectBJ()
call DestroyEffect(udg_temp_sf[0])
set udg_casted_ug[10] = GetUnitsInRangeOfLocMatching(250.00, udg_skill_loca[333], Condition(function Trig_limit_break_continues_Copy_Func001Func008Func 006002003))
call ForGroupBJ( udg_casted_ug[10], function Trig_limit_break_continues_Copy_Func001Func008Func 007A )
call SetUnitAnimationWithRarity( udg_testhero[0], "attack", RARITY_RARE )
call SetUnitPositionLoc( udg_testhero[0], udg_skill_loca[1] )
call RemoveLocation(udg_skill_loca[222])
call RemoveLocation(udg_skill_loca[333])
call RemoveLocation(udg_skill_loca[1])
call DestroyGroup(udg_casted_ug[10])
call DestroyGroup(udg_casted_ug[1])
call DestroyEffectBJ( udg_temp_sf[0] )
else
call TriggerExecute( gg_trg_leaks )
return
endif
set bj_forLoopAIndex = bj_forLoopAIndex + 1
endloop
call TriggerExecute( gg_trg_leaks )
endfunction
//================================================== =========================
function InitTrig_limit_break_continues_Copy takes nothing returns nothing
set gg_trg_limit_break_continues_Copy = CreateTrigger( )
call DisableTrigger( gg_trg_limit_break_continues_Copy )
call TriggerAddAction( gg_trg_limit_break_continues_Copy, function Trig_limit_break_continues_Copy_Actions )
endfunction
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~
function Trig_leaks_Copy_Actions takes nothing returns nothing
call SetUnitInvulnerable( udg_testhero[0], false )
call SelectUnitAdd( udg_testhero[0] )
call SelectUnitSingle( udg_testhero[0] )
call RemoveLocation(udg_skill_loca[333])
call RemoveLocation(udg_skill_loca[0])
call RemoveLocation(udg_skill_loca[1])
call DestroyGroup(udg_casted_ug[5])
call DestroyGroup(udg_casted_ug[10])
call DestroyEffectBJ( udg_temp_sf[0] )
call DestroyEffectBJ( udg_temp_sf[5] )
call SetUnitVertexColorBJ( udg_o, 100, 100, 100, 0.00 )
call DestroyEffectBJ( udg_temp_sf[6] )
call DestroyEffectBJ( udg_temp_sf[7] )
call DestroyEffectBJ( udg_temp_sf[8] )
call DestroyEffectBJ( udg_temp_sf[9] )
call DestroyEffectBJ( udg_temp_sf[10] )
call DisplayTextToForce( GetPlayersAll(), "TRIGSTR_1263" )
endfunction
//================================================== =========================
function InitTrig_leaks_Copy takes nothing returns nothing
set gg_trg_leaks_Copy = CreateTrigger( )
call DisableTrigger( gg_trg_leaks_Copy )
call TriggerAddAction( gg_trg_leaks_Copy, function Trig_leaks_Copy_Actions )
endfunction
Share This Thread