Name | Type | is_array | initial_value |
A_CV | integer | No | |
AbyssalDamage | real | No | |
AbyssalMovingPoint | location | No | |
AbyssalTargetPos | location | No | |
AbyssalTime | real | No | |
AbyssCaster | unit | No | |
AbyssCasterLoc | location | No | |
AbyssDummy | unit | No | |
AbyssDummyPoint | location | No | |
AbyssTarget | unit | No | |
AftershockGroup | group | No | |
AllUnitsInMap | group | No | |
AncientPos | location | No | |
AnimationSpeedChange | real | No | |
AttackingLoc | location | No | |
AttackPos | location | No | |
B_CV | integer | No | |
BarrierCaster | unit | No | |
BarrierDamage | real | No | |
BarrierDummy | unit | No | |
BarrierDummyLoc | location | No | |
BarrierLoc | location | No | |
BarrierMovedLoc | location | No | |
BarrierPicked | unit | No | |
BarrierPickedLoc | location | No | |
Beast_Attacker | unit | No | |
BeastImageGroup | group | No | |
BeastIntell | real | No | |
Beastintellcaster | unit | No | |
BeastRage_Caster | unit | No | |
BeastRage_Effect_LevelJump | integer | No | |
BeastRage_PrimaryTarget | unit | No | |
BeastRage_SecondaryTarget | unit | Yes | |
BeastRageDamage | real | No | |
BeastRageDamageGroup | group | No | |
BioShockCaster | unit | No | |
bishopDamage | real | No | |
BishopGroup | group | No | |
BishopHealer | unit | No | |
BishopHealTarget | unit | No | |
Bishopmana | real | No | |
BladeStrikeCaster | unit | No | |
Blast_Point | location | No | |
BlastCaster | unit | No | |
BlastDummy | unit | No | |
BlastGroup | group | No | |
BlastLoc | location | No | |
BlastSynergyGroup | group | No | |
BlindingBlastCaster | unit | No | |
BlindingBlastLoc | location | No | |
BloodscentPicked | unit | No | |
BodyOdorGroup | group | No | |
BodyOdorRandomPoint | location | No | |
BodySlideCaster | unit | No | |
BodySlideDummy | unit | Yes | |
BodySlidePoint | location | No | |
BR | integer | No | |
BrimStoneCaster | unit | No | |
Brotherhood | unitcode | Yes | |
BrotherhoodFlag | itemcode | No | |
BrotherhoodFlagItem | item | No | |
BurstCaster | unit | No | |
BurstEffects | effect | Yes | |
BurstGroup | group | No | |
BurstLoc | location | No | |
C_CV | integer | No | |
Caster | unit | No | |
CasterLoc | location | No | |
Casterloc1 | location | No | |
CerebroDummy | unit | No | |
CF_AoE | real | No | |
CF_Ball | unit | No | |
CF_Ball_Detect_Range | real | No | |
CF_Ball_Movespeed | real | No | |
CF_Caster | unit | No | |
CF_Current_Targ | unit | No | |
CF_Group | group | No | |
CF_Jumps | integer | No | |
CF_Point | location | Yes | |
CF_Timer | timer | No | |
CF_Timer_Interval | real | No | |
CH_Group | group | No | |
CH_Trigger_unit_loc | location | No | |
ClashVictim | unit | No | |
CollosusCastr | unit | No | |
Combine_Charged_Items | boolean | No | |
Combine_Charges_Max | integer | No | |
ConeMaximumDegrees | real | No | |
ConeMinimumDegrees | real | No | |
CORRUPT_TARGET | unit | No | |
Count | integer | No | |
Creep_Positions | location | Yes | |
Creep_Types | unitcode | Yes | |
CreepAttacked | group | No | |
CreepAttackedLoc | location | No | |
CreepAttackedMag | group | No | |
CreepBoard | multiboard | No | |
CreepItems | itemcode | Yes | |
CreepItemsCount | integer | No | |
CreepKillBoard | leaderboard | Yes | |
CreepKills | integer | Yes | |
CreeprandomvariableGreater | integer | No | |
CreeprandomvariableLesser | integer | No | |
CreeprandomvariableNormal | integer | No | |
CrushAngle | real | No | |
CrushPoint | location | No | |
DeathFactorGroup | group | No | |
DeniesCount | integer | Yes | |
DKSpreeCount | integer | Yes | |
DKSpreeDuration | integer | Yes | |
DKTempInteger | integer | No | |
DormantGroup | group | No | |
DormantGroup2 | group | No | |
DormantPicked | unit | No | |
DPcaster | unit | No | |
DPcasterloc | location | No | |
DummyStomper | unit | Yes | |
DummyStomperloc | location | No | |
DyingUnitPos | location | No | |
EffectsAttachmentPoints | string | Yes | |
EffectsAttachments | string | No | |
EG | group | Yes | |
EG1 | group | Yes | |
EmmaCaster | unit | No | |
EmmaDamage | integer | No | |
EmmaInt | integer | No | |
EmmaLoc | location | No | |
End_Game_If_All_Gone | boolean | No | |
EnergyCaster | unit | No | |
FeralRushCaster | unit | No | |
FF_Caster | unit | No | |
FF_Caster_Pnt | location | No | |
FF_Level | integer | No | |
FF_Stop | boolean | No | |
FF_Trigger | trigger | No | |
Fire_Bucks_Counter | integer | No | |
Fire_Bucks_Sphere | unit | Yes | |
FirewallCaster | unit | No | |
firewalldummy | unit | No | |
FirewallLeft | integervar | No | |
FirewallRight | integervar | No | |
FirewallTarget | location | No | |
Fogcaster | unit | No | |
FrozenGroup | group | No | |
Gambit_FA_DC_Pos | location | Yes | |
Gambit_FA_Distance | real | No | |
Gambit_FA_DummyCard | unit | No | |
Gambit_FA_Point | location | No | |
Gambit_FA_Target | location | No | |
Gambit_FA_Unit | unit | No | |
GambitCard | unit | No | |
GambitCaster | unit | No | |
GambitCasterLoc | location | No | |
GambitKineticFieldGroup | group | No | |
Game_Minutes | integer | No | |
Game_Seconds | integer | No | |
Game_Time | timer | No | |
GameMode | integer | No | |
GenepoolGroup | group | No | |
GenePoolHero | unit | No | |
GenePoolLoc | location | No | |
GenePoolVictim | unit | No | |
GravitySmashCaster | unit | No | |
GravitySmashTarget | unit | No | |
GravitySmashTimer | timer | No | |
HeavyUnitCountMag | integer | No | |
HeavyUnitCountX | integer | No | |
HeavyUnitSpawn | location | No | |
Hero_Array | unitcode | Yes | |
Hero_Revive_Time_Factor | real | No | |
HeroCentreBH | location | No | |
HeroCentreXmen | location | No | |
Heroes_All | unitcode | Yes | |
Heroes_BH | unitcode | Yes | |
Heroes_X_Men | unitcode | Yes | |
HeroItemPos | location | No | |
HeroMove | location | No | |
Hits | integer | No | |
HolocaustBlastCaster | unit | No | |
HolocaustBlastTarget | unit | No | |
HolocaustCasterLoc | location | No | |
HolocaustPassiveCaster | unit | No | |
HolocaustPassiveLoc | location | No | |
HolocaustUltiCaster | unit | No | |
HolocaustUltiLoc | location | No | |
Hostile_Revive_Time | real | No | |
i | integervar | No | |
IceStrikeCaster | unit | No | |
IceStrikeTarget | location | No | |
InvulBhGroup | group | No | |
InvulBuildingGroup | group | No | |
InvulXmenGroup | group | No | |
ItemDrop | location | No | |
ItemLeaving | item | No | |
ItemLoop | integer | No | |
JD_Angle | real | Yes | |
JD_Animations | string | Yes | |
JD_Caster | unit | No | |
JD_CasterPos | location | No | |
JD_Distances | real | Yes | |
JD_Effect | string | Yes | |
JD_Group | group | No | |
JD_Height | real | No | |
JD_HighSettings | real | Yes | |
JD_Integers | integer | Yes | |
JD_JumpHigh | real | Yes | |
JD_ReachedDistance | real | Yes | |
JD_RealTimer | real | Yes | |
JD_SpeedUnits | real | Yes | |
JD_TempPoint | location | Yes | |
JD_TreesDestroy | boolean | Yes | |
JD_Unit | unit | Yes | |
JD_UnitHeight | real | No | |
JDA_Collusion | boolean | No | |
JDA_DestroyTrees_Dash | boolean | No | |
JDA_JumpHigh_Distance | real | No | |
JDA_Offset | location | No | |
JDA_SpecialEffect | string | No | |
JDA_Speed | real | No | |
JDA_TargetPoint | location | No | |
JDA_Unit | unit | No | |
JuggerDummyStunner | unit | No | |
KillPoints | integer | Yes | |
KineticGroupPicked | unit | No | |
KineticGroupPickedLoc | location | No | |
LastFloatingText | texttag | No | |
LastHeroStanding | force | No | |
LeaderboardScourge | leaderboard | No | |
LeaderboardSentinel | leaderboard | No | |
LocateGroup | group | No | |
LockerCaster | unit | No | |
LocPoinJuggert3 | location | No | |
LocPoint1 | location | No | |
LocPoint2 | location | No | |
LocPoint3 | location | No | |
LocPointJugger1 | location | No | |
LocPointJugger2 | location | No | |
LoopCreep | integer | No | |
LoopRandom | integer | No | |
loops | integer | No | |
loops1 | integer | No | |
Magneto_Caster | unit | No | |
ManifestationCaster | unit | No | |
ManifestationTarget | unit | No | |
MH_Angle | real | No | |
MH_Level | integer | No | |
MH_Link | unit | Yes | |
MH_Links | integer | No | |
MH_Unit | unit | Yes | |
MilitaryAttacked | group | No | |
MilitaryAttackedLoc | location | No | |
MilitaryInvulGroup | group | No | |
Mindgroup | group | No | |
MineGroup | group | No | |
MODE_AllRandom_AllPick | integer | No | |
MODE_Normal | integer | No | |
MomentumAttacked | unit | No | |
MomentumAttacker | unit | No | |
MomentumLoop | integer | No | |
MomentumTemp1 | location | No | |
MomentumTemp2 | location | No | |
MomentumTemp3 | location | No | |
MoveSpeedCurrent | real | No | |
Multiboard | multiboard | No | |
Multiboard_Clock | integer | No | |
Multiboard_ShowDeaths | boolean | No | true |
Multiboard_Spots | integer | Yes | |
MutantCreepsTotal | integer | No | |
NeutralAggroGroup | group | No | |
NeutralSpawnPoint | location | Yes | |
o | unit | No | |
o1 | unit | No | |
o_current_loc | location | No | |
o_current_loc1 | location | No | |
ol | location | No | |
p | unit | No | |
p1 | unit | No | |
PandaLeapCaster | unit | No | |
PandaLeapDistance | real | No | |
PandaLeapInteger | integer | No | |
PandaLeapTargetPoint | location | No | |
PandaLeapTimer | timer | Yes | |
PatrolPos | location | No | |
PC_Caster | unit | No | |
PC_Distance | real | No | |
PC_Dummy | unit | No | |
PC_DummySize | real | No | |
PC_Position | location | Yes | |
PC_SpecEffect | effect | Yes | |
PC_Target | location | No | |
PCGroup | group | No | |
PE_Area | rect | No | |
Personalise | integer | Yes | |
PersonaliseEffects | effect | Yes | |
PhaseMovespeed | real | No | |
Phoenix1 | unit | No | |
Phoenix1Move | location | No | |
Phoenix2 | unit | No | |
Phoenix2Move | location | No | |
Phoenix3 | unit | No | |
Phoenix3Move | location | No | |
PhoenixCaster | unit | No | |
PhoenixCastLoc | location | No | |
PhoenixDist | real | No | |
PhoenixPt1 | location | No | |
PhoenixPt2 | location | No | |
PhoenixPt3 | location | No | |
PhoenixTimer | timer | No | |
PickLocation | location | Yes | |
PingPos | location | No | |
pl | location | No | |
pl1 | location | No | |
PlasmaBuffGroup | group | No | |
PlasmaDischargeAttacks | integer | No | |
PlasmaDischargeCastr | unit | No | |
Player_Already_Picked | integer | Yes | |
Player_Colors | string | Yes | |
Player_Kills | integer | Yes | |
Player_Starting_Gold | integer | No | |
PlayerNames | string | Yes | |
Players | force | No | |
PlayersBH | force | No | |
PlayersBHCount | integer | No | |
PlayersBHPlaying | force | No | |
PlayersBHReverse | force | No | |
PlayersCount | integer | No | |
PlayersXmen | force | No | |
PlayersXmenCount | integer | No | |
PlayersXmenPlaying | force | No | |
PlayersXmenReverse | force | No | |
Point | location | No | |
PointMag | location | No | |
PointPurifier | location | No | |
PointXav | location | No | |
PositionOfEnteringUnit | location | No | |
Psy_Mana_Steal | real | No | |
PsyInt | integer | No | |
PsyLoc | location | No | |
Psyloc2 | location | No | |
PsyRange | real | No | |
PsySpinCaster | unit | No | |
Psystrike_Caster | unit | No | |
Psystrike_Damage | real | No | |
Psystrike_Target | unit | No | |
PsyStrikeTargetLoc | location | No | |
PU_01_MUIGroup | group | No | |
PU_Cast | unit | Yes | |
PU_CastLoc | location | Yes | |
PU_Level | integer | Yes | |
PU_NovaLoc | location | Yes | |
PU_Player | player | Yes | |
PU_Unit1 | unit | Yes | |
PU_Unit2_BlizzardCaster | unit | Yes | |
PullGroup | group | No | |
PulseCaster | unit | No | |
PulseLoc | location | No | |
Random_Count | integer | No | |
Random_Data | integer | Yes | |
Random_Hero | integer | No | |
RandomData_All | integer | Yes | |
RandomData_BH | integer | Yes | |
RandomData_Xmen | integer | Yes | |
RandomTotal_All | integer | No | |
RandomTotal_BH | integer | No | |
RandomTotal_Xmen | integer | No | |
RawEnergyDamage | integer | No | |
Repick_Cost_Ammount | integer | No | |
RepickPlayerGroup | group | No | |
RepulseCaster | unit | No | |
RepulseDamage | integer | No | |
RepulseGroup | group | No | |
RepulseLoc | location | No | |
RescueCaster | unit | No | |
RescueTarget | unit | No | |
RescueTargetLoc | location | No | |
RevivableHeroes | group | No | |
RevivableTimersWindows | timerdialog | Yes | |
ReviveHeroPos | location | No | |
ReviveTimers | timer | Yes | |
RiverItems | itemcode | Yes | |
RiverItemsCount | integer | No | |
RiverItemsRegions | location | Yes | |
RiverItemsRegionsCount | integer | No | |
RiverItemsTaken | boolean | Yes | |
Robot | unitcode | No | |
Rogue_CASTER | unit | No | |
RuneLoc | location | Yes | |
RuneSpawnCounter | integer | Yes | |
RuneSpot | location | Yes | |
ScentGroupEmpty | group | No | |
ScentGroupUncheck | group | No | |
Score_Deaths | integer | Yes | |
Score_Kills | integer | Yes | |
SentinalEastCount | integer | No | |
SentinalPrison | location | No | |
SentinalSpawnCount | integer | No | |
ShadowCaster | unitcode | No | |
ShadowCatUltiTarget | unit | No | |
shadowdamage | real | No | |
shieldtarget | unit | No | |
Shocker | unit | No | |
ShortMode_On | boolean | No | |
ShuchiGroup | group | No | |
ShukuchiCaster | unit | No | |
ShukuchiCasterPoint | location | No | |
ShukuchiGroup | group | No | |
SinisterAgi | integer | No | |
SinisterInt | integer | No | |
SinisterMainStat | integer | No | |
SinisterStatBoostCaster | unit | No | |
SinisterStealVictim | unit | No | |
SinisterStrength | integer | No | |
SlashEffect | effect | No | |
SmashDummyLoc | location | No | |
SnisterStealCaster | unit | No | |
Sort_Board_By_Kills | boolean | No | |
Sound_Point | location | No | |
SpecialEffect | effect | Yes | |
Speech | sound | No | |
SpinSpec | effect | Yes | |
StasisTrap | unit | No | |
StormAngle | real | No | |
StormCaster | unit | No | |
StormCasterLoc | location | No | |
StormMovingPoint | location | No | |
StormTargetLoc | location | No | |
SuckUin_Victim | unit | No | |
SuckUInPoint | location | No | |
SummonSpirit | unit | Yes | |
t | unit | No | |
T | lightning | No | |
t1 | unit | No | |
Tank | unit | No | |
Tank2 | unit | No | |
Tank2Point | location | No | |
TankEffect | location | No | |
TankPoint | location | No | |
TargetPoint | location | No | |
TargetUnit | unit | No | |
Temp_Group | group | No | |
Temp_Point | location | Yes | |
TempDamage_Int | integer | Yes | |
TempInteger | integer | No | |
TempPoint | location | No | |
TempReal | real | No | |
TempTarget | unit | Yes | |
TempTarget2 | unit | Yes | |
TempUnitLeaving | group | No | |
tgroup | group | No | |
ThunderCastGroup | group | No | |
TimerRandom | timer | No | |
tl | location | No | |
tl1 | location | No | |
Toss_Angle | real | No | |
Toss_Calculation | real | No | |
Toss_Caster | unit | No | |
Toss_Curve | real | No | |
Toss_Damage | real | No | |
Toss_Distance | real | No | |
Toss_Point | location | Yes | |
Toss_SFX | effect | No | |
Toss_Target | unit | No | |
Toss_Timer | timer | No | |
TossGroup | group | No | |
Total_Heroes | integer | No | |
UltraShortMode_On | boolean | No | |
UnCharge_Caster | unit | No | |
UnCharge_Distance | real | No | |
UnCharge_Int | integer | No | |
UnCharge_Points | location | Yes | |
UnCharge_Speed | real | No | |
UnCharge_Victim | unit | No | |
UnChargeVictimLoc | location | No | |
UniCasterLoc | location | No | |
UniPickedLoc | location | No | |
UniTarget | unit | No | |
UniTargetLoc | location | No | |
UnitGroup | group | No | |
UnRage_Attacks | integer | No | |
UnRage_SFX | effect | No | |
UnRage_Wolverine | unit | No | |
Victim | unit | No | |
VictimLoc | location | No | |
VictimPos | location | No | |
VineCasterPos | location | No | |
VineOrigin | location | No | |
VinePos | location | No | |
WdashAngle | real | No | |
WdashCaster | unit | No | |
WdashCasterLoc | location | No | |
WdashDistance | real | No | |
WdashMove_To_Point | location | No | |
WdashN | real | No | |
WdashSpeed | real | No | |
WdashTarget | location | No | |
WF_Angle | real | No | |
WF_Caster | unit | No | |
WF_Caster_Loc | location | No | |
WF_Check | boolean | No | |
WF_Distance | real | No | |
WF_Dummy | unit | No | |
WF_Group | group | No | |
WF_Offset | location | No | |
WF_Point | location | No | |
Wf_StopLoc | location | No | |
WildAxe_Angle | real | No | |
WildAxe_Caster | unit | No | |
WildAxe_Caster_Loc | location | No | |
WildAxe_Check | real | Yes | |
WildAxe_Counter | integer | No | |
WildAxe_Distance | real | No | |
WildAxe_Dummy | unit | Yes | |
WildAxe_Dummy_Loc_1 | location | No | |
WildAxe_Dummy_Loc_2 | location | No | |
WildAxe_Group | group | No | |
WildAxe_Interval | real | No | |
WildAxe_RetunAngle_1 | real | No | |
WildAxe_RetunAngle_2 | real | No | |
WildAxe_ReturnDistance_1 | real | No | |
WildAxe_ReturnDistance_2 | real | No | |
WildAxe_ReturnGroup | group | No | |
WildAxe_ReturnInterval_1 | real | No | |
WildAxe_ReturnInterval_2 | real | No | |
WildAxe_Target_Loc | location | No | |
WildAxe_Tilt | real | Yes | |
WildAxe_Tilt2 | real | No | |
WildAxe_Timer | timer | No | |
WolfRunner | unit | No | |
WolfStunner | unit | No | |
WolfTarget | unit | No | |
Wolverine_Thirster_Him | unit | No | |
WolverPassiveGroup | group | No | |
WolverRushGroup | group | No | |
Xavier | unitcode | Yes |
function Trig_Combine_Items_Conditions takes nothing returns boolean
if ( not ( GetItemCharges(GetManipulatedItem()) > 0 ) ) then
return false
endif
if ( not ( udg_Combine_Charged_Items == true ) ) then
return false
endif
return true
endfunction
function Trig_Combine_Items_Actions takes nothing returns nothing
local integer ITEMCOUNT
local integer ITEMLOOP
local integer CHARGES
local integer MAXIMUM
local item NEWITEM
local unit OURUNIT
set MAXIMUM = 12
set ITEMCOUNT = 0
set ITEMLOOP = 0
set CHARGES = 0
set NEWITEM = GetManipulatedItem()
set OURUNIT = GetManipulatingUnit()
loop
exitwhen ITEMLOOP > 6
if ((GetItemTypeId(NEWITEM)) == (GetItemTypeId(UnitItemInSlotBJ(OURUNIT, ITEMLOOP)))) then
if ((GetItemCharges(UnitItemInSlotBJ(OURUNIT, ITEMLOOP)) + GetItemCharges(NEWITEM)) <= MAXIMUM) then
if not ( (UnitItemInSlotBJ(OURUNIT, ITEMLOOP)) == (NEWITEM)) then
set CHARGES = (GetItemCharges(UnitItemInSlotBJ(OURUNIT, ITEMLOOP))) + GetItemCharges(NEWITEM)
call SetItemCharges( UnitItemInSlotBJ(OURUNIT, ITEMLOOP), CHARGES )
call RemoveItem( NEWITEM )
set ITEMLOOP=7
endif
endif
endif
if ( ITEMLOOP < 7 ) then
set ITEMLOOP = ITEMLOOP + 1
endif
endloop
endfunction
//===========================================================================
function InitTrig_Combine_Charged_Items takes nothing returns nothing
set gg_trg_Combine_Charged_Items = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Combine_Charged_Items, EVENT_PLAYER_UNIT_PICKUP_ITEM )
call TriggerAddCondition( gg_trg_Combine_Charged_Items, Condition( function Trig_Combine_Items_Conditions ) )
call TriggerAddAction( gg_trg_Combine_Charged_Items, function Trig_Combine_Items_Actions )
endfunction
function Trig_Burrowstrike_Conditions takes nothing returns boolean
return GetSpellAbilityId() == 'A052'
endfunction
function Trig_Burrowstrike_Actions takes nothing returns nothing
local unit u = GetTriggerUnit()
local integer i = GetUnitAbilityLevelSwapped('A052', u)
local location l = GetUnitLoc(u)
local location m = GetSpellTargetLoc()
call CreateNUnitsAtLoc( 1, 'h00J', GetOwningPlayer(u), PolarProjectionBJ(l, -100.00, AngleBetweenPoints(l, m)), GetUnitFacing(u) )
if i==1 then
call UnitAddAbility( GetLastCreatedUnit(), 'A01V' )
call SetUnitAbilityLevelSwapped( 'A01V', GetLastCreatedUnit(), ( R2I(DistanceBetweenPoints(l, m)) / 100 ) )
else
if i==2 then
call UnitAddAbility( GetLastCreatedUnit(), 'A04Z' )
call SetUnitAbilityLevelSwapped( 'A04Z', GetLastCreatedUnit(), ( R2I(DistanceBetweenPoints(l, m)) / 100 ) )
else
if i==3 then
call UnitAddAbility( GetLastCreatedUnit(), 'A050' )
call SetUnitAbilityLevelSwapped( 'A050', GetLastCreatedUnit(), ( R2I(DistanceBetweenPoints(l, m)) / 100 ) )
else
call UnitAddAbility( GetLastCreatedUnit(), 'A051' )
call SetUnitAbilityLevelSwapped( 'A051', GetLastCreatedUnit(), ( R2I(DistanceBetweenPoints(l, m)) / 100 ) )
endif
endif
endif
call IssuePointOrder( GetLastCreatedUnit(), "impale", GetLocationX(m),GetLocationY(m) )
call TriggerSleepAction( ( DistanceBetweenPoints(l, m) / 4000.00 ) )
call SetUnitPositionLoc( u, m )
call SetUnitAnimation( u, "morph ALTERNATE" )
set u = null
call RemoveLocation(l)
call RemoveLocation(m)
set l = null
set m = null
endfunction
//===========================================================================
function InitTrig_Burrowstrike takes nothing returns nothing
set gg_trg_Burrowstrike = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Burrowstrike, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( gg_trg_Burrowstrike, Condition( function Trig_Burrowstrike_Conditions ) )
call TriggerAddAction( gg_trg_Burrowstrike, function Trig_Burrowstrike_Actions )
endfunction
function Timed_Bomb_Conditions takes nothing returns boolean
return GetSpellAbilityId() == 'A02P'
endfunction
function Kill_Trees takes nothing returns nothing
call KillDestructable(GetEnumDestructable())
endfunction
function Timed_Bomb_Actions takes nothing returns nothing
local unit m = GetTriggerUnit()
local unit y = GetSpellTargetUnit()
local texttag x
local location b
local integer Bomb_Duration = 12-(GetUnitAbilityLevelSwapped('A02P', m)*2) //How much time to wait before the boom
local effect e
call AddSpecialEffectTargetUnitBJ("overhead", y, "Abilities\\Spells\\Undead\\AntiMagicShell\\AntiMagicShell.mdl")
set e = GetLastCreatedEffectBJ()
loop
exitwhen Bomb_Duration == 0
if IsUnitAliveBJ(y) == false then //If unit y is not alive, then the loop stops
call DestroyEffectBJ(e)
else
call CreateTextTagUnitBJ(I2S(Bomb_Duration), y, 0, 9.00, 100, 0.00, 0.00, 0.00)
set x = GetLastCreatedTextTag()
call SetTextTagVelocityBJ(x, 80.00, 90)
call SetTextTagPermanentBJ(x, false)
call SetTextTagFadepointBJ(x, 1.75)
call SetTextTagLifespanBJ(x, 3.25)
call PlaySoundBJ(gg_snd_BattleNetTick)
call TriggerSleepAction(1.)
set Bomb_Duration = Bomb_Duration - 1
endif
endloop
set b = GetUnitLoc(y)
call EnumDestructablesInCircleBJ(300.00, b, function Kill_Trees)
call CreateNUnitsAtLoc(1, 'u003', GetOwningPlayer(m), GetUnitLoc(y), bj_UNIT_FACING)
call SetUnitAbilityLevelSwapped('A02G', GetLastCreatedUnit(), GetUnitAbilityLevelSwapped('A02P', m))
call IssueImmediateOrderBJ(GetLastCreatedUnit(), "stomp")
call UnitApplyTimedLifeBJ(1.25, 'BTLF', GetLastCreatedUnit())
call CreateNUnitsAtLoc(1, 'u002', GetOwningPlayer(m), GetUnitLoc(y), bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(1.25, 'BTLF', GetLastCreatedUnit())
call CreateNUnitsAtLoc(1, 'u001', GetOwningPlayer(m), GetUnitLoc(y), bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(1.25, 'BTLF', GetLastCreatedUnit())
call DestroyEffectBJ(e)
call RemoveLocation(b)
set m = null
set y = null
set b = null
set e = null
set x = null
endfunction
//===========================================================================
function InitTrig_Timed_Bomb takes nothing returns nothing
set gg_trg_Timed_Bomb = CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Timed_Bomb, EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Timed_Bomb, Condition(function Timed_Bomb_Conditions))
call TriggerAddAction(gg_trg_Timed_Bomb, function Timed_Bomb_Actions)
endfunction
//TESH.scrollpos=0
//TESH.alwaysfold=0
function Parabola takes real dist, real maxdist,real curve returns real
local real t = (dist*2)/maxdist-1
return (-t*t+1)*(maxdist/curve)
endfunction
function InitTrig_Parabola_Function takes nothing returns nothing
endfunction