globals
group array udg_LS_Groups
integer udg_KBA_Level=0
real udg_KBA_Speed=0
real udg_KBA_DistancePerLevel=0
string array udg_KBA_SpecialEffects
boolean udg_KBA_DestroyTrees=false
group udg_KB_KnockbackedUnits=null
integer udg_KB_CountBuffs=0
integer udg_KB_TotalKnockUnits=0
integer array udg_KB_Levels
real array udg_KB_Angle
real array udg_KB_MaxDistance
real array udg_KB_ReachedDistance
real array udg_KB_ReduceSpeedReal
real array udg_KB_SpecificSpeed
string array udg_KB_Effects_1
string array udg_KB_Effects_2
boolean array udg_KB_DestroyTrees
real udg_KB_ReducedReal=0
real udg_KB_TempReal=0
integer udg_KB_Max=0
integer udg_kb=0
unit array udg_KB_Unit
location udg_point=null
location udg_point2=null
real array udg_KB_MaxDist
real array udg_KB_Speed
real array udg_KB_Dist
real udg_TK_SpellAoEStart=0
real udg_TK_SpellAoEIncreasement=0
real udg_TK_MinHeightStart=0
real udg_TK_MinHeightIncreasement=0
real udg_TK_MaxHeightStart=0
real udg_TK_MaxHeightIncreasement=0
real udg_TK_Speed=0
real udg_TK_SpeedVariationPerc=0
string udg_TK_LiftSFX
real udg_TK_LiftSFXTimer=0
string udg_TK_StartSFX
string udg_TK_ImpactSFX
real udg_TK_HDmgInPercStart=0
real udg_TK_HDmgInPercIncreasement=0
real udg_TK_ImpactDmgStart=0
real udg_TK_ImpactDmgIncreasement=0
attacktype udg_TK_AttackType=null
damagetype udg_TK_DamageType=null
boolean udg_TK_Pause=false
location array udg_TK_TempPoint
group udg_TK_UnitGroup=null
group udg_TK_FlyingUnits=null
integer array udg_TK_Integers
unit array udg_TK_Unit
unit array udg_TK_Hero
integer array udg_TK_Level
real array udg_TK_Interval
real array udg_TK_LsfxT
real array udg_TK_MaxHeight
real array udg_TK_FSpeed
integer udg_EL_Ability_Level=0
integer udg_EL_Base_Number_of_Ligtnings=0
integer udg_EL_Total_Number_of_Ligtnings=0
real udg_EL_Seek_Area_of_Effect=0
real udg_EL_Damage_Area_of_Effect=0
real udg_EL_Base_Damage=0
real udg_EL_Total_Damage=0
group udg_EL_Damage_Group=null
group udg_EL_Seek_Group=null
integer udg_TS_Skip=0
integer udg_TS_Times=0
boolean array udg_TS_Off
unit array udg_TS_Hero
unit array udg_TS_Target
location array udg_TS_Point
real array udg_TS_Radius
real array udg_TS_Angle
real array udg_TS_Distance
real array udg_TS_MaxDistance
real array udg_TS_Speed
real array udg_TS_Height
real array udg_TS_Damage
integer array udg_TS_Slams
integer udg_TS=0
group array udg_TS_Group
real array udg_TS_Parabola
integer udg_FB_Skip=0
integer udg_FB_Times=0
boolean array udg_FB_Off
boolean array udg_FB_Big
unit array udg_FB_Hero
location array udg_FB_Point
real array udg_FB_Angle
real array udg_FB_Distance
real array udg_FB_Speed
real array udg_FB_Damage
real array udg_FB_AoE
real array udg_FB_Colision
integer array udg_FB_Fragments
real udg_FB_Scale=0
unit array udg_FB_Missile
effect array udg_FB_Effect1
effect array udg_FB_Effect2
integer udg_FB=0
group array udg_FB_Group
real array udg_FB_Parabola
real array udg_FB_Height
real array udg_FB_MaxDistance
unit udg_Shadowstep_Caster=null
unit udg_Shadowstep_Target=null
integer udg_Shadowstep_Ability_Level=0
location udg_Shadowstep_Location=null
location udg_Shadowstep_Location_2=null
integer udg_Shadowstep_Loop_Number=0
real udg_Shadowstep_Base_Damage=0
real udg_Shadowstep_Damage_Multiplier=0
real udg_Shadowstep_Total_Damage=0
real udg_Shadowstep_Calculation=0
location udg_Shadowstep_Loop_Location=null
unit udg_PR_Caster=null
unit udg_PR_Target=null
location udg_PR_Caster_Loc=null
location udg_PR_Target_Loc=null
integer udg_PR_Ability_Level=0
real udg_PR_Damage_Factor=0
integer udg_PR_Atribute=0
real udg_PR_Damage=0
integer udg_PR_Dummy_Ability=0
real udg_PR_Target_Mana=0
integer udg_Multi_Shot_Ability_Level=0
real udg_Multi_Shot_Facing=0
integer udg_Multi_Shot_Base_Arrow_Count=0
integer udg_Multi_Shot_Total_Arrow_Count=0
integer array udg_VO_index
unit array udg_VO_Victom
unit array udg_VO_Caster
real array udg_VO_Damage
real array udg_VO_Duration
boolean array udg_VO_Boolean
real array udg_VO_Speed
location array udg_VO_Point
real array udg_VO_Angle
unit udg_FoK_Caster=null
location udg_FoK_Loc1=null
integer udg_FoK_Ability_Level=0
boolean udg_FoK_Random_Path=false
boolean udg_FoK_Random_Movement=false
integer udg_FoK_Knives_Count=0
real udg_FoK_Base_Damage=0
real udg_FoK_Detection_Area=0
real udg_FoK_Total_Damage=0
real udg_FoK_Distance=0
real udg_FoK_Speed=0
real udg_FoK_Spiral_Angle=0
real udg_FoK_Angle=0
group udg_FoK_Dummy_Group=null
hashtable udg_FoK_Table=null
location udg_FoK_Loc2=null
real udg_FoK_Facing=0
location udg_FoK_Loc3=null
location udg_FoK_Loc4=null
group udg_FoK_Damage_Group=null
unit udg_CE_Caster=null
location udg_CE_Location=null
location udg_CE_Location2=null
integer udg_CE_Ability_Level=0
real udg_CE_Base_Damage=0
real udg_CE_Total_Damage=0
real udg_CE_Area_of_Effect=0
boolean udg_CE_Destroy_Trees=false
boolean udg_CE_Pathing_On=false
effect udg_CE_Special_Effect=null
effect udg_CE_Special_Effect1=null
real udg_CE_Knock_Angle=0
real udg_CE_Knock_Speed=0
real udg_CE_Knock_Distance=0
hashtable udg_CE_Knocktable=null
group udg_CE_Knock_Group=null
location udg_CE_Knock_Loc1=null
location udg_CE_Knock_Loc2=null
group udg_CE_Damage_Group=null
integer array udg_RandomHero
integer udg_SS_Skip=0
integer udg_SS_LEVEL=0
integer udg_Sheild_How_Many=0
real array udg_SS_Number
integer udg_SS_Times=0
boolean array udg_SS_Rotate_Off
boolean array udg_SS_Knockback_Off
unit array udg_SS_Hero
location array udg_SS_Point
unit array udg_SS_Dummy
effect array udg_SS_Special
real array udg_SS_Angle
real array udg_SS_Angle_Speed_Rotation
integer array udg_SS_Countdown
real array udg_SS_Damage
real array udg_SS_Distance
real array udg_SS_Speed
real array udg_SS_Formula
integer udg_SS=0
unit array udg_SS_Unit
group array udg_SS_Group
hashtable udg_Beast_Attack_Table=null
unit udg_Beast_Attack_Caster=null
integer udg_Beast_Attack_Ability_Level=0
location udg_Beast_Attack_Location=null
real udg_Beast_Attack_Direction=0
boolean udg_Beast_Attack_Destroy_Trees=false
boolean udg_Beast_Attack_Knock_Back_on=false
boolean udg_Beast_Attack_Random_Distance=false
string udg_Beast_Attack_KB_Special_Effect
string udg_Beast_Attack_Destroy_Trees_SE
real udg_Beast_Attack_Base_Offset=0
real udg_Beast_Attack_Bonus_Offset=0
real udg_Beast_Attack_Base_Radius=0
real udg_Beast_Attack_Bonus_Radius=0
integer udg_Beast_Attack_Atribute=0
real udg_Beast_Attack_Damage_Multiplier=0
real udg_Beast_Attack_Destruct_Kill_AoE=0
real udg_Beast_Attack_KB_Minim_Distance=0
real udg_Beast_Attack_KB_Base_Distance=0
real udg_Beast_Attack_KB_Bonus_Distance=0
real udg_Beast_Attack_KB_Speed=0
real udg_Beast_Attack_Total_Radius=0
real udg_Beast_Attack_Total_Offset=0
real udg_Beast_Attack_Total_Damage=0
real udg_Beast_Attack_KB_Total_Distance=0
location udg_Beast_Attack_Damage_Location=null
group udg_Beast_Attack_Damage_Group=null
location udg_Beast_Attack_LocationII=null
group udg_Beast_Attack_KB_Group=null
real udg_Beast_Attack_KB_Angle=0
location udg_Beast_Attack_KB_LocI=null
location udg_Beast_Attack_KB_LocII=null
location udg_Beast_Attack_KB_LocIII=null
hashtable udg_PH_Table=null
integer array udg_PH_Index
integer array udg_PH_Counter
location udg_PH_Cast_Point=null
location udg_PH_Target_Point=null
unit array udg_PH_Caster
real array udg_PH_Hook_Angle
location udg_PH_Near_Point=null
unit array udg_PH_Dummy
boolean array udg_PH_Hooked_Is
unit array udg_PH_Hooked_Unit
integer udg_PH_Damage=0
integer udg_PH_Distance=0
location array udg_PH_Dummy_Point
location array udg_PH_Hook_Point
unit udg_PH_Effect=null
real udg_AngleVar05=0
unit udg_Sinister_Strike_Caster=null
unit udg_Sinister_Strike_Target=null
integer udg_Sinister_Strike_Ability_Level=0
location udg_Sinister_Strike_Location=null
player udg_Sinister_Strike_Owner=null
integer udg_Sinister_Strike_Dummy_Ability=0
real udg_Sinister_Strike_Damage_Factor=0
real udg_Sinister_Strike_Total_Damage=0
integer udg_Sinister_Strike_Normal_Armor=0
integer udg_Sinister_Strike_Dummy_Ability2=0
real udg_Sinister_Strike_Total_Chance=0
hashtable udg_Hashtable=null
unit udg_Caster=null
location array udg_Points
real array udg_Real
group udg_Shockwaves=null
group udg_Enemies=null
unit udg_Ion_Canon_Caster=null
integer udg_Ion_Canon_Ability_Level=0
real udg_Ion_Canon_Distance=0
integer udg_Ion_Canon_Loop_Number=0
real udg_Ion_Canon_Base_Damage=0
real udg_Ion_Canon_Total_Damage=0
real udg_Ion_Canon_Base_Mana_Burn=0
real udg_Ion_Canon_Total_Mana_Burn=0
real udg_Ion_Canon_AoE=0
location udg_Ion_Canon_Location=null
location udg_Ion_Canon_Loop_Location=null
group udg_Ion_Canon_Damage_Group=null
location udg_TempPoint1=null
group udg_TempGroup1=null
group udg_crab_bomb_path=null
unit array udg_Units
group udg_BUMPED=null
integer udg_HR_Index_Size=0
integer array udg_HR_Index
integer udg_HR_Index_maxSize=0
integer udg_TempInt=0
unit array udg_HR_Caster
location array udg_HR_TempLoc1
location array udg_HR_TempLoc2
real array udg_HR_Offset
real array udg_HR_Degree
location array udg_HR_TempLoc3
location array udg_HR_TempLoc4
location array udg_HR_TempLoc5
real array udg_HR_Dur
real array udg_HR_Damage
real array udg_HR_AoE
integer udg_HR_LOOP=0
integer udg_Arrow_Counts=0
integer udg_Arrow_CountMaxSize=0
unit array udg_Arrow_Caster
location udg_Arrow_CasterLoc=null
location udg_Arrow_TargetPoint=null
real udg_Arrow_Angle=0
group udg_Arrow_StartGroup=null
real array udg_Arrow_Distance
real array udg_Arrow_DistanceTravel
integer array udg_Arrow_StunDuration
real array udg_Arrow_DistanceCount
integer udg_Arrow_CusValue=0
location udg_Arrow_DummyLoc=null
location udg_Arrow_Movement=null
group udg_Arrow_UnitGroup=null
group udg_Arrow_RandomUnit=null
integer array udg_LP_Integer
unit array udg_LP_Caster
location array udg_LP_Location
location array udg_LP_Location2
real array udg_LP_Angle
integer array udg_LP_Tick
unit array udg_LP_Dummy
location array udg_LP_DummyPoint
group array udg_LP_DummyGroup
lightning array udg_LP_Lightning
group array udg_LP_Strike
group array udg_LP_NonStrike
unit array udg_LP_PickedUnit
location array udg_LP_PositionPickedUnit
hashtable udg_Hook_Hashtable=null
location udg_loc=null
unit udg_harvester=null
integer udg_i2=0
unit udg_u=null
location udg_loc2=null
real udg_a=0
group udg_Hook_Heads=null
integer udg_i=0
real udg_r=0
real udg_x=0
real udg_x2=0
real udg_y=0
real udg_y2=0
integer udg_TO_Max=0
unit array udg_TO_Hero
real array udg_TO_Duration
integer udg_to=0
group udg_group=null
unit udg_Target=null
lightning udg_Lightning=null
group udg_LifeLeaks=null
integer udg_ManaDrain_Integer=0
integer udg_MUI2=0
unit array udg_B_Caster
unit array udg_B_Target
location udg_B_cPoint=null
location array udg_B_tPoint
unit array udg_B_Dummy
effect array udg_B_MissleModel
integer array udg_B_Level
integer array udg_B_NumBounces
integer array udg_B_MaxBounces
real array udg_B_Damage
real array udg_B_Increment
real array udg_B_Angle
integer udg_MUI3=0
location array udg_B_dPoint
location array udg_B_mPoint
real array udg_B_Distance
unit array udg_B_LastTarget
group array udg_B_HitGroup
group udg_AoELeapers=null
string udg_DSB_Dummy2_Animation
real udg_DSB_Animation_Speed=0
real udg_DSB_Dummy2_Lifetime=0
real udg_DSB_Dummy2_RED=0
real udg_DSB_Dummy2_GREEN=0
real udg_DSB_Dummy2_BLUE=0
real udg_DSB_Dummy2_Transparency=0
real array udg_DSB_Damage
real udg_DSB_AoE=0
real udg_DSB_Distance=0
real udg_DSB_Start_Range=0
string udg_DSB_Special_Effect
string udg_DSB_Special_Effect_Location
boolean udg_DSB_Destroy_Tree=false
boolean udg_DSB_Shadow=false
boolean array udg_DSB_Conditions
location udg_TempPoint=null
integer udg_DSB_Max_Index=0
integer array udg_DSB_Ability_Level
real array udg_DSB_Angle
boolean array udg_DSB_Shdow
integer array udg_DSB_Stage
group udg_DSB_Damage_Group=null
group array udg_DSB_UnDamage_Group
attacktype udg_E0_AttackType=null
damagetype udg_E0_DamageType=null
boolean udg_E0_DestroyTree=false
real udg_E0_AoE_Base=0
real udg_E0_AoE_Increment=0
real udg_E0_DamageAmount_Base=0
real udg_E0_DamageAmount_Increment=0
real udg_E0_DamageDelay=0
real udg_E0_Dummy_Size=0
real udg_E0_Duration_Base=0
real udg_E0_Duration_Increment=0
real udg_E0_Travel_Time=0
real udg_E0_Speed_Enemy=0
real udg_E0_ProjectileMaximumZ=0
real udg_E0_ProjectileLaunchZ=0
real udg_E0_ProjectileImpactZ=0
integer udg_E0_MaxTargets_Base=0
integer udg_E0_MaxTargets_Increment=0
string udg_E0_LightningType
string udg_E0_S_Chest_Primary
string udg_E0_S_Chest_Alternative
string udg_E0_S_Chest_Enemy
string udg_E0_S_DamageUnit
string udg_E0_S_Impact
string udg_E0_S_Origin
location udg_Point1=null
unit udg_E0_TreeChecker=null
integer udg_E1_Index_Size=0
integer array udg_E1_Index_Itself
integer udg_E1_Index_Max=0
integer udg_E1_Current=0
unit array udg_E1_Caster
integer array udg_E1_Level
location udg_Point2=null
boolean array udg_E1_Splash
boolean array udg_E1_Boom
real array udg_E1_ZDuration
real array udg_E1_ZInterval
real array udg_E1_ZMaxHeight
real array udg_E1_AoE
real array udg_E1_Duration
integer array udg_E1_MaxTarget
real array udg_E1_Damage
real array udg_E1_Angle
unit array udg_E1_Dummy
effect array udg_E1_SFX_Chest
integer udg_E1_Loop=0
effect array udg_E1_SFX_Origin
boolean udg_E2_Allow=false
integer udg_E2_Index_Size=0
integer array udg_E2_Index_Itself
integer udg_E2_Index_Max=0
integer udg_E2_Current=0
unit array udg_E2_Enemy
unit array udg_E2_Source
real array udg_E2_Duration
effect array udg_E2_SFX_Enemy
lightning array udg_E2_Lightning
integer udg_E2_Loop=0
integer udg_CH_Ability=0
integer udg_CH_Ability_Spin=0
boolean udg_CH_Allow_Text=false
boolean udg_CH_Allow_Tree=false
integer udg_CH_Buff=0
real array udg_CH_AoE
integer array udg_CH_Chance
real array udg_CH_Damage
real udg_CH_Spin_Max=0
string udg_CH_Model
real udg_CH_Text_Angle=0
real udg_CH_Text_FadingAge=0
real udg_CH_Text_LifeSpan=0
real udg_CH_Text_Size=0
attacktype udg_CH_Type_Attack=null
damagetype udg_CH_Type_Damage=null
integer udg_CH_Type_Dummy=0
location udg_CH_Point=null
unit udg_CH_Dummy=null
group array udg_CH_Group
unit udg_CH_Caster=null
handle udg_CH_Handle=null
real udg_CH_Spin_Current=0
hashtable udg_CH_Hash=null
integer udg_CH_Level=0
unit udg_CH_Target=null
force udg_CH_Text_Player=null
integer udg_RF_Ability=0
integer udg_RF_OrderId=0
integer udg_RF_FireboltMissile=0
real array udg_RF_AoE
integer array udg_RF_FireboltNumber
real array udg_RF_FireboltSpawnInterval
real array udg_RF_FireboltSpawnHeight
boolean udg_RF_TravelBySpeed=false
real array udg_RF_FireboltTravelSpeed
real array udg_RF_FireboltTravelTime
string array udg_RF_ExplosionEffect
integer udg_RF_ExplosionEffectNumber=0
real array udg_RF_Damage
real array udg_RF_DamageRadius
attacktype udg_RF_AttackType=null
damagetype udg_RF_DamageType=null
boolean udg_RF_DestroyTrees=false
location udg_RF_TempLoc=null
unit udg_RF_Harvester=null
integer udg_RF_HarvestOrderId=0
integer udg_RF_MaxIndex=0
unit array udg_RF_Caster
integer array udg_RF_Level
integer array udg_RF_FireboltCount
location array udg_RF_CasterPosition
location array udg_RF_TargetPoint
real array udg_RF_rTimer
integer array udg_RF_StageId
integer udg_RF_Index=0
unit array udg_RF_Firebolt
integer udg_RF_Loop=0
player udg_RF_Owner=null
group udg_RF_TempGroup=null
unit udg_RF_PickedUnit=null
destructable udg_RF_PickedDest=null
real array udg_RF_VSpeed
real array udg_RF_Distance
real array udg_RF_HSpeed
real array udg_RF_Angle
real udg_RF_X=0
real udg_RF_Y=0
real udg_E2_x1=0
real udg_E2_x2=0
real udg_E2_y1=0
real udg_E2_y2=0
real udg_E2_Angle=0
real array udg_E1_Speed
integer udg_Drain_Max=0
group array udg_Drain_Targets
real array udg_Drain_Range
real array udg_Drain_Value
integer array udg_Drain_Interval
integer udg_Drain_Life_Max=0
real udg_LDH_FinalParabola=0
real udg_LDH_MX=0
real udg_LDH_MY=0
real udg_LDH_X=0
real udg_LDH_Y=0
real udg_LDH_Cos=0
real udg_LDH_Sin=0
real udg_LDH_PW=0
hashtable udg_LDH_Hash=null
unit udg_LDH_UnitHarvester=null
integer udg_LDH_Ability=0
integer udg_LDH_DummyType=0
integer udg_LDH_DummyAbility=0
integer udg_LDH_DummyAbility2=0
real array udg_LDH_AirDamage
real array udg_LDH_AirDamageChance
string udg_LDH_AirEffects
string udg_LDH_AirEffectPoint
real array udg_LDH_BlastArea
real array udg_LDH_DestroyTreesAreaStart
real array udg_LDH_DestroyTreesAreaLoop
string udg_LDH_Effects
string udg_LDH_Effects2
real array udg_LDH_ImpactArea
real array udg_LDH_ImpactDamage
string udg_LDH_ImpactEffect
string udg_LDH_ImpactPickedUnitEffect
real array udg_LDH_MaxHeight
integer array udg_LDH_NumberOfEffects
real array udg_LDH_Speed
attacktype udg_LDH_AttackType=null
damagetype udg_LDH_DamageType=null
unit udg_LDH_Caster=null
integer udg_LDH_Level=0
location udg_LDH_CasterPosition=null
integer udg_LDH_Int=0
real udg_LDH_Angle=0
location udg_LDH_StartPointEffect=null
destructable udg_LDH_PickedTrees=null
location udg_LDH_TreePos=null
group udg_LDH_GroupStart=null
unit udg_LDH_Target=null
location udg_LDH_TargetPosition=null
real udg_LDH_Angle2=0
real udg_LDH_DistanceRange=0
real udg_LDH_CurrentDistanceRange=0
unit udg_LDH_Dummy=null
integer udg_LDH_ID=0
group udg_LDH_GroupLoop=null
location udg_LDH_TargetLoopPosition=null
group udg_LDG_ImpactGroup=null
unit udg_LDH_ImpactUnit=null
unit udg_LDH_Dummy2=null
integer udg_BH_Key=0
real udg_BH_MX=0
real udg_BH_MY=0
real udg_BH_PullUnitsX=0
real udg_BH_PullUnitsY=0
real udg_BH_X=0
real udg_BH_Y=0
real udg_BH_SpellX=0
real udg_BH_SpellY=0
integer udg_BH_Ability=0
integer udg_BH_DummyUnit=0
real udg_BH_ColorRed=0
real udg_BH_ColorGreen=0
real udg_BH_ColorBlue=0
real udg_BH_UnitSize=0
real udg_BH_UnitSizePerLevel=0
real udg_BH_FlyHeight=0
real udg_BH_FlyHeightPerLevel=0
real udg_BH_Transparency=0
real udg_BH_TransparencyPerLevel=0
real udg_BH_Duration=0
real udg_BH_DurationPerLevel=0
real udg_BH_Damage=0
real udg_BH_DamagePerLevel=0
real udg_BH_Radius=0
real udg_BH_RadiusPerLevel=0
real udg_BH_SmallRadius=0
real udg_BH_SmallRadiusPerLevel=0
real udg_BH_SmallRadDamage=0
real udg_BH_SmallRadDamagePerLevel=0
real udg_BH_CenterRadius=0
real udg_BH_CenterRadiusPerLevel=0
real udg_BH_CenterDamage=0
real udg_BH_CenterDamagePerLevel=0
real udg_BH_CenterChance=0
real udg_BH_CenterChancePerLevel=0
boolean udg_BH_CenterIgnoreUnitTypes=false
real udg_BH_SpeedPull=0
real udg_BH_SpeedPullPerLevel=0
real udg_BH_ChanceEffect=0
real udg_BH_ChanceEffectPerLevel=0
attacktype udg_BH_AttackType=null
damagetype udg_BH_DamageType=null
attacktype udg_BH_CenterAttackType=null
damagetype udg_BH_CenterDamageType=null
string udg_BH_SmallRadiusDamageEffect
string udg_BH_SmallRadiusAttachment
string udg_BH_CenterSFX
string udg_BH_SpawnEffect
string udg_BH_DamageSfx
unit udg_BH_Caster=null
integer udg_BH_Level=0
real udg_BH_RealLevel=0
real array udg_BH_Reals
real udg_BH_Counter=0
unit udg_BH_UnitTracker=null
hashtable udg_Enigma_Hashtable=null
group udg_BH_Group=null
integer udg_BH_ActiveInstances=0
unit udg_BH_PickedUnits=null
location udg_BH_PickedUnitsXY=null
group udg_BH_SmallRadGroup=null
unit udg_BH_SmallRadiusUnits=null
real udg_BH_SmallRadiusDistance=0
group udg_BH_CenterIgnoreGroup=null
unit udg_BH_CenterUnits=null
group udg_BH_CenterGroup=null
group udg_BH_PullGroup=null
unit udg_BH_PickedPullUnits=null
location udg_BH_PullUnitsXY=null
integer udg_PD_Ability=0
string udg_PD_Lightning_Type
integer udg_PD_Orbs_Type=0
integer udg_PD_Big_Orb_Type=0
integer udg_PD_Handle_Type=0
real udg_PD_Starting_Height=0
real udg_PD_Max_Height_Base=0
real udg_PD_Max_Height_Level=0
real udg_PD_Height_Decrease_Base=0
real udg_PD_Height_Decrease_Level=0
real udg_PD_Rotation_Base=0
real udg_PD_Rotation_Level=0
real udg_PD_Orb_Grow_Base=0
real udg_PD_Orb_Grow_Level=0
real udg_PD_Distance_Base=0
real udg_PD_Distance_Level=0
string udg_PD_Grow_Effect
real udg_PD_Speed_Base=0
real udg_PD_Speed_Level=0
integer udg_PD_Orbs_Amount_Base=0
integer udg_PD_Orbs_Amount_Level=0
real udg_PD_Damage_Base=0
real udg_PD_Damage_Level=0
real udg_PD_Area_of_Effect_Base=0
real udg_PD_Area_of_Effect_Level=0
attacktype udg_PD_Attack_Type=null
damagetype udg_PD_Damage_Type=null
string udg_PD_Damage_Effect
string udg_PD_Damage_Attachement
string udg_PD_End_Effect
real udg_PD_Grow_Timer=0
string udg_PD_Grow_Attachement
unit udg_PD_TmpCaster=null
player udg_PD_TmpPlayer=null
integer udg_PD_TmpInteger=0
location udg_PD_TmpPoint=null
handle udg_PD_TmpHandle=null
group udg_PD_Group=null
hashtable udg_PD_Hashtable=null
real udg_PD_TmpReal=0
integer udg_PD_TmpInteger2=0
real udg_PD_TmpX=0
real udg_PD_TmpY=0
real udg_PD_TmpReal2=0
integer udg_PD_Loop=0
location udg_PD_TmpPoint2=null
real udg_PD_TmpX2=0
real udg_PD_TmpY2=0
handle udg_PD_TmpHandle2=null
unit udg_PD_TmpUnit=null
real udg_CS_AoeBase=0
real udg_CS_AoePerLevel=0
integer udg_CS_StartDelay=0
real udg_CS_ParalyseDamageBase=0
real udg_CS_ParalyseDamagePerLevel=0
integer udg_CS_ParalyseCounterSpeedBase=0
integer udg_CS_ParalyseCounterSpeedPerLvl=0
integer udg_CS_ParalyseCounterMax=0
integer udg_CS_RotatingOrbCount=0
integer udg_CS_ParalysingOrbCountBase=0
integer udg_CS_ParalysingOrbCountPerLevel=0
real udg_CS_SegmentSpreadOutSpeed=0
real udg_CS_SegmentScaling=0
real udg_CS_LightningRed=0
real udg_CS_LightningGreen=0
real udg_CS_LightningBlue=0
real udg_CS_SingularitySpawnSize=0
real udg_CS_SingularityGrowthSpeed=0
real udg_CS_SingularityFinalSize=0
real udg_CS_SingularitySrinkSpeed=0
real udg_CS_SingularityDamageBase=0
real udg_CS_SingularityDamagePerLevel=0
integer udg_CS_StrikeTotal=0
real udg_CS_RevolvingSpeed=0
integer udg_CS_ChaosGenerationRateMin=0
integer udg_CS_ChaosGenerationRateMax=0
real udg_CS_HeightIncrement=0
real udg_CS_EffectScalingSpawn=0
real udg_CS_LightningZ=0
string udg_CS_SingularityModel
string udg_CS_ObelixModel
string udg_CS_SegmentsModel
string udg_CS_RotatingOrbsModel
string udg_CS_SpawnSFX
string udg_CS_DissappearenceSFX
string udg_CS_LightningEffect
integer udg_CS_Spell=0
integer udg_CS_DummyType=0
location udg_CS_TempPoint=null
unit udg_CS_TempUnit=null
integer udg_CS_MaxIndex=0
unit array udg_CS_OriginalCaster
integer udg_CS_TempInteger=0
real udg_CS_TempReal=0
boolean array udg_CS_ActiveLightning
effect array udg_CS_SpecialEffect
unit array udg_CS_Core
real array udg_CS_Aoe
real array udg_CS_ParalyseDamage
real array udg_CS_SingularityDamage
boolean array udg_CS_SingularityLimiter
real array udg_CS_SingularityCurrentSize
integer array udg_CS_ParalyseCounterSpeed
integer array udg_CS_ParalyseCounterCurrent
integer array udg_CS_ChaosGenerationRateCurrent
integer array udg_CS_ChaosGenerationRateSetting
integer array udg_CS_ParalysingOrbCount
integer array udg_CS_StrikeTotalCurrent
boolean array udg_CS_StasisFieldActive
real array udg_CS_CurrentDistance
unit array udg_CS_UnitIndex
integer array udg_CS_CurrentDelay
integer array udg_CS_StageID
integer udg_CS_Index=0
real udg_CS_Angle=0
group udg_CS_TempGroup=null
unit udg_CS_UnitIDStorage=null
integer udg_CS_SecondaryIndex=0
lightning array udg_CS_CurrentLightningEffect
group udg_CS_Targets=null
location udg_CS_TempPoint2=null
real udg_CS_TempX=0
real udg_CS_TempX2=0
real udg_CS_TempY=0
real udg_CS_TempY2=0
real udg_CS_TempZ=0
real udg_CS_TempZ2=0
integer udg_D_Skip=0
integer udg_D_Times=0
boolean array udg_D_Off
unit array udg_D_Caster
location array udg_D_Point
integer array udg_D_Level
integer array udg_D_Damage
real array udg_D_Aoe
real array udg_D_Duration
real array udg_D_Minus
unit array udg_D_Dummy
unit array udg_D_CasterDummy
integer udg_D=0
group array udg_D_Group
group udg_GeyserCasters=null
integer udg_CasterNumber=0
boolean array udg_arrayfilled
location array udg_GeyserPoint
unit array udg_CastingUnit
group udg_DamagedGroup=null
integer udg_S_index_size=0
integer array udg_S_index1
integer udg_S_index_max=0
integer udg_S_index2=0
boolean array udg_S_pause
real array udg_S_stopduration
real array udg_S_speed
unit array udg_S_caster
location udg_S_targetpoint=null
unit array udg_S_dummy
integer udg_S_index3=0
location udg_S_dummypoint=null
group array udg_S_stopgroup
unit udg_ToD_Caster=null
player udg_ToD_Owner=null
location udg_ToD_Position=null
real udg_ToD_Base_Heal=0
integer udg_ToD_Ability=0
integer udg_ToD_Base_Chance=0
real udg_ToD_Area_of_Effect=0
integer udg_ToD_Dummy_Ability=0
integer udg_ToD_Dummy_Ability_Frenzy=0
location udg_ToD_Target_Location=null
group udg_ToD_Heal_Group=null
integer udg_ToD_Unit_Counter=0
hashtable udg_Dark_Wave_Hash=null
integer udg_Dark_Wave_Ability=0
real array udg_Dark_Wave_Speed
real array udg_Dark_Wave_Radius_Detect
string udg_Dark_Wave_Effect
boolean udg_Dark_Wave_DestroyTrees=false
boolean udg_Dark_Wave_Alive=false
boolean udg_Dark_Wave_Ally=false
boolean udg_Dark_Wave_Structure=false
boolean udg_Dark_Wave_Mechanical=false
boolean udg_Dark_Wave_MagicImmune=false
real udg_Dark_Wave_Time_Event=0
real array udg_DWKB_Speed
real array udg_DWKB_Distance
real array udg_DWKB_Damage
attacktype udg_Knockback_Attack_Type=null
damagetype udg_Knockback_Damage_Type=null
string udg_Knockback_Effect
hashtable udg_Knockback_Hash=null
real udg_Knockback_Time_Event=0
unit udg_IsDestructableHarvester=null
unit udg_Dark_Wave_Caster=null
location udg_Dark_Wave_TempLoc1=null
location udg_Dark_Wave_TempLoc2=null
integer udg_Dark_Wave_Ability_Level=0
real udg_Dark_Wave_Angle=0
real udg_Dark_Wave_Distance=0
group udg_Dark_Wave_CasterG=null
integer udg_Dark_Wave_HandleID=0
destructable udg_IsDestructableTree=null
group udg_Dark_Wave_Search_Target=null
unit udg_Dark_Wave_Knockback_Unit=null
location udg_Dark_Wave_TempLoc3=null
integer udg_Knockback_HandleId=0
group udg_Knockback_Group=null
unit udg_Knockback_Unit=null
location udg_Knockback_TempLoc1=null
boolean udg_GameOver=false
texttag udg_AAAGeneratorText=null
rect gg_rct_AI_item_1=null
rect gg_rct_AI_item_2=null
rect gg_rct_AI_item_3=null
rect gg_rct_AI_item_4=null
rect gg_rct_AI_item_5=null
rect gg_rct_BlockMID_01=null
rect gg_rct_BlockMID_02=null
rect gg_rct_M0=null
rect gg_rct_MID=null
rect gg_rct_ProbeDroid01=null
rect gg_rct_ProbeDroid02=null
rect gg_rct_ProbeDroid03=null
rect gg_rct_Star_Wars_Zone=null
rect gg_rct_UndeadAT01=null
rect gg_rct_UndeadAT02=null
rect gg_rct_UndeadAT03=null
rect gg_rct_UndeadBase=null
rect gg_rct_UndeadItem01=null
rect gg_rct_UndeadItem02=null
rect gg_rct_UndeadItem03=null
rect gg_rct_UndeadItem04=null
rect gg_rct_UndeadItem05=null
rect gg_rct_UndeadItem06=null
rect gg_rct_UndeadPortal=null
rect gg_rct_Generator=null
rect gg_rct_UndeadDragon01=null
rect gg_rct_UndeadDragon02=null
camerasetup gg_cam_Camera_001=null
camerasetup gg_cam_Camera_002=null
camerasetup gg_cam_Camera_003=null
camerasetup gg_cam_Camera_004=null
camerasetup gg_cam_WIN_Camera_01=null
camerasetup gg_cam_WIN_Camera_02=null
sound gg_snd_ExplosionBig=null
sound gg_snd_ExplosionSmall=null
sound gg_snd_ExplosionLarge=null
sound gg_snd_Harpoon=null
sound gg_snd_Shockwave=null
sound gg_snd_ForcePush=null
sound gg_snd_ForcePull=null
sound gg_snd_HeatRipple=null
sound gg_snd_CrippleTarget=null
string gg_snd_DarkVictory
sound gg_snd_PlayerLeave=null
sound gg_snd_PortalCreate=null
sound gg_snd_Sniper=null
sound gg_snd_AAgun=null
sound gg_snd_AnnihilationGun=null
sound gg_snd_EmpireWin=null
trigger gg_trg_GameSTART=null
trigger gg_trg_MapINFO=null
trigger gg_trg_No_Player_1=null
trigger gg_trg_No_Player_2=null
trigger gg_trg_No_Player_3=null
trigger gg_trg_No_Player_4=null
trigger gg_trg_No_Player_5=null
trigger gg_trg_ProbeDroid_770=null
trigger gg_trg_MID_Unblock=null
trigger gg_trg_MID_DestroyeD=null
trigger gg_trg_CreepsRemove_1850=null
trigger gg_trg_GeneratorDestroyed=null
trigger gg_trg_GeneratorTEXT=null
trigger gg_trg_POWER_3300_Ready=null
trigger gg_trg_GeneratorWeapon=null
trigger gg_trg_Seconds_150=null
trigger gg_trg_Seconds_700=null
trigger gg_trg_MID_See=null
trigger gg_trg_MID_Block_01=null
trigger gg_trg_MID_Block_02=null
trigger gg_trg_MID_Secure=null
trigger gg_trg_Sniper_Sound=null
trigger gg_trg_AAgun_Sound=null
trigger gg_trg_Annihilation_Gun_Sound=null
trigger gg_trg_BETA_MapSee=null
trigger gg_trg_Player_1_Leave=null
trigger gg_trg_Player_2_Leave=null
trigger gg_trg_Player_3_Leave=null
trigger gg_trg_Player_4_Leave=null
trigger gg_trg_Player_5_Leave=null
trigger gg_trg_No_Generator_Kill_01=null
trigger gg_trg_No_Generator_Kill_02=null
trigger gg_trg_No_Generator_Kill_03=null
trigger gg_trg_No_Generator_Kill_04=null
trigger gg_trg_No_Generator_Kill_05=null
trigger gg_trg_No_Team_Kill_01=null
trigger gg_trg_No_Team_Kill_02=null
trigger gg_trg_No_Team_Kill_03=null
trigger gg_trg_No_Team_Kill_04=null
trigger gg_trg_No_Team_Kill_05=null
trigger gg_trg_No_Team_Kill_06=null
trigger gg_trg_No_Team_Kill_07=null
trigger gg_trg_PlayerLeave01=null
trigger gg_trg_PlayerLeave02=null
trigger gg_trg_PlayerLeave03=null
trigger gg_trg_PlayerLeave04=null
trigger gg_trg_PlayerLeave05=null
trigger gg_trg_PlayerLeave06=null
trigger gg_trg_UndeadHOLD01=null
trigger gg_trg_StopHOLD01=null
trigger gg_trg_UndeadHOLD02=null
trigger gg_trg_StopHOLD02=null
trigger gg_trg_UndeadDragon01=null
trigger gg_trg_UndeadDragon02=null
trigger gg_trg_UndeadDragon03=null
trigger gg_trg_UndeadHOLD03=null
trigger gg_trg_StopHOLD03=null
trigger gg_trg_UndeadDragon04=null
trigger gg_trg_UndeadDragon05=null
trigger gg_trg_UndeadHOLD04=null
trigger gg_trg_StopHOLD04=null
trigger gg_trg_UndeadDragon06=null
trigger gg_trg_UndeadDragon07=null
trigger gg_trg_UndeadDragon08=null
trigger gg_trg_Meat1=null
trigger gg_trg_Meat2=null
trigger gg_trg_Meat3=null
trigger gg_trg_Meat4=null
trigger gg_trg_Meat5=null
trigger gg_trg_Meat6=null
trigger gg_trg_Meat7=null
trigger gg_trg_Player_6_Gold=null
trigger gg_trg_Undead_Players_Gold=null
trigger gg_trg_Undead_10_Gold=null
trigger gg_trg_Undead_7=null
trigger gg_trg_Undead_8=null
trigger gg_trg_Undead_9=null
trigger gg_trg_Undead_11=null
trigger gg_trg_Undead_12=null
trigger gg_trg_UndeadWood01=null
trigger gg_trg_UndeadWood02=null
trigger gg_trg_UndeadWood03=null
trigger gg_trg_UndeadWood04=null
trigger gg_trg_UndeadWood05=null
trigger gg_trg_UndeadWood06=null
trigger gg_trg_Seconds_1550=null
trigger gg_trg_Seconds_4000=null
trigger gg_trg_Seconds_4400=null
trigger gg_trg_Seconds_4800=null
trigger gg_trg_Seconds_5300=null
trigger gg_trg_UndeadDragon10=null
trigger gg_trg_UndeadDragon11=null
trigger gg_trg_UndeadDragon12=null
trigger gg_trg_UndeadDragon13=null
trigger gg_trg_UndeadDragon14=null
trigger gg_trg_UndeadDragon15=null
trigger gg_trg_Start_AI_Attacks=null
trigger gg_trg_AI_Res_01=null
trigger gg_trg_AI_Res_02=null
trigger gg_trg_AI_Res_03=null
trigger gg_trg_AI_Res_04=null
trigger gg_trg_AI_Res_05=null
trigger gg_trg_AI_Res_STOP=null
trigger gg_trg_AI_Start_Item_01=null
trigger gg_trg_AI_Start_Item_02=null
trigger gg_trg_AI_Start_Item_03=null
trigger gg_trg_AI_Start_Item_04=null
trigger gg_trg_AI_Start_Item_05=null
trigger gg_trg_AI_item_01=null
trigger gg_trg_AI_item_02=null
trigger gg_trg_AI_item_03=null
trigger gg_trg_AI_item_04=null
trigger gg_trg_AI_item_05=null
trigger gg_trg_AI_item_01_II=null
trigger gg_trg_AI_item_02_II=null
trigger gg_trg_AI_item_03_II=null
trigger gg_trg_AI_item_04_II=null
trigger gg_trg_AI_item_05_II=null
trigger gg_trg_AI_item_01_III=null
trigger gg_trg_AI_item_02_III=null
trigger gg_trg_AI_item_03_III=null
trigger gg_trg_AI_item_04_III=null
trigger gg_trg_AI_item_05_III=null
trigger gg_trg_Random=null
trigger gg_trg_SetRandom=null
trigger gg_trg_Big_Explosion_1=null
trigger gg_trg_Big_Explosion_2=null
trigger gg_trg_Big_Explosion_3=null
trigger gg_trg_Big_Explosion_4=null
trigger gg_trg_Big_Explosion_5=null
trigger gg_trg_Big_Explosion_6=null
trigger gg_trg_Big_Explosion_7=null
trigger gg_trg_Mine_Explosion=null
trigger gg_trg_Explosion_1=null
trigger gg_trg_Explosion_2=null
trigger gg_trg_Explosion_3=null
trigger gg_trg_Explosion_4=null
trigger gg_trg_Explosion_5=null
trigger gg_trg_EMPIRE_WIN=null
trigger gg_trg_Standart_Camera=null
trigger gg_trg_Medium_Camera=null
trigger gg_trg_Far_Camera=null
trigger gg_trg_SithMask=null
trigger gg_trg_LightSaber=null
trigger gg_trg_Rog_of_power=null
trigger gg_trg_Ring_of_Fire=null
trigger gg_trg_Ring_of_Water=null
trigger gg_trg_Magic_Reload=null
trigger gg_trg_Heal=null
trigger gg_trg_Black_Hole_Init=null
trigger gg_trg_Black_Hole_Helpful_Files=null
trigger gg_trg_Black_Hole_Config=null
trigger gg_trg_Black_Hole_Execution=null
trigger gg_trg_Black_Hole_Loop_Pull=null
trigger gg_trg_Bonebreaker=null
trigger gg_trg_Knockback_Index=null
trigger gg_trg_Knockback_Move=null
trigger gg_trg_Initial_Telekinesis_GUI=null
trigger gg_trg_Telekinesis_GUI=null
trigger gg_trg_Shadowstep=null
trigger gg_trg_VO_Start=null
trigger gg_trg_VO_Loop=null
trigger gg_trg_Fire_Ball_Setings=null
trigger gg_trg_Fire_Ball_Loop=null
trigger gg_trg_Psychic_Rape=null
trigger gg_trg_Wound_Poison=null
trigger gg_trg_Initialization_Fan_of_Knives=null
trigger gg_trg_Fan_of_Knives=null
trigger gg_trg_Fan_of_Knives_Execution=null
trigger gg_trg_Telekinetic_Seizure_Setings=null
trigger gg_trg_Telekinetic_Seizure_Loop=null
trigger gg_trg_CE_Initialization=null
trigger gg_trg_Cutting_Edge=null
trigger gg_trg_Cutting_Edge_Knock=null
trigger gg_trg_Remove_Dummies=null
trigger gg_trg_Shade_Sheild_On=null
trigger gg_trg_Shade_Sheild_Loop=null
trigger gg_trg_BA_Initialization=null
trigger gg_trg_Beast_Attack=null
trigger gg_trg_Beast_Attack_Knock=null
trigger gg_trg_Sinister_Strike=null
trigger gg_trg_SInitialization=null
trigger gg_trg_Shockwave_Cast=null
trigger gg_trg_Shockwave_Slide=null
trigger gg_trg_Ion_Canon=null
trigger gg_trg_Magic_Leash=null
trigger gg_trg_Magic_Leash_Move=null
trigger gg_trg_Hook_Table=null
trigger gg_trg_Hook=null
trigger gg_trg_Hook_Loop=null
trigger gg_trg_Elune_Arrow=null
trigger gg_trg_Elune_Arrow_Move=null
trigger gg_trg_Lightning_Ball_Begin=null
trigger gg_trg_Lightning_Ball_Move=null
trigger gg_trg_Heat_Ripple=null
trigger gg_trg_Heat_Ripple_Loop=null
trigger gg_trg_Tornado=null
trigger gg_trg_Tornado_Damage=null
trigger gg_trg_Heroic_Leap_vAoE_Cast=null
trigger gg_trg_Heroic_Leap_vAoE_Slide=null
trigger gg_trg_Mana_Leak_Cast=null
trigger gg_trg_Mana_Leak_Loop=null
trigger gg_trg_HookIni=null
trigger gg_trg_HookCast=null
trigger gg_trg_HookLoop=null
trigger gg_trg_HookRemoveDummys=null
trigger gg_trg_Bouncer_Main=null
trigger gg_trg_Bouncer_Loop=null
trigger gg_trg_LDH_Helpful_Files=null
trigger gg_trg_Lightning_Down_Hatred_Configuration=null
trigger gg_trg_LDH_Execute=null
trigger gg_trg_LDH_Loop=null
trigger gg_trg_Rapid_Firebolt_Setting=null
trigger gg_trg_Rapid_Firebolt_Cast=null
trigger gg_trg_Rapid_Firebolt_Loop=null
trigger gg_trg_Counter_Helix_Setup=null
trigger gg_trg_Counter_Helix_Loop=null
trigger gg_trg_Counter_Helix=null
trigger gg_trg_Electrify_Settings=null
trigger gg_trg_Electrify_Cast=null
trigger gg_trg_Electrify_Loop=null
trigger gg_trg_death_special_effect=null
trigger gg_trg_crab_bomb_path=null
trigger gg_trg_crab_bomb_path_loop=null
trigger gg_trg_PD_Configuration=null
trigger gg_trg_PD_Cast=null
trigger gg_trg_PD_Loop=null
trigger gg_trg_Chaos_Singularity_Configuration=null
trigger gg_trg_Chaos_Singularity_Activation=null
trigger gg_trg_Chaos_Singularity_Loop=null
trigger gg_trg_Chaos_Singularity_Cleanup=null
trigger gg_trg_Doom_Cast=null
trigger gg_trg_Doom_Loop=null
trigger gg_trg_Stop_cast=null
trigger gg_trg_Stop_loop=null
trigger gg_trg_Geyser=null
trigger gg_trg_FlyingShades=null
trigger gg_trg_Taste_of_Death=null
trigger gg_trg_DW_Config=null
trigger gg_trg_DW_Cast=null
trigger gg_trg_DW_Loop=null
trigger gg_trg_DW_KB=null
unit gg_unit_hpea_0480=null
unit gg_unit_unpl_0688=null
unit gg_unit_unpl_0678=null
unit gg_unit_hpea_0217=null
unit gg_unit_n00G_0014=null
unit gg_unit_n00G_0008=null
unit gg_unit_n00G_0009=null
unit gg_unit_nndr_0158=null
unit gg_unit_nvde_0037=null
unit gg_unit_n00Q_0669=null
unit gg_unit_nvde_0101=null
unit gg_unit_nvde_0064=null
unit gg_unit_n00Q_0673=null
unit gg_unit_hpea_0485=null
unit gg_unit_hpea_0314=null
unit gg_unit_n00G_0010=null
unit gg_unit_hpea_0322=null
unit gg_unit_hpea_0318=null
unit gg_unit_hpea_0317=null
unit gg_unit_hpea_0316=null
unit gg_unit_hpea_0482=null
unit gg_unit_htow_0481=null
unit gg_unit_hpea_0319=null
unit gg_unit_hpea_0413=null
unit gg_unit_hpea_0323=null
unit gg_unit_hpea_0324=null
unit gg_unit_hpea_0321=null
unit gg_unit_hpea_0320=null
unit gg_unit_hpea_0483=null
unit gg_unit_htow_0484=null
unit gg_unit_hpea_0313=null
unit gg_unit_hpea_0311=null
unit gg_unit_hpea_0310=null
unit gg_unit_nndr_0331=null
unit gg_unit_nvde_0332=null
unit gg_unit_nndr_0024=null
unit gg_unit_nndr_0025=null
unit gg_unit_unpl_0584=null
unit gg_unit_n007_0105=null
unit gg_unit_htow_0047=null
unit gg_unit_hpea_0129=null
unit gg_unit_hpea_0228=null
unit gg_unit_hpea_0315=null
unit gg_unit_hpea_0247=null
unit gg_unit_hpea_0309=null
unit gg_unit_hpea_0218=null
unit gg_unit_hpea_0325=null
unit gg_unit_hpea_0326=null
unit gg_unit_hpea_0327=null
unit gg_unit_hpea_0328=null
unit gg_unit_hpea_0329=null
unit gg_unit_hpea_0486=null
unit gg_unit_htow_0487=null
unit gg_unit_hpea_0488=null
unit gg_unit_hpea_0489=null
unit gg_unit_owtw_0533=null
unit gg_unit_hpea_0491=null
unit gg_unit_hpea_0492=null
unit gg_unit_hpea_0514=null
unit gg_unit_hpea_0516=null
unit gg_unit_hpea_0517=null
unit gg_unit_hpea_0518=null
unit gg_unit_htow_0519=null
unit gg_unit_hpea_0520=null
unit gg_unit_u001_0415=null
unit gg_unit_nvde_0194=null
unit gg_unit_nvde_0128=null
unit gg_unit_nvde_0127=null
unit gg_unit_nvde_0115=null
unit gg_unit_n00Q_0667=null
unit gg_unit_n00Q_0666=null
unit gg_unit_h015_0457=null
unit gg_unit_n00R_0689=null
unit gg_unit_n00Q_0671=null
unit gg_unit_n00Q_0672=null
unit gg_unit_n00Q_0670=null
unit gg_unit_n00Q_0668=null
destructable gg_dest_YTfc_4732=null
destructable gg_dest_YTfc_4746=null
destructable gg_dest_YTfc_4741=null
destructable gg_dest_YTfc_4745=null
destructable gg_dest_YTfc_4742=null
destructable gg_dest_B002_2026=null
destructable gg_dest_YTfc_2173=null
destructable gg_dest_YTfc_4739=null
destructable gg_dest_YTfc_4740=null
destructable gg_dest_YTfc_2027=null
destructable gg_dest_B001_1434=null
destructable gg_dest_B002_4751=null
destructable gg_dest_B002_4747=null
destructable gg_dest_YTfc_4731=null
destructable gg_dest_YTfc_1551=null
destructable gg_dest_B002_4748=null
destructable gg_dest_YTfc_4743=null
destructable gg_dest_B002_4752=null
destructable gg_dest_B002_4753=null
destructable gg_dest_YTfc_4730=null
destructable gg_dest_YTfc_3708=null
destructable gg_dest_YTfc_2311=null
destructable gg_dest_YTfc_2604=null
destructable gg_dest_YTfc_2592=null
destructable gg_dest_YTfc_2577=null
destructable gg_dest_YTfc_2609=null
destructable gg_dest_YTfc_2608=null
destructable gg_dest_YTfc_2613=null
destructable gg_dest_YTfc_2605=null
destructable gg_dest_B002_4754=null
destructable gg_dest_YTfc_4744=null
destructable gg_dest_YTfc_2688=null
destructable gg_dest_YTfc_2684=null
destructable gg_dest_B002_2214=null
endglobals
function InitGlobals takes nothing returns nothing
local integer i=0
set i=0
loop
exitwhen(i>1)
set udg_LS_Groups[i]=CreateGroup()
set i=i+1
endloop
set udg_KBA_Level=0
set udg_KBA_Speed=0
set udg_KBA_DistancePerLevel=0
set i=0
loop
exitwhen(i>1)
set udg_KBA_SpecialEffects[i]=""
set i=i+1
endloop
set udg_KBA_DestroyTrees=false
set udg_KB_KnockbackedUnits=CreateGroup()
set udg_KB_CountBuffs=0
set udg_KB_TotalKnockUnits=0
set i=0
loop
exitwhen(i>1)
set udg_KB_Levels[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_MaxDistance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_ReachedDistance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_ReduceSpeedReal[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_SpecificSpeed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_Effects_1[i]=""
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_Effects_2[i]=""
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_DestroyTrees[i]=false
set i=i+1
endloop
set udg_KB_ReducedReal=0
set udg_KB_TempReal=0
set udg_KB_Max=0
set udg_kb=0
set i=0
loop
exitwhen(i>1)
set udg_KB_MaxDist[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_Speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_KB_Dist[i]=0
set i=i+1
endloop
set udg_TK_SpellAoEStart=0
set udg_TK_SpellAoEIncreasement=0
set udg_TK_MinHeightStart=0
set udg_TK_MinHeightIncreasement=0
set udg_TK_MaxHeightStart=0
set udg_TK_MaxHeightIncreasement=0
set udg_TK_Speed=0
set udg_TK_SpeedVariationPerc=0
set udg_TK_LiftSFX=""
set udg_TK_LiftSFXTimer=0
set udg_TK_StartSFX=""
set udg_TK_ImpactSFX=""
set udg_TK_HDmgInPercStart=0
set udg_TK_HDmgInPercIncreasement=0
set udg_TK_ImpactDmgStart=0
set udg_TK_ImpactDmgIncreasement=0
set udg_TK_Pause=false
set udg_TK_UnitGroup=CreateGroup()
set udg_TK_FlyingUnits=CreateGroup()
set i=0
loop
exitwhen(i>1)
set udg_TK_Integers[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TK_Level[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TK_Interval[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TK_LsfxT[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TK_MaxHeight[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TK_FSpeed[i]=0
set i=i+1
endloop
set udg_EL_Ability_Level=0
set udg_EL_Base_Number_of_Ligtnings=0
set udg_EL_Total_Number_of_Ligtnings=0
set udg_EL_Seek_Area_of_Effect=0
set udg_EL_Damage_Area_of_Effect=0
set udg_EL_Base_Damage=0
set udg_EL_Total_Damage=0
set udg_EL_Damage_Group=CreateGroup()
set udg_EL_Seek_Group=CreateGroup()
set udg_TS_Skip=0
set udg_TS_Times=0
set i=0
loop
exitwhen(i>1)
set udg_TS_Off[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Radius[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Distance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_MaxDistance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Height[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Slams[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Group[i]=CreateGroup()
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_TS_Parabola[i]=0
set i=i+1
endloop
set udg_FB_Skip=0
set udg_FB_Times=0
set i=0
loop
exitwhen(i>1)
set udg_FB_Off[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Big[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Distance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_AoE[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Colision[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Fragments[i]=0
set i=i+1
endloop
set udg_FB_Scale=0
set i=0
loop
exitwhen(i>1)
set udg_FB_Group[i]=CreateGroup()
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Parabola[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_Height[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_FB_MaxDistance[i]=0
set i=i+1
endloop
set udg_Shadowstep_Ability_Level=0
set udg_Shadowstep_Loop_Number=0
set udg_Shadowstep_Base_Damage=0
set udg_Shadowstep_Damage_Multiplier=0
set udg_Shadowstep_Total_Damage=0
set udg_Shadowstep_Calculation=0
set udg_PR_Ability_Level=0
set udg_PR_Damage_Factor=0
set udg_PR_Atribute=0
set udg_PR_Damage=0
set udg_PR_Target_Mana=0
set udg_Multi_Shot_Ability_Level=0
set udg_Multi_Shot_Facing=0
set udg_Multi_Shot_Base_Arrow_Count=0
set udg_Multi_Shot_Total_Arrow_Count=0
set i=0
loop
exitwhen(i>1)
set udg_VO_index[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_VO_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_VO_Duration[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_VO_Boolean[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_VO_Speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_VO_Angle[i]=0
set i=i+1
endloop
set udg_FoK_Ability_Level=0
set udg_FoK_Random_Path=false
set udg_FoK_Random_Movement=false
set udg_FoK_Knives_Count=0
set udg_FoK_Base_Damage=0
set udg_FoK_Detection_Area=0
set udg_FoK_Total_Damage=0
set udg_FoK_Distance=0
set udg_FoK_Speed=0
set udg_FoK_Spiral_Angle=0
set udg_FoK_Angle=0
set udg_FoK_Dummy_Group=CreateGroup()
set udg_FoK_Facing=0
set udg_FoK_Damage_Group=CreateGroup()
set udg_CE_Ability_Level=0
set udg_CE_Base_Damage=0
set udg_CE_Total_Damage=0
set udg_CE_Area_of_Effect=0
set udg_CE_Destroy_Trees=false
set udg_CE_Pathing_On=false
set udg_CE_Knock_Angle=0
set udg_CE_Knock_Speed=0
set udg_CE_Knock_Distance=0
set udg_CE_Knock_Group=CreateGroup()
set udg_CE_Damage_Group=CreateGroup()
set udg_SS_Skip=0
set udg_SS_LEVEL=0
set udg_Sheild_How_Many=0
set i=0
loop
exitwhen(i>1)
set udg_SS_Number[i]=0
set i=i+1
endloop
set udg_SS_Times=0
set i=0
loop
exitwhen(i>1)
set udg_SS_Rotate_Off[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Knockback_Off[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Angle_Speed_Rotation[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Countdown[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Distance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Formula[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_SS_Group[i]=CreateGroup()
set i=i+1
endloop
set udg_Beast_Attack_Ability_Level=0
set udg_Beast_Attack_Direction=0
set udg_Beast_Attack_Destroy_Trees=false
set udg_Beast_Attack_Knock_Back_on=false
set udg_Beast_Attack_Random_Distance=false
set udg_Beast_Attack_KB_Special_Effect=""
set udg_Beast_Attack_Destroy_Trees_SE=""
set udg_Beast_Attack_Base_Offset=0
set udg_Beast_Attack_Bonus_Offset=0
set udg_Beast_Attack_Base_Radius=0
set udg_Beast_Attack_Bonus_Radius=0
set udg_Beast_Attack_Atribute=0
set udg_Beast_Attack_Damage_Multiplier=0
set udg_Beast_Attack_Destruct_Kill_AoE=0
set udg_Beast_Attack_KB_Minim_Distance=0
set udg_Beast_Attack_KB_Base_Distance=0
set udg_Beast_Attack_KB_Bonus_Distance=0
set udg_Beast_Attack_KB_Speed=0
set udg_Beast_Attack_Total_Radius=0
set udg_Beast_Attack_Total_Offset=0
set udg_Beast_Attack_Total_Damage=0
set udg_Beast_Attack_KB_Total_Distance=0
set udg_Beast_Attack_Damage_Group=CreateGroup()
set udg_Beast_Attack_KB_Group=CreateGroup()
set udg_Beast_Attack_KB_Angle=0
set i=0
loop
exitwhen(i>1)
set udg_PH_Index[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_PH_Counter[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_PH_Hook_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_PH_Hooked_Is[i]=false
set i=i+1
endloop
set udg_PH_Damage=0
set udg_PH_Distance=0
set udg_AngleVar05=0
set udg_Sinister_Strike_Ability_Level=0
set udg_Sinister_Strike_Damage_Factor=0
set udg_Sinister_Strike_Total_Damage=0
set udg_Sinister_Strike_Normal_Armor=0
set udg_Sinister_Strike_Total_Chance=0
set i=0
loop
exitwhen(i>1)
set udg_Real[i]=0
set i=i+1
endloop
set udg_Shockwaves=CreateGroup()
set udg_Enemies=CreateGroup()
set udg_Ion_Canon_Ability_Level=0
set udg_Ion_Canon_Distance=0
set udg_Ion_Canon_Loop_Number=0
set udg_Ion_Canon_Base_Damage=0
set udg_Ion_Canon_Total_Damage=0
set udg_Ion_Canon_Base_Mana_Burn=0
set udg_Ion_Canon_Total_Mana_Burn=0
set udg_Ion_Canon_AoE=0
set udg_Ion_Canon_Damage_Group=CreateGroup()
set udg_TempGroup1=CreateGroup()
set udg_crab_bomb_path=CreateGroup()
set udg_BUMPED=CreateGroup()
set udg_HR_Index_Size=0
set i=0
loop
exitwhen(i>1)
set udg_HR_Index[i]=0
set i=i+1
endloop
set udg_HR_Index_maxSize=0
set udg_TempInt=0
set i=0
loop
exitwhen(i>1)
set udg_HR_Offset[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_HR_Degree[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_HR_Dur[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_HR_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_HR_AoE[i]=0
set i=i+1
endloop
set udg_Arrow_Counts=0
set udg_Arrow_CountMaxSize=0
set udg_Arrow_Angle=0
set udg_Arrow_StartGroup=CreateGroup()
set i=0
loop
exitwhen(i>1)
set udg_Arrow_Distance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_Arrow_DistanceTravel[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_Arrow_StunDuration[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_Arrow_DistanceCount[i]=0
set i=i+1
endloop
set udg_Arrow_CusValue=0
set udg_Arrow_UnitGroup=CreateGroup()
set udg_Arrow_RandomUnit=CreateGroup()
set i=0
loop
exitwhen(i>1)
set udg_LP_Integer[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LP_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LP_Tick[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LP_DummyGroup[i]=CreateGroup()
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LP_Strike[i]=CreateGroup()
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LP_NonStrike[i]=CreateGroup()
set i=i+1
endloop
set udg_i2=0
set udg_a=0
set udg_Hook_Heads=CreateGroup()
set udg_i=0
set udg_r=0
set udg_x=0
set udg_x2=0
set udg_y=0
set udg_y2=0
set udg_TO_Max=0
set i=0
loop
exitwhen(i>1)
set udg_TO_Duration[i]=0
set i=i+1
endloop
set udg_group=CreateGroup()
set udg_LifeLeaks=CreateGroup()
set udg_ManaDrain_Integer=0
set udg_MUI2=0
set i=0
loop
exitwhen(i>1)
set udg_B_Level[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_B_NumBounces[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_B_MaxBounces[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_B_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_B_Increment[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_B_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_B_Distance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_B_HitGroup[i]=CreateGroup()
set i=i+1
endloop
set udg_AoELeapers=CreateGroup()
set udg_DSB_Dummy2_Animation=""
set udg_DSB_Animation_Speed=0
set udg_DSB_Dummy2_Lifetime=0
set udg_DSB_Dummy2_RED=0
set udg_DSB_Dummy2_GREEN=0
set udg_DSB_Dummy2_BLUE=0
set udg_DSB_Dummy2_Transparency=0
set i=0
loop
exitwhen(i>1)
set udg_DSB_Damage[i]=0
set i=i+1
endloop
set udg_DSB_AoE=0
set udg_DSB_Distance=0
set udg_DSB_Start_Range=0
set udg_DSB_Special_Effect=""
set udg_DSB_Special_Effect_Location=""
set udg_DSB_Destroy_Tree=false
set udg_DSB_Shadow=false
set i=0
loop
exitwhen(i>1)
set udg_DSB_Conditions[i]=false
set i=i+1
endloop
set udg_DSB_Max_Index=0
set i=0
loop
exitwhen(i>1)
set udg_DSB_Ability_Level[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_DSB_Angle[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_DSB_Shdow[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_DSB_Stage[i]=0
set i=i+1
endloop
set udg_DSB_Damage_Group=CreateGroup()
set i=0
loop
exitwhen(i>1)
set udg_DSB_UnDamage_Group[i]=CreateGroup()
set i=i+1
endloop
set udg_E0_DestroyTree=false
set udg_E0_AoE_Base=0
set udg_E0_AoE_Increment=0
set udg_E0_DamageAmount_Base=0
set udg_E0_DamageAmount_Increment=0
set udg_E0_DamageDelay=0
set udg_E0_Dummy_Size=0
set udg_E0_Duration_Base=0
set udg_E0_Duration_Increment=0
set udg_E0_Travel_Time=0
set udg_E0_Speed_Enemy=0
set udg_E0_ProjectileMaximumZ=0
set udg_E0_ProjectileLaunchZ=0
set udg_E0_ProjectileImpactZ=0
set udg_E0_MaxTargets_Base=0
set udg_E0_MaxTargets_Increment=0
set udg_E0_S_Chest_Primary=""
set udg_E0_S_Chest_Alternative=""
set udg_E0_S_Chest_Enemy=""
set udg_E0_S_DamageUnit=""
set udg_E0_S_Impact=""
set udg_E0_S_Origin=""
set udg_E1_Index_Size=0
set i=0
loop
exitwhen(i>1)
set udg_E1_Index_Itself[i]=0
set i=i+1
endloop
set udg_E1_Index_Max=0
set udg_E1_Current=0
set i=0
loop
exitwhen(i>1)
set udg_E1_Level[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_Splash[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_Boom[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_ZDuration[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_ZInterval[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_ZMaxHeight[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_AoE[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_Duration[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_MaxTarget[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_E1_Angle[i]=0
set i=i+1
endloop
set udg_E2_Allow=false
set udg_E2_Index_Size=0
set i=0
loop
exitwhen(i>1)
set udg_E2_Index_Itself[i]=0
set i=i+1
endloop
set udg_E2_Index_Max=0
set udg_E2_Current=0
set i=0
loop
exitwhen(i>1)
set udg_E2_Duration[i]=0
set i=i+1
endloop
set udg_CH_Allow_Text=false
set udg_CH_Allow_Tree=false
set i=0
loop
exitwhen(i>1)
set udg_CH_AoE[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CH_Chance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CH_Damage[i]=0
set i=i+1
endloop
set udg_CH_Spin_Max=0
set udg_CH_Model=""
set udg_CH_Text_Angle=0
set udg_CH_Text_FadingAge=0
set udg_CH_Text_LifeSpan=0
set udg_CH_Text_Size=0
set i=0
loop
exitwhen(i>1)
set udg_CH_Group[i]=CreateGroup()
set i=i+1
endloop
set udg_CH_Spin_Current=0
set udg_CH_Level=0
set udg_CH_Text_Player=CreateForce()
set i=0
loop
exitwhen(i>1)
set udg_RF_AoE[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_FireboltNumber[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_FireboltSpawnInterval[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_FireboltSpawnHeight[i]=0
set i=i+1
endloop
set udg_RF_TravelBySpeed=false
set i=0
loop
exitwhen(i>1)
set udg_RF_FireboltTravelSpeed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_FireboltTravelTime[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_ExplosionEffect[i]=""
set i=i+1
endloop
set udg_RF_ExplosionEffectNumber=0
set i=0
loop
exitwhen(i>1)
set udg_RF_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_DamageRadius[i]=0
set i=i+1
endloop
set udg_RF_DestroyTrees=false
set udg_RF_MaxIndex=0
set i=0
loop
exitwhen(i>1)
set udg_RF_Level[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_FireboltCount[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_rTimer[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_StageId[i]=0
set i=i+1
endloop
set udg_RF_TempGroup=CreateGroup()
set i=0
loop
exitwhen(i>1)
set udg_RF_VSpeed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_Distance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_HSpeed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_RF_Angle[i]=0
set i=i+1
endloop
set udg_RF_X=0
set udg_RF_Y=0
set udg_E2_x1=0
set udg_E2_x2=0
set udg_E2_y1=0
set udg_E2_y2=0
set udg_E2_Angle=0
set i=0
loop
exitwhen(i>1)
set udg_E1_Speed[i]=0
set i=i+1
endloop
set udg_Drain_Max=0
set i=0
loop
exitwhen(i>1)
set udg_Drain_Targets[i]=CreateGroup()
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_Drain_Range[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_Drain_Value[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_Drain_Interval[i]=0
set i=i+1
endloop
set udg_Drain_Life_Max=0
set udg_LDH_FinalParabola=0
set udg_LDH_MX=0
set udg_LDH_MY=0
set udg_LDH_X=0
set udg_LDH_Y=0
set udg_LDH_Cos=0
set udg_LDH_Sin=0
set udg_LDH_PW=0
set i=0
loop
exitwhen(i>1)
set udg_LDH_AirDamage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LDH_AirDamageChance[i]=0
set i=i+1
endloop
set udg_LDH_AirEffects=""
set udg_LDH_AirEffectPoint=""
set i=0
loop
exitwhen(i>1)
set udg_LDH_BlastArea[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LDH_DestroyTreesAreaStart[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LDH_DestroyTreesAreaLoop[i]=0
set i=i+1
endloop
set udg_LDH_Effects=""
set udg_LDH_Effects2=""
set i=0
loop
exitwhen(i>1)
set udg_LDH_ImpactArea[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LDH_ImpactDamage[i]=0
set i=i+1
endloop
set udg_LDH_ImpactEffect=""
set udg_LDH_ImpactPickedUnitEffect=""
set i=0
loop
exitwhen(i>1)
set udg_LDH_MaxHeight[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LDH_NumberOfEffects[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_LDH_Speed[i]=0
set i=i+1
endloop
set udg_LDH_Level=0
set udg_LDH_Angle=0
set udg_LDH_GroupStart=CreateGroup()
set udg_LDH_Angle2=0
set udg_LDH_DistanceRange=0
set udg_LDH_CurrentDistanceRange=0
set udg_LDH_ID=0
set udg_LDH_GroupLoop=CreateGroup()
set udg_LDG_ImpactGroup=CreateGroup()
set udg_BH_Key=0
set udg_BH_MX=0
set udg_BH_MY=0
set udg_BH_PullUnitsX=0
set udg_BH_PullUnitsY=0
set udg_BH_X=0
set udg_BH_Y=0
set udg_BH_SpellX=0
set udg_BH_SpellY=0
set udg_BH_ColorRed=0
set udg_BH_ColorGreen=0
set udg_BH_ColorBlue=0
set udg_BH_UnitSize=0
set udg_BH_UnitSizePerLevel=0
set udg_BH_FlyHeight=0
set udg_BH_FlyHeightPerLevel=0
set udg_BH_Transparency=0
set udg_BH_TransparencyPerLevel=0
set udg_BH_Duration=0
set udg_BH_DurationPerLevel=0
set udg_BH_Damage=0
set udg_BH_DamagePerLevel=0
set udg_BH_Radius=0
set udg_BH_RadiusPerLevel=0
set udg_BH_SmallRadius=0
set udg_BH_SmallRadiusPerLevel=0
set udg_BH_SmallRadDamage=0
set udg_BH_SmallRadDamagePerLevel=0
set udg_BH_CenterRadius=0
set udg_BH_CenterRadiusPerLevel=0
set udg_BH_CenterDamage=0
set udg_BH_CenterDamagePerLevel=0
set udg_BH_CenterChance=0
set udg_BH_CenterChancePerLevel=0
set udg_BH_CenterIgnoreUnitTypes=false
set udg_BH_SpeedPull=0
set udg_BH_SpeedPullPerLevel=0
set udg_BH_ChanceEffect=0
set udg_BH_ChanceEffectPerLevel=0
set udg_BH_SmallRadiusDamageEffect=""
set udg_BH_SmallRadiusAttachment=""
set udg_BH_CenterSFX=""
set udg_BH_SpawnEffect=""
set udg_BH_DamageSfx=""
set udg_BH_Level=0
set udg_BH_RealLevel=0
set i=0
loop
exitwhen(i>1)
set udg_BH_Reals[i]=0
set i=i+1
endloop
set udg_BH_Counter=0
set udg_BH_Group=CreateGroup()
set udg_BH_ActiveInstances=0
set udg_BH_SmallRadGroup=CreateGroup()
set udg_BH_SmallRadiusDistance=0
set udg_BH_CenterIgnoreGroup=CreateGroup()
set udg_BH_CenterGroup=CreateGroup()
set udg_BH_PullGroup=CreateGroup()
set udg_PD_Lightning_Type=""
set udg_PD_Starting_Height=0
set udg_PD_Max_Height_Base=0
set udg_PD_Max_Height_Level=0
set udg_PD_Height_Decrease_Base=0
set udg_PD_Height_Decrease_Level=0
set udg_PD_Rotation_Base=0
set udg_PD_Rotation_Level=0
set udg_PD_Orb_Grow_Base=0
set udg_PD_Orb_Grow_Level=0
set udg_PD_Distance_Base=0
set udg_PD_Distance_Level=0
set udg_PD_Grow_Effect=""
set udg_PD_Speed_Base=0
set udg_PD_Speed_Level=0
set udg_PD_Orbs_Amount_Base=0
set udg_PD_Orbs_Amount_Level=0
set udg_PD_Damage_Base=0
set udg_PD_Damage_Level=0
set udg_PD_Area_of_Effect_Base=0
set udg_PD_Area_of_Effect_Level=0
set udg_PD_Damage_Effect=""
set udg_PD_Damage_Attachement=""
set udg_PD_End_Effect=""
set udg_PD_Grow_Timer=0
set udg_PD_Grow_Attachement=""
set udg_PD_TmpInteger=0
set udg_PD_Group=CreateGroup()
set udg_PD_TmpReal=0
set udg_PD_TmpInteger2=0
set udg_PD_TmpX=0
set udg_PD_TmpY=0
set udg_PD_TmpReal2=0
set udg_PD_TmpX2=0
set udg_PD_TmpY2=0
set udg_CS_AoeBase=0
set udg_CS_AoePerLevel=0
set udg_CS_StartDelay=0
set udg_CS_ParalyseDamageBase=0
set udg_CS_ParalyseDamagePerLevel=0
set udg_CS_ParalyseCounterSpeedBase=0
set udg_CS_ParalyseCounterSpeedPerLvl=0
set udg_CS_ParalyseCounterMax=0
set udg_CS_RotatingOrbCount=0
set udg_CS_ParalysingOrbCountBase=0
set udg_CS_ParalysingOrbCountPerLevel=0
set udg_CS_SegmentSpreadOutSpeed=0
set udg_CS_SegmentScaling=0
set udg_CS_LightningRed=0
set udg_CS_LightningGreen=0
set udg_CS_LightningBlue=0
set udg_CS_SingularitySpawnSize=0
set udg_CS_SingularityGrowthSpeed=0
set udg_CS_SingularityFinalSize=0
set udg_CS_SingularitySrinkSpeed=0
set udg_CS_SingularityDamageBase=0
set udg_CS_SingularityDamagePerLevel=0
set udg_CS_StrikeTotal=0
set udg_CS_RevolvingSpeed=0
set udg_CS_ChaosGenerationRateMin=0
set udg_CS_ChaosGenerationRateMax=0
set udg_CS_HeightIncrement=0
set udg_CS_EffectScalingSpawn=0
set udg_CS_LightningZ=0
set udg_CS_SingularityModel=""
set udg_CS_ObelixModel=""
set udg_CS_SegmentsModel=""
set udg_CS_RotatingOrbsModel=""
set udg_CS_SpawnSFX=""
set udg_CS_DissappearenceSFX=""
set udg_CS_LightningEffect=""
set udg_CS_MaxIndex=0
set udg_CS_TempInteger=0
set udg_CS_TempReal=0
set i=0
loop
exitwhen(i>1)
set udg_CS_ActiveLightning[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_Aoe[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_ParalyseDamage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_SingularityDamage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_SingularityLimiter[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_SingularityCurrentSize[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_ParalyseCounterSpeed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_ParalyseCounterCurrent[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_ChaosGenerationRateCurrent[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_ChaosGenerationRateSetting[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_ParalysingOrbCount[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_StrikeTotalCurrent[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_StasisFieldActive[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_CurrentDistance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_CurrentDelay[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_CS_StageID[i]=0
set i=i+1
endloop
set udg_CS_Angle=0
set udg_CS_TempGroup=CreateGroup()
set udg_CS_Targets=CreateGroup()
set udg_CS_TempX=0
set udg_CS_TempX2=0
set udg_CS_TempY=0
set udg_CS_TempY2=0
set udg_CS_TempZ=0
set udg_CS_TempZ2=0
set udg_D_Skip=0
set udg_D_Times=0
set i=0
loop
exitwhen(i>1)
set udg_D_Off[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_D_Level[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_D_Damage[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_D_Aoe[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_D_Duration[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_D_Minus[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_D_Group[i]=CreateGroup()
set i=i+1
endloop
set udg_GeyserCasters=CreateGroup()
set udg_CasterNumber=0
set i=0
loop
exitwhen(i>1)
set udg_arrayfilled[i]=false
set i=i+1
endloop
set udg_DamagedGroup=CreateGroup()
set udg_S_index_size=0
set i=0
loop
exitwhen(i>1)
set udg_S_index1[i]=0
set i=i+1
endloop
set udg_S_index_max=0
set udg_S_index2=0
set i=0
loop
exitwhen(i>1)
set udg_S_pause[i]=false
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_S_stopduration[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_S_speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_S_stopgroup[i]=CreateGroup()
set i=i+1
endloop
set udg_ToD_Base_Heal=0
set udg_ToD_Ability=0
set udg_ToD_Base_Chance=0
set udg_ToD_Area_of_Effect=0
set udg_ToD_Heal_Group=CreateGroup()
set udg_ToD_Unit_Counter=0
set i=0
loop
exitwhen(i>1)
set udg_Dark_Wave_Speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_Dark_Wave_Radius_Detect[i]=0
set i=i+1
endloop
set udg_Dark_Wave_Effect=""
set udg_Dark_Wave_DestroyTrees=false
set udg_Dark_Wave_Alive=false
set udg_Dark_Wave_Ally=false
set udg_Dark_Wave_Structure=false
set udg_Dark_Wave_Mechanical=false
set udg_Dark_Wave_MagicImmune=false
set udg_Dark_Wave_Time_Event=0
set i=0
loop
exitwhen(i>1)
set udg_DWKB_Speed[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_DWKB_Distance[i]=0
set i=i+1
endloop
set i=0
loop
exitwhen(i>1)
set udg_DWKB_Damage[i]=0
set i=i+1
endloop
set udg_Knockback_Effect=""
set udg_Knockback_Time_Event=0
set udg_Dark_Wave_Ability_Level=0
set udg_Dark_Wave_Angle=0
set udg_Dark_Wave_Distance=0
set udg_Dark_Wave_CasterG=CreateGroup()
set udg_Dark_Wave_HandleID=0
set udg_Dark_Wave_Search_Target=CreateGroup()
set udg_Knockback_HandleId=0
set udg_Knockback_Group=CreateGroup()
set udg_GameOver=false
endfunction
function Unit000014_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D6E7374,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000027_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74737432,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000037_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000041_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E32,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000043_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6667736B,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000044_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72617463,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000056_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x706D6E61,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000060_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74737472,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000066_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74657870,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000076_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74647832,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000082_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74737472,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000094_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000096_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000101_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000116_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000121_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6667736B,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000124_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74737432,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000131_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000134_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000135_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x66676467,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000136_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72687468,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000155_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000156_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000162_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000163_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000164_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6F66726F,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000169_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x62677374,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000170_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000171_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000174_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000175_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000177_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x7277697A,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000178_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E32,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000182_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C676468,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000186_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x686C7374,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000189_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72646533,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000193_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x696E6673,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000199_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C676468,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000202_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000210_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000212_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x68627468,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000214_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72617466,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000216_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000217_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000220_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000223_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6863756E,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000224_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74646578,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000225_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000236_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E32,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000237_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x63697269,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000241_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000246_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000248_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6F76656E,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000255_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000256_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74657870,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000257_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74657870,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000266_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000270_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74737472,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000273_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000278_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000279_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000280_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x62677374,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000282_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000285_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72617463,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000286_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74737472,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000294_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000321_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74646578,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000330_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72687468,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000336_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x746B6E6F,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000348_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74737472,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000370_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6863756E,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000373_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000374_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x706D6E61,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000378_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x706D6E61,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000379_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000380_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D636F75,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000383_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x7277697A,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000387_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x70656E72,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000392_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000395_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000396_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000419_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000420_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000425_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000430_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72617466,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000445_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74657870,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000452_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72687468,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000461_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000462_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x746B6E6F,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000463_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72687468,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000468_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x746B6E6F,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
call RandomDistReset()
call RandomDistAddItem(0x746B6E6F,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
call RandomDistReset()
call RandomDistAddItem(0x746B6E6F,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000469_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72617436,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000470_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72617436,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000474_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000475_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74646578,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000488_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000489_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x77696C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000490_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x77696C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000491_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6D616E68,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000492_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000541_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000543_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000544_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000552_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000558_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x746B6E6F,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000569_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000570_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000571_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000572_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74706F77,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000587_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x72617463,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000610_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000614_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x6C6D6272,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000618_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000619_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x676F6C64,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function Unit000672_DropItems takes nothing returns nothing
local widget trigWidget=null
local unit trigUnit=null
local integer itemID=0
local boolean canDrop=true
set trigWidget=bj_lastDyingWidget
if(trigWidget==null)then
set trigUnit=GetTriggerUnit()
endif
if(trigUnit!=null)then
set canDrop=not IsUnitHidden(trigUnit)
if(canDrop and GetChangingUnit()!=null)then
set canDrop=(GetChangingUnitPrevOwner()==Player(PLAYER_NEUTRAL_AGGRESSIVE))
endif
endif
if(canDrop)then
call RandomDistReset()
call RandomDistAddItem(0x74696E74,100)
set itemID=RandomDistChoose()
if(trigUnit!=null)then
call UnitDropItem(trigUnit,itemID)
else
call WidgetDropItem(trigWidget,itemID)
endif
endif
set bj_lastDyingWidget=null
call DestroyTrigger(GetTriggeringTrigger())
set trigUnit=null
set trigWidget=null
endfunction
function InitSounds takes nothing returns nothing
set gg_snd_ExplosionBig=CreateSound("war3mapImported\\XPLOMAS1.WAV",false,true,true,10,10,"DefaultEAXON")
call SetSoundDuration(gg_snd_ExplosionBig,2487)
call SetSoundChannel(gg_snd_ExplosionBig,11)
call SetSoundVolume(gg_snd_ExplosionBig,127)
call SetSoundPitch(gg_snd_ExplosionBig,1.0)
call SetSoundDistances(gg_snd_ExplosionBig,800.0,10000.0)
call SetSoundDistanceCutoff(gg_snd_ExplosionBig,3000.0)
call SetSoundConeAngles(gg_snd_ExplosionBig,0.0,0.0,127)
call SetSoundConeOrientation(gg_snd_ExplosionBig,0.0,0.0,0.0)
set gg_snd_ExplosionSmall=CreateSound("Sound\\Buildings\\Death\\BuildingDeathSmallHuman.wav",false,true,true,10,10,"DefaultEAXON")
call SetSoundParamsFromLabel(gg_snd_ExplosionSmall,"RockWallDeath")
call SetSoundDuration(gg_snd_ExplosionSmall,2368)
set gg_snd_ExplosionLarge=CreateSound("Sound\\Buildings\\Death\\BuildingDeathLargeHuman.wav",false,true,true,20,12,"DefaultEAXON")
call SetSoundParamsFromLabel(gg_snd_ExplosionLarge,"DeathHumanLargeBuilding")
call SetSoundDuration(gg_snd_ExplosionLarge,3460)
set gg_snd_Harpoon=CreateSound("Abilities\\Weapons\\DruidoftheTalonMissile\\DruidOfTheTalonMissileLaunch2.wav",false,true,true,10,10,"SpellsEAX")
call SetSoundParamsFromLabel(gg_snd_Harpoon,"DruidOfTheTalonMissileLaunch")
call SetSoundDuration(gg_snd_Harpoon,882)
set gg_snd_Shockwave=CreateSound("Abilities\\Spells\\Orc\\Shockwave\\Shockwave.wav",false,true,true,10,10,"SpellsEAX")
call SetSoundParamsFromLabel(gg_snd_Shockwave,"ShockWave")
call SetSoundDuration(gg_snd_Shockwave,2847)
set gg_snd_ForcePush=CreateSound("war3mapImported\\ForcePush.mp3",false,true,true,10,10,"SpellsEAX")
call SetSoundDuration(gg_snd_ForcePush,1614)
call SetSoundChannel(gg_snd_ForcePush,11)
call SetSoundVolume(gg_snd_ForcePush,127)
call SetSoundPitch(gg_snd_ForcePush,1.0)
call SetSoundDistances(gg_snd_ForcePush,600.0,10000.0)
call SetSoundDistanceCutoff(gg_snd_ForcePush,3000.0)
call SetSoundConeAngles(gg_snd_ForcePush,0.0,0.0,127)
call SetSoundConeOrientation(gg_snd_ForcePush,0.0,0.0,0.0)
set gg_snd_ForcePull=CreateSound("war3mapImported\\ForcePull.mp3",false,true,true,10,10,"SpellsEAX")
call SetSoundDuration(gg_snd_ForcePull,1208)
call SetSoundChannel(gg_snd_ForcePull,11)
call SetSoundVolume(gg_snd_ForcePull,127)
call SetSoundPitch(gg_snd_ForcePull,1.0)
call SetSoundDistances(gg_snd_ForcePull,600.0,10000.0)
call SetSoundDistanceCutoff(gg_snd_ForcePull,3000.0)
call SetSoundConeAngles(gg_snd_ForcePull,0.0,0.0,127)
call SetSoundConeOrientation(gg_snd_ForcePull,0.0,0.0,0.0)
set gg_snd_HeatRipple=CreateSound("Abilities\\Spells\\Undead\\DarkSummoning\\DarkSummoningLaunch1.wav",false,true,true,10,10,"SpellsEAX")
call SetSoundParamsFromLabel(gg_snd_HeatRipple,"DarkSummoningMissileLaunch")
call SetSoundDuration(gg_snd_HeatRipple,2624)
set gg_snd_CrippleTarget=CreateSound("Abilities\\Spells\\Undead\\Cripple\\CrippleTarget1.wav",false,true,true,10,10,"SpellsEAX")
call SetSoundParamsFromLabel(gg_snd_CrippleTarget,"Cripple")
call SetSoundDuration(gg_snd_CrippleTarget,2316)
set gg_snd_DarkVictory="Sound\\Music\\mp3Music\\DarkVictory.mp3"
set gg_snd_PlayerLeave=CreateSound("Sound\\Interface\\CreepAggroWhat1.wav",false,false,false,10,10,"DefaultEAXON")
call SetSoundParamsFromLabel(gg_snd_PlayerLeave,"CreepAggro")
call SetSoundDuration(gg_snd_PlayerLeave,1236)
call SetSoundVolume(gg_snd_PlayerLeave,120)
set gg_snd_PortalCreate=CreateSound("Sound\\Ambient\\DoodadEffects\\FrostmourneChant1.wav",false,false,false,10,10,"DefaultEAXON")
call SetSoundParamsFromLabel(gg_snd_PortalCreate,"FrostmourneChantSound")
call SetSoundDuration(gg_snd_PortalCreate,5039)
call SetSoundVolume(gg_snd_PortalCreate,120)
set gg_snd_Sniper=CreateSound("war3mapImported\\Sniper.WAV",false,true,true,5,5,"CombatSoundsEAX")
call SetSoundDuration(gg_snd_Sniper,598)
call SetSoundChannel(gg_snd_Sniper,0)
call SetSoundVolume(gg_snd_Sniper,100)
call SetSoundPitch(gg_snd_Sniper,1.0)
call SetSoundDistances(gg_snd_Sniper,0.0,5000.0)
call SetSoundDistanceCutoff(gg_snd_Sniper,2000.0)
call SetSoundConeAngles(gg_snd_Sniper,0.0,0.0,127)
call SetSoundConeOrientation(gg_snd_Sniper,0.0,0.0,0.0)
set gg_snd_AAgun=CreateSound("war3mapImported\\AAgun.WAV",false,true,true,10,10,"DefaultEAXON")
call SetSoundDuration(gg_snd_AAgun,578)
call SetSoundChannel(gg_snd_AAgun,0)
call SetSoundVolume(gg_snd_AAgun,100)
call SetSoundPitch(gg_snd_AAgun,1.0)
call SetSoundDistances(gg_snd_AAgun,0.0,5000.0)
call SetSoundDistanceCutoff(gg_snd_AAgun,2000.0)
call SetSoundConeAngles(gg_snd_AAgun,0.0,0.0,127)
call SetSoundConeOrientation(gg_snd_AAgun,0.0,0.0,0.0)
set gg_snd_AnnihilationGun=CreateSound("war3mapImported\\AnnihilationGun.WAV",false,true,true,10,10,"CombatSoundsEAX")
call SetSoundDuration(gg_snd_AnnihilationGun,894)
call SetSoundChannel(gg_snd_AnnihilationGun,0)
call SetSoundVolume(gg_snd_AnnihilationGun,100)
call SetSoundPitch(gg_snd_AnnihilationGun,1.0)
call SetSoundDistances(gg_snd_AnnihilationGun,0.0,5000.0)
call SetSoundDistanceCutoff(gg_snd_AnnihilationGun,2000.0)
call SetSoundConeAngles(gg_snd_AnnihilationGun,0.0,0.0,127)
call SetSoundConeOrientation(gg_snd_AnnihilationGun,0.0,0.0,0.0)
set gg_snd_EmpireWin=CreateSound("war3mapImported\\EmpireWin.mp3",false,false,false,80,20,"DefaultEAXON")
call SetSoundDuration(gg_snd_EmpireWin,13866)
call SetSoundChannel(gg_snd_EmpireWin,7)
call SetSoundVolume(gg_snd_EmpireWin,127)
call SetSoundPitch(gg_snd_EmpireWin,1.0)
endfunction
function CreateAllDestructables takes nothing returns nothing
local destructable d
local trigger t
local real life
set gg_dest_B001_1434=CreateDestructable(0x42303031,-23936.0,9344.0,0.000,5.000,0)
set gg_dest_B002_4754=CreateDestructable(0x42303032,-16384.0,9728.0,0.000,0.800,0)
set gg_dest_B002_4753=CreateDestructable(0x42303032,-16384.0,9408.0,0.000,0.800,0)
set gg_dest_B002_2214=CreateDestructable(0x42303032,-16384.0,8640.0,0.000,0.800,0)
set gg_dest_B002_4748=CreateDestructable(0x42303032,-18560.0,9536.0,0.000,0.800,0)
set gg_dest_B002_2026=CreateDestructable(0x42303032,-18560.0,9088.0,0.000,0.800,0)
set gg_dest_B002_4747=CreateDestructable(0x42303032,-18560.0,9216.0,0.000,0.800,0)
set gg_dest_B002_4751=CreateDestructable(0x42303032,-18560.0,9856.0,0.000,0.800,0)
set gg_dest_B002_4752=CreateDestructable(0x42303032,-16384.0,8960.0,0.000,0.800,0)
set gg_dest_YTfc_2027=CreateDestructable(0x59546663,-16384.0,9984.0,270.000,1.000,0)
set gg_dest_YTfc_4740=CreateDestructable(0x59546663,-18560.0,9472.0,270.000,1.000,0)
set gg_dest_YTfc_4739=CreateDestructable(0x59546663,-18560.0,9600.0,270.000,1.000,0)
set gg_dest_YTfc_2173=CreateDestructable(0x59546663,-16384.0,9856.0,270.000,1.000,0)
set gg_dest_YTfc_4731=CreateDestructable(0x59546663,-18560.0,9856.0,270.000,1.000,0)
set gg_dest_YTfc_1551=CreateDestructable(0x59546663,-16384.0,10112.0,270.000,1.000,0)
set gg_dest_YTfc_4742=CreateDestructable(0x59546663,-18560.0,9216.0,270.000,1.000,0)
set gg_dest_YTfc_4743=CreateDestructable(0x59546663,-18560.0,9088.0,270.000,1.000,0)
set gg_dest_YTfc_4745=CreateDestructable(0x59546663,-18560.0,8832.0,270.000,1.000,0)
set gg_dest_YTfc_4741=CreateDestructable(0x59546663,-18560.0,9344.0,270.000,1.000,0)
set gg_dest_YTfc_4730=CreateDestructable(0x59546663,-18560.0,9984.0,270.000,1.000,0)
set gg_dest_YTfc_3708=CreateDestructable(0x59546663,-16384.0,8704.0,270.000,1.000,0)
set gg_dest_YTfc_2311=CreateDestructable(0x59546663,-16384.0,9728.0,270.000,1.000,0)
set gg_dest_YTfc_2604=CreateDestructable(0x59546663,-16384.0,9344.0,270.000,1.000,0)
set gg_dest_YTfc_2592=CreateDestructable(0x59546663,-16384.0,9472.0,270.000,1.000,0)
set gg_dest_YTfc_2577=CreateDestructable(0x59546663,-16384.0,9600.0,270.000,1.000,0)
set gg_dest_YTfc_2609=CreateDestructable(0x59546663,-16384.0,8960.0,270.000,1.000,0)
set gg_dest_YTfc_2608=CreateDestructable(0x59546663,-16384.0,9088.0,270.000,1.000,0)
set gg_dest_YTfc_2613=CreateDestructable(0x59546663,-16384.0,8832.0,270.000,1.000,0)
set gg_dest_YTfc_2605=CreateDestructable(0x59546663,-16384.0,9216.0,270.000,1.000,0)
set gg_dest_YTfc_4746=CreateDestructable(0x59546663,-18560.0,10112.0,270.000,1.000,0)
set gg_dest_YTfc_4744=CreateDestructable(0x59546663,-18560.0,8960.0,270.000,1.000,0)
set gg_dest_YTfc_2688=CreateDestructable(0x59546663,-16384.0,8576.0,270.000,1.000,0)
set gg_dest_YTfc_2684=CreateDestructable(0x59546663,-16384.0,8448.0,270.000,1.000,0)
set gg_dest_YTfc_4732=CreateDestructable(0x59546663,-18560.0,9728.0,270.000,1.000,0)
endfunction
function CreateAllItems takes nothing returns nothing
local integer itemID
call CreateItem(0x49303032,-27089.0,5364.9)
call CreateItem(0x49303049,-26523.0,4727.0)
call CreateItem(0x49303049,-26533.5,4554.2)
call CreateItem(0x49303057,-7105.3,6682.1)
call CreateItem(0x49303057,-9516.6,9159.7)
call CreateItem(0x49303057,-2572.8,6745.9)
call CreateItem(0x49303057,-4306.3,8965.5)
call CreateItem(0x49303057,-2565.5,11675.9)
call CreateItem(0x49303057,-7119.8,11768.2)
call CreateItem(0x49303138,-26929.8,5364.9)
call CreateItem(0x49303139,-27066.5,5029.1)
call CreateItem(0x49303141,-26817.2,5058.0)
call CreateItem(0x49303142,-26807.7,5377.8)
call CreateItem(0x49303143,-27265.8,5339.2)
call CreateItem(0x49303144,-27238.8,5011.7)
call CreateItem(0x6D6F6474,-27110.4,4705.7)
call CreateItem(0x6F666972,-26937.8,5029.0)
call CreateItem(0x72617436,-26900.8,4715.5)
endfunction
function CreateBuildingsForPlayer0 takes nothing returns nothing
local player p=Player(0)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_htow_0047=CreateUnit(p,0x68746F77,-28224.0,4224.0,270.000)
endfunction
function CreateUnitsForPlayer0 takes nothing returns nothing
local player p=Player(0)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x4870616C,-27356.0,4245.6,280.944)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,1020)
set gg_unit_hpea_0129=CreateUnit(p,0x68706561,-28353.7,3951.3,270.000)
set u=CreateUnit(p,0x48616D67,-27148.2,4268.9,276.240)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,1050)
set u=CreateUnit(p,0x45776172,-26944.5,4268.8,271.644)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,1260)
set u=CreateUnit(p,0x4564656D,-26731.9,4224.1,266.768)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,1200)
set u=CreateUnit(p,0x486D6B67,-26488.1,4238.7,261.256)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,900)
set gg_unit_hpea_0217=CreateUnit(p,0x68706561,-28282.5,3953.0,270.000)
set u=CreateUnit(p,0x48626C6D,-27365.5,3969.5,282.497)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,1185)
set u=CreateUnit(p,0x4F626C61,-27123.6,3988.3,276.392)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,840)
set u=CreateUnit(p,0x4F666172,-26896.8,3990.8,270.633)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,1065)
set u=CreateUnit(p,0x4F746368,-26648.6,4004.3,264.358)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,1290)
set u=CreateUnit(p,0x4F736864,-26452.5,3990.5,259.428)
call SetHeroLevel(u,25,false)
call SetUnitState(u,UNIT_STATE_MANA,930)
set gg_unit_hpea_0320=CreateUnit(p,0x68706561,-28210.4,3953.7,270.000)
set gg_unit_hpea_0321=CreateUnit(p,0x68706561,-28139.6,3954.1,270.000)
set gg_unit_hpea_0322=CreateUnit(p,0x68706561,-28069.0,3954.9,270.000)
set gg_unit_hpea_0323=CreateUnit(p,0x68706561,-28277.2,3860.2,270.000)
set gg_unit_hpea_0324=CreateUnit(p,0x68706561,-28206.0,3861.9,270.000)
set u=CreateUnit(p,0x686D7474,-27799.8,4928.9,305.019)
set gg_unit_hpea_0413=CreateUnit(p,0x68706561,-28133.8,3862.6,270.000)
set u=CreateUnit(p,0x68677972,-26504.1,4947.8,142.222)
set u=CreateUnit(p,0x686D746D,-25872.3,4734.3,153.022)
set u=null
endfunction
function CreateBuildingsForPlayer1 takes nothing returns nothing
local player p=Player(1)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_htow_0487=CreateUnit(p,0x68746F77,-28224.0,13568.0,270.000)
endfunction
function CreateUnitsForPlayer1 takes nothing returns nothing
local player p=Player(1)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_hpea_0218=CreateUnit(p,0x68706561,-28282.5,13297.0,270.000)
set gg_unit_hpea_0325=CreateUnit(p,0x68706561,-28069.0,13298.9,270.000)
set gg_unit_hpea_0326=CreateUnit(p,0x68706561,-28133.8,13206.6,270.000)
set gg_unit_hpea_0327=CreateUnit(p,0x68706561,-28277.2,13204.2,270.000)
set gg_unit_hpea_0328=CreateUnit(p,0x68706561,-28206.0,13205.9,270.000)
set gg_unit_hpea_0329=CreateUnit(p,0x68706561,-28139.6,13298.1,270.000)
set gg_unit_hpea_0486=CreateUnit(p,0x68706561,-28210.4,13297.7,270.000)
set gg_unit_hpea_0488=CreateUnit(p,0x68706561,-28353.7,13295.3,270.000)
endfunction
function CreateBuildingsForPlayer2 takes nothing returns nothing
local player p=Player(2)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_htow_0484=CreateUnit(p,0x68746F77,-25728.0,11200.0,270.000)
endfunction
function CreateUnitsForPlayer2 takes nothing returns nothing
local player p=Player(2)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_hpea_0247=CreateUnit(p,0x68706561,-25786.5,10929.0,270.000)
set gg_unit_hpea_0309=CreateUnit(p,0x68706561,-25573.0,10930.9,270.000)
set gg_unit_hpea_0310=CreateUnit(p,0x68706561,-25637.8,10838.6,270.000)
set gg_unit_hpea_0311=CreateUnit(p,0x68706561,-25781.2,10836.2,270.000)
set gg_unit_hpea_0313=CreateUnit(p,0x68706561,-25710.0,10837.9,270.000)
set gg_unit_hpea_0314=CreateUnit(p,0x68706561,-25643.6,10930.1,270.000)
set gg_unit_hpea_0483=CreateUnit(p,0x68706561,-25714.4,10929.7,270.000)
set gg_unit_hpea_0485=CreateUnit(p,0x68706561,-25857.7,10927.3,270.000)
endfunction
function CreateBuildingsForPlayer3 takes nothing returns nothing
local player p=Player(3)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_htow_0481=CreateUnit(p,0x68746F77,-25600.0,7040.0,270.000)
endfunction
function CreateUnitsForPlayer3 takes nothing returns nothing
local player p=Player(3)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_hpea_0228=CreateUnit(p,0x68706561,-25658.5,6769.0,270.000)
set gg_unit_hpea_0315=CreateUnit(p,0x68706561,-25445.0,6770.9,270.000)
set gg_unit_hpea_0316=CreateUnit(p,0x68706561,-25509.8,6678.6,270.000)
set gg_unit_hpea_0317=CreateUnit(p,0x68706561,-25653.2,6676.2,270.000)
set gg_unit_hpea_0318=CreateUnit(p,0x68706561,-25582.0,6677.9,270.000)
set gg_unit_hpea_0319=CreateUnit(p,0x68706561,-25515.6,6770.1,270.000)
set gg_unit_hpea_0480=CreateUnit(p,0x68706561,-25586.4,6769.7,270.000)
set gg_unit_hpea_0482=CreateUnit(p,0x68706561,-25729.7,6767.3,270.000)
endfunction
function CreateBuildingsForPlayer4 takes nothing returns nothing
local player p=Player(4)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_h015_0457=CreateUnit(p,0x68303135,-23936.0,9344.0,270.000)
set gg_unit_htow_0519=CreateUnit(p,0x68746F77,-22912.0,9344.0,270.000)
set gg_unit_owtw_0533=CreateUnit(p,0x6F777477,-21504.0,9344.0,270.000)
endfunction
function CreateUnitsForPlayer4 takes nothing returns nothing
local player p=Player(4)
local unit u
local integer unitID
local trigger t
local real life
set gg_unit_hpea_0489=CreateUnit(p,0x68706561,-22985.9,9063.2,270.000)
set gg_unit_hpea_0491=CreateUnit(p,0x68706561,-22772.4,9065.0,270.000)
set gg_unit_hpea_0492=CreateUnit(p,0x68706561,-22837.2,8972.7,270.000)
set gg_unit_hpea_0514=CreateUnit(p,0x68706561,-22980.6,8970.3,270.000)
set gg_unit_hpea_0516=CreateUnit(p,0x68706561,-22909.4,8972.0,270.000)
set gg_unit_hpea_0517=CreateUnit(p,0x68706561,-22843.0,9064.2,270.000)
set gg_unit_hpea_0518=CreateUnit(p,0x68706561,-22913.7,9063.9,270.000)
set gg_unit_hpea_0520=CreateUnit(p,0x68706561,-23057.1,9061.5,270.000)
endfunction
function CreateBuildingsForPlayer5 takes nothing returns nothing
local player p=Player(5)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x75303038,800.0,9248.0,270.000)
set gg_unit_u001_0415=CreateUnit(p,0x75303031,256.0,9216.0,180.000)
set u=CreateUnit(p,0x75303034,-32.0,8864.0,270.000)
set u=CreateUnit(p,0x75303034,608.0,8864.0,270.000)
set u=CreateUnit(p,0x75303034,-32.0,9568.0,270.000)
set u=CreateUnit(p,0x75303034,608.0,9568.0,270.000)
set u=CreateUnit(p,0x75303035,288.0,8800.0,270.000)
set u=CreateUnit(p,0x75303035,288.0,9632.0,270.000)
set u=CreateUnit(p,0x75303035,-608.0,8928.0,270.000)
set u=CreateUnit(p,0x75303035,-608.0,9440.0,270.000)
set u=CreateUnit(p,0x75303034,-416.0,8800.0,270.000)
set u=CreateUnit(p,0x75303034,-480.0,9632.0,270.000)
set u=null
endfunction
function CreateBuildingsForPlayer6 takes nothing returns nothing
local player p=Player(6)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x756E706C,-7488.0,11712.0,270.000)
set u=CreateBlightedGoldmine(p,-6720.0,11712.0,270.000)
call SetResourceAmount(u,100000)
set u=CreateUnit(p,0x75303039,-8032.0,12256.0,270.000)
set u=null
endfunction
function CreateUnitsForPlayer6 takes nothing returns nothing
local player p=Player(6)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x7561636F,-7576.9,11436.1,270.000)
set u=CreateUnit(p,0x7561636F,-7477.8,11433.9,270.000)
set u=CreateUnit(p,0x7561636F,-7381.0,11434.1,270.000)
set u=CreateUnit(p,0x7567686F,-7471.1,11309.5,270.000)
set u=null
endfunction
function CreateBuildingsForPlayer7 takes nothing returns nothing
local player p=Player(7)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateBlightedGoldmine(p,-6720.0,6720.0,270.000)
call SetResourceAmount(u,100000)
set u=CreateUnit(p,0x75303039,-8032.0,6176.0,270.000)
set u=CreateUnit(p,0x756E706C,-7488.0,6720.0,270.000)
set u=null
endfunction
function CreateUnitsForPlayer7 takes nothing returns nothing
local player p=Player(7)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x7561636F,-7596.5,6431.7,270.000)
set u=CreateUnit(p,0x7561636F,-7497.4,6429.4,270.000)
set u=CreateUnit(p,0x7561636F,-7400.5,6429.7,270.000)
set u=CreateUnit(p,0x7567686F,-7490.7,6305.1,270.000)
set u=null
endfunction
function CreateBuildingsForPlayer8 takes nothing returns nothing
local player p=Player(8)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateBlightedGoldmine(p,-2176.0,11648.0,270.000)
call SetResourceAmount(u,100000)
set gg_unit_unpl_0584=CreateUnit(p,0x756E706C,-2944.0,11648.0,270.000)
set u=null
endfunction
function CreateUnitsForPlayer8 takes nothing returns nothing
local player p=Player(8)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x7561636F,-3044.4,11338.1,270.000)
set u=CreateUnit(p,0x7561636F,-2945.3,11335.9,270.000)
set u=CreateUnit(p,0x7561636F,-2848.5,11336.2,270.000)
set u=CreateUnit(p,0x7567686F,-2938.6,11211.5,270.000)
set u=null
endfunction
function CreateBuildingsForPlayer9 takes nothing returns nothing
local player p=Player(9)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateBlightedGoldmine(p,-3904.0,8960.0,270.000)
call SetResourceAmount(u,100000)
set gg_unit_unpl_0678=CreateUnit(p,0x756E706C,-4672.0,8960.0,270.000)
set u=null
endfunction
function CreateUnitsForPlayer9 takes nothing returns nothing
local player p=Player(9)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x7561636F,-4775.9,8656.8,270.000)
set u=CreateUnit(p,0x7561636F,-4676.8,8654.5,270.000)
set u=CreateUnit(p,0x7561636F,-4579.9,8654.8,270.000)
set u=CreateUnit(p,0x7567686F,-4670.1,8530.2,270.000)
set u=null
endfunction
function CreateBuildingsForPlayer10 takes nothing returns nothing
local player p=Player(10)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateBlightedGoldmine(p,-9152.0,9152.0,270.000)
call SetResourceAmount(u,100000)
set u=CreateUnit(p,0x756E706C,-9920.0,9152.0,270.000)
set u=CreateUnit(p,0x75303041,-10592.0,9248.0,270.000)
set u=CreateUnit(p,0x75303039,-10784.0,8672.0,270.000)
set u=CreateUnit(p,0x75303039,-10848.0,9760.0,270.000)
set u=null
endfunction
function CreateUnitsForPlayer10 takes nothing returns nothing
local player p=Player(10)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x7561636F,-10013.8,8854.7,270.000)
set u=CreateUnit(p,0x7561636F,-9914.8,8852.5,270.000)
set u=CreateUnit(p,0x7561636F,-9817.9,8852.7,270.000)
set u=CreateUnit(p,0x7567686F,-9908.1,8728.1,270.000)
set u=null
endfunction
function CreateBuildingsForPlayer11 takes nothing returns nothing
local player p=Player(11)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateBlightedGoldmine(p,-2176.0,6720.0,270.000)
call SetResourceAmount(u,100000)
set gg_unit_unpl_0688=CreateUnit(p,0x756E706C,-2944.0,6720.0,270.000)
set u=null
endfunction
function CreateUnitsForPlayer11 takes nothing returns nothing
local player p=Player(11)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x7561636F,-3035.3,6417.6,270.000)
set u=CreateUnit(p,0x7561636F,-2936.2,6415.4,270.000)
set u=CreateUnit(p,0x7561636F,-2839.3,6415.6,270.000)
set u=CreateUnit(p,0x7567686F,-2929.5,6291.0,270.000)
set u=null
endfunction
function CreateNeutralHostileBuildings takes nothing returns nothing
local player p=Player(PLAYER_NEUTRAL_AGGRESSIVE)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x6F303030,-22560.0,5152.0,270.000)
set u=CreateUnit(p,0x6E747832,-3584.0,2496.0,270.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000121_DropItems)
set u=CreateUnit(p,0x6E747832,-3520.0,15744.0,270.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000043_DropItems)
set u=CreateUnit(p,0x6F303030,-22240.0,5152.0,270.000)
set u=CreateUnit(p,0x6F303030,-22560.0,13856.0,270.000)
set u=CreateUnit(p,0x6F303030,-22240.0,13856.0,270.000)
set u=CreateUnit(p,0x6F303030,-28640.0,7968.0,270.000)
set u=CreateUnit(p,0x6F303030,-28576.0,10272.0,270.000)
set t=null
set u=null
endfunction
function CreateNeutralHostile takes nothing returns nothing
local player p=Player(PLAYER_NEUTRAL_AGGRESSIVE)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x6E30304C,-6866.3,4822.2,129.665)
set u=CreateUnit(p,0x6E736C72,-12868.8,9163.9,208.080)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E777267,-13163.3,6779.5,309.132)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727666,-1339.8,14083.9,186.846)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set gg_unit_nndr_0024=CreateUnit(p,0x6E6E6472,-17210.9,9257.5,161.110)
call SetUnitState(gg_unit_nndr_0024,UNIT_STATE_MANA,500)
call SetUnitAcquireRange(gg_unit_nndr_0024,200.0)
set gg_unit_nndr_0025=CreateUnit(p,0x6E6E6472,-17577.3,9253.5,248.630)
call SetUnitAcquireRange(gg_unit_nndr_0025,200.0)
set u=CreateUnit(p,0x6E727664,-1068.1,3858.4,184.970)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000199_DropItems)
set u=CreateUnit(p,0x6E736C66,-9484.9,13300.2,75.390)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E666F76,-7043.3,9148.4,184.210)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000387_DropItems)
set u=CreateUnit(p,0x6E76646C,-3300.0,2507.7,107.803)
set u=CreateUnit(p,0x6E736C6C,-12973.0,9337.0,335.600)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000336_DropItems)
set u=CreateUnit(p,0x6E303034,-22404.4,5044.4,88.970)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000060_DropItems)
set u=CreateUnit(p,0x6E303033,-30612.6,16744.4,328.530)
set u=CreateUnit(p,0x6E647264,-6334.8,15184.2,268.455)
call SetUnitAcquireRange(u,200.0)
set gg_unit_nvde_0037=CreateUnit(p,0x6E766465,-17404.8,8879.9,91.640)
call SetUnitAcquireRange(gg_unit_nvde_0037,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0037,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0037,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000066_DropItems)
set u=CreateUnit(p,0x6E777267,-13749.7,6392.8,307.560)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000330_DropItems)
set u=CreateUnit(p,0x6E647264,-6153.0,15301.8,265.762)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E647264,-6474.4,15194.9,270.631)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C76,-14749.4,9063.1,0.000)
call SetUnitState(u,UNIT_STATE_MANA,500)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22280.8,5019.4,89.712)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E647273,-6402.3,15290.7,269.521)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000135_DropItems)
set u=CreateUnit(p,0x6E647268,-6566.4,15377.1,271.965)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000134_DropItems)
set u=CreateUnit(p,0x6E647264,-6639.4,15315.0,273.094)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22305.6,5300.0,86.403)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E76646C,-3323.6,2730.2,110.261)
set u=CreateUnit(p,0x6E777267,-13782.6,12186.1,54.757)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C72,-12997.5,9605.8,318.361)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E777267,-13848.1,6568.1,122.851)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E777267,-13290.6,6935.1,162.360)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000374_DropItems)
set u=CreateUnit(p,0x6E303033,-22511.1,5292.1,91.897)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22512.0,5007.2,92.415)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303035,-22409.6,13850.1,269.060)
call SetUnitState(u,UNIT_STATE_MANA,600)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000223_DropItems)
set u=CreateUnit(p,0x6E303034,-22407.1,13747.3,276.800)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000224_DropItems)
set u=CreateUnit(p,0x6E303034,-22412.5,13988.4,273.320)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000225_DropItems)
set u=CreateUnit(p,0x6E303032,-22520.6,13613.2,275.169)
call SetUnitAcquireRange(u,200.0)
set gg_unit_nvde_0064=CreateUnit(p,0x6E766465,-17725.4,9261.9,5.050)
call SetUnitAcquireRange(gg_unit_nvde_0064,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0064,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0064,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000257_DropItems)
set u=CreateUnit(p,0x6E303033,-30446.1,16899.5,305.313)
set u=CreateUnit(p,0x6E736767,-13516.9,11962.6,56.990)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000462_DropItems)
set u=CreateUnit(p,0x6E303033,-22314.8,13991.8,268.927)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-30554.3,1530.4,46.701)
set u=CreateUnit(p,0x6E303033,-30694.9,1680.6,30.816)
set u=CreateUnit(p,0x6E303035,-28781.1,7966.3,0.560)
call SetUnitState(u,UNIT_STATE_MANA,600)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000430_DropItems)
set u=CreateUnit(p,0x6E303035,-28768.5,10275.7,353.030)
call SetUnitState(u,UNIT_STATE_MANA,600)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000214_DropItems)
set u=CreateUnit(p,0x6E777267,-13864.7,12024.7,241.580)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000463_DropItems)
set u=CreateUnit(p,0x6E303033,-28699.0,8150.4,349.726)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28758.4,7667.7,4.335)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28668.8,7787.0,1.571)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28805.1,8244.2,358.562)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E666762,-6994.8,8956.8,176.555)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-28755.5,7767.3,359.860)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000236_DropItems)
set u=CreateUnit(p,0x6E303034,-28780.2,8104.7,352.790)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000237_DropItems)
set u=CreateUnit(p,0x6E303032,-28580.8,7838.7,357.261)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-28612.7,8130.9,354.102)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-28652.2,7694.0,355.933)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28624.3,10454.4,354.605)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-6931.7,4754.8,24.130)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000672_DropItems)
set u=CreateUnit(p,0x6E72766C,-1169.1,13911.8,177.130)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-1139.2,14232.9,195.231)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727666,-1331.0,13897.0,179.120)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E777267,-13352.1,11613.7,239.675)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-6772.9,4723.8,126.595)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-1249.4,4057.4,196.598)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-1078.1,4083.8,195.231)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-1130.2,3942.1,235.565)
set u=CreateUnit(p,0x6E303032,-30659.6,16998.1,315.981)
set u=CreateUnit(p,0x6E303032,-30684.6,16846.1,330.123)
set u=CreateUnit(p,0x6E303032,-30508.8,16984.6,298.964)
set u=CreateUnit(p,0x6E303034,-30606.9,16918.9,319.960)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000488_DropItems)
set gg_unit_nvde_0101=CreateUnit(p,0x6E766465,-17408.5,9651.6,268.790)
call SetUnitAcquireRange(gg_unit_nvde_0101,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0101,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0101,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000256_DropItems)
set u=CreateUnit(p,0x6E303032,-30769.9,1616.8,30.169)
set u=CreateUnit(p,0x6E303032,-30739.4,1486.0,41.597)
set u=CreateUnit(p,0x6E303032,-30597.0,1472.0,52.819)
set gg_unit_n007_0105=CreateUnit(p,0x6E303037,-17492.6,9426.7,300.570)
call SetUnitState(gg_unit_n007_0105,UNIT_STATE_MANA,1200)
call SetUnitAcquireRange(gg_unit_n007_0105,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,gg_unit_n007_0105,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,gg_unit_n007_0105,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000468_DropItems)
set u=CreateUnit(p,0x6E727666,-1251.1,3918.3,186.850)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727666,-1242.3,3731.5,179.120)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-30684.8,1536.8,41.600)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000101_DropItems)
set u=CreateUnit(p,0x6E676772,-11256.4,13185.0,273.400)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000452_DropItems)
set u=CreateUnit(p,0x6E777267,-13246.4,11742.2,52.290)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000378_DropItems)
set u=CreateUnit(p,0x6E30304C,-13586.6,11896.7,181.071)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677264,-15056.9,9290.7,0.000)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000248_DropItems)
set u=CreateUnit(p,0x6E72766C,-1082.4,3697.0,177.130)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303035,-22404.1,5161.0,88.620)
call SetUnitState(u,UNIT_STATE_MANA,600)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000370_DropItems)
set gg_unit_nvde_0115=CreateUnit(p,0x6E766465,-17198.8,9014.0,125.721)
call SetUnitState(gg_unit_nvde_0115,UNIT_STATE_MANA,500)
call SetUnitAcquireRange(gg_unit_nvde_0115,200.0)
set u=CreateUnit(p,0x6E647268,-6245.1,15370.2,267.200)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000131_DropItems)
set u=CreateUnit(p,0x6E76646C,-3883.7,2534.2,80.867)
set u=CreateUnit(p,0x6E647273,-6405.6,2649.3,91.917)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000193_DropItems)
set u=CreateUnit(p,0x6E303033,-20915.1,6619.7,231.804)
set u=CreateUnit(p,0x6E303033,-20706.9,6606.0,250.251)
set u=CreateUnit(p,0x6E647268,-6273.9,2692.8,93.882)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000220_DropItems)
set u=CreateUnit(p,0x6E303032,-20872.0,6826.3,223.917)
set u=CreateUnit(p,0x6E303032,-20813.7,6565.0,212.328)
set u=CreateUnit(p,0x6E303032,-21316.9,12051.0,129.225)
set u=CreateUnit(p,0x6E676831,-6873.3,4886.4,269.710)
call SetUnitAcquireRange(u,200.0)
set gg_unit_nvde_0127=CreateUnit(p,0x6E766465,-17195.6,9482.3,228.900)
call SetUnitState(gg_unit_nvde_0127,UNIT_STATE_MANA,500)
call SetUnitAcquireRange(gg_unit_nvde_0127,200.0)
set gg_unit_nvde_0128=CreateUnit(p,0x6E766465,-17638.3,9508.9,319.977)
call SetUnitState(gg_unit_nvde_0128,UNIT_STATE_MANA,500)
call SetUnitAcquireRange(gg_unit_nvde_0128,200.0)
set u=CreateUnit(p,0x6E303032,-21080.5,12100.6,149.189)
set u=CreateUnit(p,0x6E736C66,-9417.4,13694.1,267.048)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C66,-9652.7,13482.6,326.271)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E646D75,-9769.2,6799.2,274.847)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7772,-681.0,16213.8,252.260)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000255_DropItems)
set u=CreateUnit(p,0x6E303033,-21374.9,11943.3,118.339)
set u=CreateUnit(p,0x6E6E776C,-751.8,16024.7,240.965)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-21064.4,6774.9,239.938)
set u=CreateUnit(p,0x6E303033,-20707.8,6811.6,225.036)
set u=CreateUnit(p,0x6E303034,-20982.5,6790.5,240.520)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000156_DropItems)
set u=CreateUnit(p,0x6E303034,-20766.0,6707.9,227.120)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000155_DropItems)
set u=CreateUnit(p,0x6E303032,-20676.0,6682.3,222.063)
set u=CreateUnit(p,0x6E303032,-20797.1,6933.5,249.658)
set u=CreateUnit(p,0x6E303032,-21045.0,6854.4,250.137)
set u=CreateUnit(p,0x6E303032,-20773.4,6821.6,234.918)
set u=CreateUnit(p,0x6E303032,-20946.8,11892.9,140.917)
set u=CreateUnit(p,0x6E303032,-21348.8,11825.3,109.208)
set u=CreateUnit(p,0x6E303034,-21084.9,11908.9,134.343)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000492_DropItems)
set u=CreateUnit(p,0x6E303034,-21272.8,11891.8,118.975)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000491_DropItems)
set u=CreateUnit(p,0x6E303033,-21161.2,11813.4,124.023)
set u=CreateUnit(p,0x6E303033,-21255.5,11986.4,133.651)
set u=CreateUnit(p,0x6E303032,-21230.5,11732.9,115.761)
set u=CreateUnit(p,0x6E303032,-21082.2,11750.0,129.780)
set u=CreateUnit(p,0x6E6E7771,-494.4,16158.0,242.816)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000285_DropItems)
set u=CreateUnit(p,0x6E30304C,-6979.9,13685.1,129.665)
set u=CreateUnit(p,0x6E6E7761,-587.9,15945.5,229.068)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E6472,-3641.5,15586.6,276.792)
set u=CreateUnit(p,0x6E6E776C,-424.5,15836.6,218.669)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set gg_unit_nndr_0158=CreateUnit(p,0x6E6E6472,-17423.0,9399.0,145.140)
call SetUnitAcquireRange(gg_unit_nndr_0158,200.0)
set u=CreateUnit(p,0x6E6E6472,-3464.3,15604.6,270.084)
set u=CreateUnit(p,0x6E736767,-13466.1,6593.2,309.198)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000558_DropItems)
set u=CreateUnit(p,0x6E676831,-7045.3,13617.8,24.130)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000395_DropItems)
set u=CreateUnit(p,0x6E303033,-21026.9,11985.9,142.852)
set u=CreateUnit(p,0x6E303033,-23185.0,6996.1,280.163)
set u=CreateUnit(p,0x6E766467,-3523.4,15406.3,279.143)
set u=CreateUnit(p,0x6E766477,-3342.0,15436.9,270.395)
set u=CreateUnit(p,0x6E303033,-28790.4,10131.4,10.331)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28798.3,10407.3,10.330)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303035,-22903.6,16239.2,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000169_DropItems)
set u=CreateUnit(p,0x6E303033,-22854.2,16159.4,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000170_DropItems)
set u=CreateUnit(p,0x6E303033,-22881.5,16332.3,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000171_DropItems)
set u=CreateUnit(p,0x6E303033,-22959.2,16320.6,170.000)
set u=CreateUnit(p,0x6E303033,-22936.2,16144.3,170.000)
set u=CreateUnit(p,0x6E303034,-22975.7,16252.1,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000174_DropItems)
set u=CreateUnit(p,0x6E303033,-22777.0,15970.3,171.524)
set u=CreateUnit(p,0x6E303032,-22697.8,16026.3,170.000)
set u=CreateUnit(p,0x6E303033,-22818.6,16505.2,171.524)
set u=CreateUnit(p,0x6E303032,-22727.3,16468.3,170.000)
set u=CreateUnit(p,0x6E303033,-23098.3,6995.2,268.447)
set u=CreateUnit(p,0x6E303033,-23286.6,12133.2,84.715)
set u=CreateUnit(p,0x6E647268,-6555.8,2695.2,89.720)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000216_DropItems)
set u=CreateUnit(p,0x6E736C76,-14766.6,9607.8,0.000)
call SetUnitState(u,UNIT_STATE_MANA,500)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-23216.4,12127.3,90.883)
set u=CreateUnit(p,0x6E303033,-22868.5,16066.4,171.524)
set u=CreateUnit(p,0x6E676831,-6886.5,13586.7,126.595)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E737477,-15067.7,9497.2,0.000)
call SetUnitState(u,UNIT_STATE_MANA,600)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-6986.9,13749.3,269.710)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E627A64,-14820.0,9503.1,0.000)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000164_DropItems)
set gg_unit_nvde_0194=CreateUnit(p,0x6E766465,-17623.7,9026.4,57.203)
call SetUnitState(gg_unit_nvde_0194,UNIT_STATE_MANA,500)
call SetUnitAcquireRange(gg_unit_nvde_0194,200.0)
set u=CreateUnit(p,0x6E303033,-22896.1,16428.1,198.243)
set u=CreateUnit(p,0x6E67646B,-14824.8,9331.1,355.602)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766465,-8753.8,2942.3,90.219)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000177_DropItems)
set u=CreateUnit(p,0x6E766477,-8587.1,2940.9,93.959)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766467,-8753.5,3150.4,93.850)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000380_DropItems)
set u=CreateUnit(p,0x6E766477,-8926.6,2924.9,68.536)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28731.0,10038.4,10.331)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28639.8,10108.9,8.495)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28739.0,10521.5,353.337)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-28718.8,10170.6,5.730)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000189_DropItems)
set u=CreateUnit(p,0x6E303034,-28721.9,10379.4,357.790)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000076_DropItems)
set u=CreateUnit(p,0x6E303032,-28628.6,10011.2,3.236)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-28651.6,10557.4,0.116)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-28556.1,10100.1,1.529)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25163.9,5040.9,312.797)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-24860.8,4828.5,156.897)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-24917.8,5045.3,244.582)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25354.2,14277.9,297.531)
set u=CreateUnit(p,0x6E303032,-25192.1,13900.0,97.285)
set u=CreateUnit(p,0x6E303032,-25380.0,14035.0,23.419)
set u=CreateUnit(p,0x6E303033,-28830.8,7778.0,356.581)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28851.1,8147.3,355.912)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7771,-72.8,2126.1,132.909)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000044_DropItems)
set u=CreateUnit(p,0x6E647264,-6200.2,2833.4,95.344)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E647264,-6329.3,2958.3,93.254)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766477,-8951.6,14948.2,281.079)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766477,-8505.3,14937.3,261.167)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C66,-9366.9,4902.9,350.877)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766467,-8724.3,14793.9,274.290)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000587_DropItems)
set u=CreateUnit(p,0x6E736C66,-9290.9,13339.5,118.480)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E666762,-6993.4,9424.1,191.928)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766465,-3597.9,2631.2,94.897)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000186_DropItems)
set u=CreateUnit(p,0x6E766467,-3405.6,2401.5,102.176)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000178_DropItems)
set u=CreateUnit(p,0x6E766467,-3782.6,2403.1,86.078)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000124_DropItems)
set u=CreateUnit(p,0x6E766467,-3598.3,2764.4,95.542)
set u=CreateUnit(p,0x6E766477,-3436.2,2726.8,104.324)
set u=CreateUnit(p,0x6E647264,-6644.2,2810.2,88.181)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E647264,-6525.4,2964.4,90.455)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766477,-3763.3,2738.4,85.867)
set u=CreateUnit(p,0x6E303032,-28715.1,8275.4,355.274)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-28556.9,10418.7,1.248)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E666775,-7141.4,8961.1,178.161)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E666775,-7153.0,9382.5,192.240)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E646D75,-9653.3,6711.4,180.720)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000082_DropItems)
set u=CreateUnit(p,0x6E303033,-30550.3,6119.8,354.278)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000270_DropItems)
set u=CreateUnit(p,0x6E303033,-30532.4,5989.4,347.144)
set u=CreateUnit(p,0x6E303033,-30535.4,6262.8,4.410)
set u=CreateUnit(p,0x6E303032,-30625.1,6040.9,354.353)
set u=CreateUnit(p,0x6E303034,-30529.1,11817.9,358.151)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000266_DropItems)
set u=CreateUnit(p,0x6E303033,-30407.8,11681.2,6.627)
set u=CreateUnit(p,0x6E303032,-30511.3,11733.2,2.042)
set u=CreateUnit(p,0x6E303033,-30412.9,11922.3,357.947)
set u=CreateUnit(p,0x6E736C6E,-9137.5,4613.2,353.362)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C6E,-9211.9,4936.6,350.313)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C6E,-9281.6,13512.6,334.434)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E646D75,-9666.8,6581.2,126.349)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-4117.9,13581.2,126.595)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-4276.7,13612.3,24.126)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-4194.8,13747.4,269.710)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000116_DropItems)
set u=CreateUnit(p,0x6E303035,-20868.0,6710.2,234.060)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000490_DropItems)
set u=CreateUnit(p,0x6E303032,-27356.6,1443.8,77.510)
set u=CreateUnit(p,0x6E303032,-27183.7,1432.0,102.270)
set u=CreateUnit(p,0x6E766467,-3388.4,2580.9,104.818)
set u=CreateUnit(p,0x6E766477,-3713.0,15439.9,266.901)
set u=CreateUnit(p,0x6E766467,-3797.3,2581.0,84.747)
set u=CreateUnit(p,0x6E6E7772,87.6,2215.7,137.447)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000461_DropItems)
set u=CreateUnit(p,0x6E6E7772,-238.3,2020.7,128.254)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000379_DropItems)
set u=CreateUnit(p,0x6E303035,-21175.4,11901.1,127.610)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000489_DropItems)
set u=CreateUnit(p,0x6E766467,-3762.0,15782.0,285.773)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000027_DropItems)
set u=CreateUnit(p,0x6E766467,-3361.1,15802.4,255.305)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000041_DropItems)
set u=CreateUnit(p,0x6E766465,-3553.9,15554.4,269.660)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000014_DropItems)
set u=CreateUnit(p,0x6E736C6E,-9473.1,13504.7,285.000)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000392_DropItems)
set u=CreateUnit(p,0x6E736C66,-9301.8,4502.5,354.612)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C66,-9157.6,4792.8,351.623)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-24888.9,2083.4,94.760)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000294_DropItems)
set u=CreateUnit(p,0x6E303034,-24898.7,2513.0,265.020)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000217_DropItems)
set u=CreateUnit(p,0x6E736C76,-12793.9,9495.1,232.320)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000212_DropItems)
set u=CreateUnit(p,0x6E303033,-24681.2,2292.8,165.152)
set u=CreateUnit(p,0x6E303033,-25116.0,2312.3,352.872)
set u=CreateUnit(p,0x6E303032,-25009.1,2111.3,54.880)
set u=CreateUnit(p,0x6E303032,-24783.8,2110.6,128.558)
set u=CreateUnit(p,0x6E646D75,-9972.8,11556.0,115.164)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C6E,-9606.6,13707.3,15.590)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C6E,-9326.3,4725.1,352.500)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000396_DropItems)
set gg_unit_nndr_0331=CreateUnit(p,0x6E6E6472,-17443.2,8968.1,333.680)
call SetUnitAcquireRange(gg_unit_nndr_0331,200.0)
set gg_unit_nvde_0332=CreateUnit(p,0x6E766465,-17066.6,9242.5,172.390)
call SetUnitAcquireRange(gg_unit_nvde_0332,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0332,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,gg_unit_nvde_0332,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000445_DropItems)
set u=CreateUnit(p,0x6E6E6472,-3693.0,2468.0,89.948)
set u=CreateUnit(p,0x6E6E7772,-330.2,16043.3,223.822)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000425_DropItems)
set u=CreateUnit(p,0x6E676772,-11560.9,4774.4,123.246)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766467,-3330.5,15642.5,273.468)
set u=CreateUnit(p,0x6E646D75,-9823.3,6585.2,63.705)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E646D75,-9870.3,6703.9,3.219)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E647273,-6333.3,2819.3,93.107)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000569_DropItems)
set u=CreateUnit(p,0x6E647273,-6487.4,2813.7,90.750)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000570_DropItems)
set u=CreateUnit(p,0x6E647273,-6272.2,15258.9,267.530)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000571_DropItems)
set u=CreateUnit(p,0x6E727664,-1156.8,14023.9,184.967)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000182_DropItems)
set u=CreateUnit(p,0x6E72766C,-1338.2,14222.9,196.598)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72776D,-14811.3,9053.3,0.000)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000136_DropItems)
set u=CreateUnit(p,0x6E647273,-6537.3,15265.5,271.579)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000572_DropItems)
set u=CreateUnit(p,0x6E627A6B,-15169.1,9546.2,357.178)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7773,-841.8,16278.4,250.820)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727666,-1181.6,4202.1,186.850)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727666,-1156.7,3617.0,186.850)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-27133.7,16760.3,270.604)
set u=CreateUnit(p,0x6E303032,-27293.4,16761.4,276.928)
set u=CreateUnit(p,0x6E727666,-1237.8,13818.8,186.850)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E646D75,-9941.1,11701.4,180.830)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000286_DropItems)
set u=CreateUnit(p,0x6E727666,-1265.4,14358.2,186.850)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E76646C,-3877.1,2731.5,79.463)
set u=CreateUnit(p,0x6E6E7773,-159.4,15967.6,226.843)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7773,242.6,2379.8,143.154)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7773,-410.8,1888.7,123.396)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676772,-11534.1,13312.5,248.860)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676772,-10959.6,13316.2,297.415)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-8450.1,3183.8,122.417)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-8638.2,3248.0,115.834)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-8880.5,3270.0,103.575)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-9041.8,3198.7,93.858)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-8434.2,14722.3,255.262)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-8640.7,14709.0,269.051)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-8834.0,14708.2,284.824)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E727673,-9047.5,14761.2,274.398)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7761,79.5,2520.1,143.559)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7761,-537.3,2113.9,124.161)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7761,-247.7,15752.4,221.840)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7761,-916.3,16097.8,229.234)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C72,-13190.4,9449.6,234.682)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E6472,-3493.1,2468.8,98.971)
set u=CreateUnit(p,0x6E766467,-3754.9,15619.8,280.667)
set u=CreateUnit(p,0x6E646D75,-10057.0,11789.3,280.456)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677374,-11716.2,13261.1,256.775)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-10038.3,11674.4,284.719)
set u=CreateUnit(p,0x6E303032,-30543.9,9234.0,162.480)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E76646C,-3230.0,15562.2,257.712)
set u=CreateUnit(p,0x6E646D75,-10111.1,11575.2,60.494)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E76646C,-3235.7,15765.2,260.418)
set u=CreateUnit(p,0x6E72766C,-8536.8,14784.5,261.956)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E646D75,-10150.0,11713.1,353.145)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-8915.6,14798.5,281.116)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-8929.2,3121.5,94.290)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-8564.6,3118.6,101.230)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677374,-10763.0,13235.8,289.719)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C76,-13158.0,9227.4,319.180)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-8457.6,3013.1,113.391)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-9071.5,3063.2,97.662)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677374,-11247.2,12985.9,282.124)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-8394.2,14888.1,268.434)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E72766C,-9046.5,14890.9,286.390)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-30652.7,9431.5,258.160)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-30803.5,9368.5,322.832)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-30820.1,9133.1,42.963)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-30649.0,9052.7,99.014)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E76646C,-3831.3,15545.9,275.705)
set u=CreateUnit(p,0x6E303050,-17239.1,9374.1,267.780)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303050,-17576.2,9223.2,0.736)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-30622.9,1609.9,46.036)
set u=CreateUnit(p,0x6E303033,-30545.6,16843.8,308.085)
set u=CreateUnit(p,0x6E6E776C,-78.7,2446.7,139.624)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-30602.5,9147.3,122.092)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-30578.0,9337.5,208.898)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22517.2,13697.0,271.652)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E7761,-231.1,2342.4,135.189)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E6E776C,-384.6,2209.3,129.468)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22316.9,13698.9,274.364)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22178.1,13631.2,275.169)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22300.6,13615.2,270.172)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E766465,-8741.3,14930.1,266.420)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000383_DropItems)
set u=CreateUnit(p,0x6E736767,-13576.4,6784.5,121.353)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736767,-13620.8,11816.3,233.792)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22512.5,13994.7,276.577)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-4062.4,4659.0,126.595)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676831,-4221.2,4690.0,24.130)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000163_DropItems)
set u=CreateUnit(p,0x6E676831,-4162.8,4821.6,269.710)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22641.3,13647.9,270.172)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22501.3,5387.3,102.441)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22597.5,5389.7,93.912)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22592.8,5284.6,91.897)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22214.2,5307.6,91.897)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22224.5,5393.2,102.441)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22319.8,5386.5,93.912)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22597.2,14006.4,275.169)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22220.9,14014.0,275.169)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22592.9,5003.1,102.441)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22190.3,5010.1,102.441)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303031,-19931.9,2268.4,184.490)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000470_DropItems)
set u=CreateUnit(p,0x6E303031,-20272.4,16445.2,228.920)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000469_DropItems)
set u=CreateUnit(p,0x6E303033,-27138.3,16906.9,269.138)
set u=CreateUnit(p,0x6E303033,-27312.9,16910.4,278.357)
set u=CreateUnit(p,0x6E303032,-27219.6,16782.2,273.122)
set u=CreateUnit(p,0x6E303033,-27174.9,1285.2,98.835)
set u=CreateUnit(p,0x6E303033,-27343.8,1295.1,82.247)
set u=CreateUnit(p,0x6E303032,-27274.6,1419.3,93.333)
set u=CreateUnit(p,0x6E303033,-28932.5,8172.4,358.562)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-15048.0,9278.3,0.000)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28895.5,7716.9,358.562)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28855.3,10062.4,10.331)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-6409.1,15271.9,269.623)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-28890.8,10494.2,10.331)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-13516.9,6687.3,181.070)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-23253.5,12297.0,93.753)
set u=CreateUnit(p,0x6E303033,-22407.2,13632.5,268.573)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-22405.0,5264.7,88.970)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000541_DropItems)
set u=CreateUnit(p,0x6E303033,-22414.2,5369.6,95.392)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-27264.7,1343.5,89.196)
call SetUnitState(u,UNIT_STATE_MANA,400)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000543_DropItems)
set u=CreateUnit(p,0x6E303033,-27254.0,1234.0,90.680)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000544_DropItems)
set u=CreateUnit(p,0x6E303033,-27128.9,1356.6,105.284)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000094_DropItems)
set u=CreateUnit(p,0x6E303033,-27405.1,1344.6,73.828)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000096_DropItems)
set u=CreateUnit(p,0x6E303034,-27218.8,16847.0,273.334)
call SetUnitState(u,UNIT_STATE_MANA,400)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000210_DropItems)
set u=CreateUnit(p,0x6E303033,-27224.3,16960.3,273.330)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000241_DropItems)
set u=CreateUnit(p,0x6E303033,-27068.2,16812.9,268.031)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000373_DropItems)
set u=CreateUnit(p,0x6E303033,-27360.5,16822.4,278.721)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000202_DropItems)
set u=CreateUnit(p,0x6E303032,-23131.3,6838.1,277.216)
set u=CreateUnit(p,0x6E30304C,-6400.4,2810.9,92.485)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-9277.0,4700.2,352.282)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-4155.8,4757.4,129.665)
set u=CreateUnit(p,0x6E76646C,-3856.6,15747.0,287.074)
set u=CreateUnit(p,0x6E30304C,-4200.0,13681.1,302.748)
set u=CreateUnit(p,0x6E30304C,-9742.5,6680.8,284.719)
set u=CreateUnit(p,0x6E30304C,-9481.1,13576.5,123.534)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-20891.0,6931.6,250.251)
set u=CreateUnit(p,0x6E303033,-20958.6,6877.6,250.251)
set u=CreateUnit(p,0x6E303032,-30513.3,11904.2,350.617)
set u=CreateUnit(p,0x6E303032,-30490.5,11647.6,7.623)
set u=CreateUnit(p,0x6E303032,-30606.9,6295.6,344.019)
set u=CreateUnit(p,0x6E303032,-30597.9,5955.8,1.047)
set u=CreateUnit(p,0x6E303032,-25051.4,14049.4,161.093)
set u=CreateUnit(p,0x6E303032,-25115.0,14249.2,236.802)
set u=CreateUnit(p,0x6E303032,-25192.5,4826.9,28.767)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25026.9,4704.8,92.854)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22628.3,13720.8,281.828)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22200.3,13705.9,254.750)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-24720.6,2412.3,214.465)
set u=CreateUnit(p,0x6E303032,-24998.5,2490.0,318.721)
set u=CreateUnit(p,0x6E303033,-24806.7,16256.9,171.873)
set u=CreateUnit(p,0x6E303033,-25226.4,16259.2,7.731)
set u=CreateUnit(p,0x6E303034,-25014.1,16023.9,92.920)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000321_DropItems)
set u=CreateUnit(p,0x6E303034,-25044.4,16461.8,273.640)
call SetUnitState(u,UNIT_STATE_MANA,0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000474_DropItems)
set u=CreateUnit(p,0x6E303032,-25220.3,16135.9,34.677)
set u=CreateUnit(p,0x6E303032,-25213.8,16372.7,320.269)
set u=CreateUnit(p,0x6E303032,-24926.0,16460.3,240.875)
set u=CreateUnit(p,0x6E303032,-24907.7,16056.2,133.903)
set u=CreateUnit(p,0x6E303034,-23134.0,6914.1,276.147)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000348_DropItems)
set u=CreateUnit(p,0x6E303033,-23033.4,6892.4,262.840)
set u=CreateUnit(p,0x6E303033,-23238.5,6911.1,289.092)
set u=CreateUnit(p,0x6E303032,-23206.5,6811.2,289.712)
set u=CreateUnit(p,0x6E303032,-23042.1,6805.2,262.461)
set u=CreateUnit(p,0x6E303034,-23252.4,12209.1,87.790)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000475_DropItems)
set u=CreateUnit(p,0x6E303033,-23152.7,12201.4,94.628)
set u=CreateUnit(p,0x6E303033,-23347.3,12206.1,79.984)
set u=CreateUnit(p,0x6E303032,-23338.5,12295.5,80.952)
set u=CreateUnit(p,0x6E303032,-23171.4,12302.6,93.753)
set u=CreateUnit(p,0x6E303032,-25352.3,9104.8,148.333)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25372.8,9295.2,199.623)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25527.0,9034.1,98.239)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25543.4,9397.9,270.258)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25713.0,9268.5,346.275)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-25696.2,9096.4,43.517)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-21019.4,11831.3,142.852)
set u=CreateUnit(p,0x6E303033,-21168.8,12048.0,142.852)
set u=CreateUnit(p,0x6E30304C,-3473.3,15578.1,159.713)
set u=CreateUnit(p,0x6E30304C,-3608.4,2605.4,94.249)
set u=CreateUnit(p,0x6E303032,-21209.6,12125.8,149.189)
set u=CreateUnit(p,0x6E303032,-21003.8,6677.7,250.137)
set u=CreateUnit(p,0x6E30304C,-8902.1,3117.6,201.342)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-8587.4,3129.1,53.461)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-171.2,2288.3,76.258)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-22769.9,16051.2,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000037_DropItems)
set u=CreateUnit(p,0x6E30304C,-6992.5,9255.6,153.912)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-12990.7,9391.3,317.530)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303034,-22813.7,16419.8,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000175_DropItems)
set u=CreateUnit(p,0x6E303032,-22568.1,2083.8,170.000)
set u=CreateUnit(p,0x6E30304C,-573.9,16088.5,287.070)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-22603.0,2510.7,170.000)
set u=CreateUnit(p,0x6E303034,-22640.2,2108.6,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000282_DropItems)
set u=CreateUnit(p,0x6E677374,-10981.5,13075.4,300.064)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-1219.0,14107.7,235.565)
set u=CreateUnit(p,0x6E303035,-22773.9,2296.6,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000280_DropItems)
set u=CreateUnit(p,0x6E677374,-11522.2,13091.3,240.952)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-8907.4,14876.6,283.839)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-8541.8,14854.0,257.972)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303033,-22724.5,2216.8,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000279_DropItems)
set u=CreateUnit(p,0x6E303033,-22751.8,2389.8,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000278_DropItems)
set u=CreateUnit(p,0x6E303033,-22829.5,2378.1,170.000)
set u=CreateUnit(p,0x6E303033,-22806.4,2201.8,170.000)
set u=CreateUnit(p,0x6E303034,-22846.0,2309.6,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000273_DropItems)
set u=CreateUnit(p,0x6E303034,-22684.0,2477.3,170.000)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000162_DropItems)
set u=CreateUnit(p,0x6E303033,-30733.5,9121.1,74.417)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000619_DropItems)
set u=CreateUnit(p,0x6E303033,-30714.3,9372.5,287.426)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000618_DropItems)
set u=CreateUnit(p,0x6E303033,-22766.4,2485.5,198.243)
set u=CreateUnit(p,0x6E303033,-22738.7,2123.9,171.524)
set u=CreateUnit(p,0x6E303034,-30670.1,9237.1,109.518)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000610_DropItems)
set u=CreateUnit(p,0x6E303033,-30791.8,9230.5,24.157)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000614_DropItems)
set u=CreateUnit(p,0x6E303033,-22647.3,2027.7,171.524)
set u=CreateUnit(p,0x6E303033,-22688.9,2562.7,171.524)
set u=CreateUnit(p,0x6E303034,-30638.7,6122.6,358.965)
set u=CreateUnit(p,0x6E303032,-30635.4,6205.8,347.139)
set u=CreateUnit(p,0x6E303033,-30429.1,11809.9,3.229)
set u=CreateUnit(p,0x6E303032,-30493.0,11975.5,2.042)
set u=CreateUnit(p,0x6E303033,-30721.9,16916.3,305.310)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000246_DropItems)
set u=CreateUnit(p,0x6E303033,-30578.8,17045.5,305.310)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000420_DropItems)
set u=CreateUnit(p,0x6E303033,-30658.1,1442.8,46.700)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000419_DropItems)
set u=CreateUnit(p,0x6E303033,-30803.6,1551.9,42.540)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000552_DropItems)
set u=CreateUnit(p,0x6E303032,-24826.4,16129.3,133.903)
set u=CreateUnit(p,0x6E303032,-24848.9,16381.8,227.422)
set u=CreateUnit(p,0x6E303032,-25147.3,16439.3,293.896)
set u=CreateUnit(p,0x6E303032,-25143.3,16047.7,57.968)
set u=CreateUnit(p,0x6E303032,-24710.5,2170.6,128.558)
set u=CreateUnit(p,0x6E303032,-24795.7,2493.2,237.415)
set u=CreateUnit(p,0x6E303032,-25080.1,2408.8,322.467)
set u=CreateUnit(p,0x6E303032,-25084.8,2200.3,25.281)
set u=CreateUnit(p,0x6E676772,-10950.0,4747.8,65.798)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677374,-10797.2,4869.1,68.051)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677374,-11012.7,5035.9,61.859)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E676772,-11253.2,4893.5,86.460)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set t=CreateTrigger()
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_DEATH)
call TriggerRegisterUnitEvent(t,u,EVENT_UNIT_CHANGE_OWNER)
call TriggerAddAction(t,function Unit000056_DropItems)
set u=CreateUnit(p,0x6E677374,-11495.9,5056.2,103.083)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677374,-11722.3,4911.3,112.079)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E677374,-11262.8,5149.5,85.651)
call SetUnitState(u,UNIT_STATE_MANA,0)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E666775,-7186.2,9159.9,192.227)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C6C,-14995.7,8944.9,0.000)
call SetUnitState(u,UNIT_STATE_MANA,700)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C6C,-15106.5,9716.9,0.000)
call SetUnitState(u,UNIT_STATE_MANA,700)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E737477,-15064.4,9160.2,0.000)
call SetUnitState(u,UNIT_STATE_MANA,600)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-11278.8,4895.1,15.110)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E30304C,-11256.5,13120.8,15.110)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C72,-14702.1,9260.2,0.000)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C72,-14708.4,9423.9,2.061)
call SetUnitState(u,UNIT_STATE_MANA,400)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E726472,-15133.0,9108.7,3.306)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E736C6C,-14999.6,9328.2,0.000)
call SetUnitState(u,UNIT_STATE_MANA,700)
call SetUnitAcquireRange(u,200.0)
set u=CreateUnit(p,0x6E303032,-23258.8,7007.5,262.461)
set u=CreateUnit(p,0x6E303032,-23034.0,6994.7,262.461)
set u=CreateUnit(p,0x6E303032,-23152.2,12111.9,93.753)
set u=CreateUnit(p,0x6E303032,-23356.1,12119.6,93.753)
set t=null
set u=null
endfunction
function CreateNeutralPassiveBuildings takes nothing returns nothing
local player p=Player(PLAYER_NEUTRAL_PASSIVE)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x6E303047,-22400.0,14208.0,270.000)
call SetResourceAmount(u,50000)
set u=CreateUnit(p,0x6E676F6C,-11264.0,4608.0,270.000)
call SetResourceAmount(u,80000)
set u=CreateUnit(p,0x6E676F6C,-11264.0,13504.0,270.000)
call SetResourceAmount(u,80000)
set u=CreateUnit(p,0x6E303047,-28992.0,7936.0,270.000)
call SetResourceAmount(u,50000)
set gg_unit_n00G_0008=CreateUnit(p,0x6E303047,-28992.0,4288.0,270.000)
call SetResourceAmount(gg_unit_n00G_0008,90000)
set gg_unit_n00G_0009=CreateUnit(p,0x6E303047,-26368.0,7040.0,270.000)
call SetResourceAmount(gg_unit_n00G_0009,90000)
set gg_unit_n00G_0010=CreateUnit(p,0x6E303047,-28992.0,13568.0,270.000)
call SetResourceAmount(gg_unit_n00G_0010,90000)
set gg_unit_n00G_0014=CreateUnit(p,0x6E303047,-26496.0,11200.0,270.000)
call SetResourceAmount(gg_unit_n00G_0014,90000)
set u=CreateUnit(p,0x6E303047,-28992.0,10240.0,270.000)
call SetResourceAmount(u,50000)
set u=CreateUnit(p,0x6E676F6C,-768.0,3904.0,270.000)
call SetResourceAmount(u,90000)
set u=CreateUnit(p,0x6E676F6C,-832.0,14016.0,270.000)
call SetResourceAmount(u,90000)
set u=CreateUnit(p,0x6E303047,-22208.0,9344.0,270.000)
call SetResourceAmount(u,120000)
set u=CreateUnit(p,0x6E6D7262,-3584.0,16064.0,270.000)
call SetUnitColor(u,ConvertPlayerColor(0))
set u=CreateUnit(p,0x6E303047,-22400.0,4800.0,270.000)
call SetResourceAmount(u,50000)
set u=CreateUnit(p,0x6E303048,-6848.0,9152.0,270.000)
set u=CreateUnit(p,0x6E6D7266,-3584.0,2176.0,270.000)
call SetUnitColor(u,ConvertPlayerColor(3))
set u=CreateUnit(p,0x6E676F6C,-6400.0,2432.0,270.000)
call SetResourceAmount(u,90000)
set u=CreateUnit(p,0x6E676F6C,-6400.0,15552.0,270.000)
call SetResourceAmount(u,90000)
set u=CreateUnit(p,0x6E30304F,-8832.0,15296.0,270.000)
call SetUnitColor(u,ConvertPlayerColor(0))
set u=CreateUnit(p,0x6E676D65,-24896.0,2304.0,270.000)
set u=CreateUnit(p,0x6E30304F,-8768.0,2752.0,270.000)
call SetUnitColor(u,ConvertPlayerColor(0))
set u=CreateUnit(p,0x6E30304A,-22656.0,16256.0,270.000)
call SetUnitColor(u,ConvertPlayerColor(10))
set u=CreateUnit(p,0x6E676D65,-25024.0,16256.0,270.000)
set u=CreateUnit(p,0x6E30304A,-22528.0,2304.0,270.000)
call SetUnitColor(u,ConvertPlayerColor(10))
set u=CreateUnit(p,0x6E303038,-25536.0,9216.0,270.000)
set u=CreateUnit(p,0x6E303045,-25024.0,4864.0,270.000)
set u=CreateUnit(p,0x6E303045,-25216.0,14080.0,270.000)
set u=CreateUnit(p,0x6E303046,-26944.0,9216.0,270.000)
set gg_unit_n00Q_0666=CreateUnit(p,0x6E303051,-12736.0,5504.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0666,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0666,true)
set gg_unit_n00Q_0667=CreateUnit(p,0x6E303051,-12096.0,12352.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0667,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0667,true)
set gg_unit_n00Q_0668=CreateUnit(p,0x6E303051,-7168.0,12672.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0668,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0668,true)
set gg_unit_n00Q_0669=CreateUnit(p,0x6E303051,-7040.0,5824.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0669,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0669,true)
set gg_unit_n00Q_0670=CreateUnit(p,0x6E303051,-12224.0,9216.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0670,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0670,true)
set gg_unit_n00Q_0671=CreateUnit(p,0x6E303051,-3840.0,11712.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0671,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0671,true)
set gg_unit_n00Q_0672=CreateUnit(p,0x6E303051,-2944.0,9024.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0672,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0672,true)
set gg_unit_n00Q_0673=CreateUnit(p,0x6E303051,-3840.0,6720.0,270.000)
call WaygateSetDestination(gg_unit_n00Q_0673,GetRectCenterX(gg_rct_UndeadPortal),GetRectCenterY(gg_rct_UndeadPortal))
call WaygateActivate(gg_unit_n00Q_0673,true)
set gg_unit_n00R_0689=CreateUnit(p,0x6E303052,-23936.0,9344.0,270.000)
set u=null
endfunction
function CreateNeutralPassive takes nothing returns nothing
local player p=Player(PLAYER_NEUTRAL_PASSIVE)
local unit u
local integer unitID
local trigger t
local real life
set u=CreateUnit(p,0x6E666272,-22629.5,3998.3,256.495)
set u=CreateUnit(p,0x6E666272,-29909.6,6507.0,186.707)
set u=CreateUnit(p,0x6E666272,-2.0,17253.0,191.662)
set u=CreateUnit(p,0x6E666272,-26285.9,15772.6,332.230)
set u=CreateUnit(p,0x6E64776D,-22866.1,10010.1,79.873)
set u=CreateUnit(p,0x6E64776D,-9982.0,5975.9,357.070)
set u=CreateUnit(p,0x6E64776D,-29701.4,16316.8,229.290)
set u=CreateUnit(p,0x6E64776D,-6260.6,12268.8,250.520)
set u=CreateUnit(p,0x6E64776D,-12894.0,9602.1,236.883)
set u=CreateUnit(p,0x6E64776D,-29477.0,1641.2,71.468)
set u=CreateUnit(p,0x6E666272,385.8,2148.9,261.129)
set u=CreateUnit(p,0x6E666272,-1196.9,11016.1,3.911)
set u=CreateUnit(p,0x6E666272,-11981.8,9672.5,39.220)
set u=CreateUnit(p,0x6E64776D,-11879.3,9006.4,270.130)
set u=CreateUnit(p,0x6E64776D,-25498.4,16881.6,358.210)
set u=CreateUnit(p,0x6E64776D,-27953.9,1439.2,280.810)
set u=CreateUnit(p,0x6E64776D,-27461.3,16215.8,17.480)
set u=CreateUnit(p,0x6E64776D,-26902.0,14738.0,336.750)
set u=CreateUnit(p,0x6E666272,-23058.4,11551.2,98.023)
set u=CreateUnit(p,0x6E666272,-21531.8,7243.1,341.729)
set u=CreateUnit(p,0x6E666272,-21733.8,1985.7,24.676)
set u=CreateUnit(p,0x6E666272,-9568.4,6178.8,151.000)
set u=CreateUnit(p,0x6E666272,-9673.6,13649.0,280.193)
set u=CreateUnit(p,0x6E666272,-21860.3,16216.1,99.715)
set u=null
endfunction
function CreatePlayerBuildings takes nothing returns nothing
call CreateBuildingsForPlayer0()
call CreateBuildingsForPlayer1()
call CreateBuildingsForPlayer2()
call CreateBuildingsForPlayer3()
call CreateBuildingsForPlayer4()
call CreateBuildingsForPlayer5()
call CreateBuildingsForPlayer6()
call CreateBuildingsForPlayer7()
call CreateBuildingsForPlayer8()
call CreateBuildingsForPlayer9()
call CreateBuildingsForPlayer10()
call CreateBuildingsForPlayer11()
endfunction
function CreatePlayerUnits takes nothing returns nothing
call CreateUnitsForPlayer0()
call CreateUnitsForPlayer1()
call CreateUnitsForPlayer2()
call CreateUnitsForPlayer3()
call CreateUnitsForPlayer4()
call CreateUnitsForPlayer6()
call CreateUnitsForPlayer7()
call CreateUnitsForPlayer8()
call CreateUnitsForPlayer9()
call CreateUnitsForPlayer10()
call CreateUnitsForPlayer11()
endfunction
function CreateAllUnits takes nothing returns nothing
call CreateNeutralHostileBuildings()
call CreateNeutralPassiveBuildings()
call CreatePlayerBuildings()
call CreateNeutralHostile()
call CreateNeutralPassive()
call CreatePlayerUnits()
endfunction
function CreateRegions takes nothing returns nothing
local weathereffect we
set gg_rct_AI_item_1=Rect(-28608.0,4224.0,-28512.0,4320.0)
set gg_rct_AI_item_2=Rect(-28576.0,13536.0,-28480.0,13632.0)
set gg_rct_AI_item_3=Rect(-26112.0,11168.0,-26016.0,11264.0)
set gg_rct_AI_item_4=Rect(-25984.0,7008.0,-25888.0,7104.0)
set gg_rct_AI_item_5=Rect(-23040.0,9312.0,-22944.0,9408.0)
set gg_rct_BlockMID_01=Rect(-18496.0,8352.0,-17536.0,10208.0)
set gg_rct_BlockMID_02=Rect(-17408.0,8352.0,-16384.0,10208.0)
set gg_rct_M0=Rect(576.0,9088.0,640.0,9152.0)
set gg_rct_MID=Rect(-17536.0,9184.0,-17408.0,9312.0)
set gg_rct_ProbeDroid01=Rect(-13600.0,6656.0,-13504.0,6752.0)
set gg_rct_ProbeDroid02=Rect(-13600.0,11840.0,-13504.0,11936.0)
set gg_rct_ProbeDroid03=Rect(-14496.0,9312.0,-14400.0,9408.0)
set gg_rct_Star_Wars_Zone=Rect(-31168.0,-256.0,-17920.0,18496.0)
set gg_rct_UndeadAT01=Rect(-14336.0,7840.0,-14176.0,8000.0)
set gg_rct_UndeadAT02=Rect(-14400.0,10848.0,-14240.0,11008.0)
set gg_rct_UndeadAT03=Rect(-13856.0,9248.0,-13696.0,9408.0)
set gg_rct_UndeadBase=Rect(-224.0,9184.0,-128.0,9280.0)
set gg_rct_UndeadItem01=Rect(-9568.0,9120.0,-9472.0,9216.0)
set gg_rct_UndeadItem02=Rect(-7168.0,11712.0,-7072.0,11808.0)
set gg_rct_UndeadItem03=Rect(-7136.0,6624.0,-7040.0,6720.0)
set gg_rct_UndeadItem04=Rect(-4352.0,8928.0,-4256.0,9024.0)
set gg_rct_UndeadItem05=Rect(-2624.0,11616.0,-2528.0,11712.0)
set gg_rct_UndeadItem06=Rect(-2624.0,6720.0,-2528.0,6816.0)
set gg_rct_UndeadPortal=Rect(-24160.0,9120.0,-23712.0,9600.0)
set gg_rct_Generator=Rect(-24128.0,9120.0,-24032.0,9216.0)
set gg_rct_UndeadDragon01=Rect(-2432.0,17184.0,-1440.0,17312.0)
set gg_rct_UndeadDragon02=Rect(1120.0,3840.0,1248.0,4576.0)
endfunction
function CreateCameras takes nothing returns nothing
set gg_cam_Camera_001=CreateCameraSetup()
call CameraSetupSetField(gg_cam_Camera_001,CAMERA_FIELD_ZOFFSET,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_001,CAMERA_FIELD_ROTATION,53.6,0.0)
call CameraSetupSetField(gg_cam_Camera_001,CAMERA_FIELD_ANGLE_OF_ATTACK,308.5,0.0)
call CameraSetupSetField(gg_cam_Camera_001,CAMERA_FIELD_TARGET_DISTANCE,2923.1,0.0)
call CameraSetupSetField(gg_cam_Camera_001,CAMERA_FIELD_ROLL,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_001,CAMERA_FIELD_FIELD_OF_VIEW,70.0,0.0)
call CameraSetupSetField(gg_cam_Camera_001,CAMERA_FIELD_FARZ,5000.0,0.0)
call CameraSetupSetDestPosition(gg_cam_Camera_001,-3883.5,12103.6,0.0)
set gg_cam_Camera_002=CreateCameraSetup()
call CameraSetupSetField(gg_cam_Camera_002,CAMERA_FIELD_ZOFFSET,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_002,CAMERA_FIELD_ROTATION,53.6,0.0)
call CameraSetupSetField(gg_cam_Camera_002,CAMERA_FIELD_ANGLE_OF_ATTACK,308.5,0.0)
call CameraSetupSetField(gg_cam_Camera_002,CAMERA_FIELD_TARGET_DISTANCE,3536.9,0.0)
call CameraSetupSetField(gg_cam_Camera_002,CAMERA_FIELD_ROLL,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_002,CAMERA_FIELD_FIELD_OF_VIEW,70.0,0.0)
call CameraSetupSetField(gg_cam_Camera_002,CAMERA_FIELD_FARZ,5000.0,0.0)
call CameraSetupSetDestPosition(gg_cam_Camera_002,-3881.2,5208.6,0.0)
set gg_cam_Camera_003=CreateCameraSetup()
call CameraSetupSetField(gg_cam_Camera_003,CAMERA_FIELD_ZOFFSET,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_003,CAMERA_FIELD_ROTATION,55.5,0.0)
call CameraSetupSetField(gg_cam_Camera_003,CAMERA_FIELD_ANGLE_OF_ATTACK,308.1,0.0)
call CameraSetupSetField(gg_cam_Camera_003,CAMERA_FIELD_TARGET_DISTANCE,2657.3,0.0)
call CameraSetupSetField(gg_cam_Camera_003,CAMERA_FIELD_ROLL,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_003,CAMERA_FIELD_FIELD_OF_VIEW,70.0,0.0)
call CameraSetupSetField(gg_cam_Camera_003,CAMERA_FIELD_FARZ,5000.0,0.0)
call CameraSetupSetDestPosition(gg_cam_Camera_003,-1470.6,9086.0,0.0)
set gg_cam_Camera_004=CreateCameraSetup()
call CameraSetupSetField(gg_cam_Camera_004,CAMERA_FIELD_ZOFFSET,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_004,CAMERA_FIELD_ROTATION,55.5,0.0)
call CameraSetupSetField(gg_cam_Camera_004,CAMERA_FIELD_ANGLE_OF_ATTACK,308.1,0.0)
call CameraSetupSetField(gg_cam_Camera_004,CAMERA_FIELD_TARGET_DISTANCE,2196.2,0.0)
call CameraSetupSetField(gg_cam_Camera_004,CAMERA_FIELD_ROLL,0.0,0.0)
call CameraSetupSetField(gg_cam_Camera_004,CAMERA_FIELD_FIELD_OF_VIEW,70.0,0.0)
call CameraSetupSetField(gg_cam_Camera_004,CAMERA_FIELD_FARZ,5000.0,0.0)
call CameraSetupSetDestPosition(gg_cam_Camera_004,89.6,9216.3,0.0)
set gg_cam_WIN_Camera_01=CreateCameraSetup()
call CameraSetupSetField(gg_cam_WIN_Camera_01,CAMERA_FIELD_ZOFFSET,0.0,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_01,CAMERA_FIELD_ROTATION,36.8,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_01,CAMERA_FIELD_ANGLE_OF_ATTACK,323.5,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_01,CAMERA_FIELD_TARGET_DISTANCE,2415.8,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_01,CAMERA_FIELD_ROLL,0.0,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_01,CAMERA_FIELD_FIELD_OF_VIEW,70.0,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_01,CAMERA_FIELD_FARZ,4545.5,0.0)
call CameraSetupSetDestPosition(gg_cam_WIN_Camera_01,-286.6,8886.1,0.0)
set gg_cam_WIN_Camera_02=CreateCameraSetup()
call CameraSetupSetField(gg_cam_WIN_Camera_02,CAMERA_FIELD_ZOFFSET,0.0,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_02,CAMERA_FIELD_ROTATION,325.3,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_02,CAMERA_FIELD_ANGLE_OF_ATTACK,322.6,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_02,CAMERA_FIELD_TARGET_DISTANCE,2196.1,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_02,CAMERA_FIELD_ROLL,0.0,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_02,CAMERA_FIELD_FIELD_OF_VIEW,70.0,0.0)
call CameraSetupSetField(gg_cam_WIN_Camera_02,CAMERA_FIELD_FARZ,4545.5,0.0)
call CameraSetupSetDestPosition(gg_cam_WIN_Camera_02,-317.8,9342.6,0.0)
endfunction
function SaveMyLightning takes real x1,real y1,real z1,real x2,real y2,real z2 returns nothing
call SaveLightningHandle(udg_PD_Hashtable,GetHandleId(udg_PD_TmpHandle),((udg_PD_Loop+udg_PD_TmpInteger2)*2),AddLightningEx(udg_PD_Lightning_Type,true,x1,y1,z1,x2,y2,z2))
endfunction
function MoveMyLightning takes real x1,real y1,real z1,real x2,real y2,real z2 returns nothing
if LoadBoolean(udg_PD_Hashtable,GetHandleId(udg_PD_TmpHandle),StringHash("Rise"))==true then
call MoveLightningEx(LoadLightningHandle(udg_PD_Hashtable,GetHandleId(udg_PD_TmpHandle2),((udg_PD_Loop+udg_PD_TmpInteger)*2)),true,x1,y1,(z1+GetLocationZ(udg_PD_TmpPoint2)+40.00),x2,y2,z2)
else
call MoveLightningEx(LoadLightningHandle(udg_PD_Hashtable,GetHandleId(udg_PD_TmpHandle2),((udg_PD_Loop+udg_PD_TmpInteger)*2)),true,x1,y1,0.00,x2,y2,z2)
endif
endfunction
function Trig_GameSTART_Func108002 takes nothing returns nothing
call RemoveUnit(GetEnumUnit())
endfunction
function Trig_GameSTART_Actions takes nothing returns nothing
call CinematicFadeBJ(bj_CINEFADETYPE_FADEOUT,0.00,"ReplaceableTextures\\CameraMasks\\Black_mask.blp",0,0,0,0)
call InitHashtableBJ()
set udg_Hashtable=GetLastCreatedHashtableBJ()
call StartMeleeAI(Player(0),"war3mapImported\\RSW [AI] (01).ai")
call StartMeleeAI(Player(1),"war3mapImported\\RSW [AI] (01).ai")
call StartMeleeAI(Player(2),"war3mapImported\\RSW [AI] (02).ai")
call StartMeleeAI(Player(3),"war3mapImported\\RSW [AI] (02).ai")
call StartMeleeAI(Player(4),"war3mapImported\\RSW [AI] (04).ai")
call MeleeStartingVisibility()
call MeleeStartingHeroLimit()
call MeleeStartingResources()
call MeleeClearExcessUnits()
call MeleeInitVictoryDefeat()
call StartMeleeAI(Player(6),"war3mapImported\\RSW [Undead] (01).ai")
call StartMeleeAI(Player(7),"war3mapImported\\RSW [Undead] (01).ai")
call StartMeleeAI(Player(8),"war3mapImported\\RSW [Undead] (02).ai")
call StartMeleeAI(Player(9),"war3mapImported\\RSW [Undead] (01).ai")
call StartMeleeAI(Player(10),"war3mapImported\\RSW [Undead] (02).ai")
call StartMeleeAI(Player(11),"war3mapImported\\RSW [Undead] (02).ai")
call CreateFogModifierRectBJ(true,Player(0),FOG_OF_WAR_FOGGED,gg_rct_Star_Wars_Zone)
call CreateFogModifierRectBJ(true,Player(1),FOG_OF_WAR_FOGGED,gg_rct_Star_Wars_Zone)
call CreateFogModifierRectBJ(true,Player(2),FOG_OF_WAR_FOGGED,gg_rct_Star_Wars_Zone)
call CreateFogModifierRectBJ(true,Player(3),FOG_OF_WAR_FOGGED,gg_rct_Star_Wars_Zone)
call CreateFogModifierRectBJ(true,Player(4),FOG_OF_WAR_FOGGED,gg_rct_Star_Wars_Zone)
call SetPlayerHandicapXPBJ(Player(0),80.00)
call SetPlayerHandicapXPBJ(Player(1),80.00)
call SetPlayerHandicapXPBJ(Player(2),80.00)
call SetPlayerHandicapXPBJ(Player(3),80.00)
call SetPlayerHandicapXPBJ(Player(4),80.00)
call SetPlayerFlagBJ(PLAYER_STATE_GIVES_BOUNTY,true,Player(0))
call SetPlayerFlagBJ(PLAYER_STATE_GIVES_BOUNTY,true,Player(1))
call SetPlayerFlagBJ(PLAYER_STATE_GIVES_BOUNTY,true,Player(2))
call SetPlayerFlagBJ(PLAYER_STATE_GIVES_BOUNTY,true,Player(3))
call SetPlayerFlagBJ(PLAYER_STATE_GIVES_BOUNTY,true,Player(4))
call SetPlayerHandicapXPBJ(Player(6),250.00)
call SetPlayerHandicapXPBJ(Player(7),250.00)
call SetPlayerHandicapXPBJ(Player(8),250.00)
call SetPlayerHandicapXPBJ(Player(9),250.00)
call SetPlayerHandicapXPBJ(Player(10),250.00)
call SetPlayerHandicapXPBJ(Player(11),250.00)
call SetPlayerStateBJ(Player(0),PLAYER_STATE_RESOURCE_GOLD,1000)
call SetPlayerStateBJ(Player(1),PLAYER_STATE_RESOURCE_GOLD,1000)
call SetPlayerStateBJ(Player(2),PLAYER_STATE_RESOURCE_GOLD,1000)
call SetPlayerStateBJ(Player(3),PLAYER_STATE_RESOURCE_GOLD,1000)
call SetPlayerStateBJ(Player(4),PLAYER_STATE_RESOURCE_GOLD,1000)
call SetPlayerStateBJ(Player(0),PLAYER_STATE_RESOURCE_LUMBER,1000)
call SetPlayerStateBJ(Player(1),PLAYER_STATE_RESOURCE_LUMBER,1000)
call SetPlayerStateBJ(Player(2),PLAYER_STATE_RESOURCE_LUMBER,1000)
call SetPlayerStateBJ(Player(3),PLAYER_STATE_RESOURCE_LUMBER,1000)
call SetPlayerStateBJ(Player(4),PLAYER_STATE_RESOURCE_LUMBER,1000)
call SetPlayerStateBJ(Player(5),PLAYER_STATE_RESOURCE_GOLD,0)
call SetPlayerStateBJ(Player(6),PLAYER_STATE_RESOURCE_GOLD,800)
call SetPlayerStateBJ(Player(7),PLAYER_STATE_RESOURCE_GOLD,800)
call SetPlayerStateBJ(Player(8),PLAYER_STATE_RESOURCE_GOLD,800)
call SetPlayerStateBJ(Player(9),PLAYER_STATE_RESOURCE_GOLD,800)
call SetPlayerStateBJ(Player(10),PLAYER_STATE_RESOURCE_GOLD,800)
call SetPlayerStateBJ(Player(11),PLAYER_STATE_RESOURCE_GOLD,800)
call SetPlayerStateBJ(Player(5),PLAYER_STATE_RESOURCE_LUMBER,800)
call SetPlayerStateBJ(Player(6),PLAYER_STATE_RESOURCE_LUMBER,800)
call SetPlayerStateBJ(Player(7),PLAYER_STATE_RESOURCE_LUMBER,800)
call SetPlayerStateBJ(Player(8),PLAYER_STATE_RESOURCE_LUMBER,800)
call SetPlayerStateBJ(Player(9),PLAYER_STATE_RESOURCE_LUMBER,800)
call SetPlayerStateBJ(Player(10),PLAYER_STATE_RESOURCE_LUMBER,800)
call SetPlayerStateBJ(Player(11),PLAYER_STATE_RESOURCE_LUMBER,800)
call SetPlayerMaxHeroesAllowed(1,Player(0))
call SetPlayerMaxHeroesAllowed(1,Player(1))
call SetPlayerMaxHeroesAllowed(1,Player(2))
call SetPlayerMaxHeroesAllowed(1,Player(3))
call SetPlayerMaxHeroesAllowed(1,Player(4))
call SetPlayerMaxHeroesAllowed(1,Player(5))
call SetPlayerTechMaxAllowedSwap(0x45303036,1,Player(5))
call ShowUnitHide(gg_unit_n00Q_0667)
call ShowUnitHide(gg_unit_n00Q_0666)
call ShowUnitHide(gg_unit_n00Q_0670)
call ShowUnitHide(gg_unit_n00Q_0668)
call ShowUnitHide(gg_unit_n00Q_0669)
call ShowUnitHide(gg_unit_n00Q_0673)
call ShowUnitHide(gg_unit_n00Q_0672)
call ShowUnitHide(gg_unit_n00Q_0671)
call ShowUnitHide(gg_unit_n00R_0689)
call ShowDestructableBJ(false,gg_dest_B001_1434)
call SetUnitInvulnerable(gg_unit_n007_0105,true)
call SetUnitInvulnerable(gg_unit_nndr_0025,true)
call SetUnitInvulnerable(gg_unit_nndr_0331,true)
call SetUnitInvulnerable(gg_unit_nndr_0024,true)
call SetUnitInvulnerable(gg_unit_nndr_0158,true)
call SetUnitInvulnerable(gg_unit_nvde_0037,true)
call SetUnitInvulnerable(gg_unit_nvde_0194,true)
call SetUnitInvulnerable(gg_unit_nvde_0064,true)
call SetUnitInvulnerable(gg_unit_nvde_0115,true)
call SetUnitInvulnerable(gg_unit_nvde_0332,true)
call SetUnitInvulnerable(gg_unit_nvde_0128,true)
call SetUnitInvulnerable(gg_unit_nvde_0101,true)
call SetUnitInvulnerable(gg_unit_nvde_0127,true)
call WaygateActivateBJ(false,gg_unit_n00Q_0667)
call WaygateActivateBJ(false,gg_unit_n00Q_0670)
call WaygateActivateBJ(false,gg_unit_n00Q_0666)
call WaygateActivateBJ(false,gg_unit_n00Q_0668)
call WaygateActivateBJ(false,gg_unit_n00Q_0669)
call WaygateActivateBJ(false,gg_unit_n00Q_0671)
call WaygateActivateBJ(false,gg_unit_n00Q_0672)
call WaygateActivateBJ(false,gg_unit_n00Q_0673)
call CreateNUnitsAtLoc(1,0x68303148,Player(0),GetRectCenter(gg_rct_UndeadBase),bj_UNIT_FACING)
call CinematicFadeBJ(bj_CINEFADETYPE_FADEIN,3.00,"ReplaceableTextures\\CameraMasks\\White_mask.blp",0,0,0,0)
call DisplayTimedTextToForce(GetPlayersAll(),5.00,"TRIGSTR_4727")
call TriggerSleepAction(1.00)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x68303148),function Trig_GameSTART_Func108002)
call CreateTextTagLocBJ("TRIGSTR_6371",GetRectCenter(gg_rct_ProbeDroid03),0,15.00,100,100.00,100.00,0)
call DestroyTextTagBJ(GetLastCreatedTextTag())
endfunction
function InitTrig_GameSTART takes nothing returns nothing
set gg_trg_GameSTART=CreateTrigger()
call TriggerAddAction(gg_trg_GameSTART,function Trig_GameSTART_Actions)
endfunction
function Trig_MapINFO_Actions takes nothing returns nothing
call CreateQuestBJ(bj_QUESTTYPE_REQ_DISCOVERED,"TRIGSTR_2223","TRIGSTR_2224","ReplaceableTextures\\CommandButtons\\BTNDeathCurse.blp")
call CreateQuestBJ(bj_QUESTTYPE_REQ_DISCOVERED,"TRIGSTR_2137","TRIGSTR_2138","ReplaceableTextures\\CommandButtons\\BTNSelectHeroOn.blp")
call CreateQuestBJ(bj_QUESTTYPE_OPT_DISCOVERED,"TRIGSTR_2135","TRIGSTR_2136","war3mapImported\\FireRanger.blp")
call CreateQuestBJ(bj_QUESTTYPE_OPT_DISCOVERED,"TRIGSTR_3905","TRIGSTR_3906","ReplaceableTextures\\WorldEditUI\\Doodad-Cinematic.blp")
endfunction
function InitTrig_MapINFO takes nothing returns nothing
set gg_trg_MapINFO=CreateTrigger()
call TriggerAddAction(gg_trg_MapINFO,function Trig_MapINFO_Actions)
endfunction
function Trig_No_Player_1_Conditions takes nothing returns boolean
if(not(GetPlayerSlotState(Player(0))==PLAYER_SLOT_STATE_EMPTY))then
return false
endif
return true
endfunction
function Trig_No_Player_1_Actions takes nothing returns nothing
call RemoveUnit(gg_unit_n00G_0008)
call RemoveUnit(gg_unit_htow_0047)
call RemoveUnit(gg_unit_hpea_0129)
call RemoveUnit(gg_unit_hpea_0217)
call RemoveUnit(gg_unit_hpea_0320)
call RemoveUnit(gg_unit_hpea_0321)
call RemoveUnit(gg_unit_hpea_0322)
call RemoveUnit(gg_unit_hpea_0323)
call RemoveUnit(gg_unit_hpea_0324)
call RemoveUnit(gg_unit_hpea_0413)
endfunction
function InitTrig_No_Player_1 takes nothing returns nothing
set gg_trg_No_Player_1=CreateTrigger()
call TriggerAddCondition(gg_trg_No_Player_1,Condition(function Trig_No_Player_1_Conditions))
call TriggerAddAction(gg_trg_No_Player_1,function Trig_No_Player_1_Actions)
endfunction
function Trig_No_Player_2_Conditions takes nothing returns boolean
if(not(GetPlayerSlotState(Player(1))==PLAYER_SLOT_STATE_EMPTY))then
return false
endif
return true
endfunction
function Trig_No_Player_2_Actions takes nothing returns nothing
call RemoveUnit(gg_unit_n00G_0010)
call RemoveUnit(gg_unit_htow_0487)
call RemoveUnit(gg_unit_hpea_0488)
call RemoveUnit(gg_unit_hpea_0218)
call RemoveUnit(gg_unit_hpea_0486)
call RemoveUnit(gg_unit_hpea_0329)
call RemoveUnit(gg_unit_hpea_0325)
call RemoveUnit(gg_unit_hpea_0327)
call RemoveUnit(gg_unit_hpea_0328)
call RemoveUnit(gg_unit_hpea_0326)
endfunction
function InitTrig_No_Player_2 takes nothing returns nothing
set gg_trg_No_Player_2=CreateTrigger()
call TriggerAddCondition(gg_trg_No_Player_2,Condition(function Trig_No_Player_2_Conditions))
call TriggerAddAction(gg_trg_No_Player_2,function Trig_No_Player_2_Actions)
endfunction
function Trig_No_Player_3_Conditions takes nothing returns boolean
if(not(GetPlayerSlotState(Player(2))==PLAYER_SLOT_STATE_EMPTY))then
return false
endif
return true
endfunction
function Trig_No_Player_3_Actions takes nothing returns nothing
call RemoveUnit(gg_unit_n00G_0014)
call RemoveUnit(gg_unit_htow_0484)
call RemoveUnit(gg_unit_hpea_0485)
call RemoveUnit(gg_unit_hpea_0247)
call RemoveUnit(gg_unit_hpea_0483)
call RemoveUnit(gg_unit_hpea_0314)
call RemoveUnit(gg_unit_hpea_0309)
call RemoveUnit(gg_unit_hpea_0311)
call RemoveUnit(gg_unit_hpea_0313)
call RemoveUnit(gg_unit_hpea_0310)
endfunction
function InitTrig_No_Player_3 takes nothing returns nothing
set gg_trg_No_Player_3=CreateTrigger()
call TriggerAddCondition(gg_trg_No_Player_3,Condition(function Trig_No_Player_3_Conditions))
call TriggerAddAction(gg_trg_No_Player_3,function Trig_No_Player_3_Actions)
endfunction
function Trig_No_Player_4_Conditions takes nothing returns boolean
if(not(GetPlayerSlotState(Player(3))==PLAYER_SLOT_STATE_EMPTY))then
return false
endif
return true
endfunction
function Trig_No_Player_4_Actions takes nothing returns nothing
call RemoveUnit(gg_unit_n00G_0009)
call RemoveUnit(gg_unit_htow_0481)
call RemoveUnit(gg_unit_hpea_0482)
call RemoveUnit(gg_unit_hpea_0228)
call RemoveUnit(gg_unit_hpea_0480)
call RemoveUnit(gg_unit_hpea_0319)
call RemoveUnit(gg_unit_hpea_0315)
call RemoveUnit(gg_unit_hpea_0317)
call RemoveUnit(gg_unit_hpea_0318)
call RemoveUnit(gg_unit_hpea_0316)
endfunction
function InitTrig_No_Player_4 takes nothing returns nothing
set gg_trg_No_Player_4=CreateTrigger()
call TriggerAddCondition(gg_trg_No_Player_4,Condition(function Trig_No_Player_4_Conditions))
call TriggerAddAction(gg_trg_No_Player_4,function Trig_No_Player_4_Actions)
endfunction
function Trig_No_Player_5_Conditions takes nothing returns boolean
if(not(GetPlayerSlotState(Player(4))==PLAYER_SLOT_STATE_EMPTY))then
return false
endif
return true
endfunction
function Trig_No_Player_5_Actions takes nothing returns nothing
call RemoveUnit(gg_unit_htow_0519)
call RemoveUnit(gg_unit_hpea_0520)
call RemoveUnit(gg_unit_hpea_0489)
call RemoveUnit(gg_unit_hpea_0518)
call RemoveUnit(gg_unit_hpea_0517)
call RemoveUnit(gg_unit_hpea_0491)
call RemoveUnit(gg_unit_hpea_0514)
call RemoveUnit(gg_unit_hpea_0516)
call RemoveUnit(gg_unit_hpea_0492)
call RemoveUnit(gg_unit_owtw_0533)
endfunction
function InitTrig_No_Player_5 takes nothing returns nothing
set gg_trg_No_Player_5=CreateTrigger()
call TriggerAddCondition(gg_trg_No_Player_5,Condition(function Trig_No_Player_5_Conditions))
call TriggerAddAction(gg_trg_No_Player_5,function Trig_No_Player_5_Actions)
endfunction
function Trig_ProbeDroid_770_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75736864,Player(PLAYER_NEUTRAL_PASSIVE),GetRectCenter(gg_rct_ProbeDroid01),310.00)
call CreateNUnitsAtLoc(1,0x68303147,Player(4),GetRectCenter(gg_rct_ProbeDroid01),bj_UNIT_FACING)
call PingMinimapLocForForce(bj_FORCE_PLAYER[0],GetRectCenter(gg_rct_ProbeDroid01),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[1],GetRectCenter(gg_rct_ProbeDroid01),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[2],GetRectCenter(gg_rct_ProbeDroid01),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[3],GetRectCenter(gg_rct_ProbeDroid01),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[4],GetRectCenter(gg_rct_ProbeDroid01),3.00)
call CreateNUnitsAtLoc(1,0x75736864,Player(PLAYER_NEUTRAL_PASSIVE),GetRectCenter(gg_rct_ProbeDroid02),310.00)
call CreateNUnitsAtLoc(1,0x68303147,Player(4),GetRectCenter(gg_rct_ProbeDroid02),bj_UNIT_FACING)
call PingMinimapLocForForce(bj_FORCE_PLAYER[0],GetRectCenter(gg_rct_ProbeDroid02),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[1],GetRectCenter(gg_rct_ProbeDroid02),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[2],GetRectCenter(gg_rct_ProbeDroid02),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[3],GetRectCenter(gg_rct_ProbeDroid02),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[4],GetRectCenter(gg_rct_ProbeDroid02),3.00)
call CreateNUnitsAtLoc(1,0x75736864,Player(PLAYER_NEUTRAL_PASSIVE),GetRectCenter(gg_rct_ProbeDroid03),310.00)
call CreateNUnitsAtLoc(1,0x68303147,Player(4),GetRectCenter(gg_rct_ProbeDroid03),bj_UNIT_FACING)
call PingMinimapLocForForce(bj_FORCE_PLAYER[0],GetRectCenter(gg_rct_ProbeDroid03),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[1],GetRectCenter(gg_rct_ProbeDroid03),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[2],GetRectCenter(gg_rct_ProbeDroid03),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[3],GetRectCenter(gg_rct_ProbeDroid03),3.00)
call PingMinimapLocForForce(bj_FORCE_PLAYER[4],GetRectCenter(gg_rct_ProbeDroid03),3.00)
call DisplayTimedTextToForce(bj_FORCE_PLAYER[0],5.00,"TRIGSTR_6161")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[1],5.00,"TRIGSTR_6179")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[2],5.00,"TRIGSTR_6180")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[3],5.00,"TRIGSTR_6181")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[4],5.00,"TRIGSTR_6182")
call TriggerSleepAction(3.00)
call DisplayTimedTextToForce(bj_FORCE_PLAYER[0],5.00,"TRIGSTR_6178")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[1],5.00,"TRIGSTR_6183")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[2],5.00,"TRIGSTR_6184")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[3],5.00,"TRIGSTR_6185")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[4],5.00,"TRIGSTR_6186")
endfunction
function InitTrig_ProbeDroid_770 takes nothing returns nothing
set gg_trg_ProbeDroid_770=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_ProbeDroid_770,770.00)
call TriggerAddAction(gg_trg_ProbeDroid_770,function Trig_ProbeDroid_770_Actions)
endfunction
function Trig_MID_Unblock_Actions takes nothing returns nothing
call DisableTrigger(gg_trg_MID_Block_01)
call DisableTrigger(gg_trg_MID_Block_02)
call RemoveDestructable(gg_dest_YTfc_3708)
call RemoveDestructable(gg_dest_YTfc_4745)
call RemoveDestructable(gg_dest_YTfc_4744)
call RemoveDestructable(gg_dest_YTfc_4743)
call RemoveDestructable(gg_dest_YTfc_4742)
call RemoveDestructable(gg_dest_YTfc_4741)
call RemoveDestructable(gg_dest_YTfc_4740)
call RemoveDestructable(gg_dest_YTfc_4739)
call RemoveDestructable(gg_dest_YTfc_4732)
call RemoveDestructable(gg_dest_YTfc_4731)
call RemoveDestructable(gg_dest_YTfc_4730)
call RemoveDestructable(gg_dest_YTfc_4746)
call RemoveDestructable(gg_dest_B002_2026)
call RemoveDestructable(gg_dest_B002_4747)
call RemoveDestructable(gg_dest_B002_4748)
call RemoveDestructable(gg_dest_B002_4751)
call RemoveDestructable(gg_dest_YTfc_2613)
call RemoveDestructable(gg_dest_YTfc_2609)
call RemoveDestructable(gg_dest_YTfc_2608)
call RemoveDestructable(gg_dest_YTfc_2605)
call RemoveDestructable(gg_dest_YTfc_2604)
call RemoveDestructable(gg_dest_YTfc_2592)
call RemoveDestructable(gg_dest_YTfc_2577)
call RemoveDestructable(gg_dest_YTfc_2311)
call RemoveDestructable(gg_dest_YTfc_2173)
call RemoveDestructable(gg_dest_YTfc_2027)
call RemoveDestructable(gg_dest_YTfc_1551)
call RemoveDestructable(gg_dest_YTfc_3708)
call RemoveDestructable(gg_dest_YTfc_2688)
call RemoveDestructable(gg_dest_YTfc_2684)
call RemoveDestructable(gg_dest_B002_4752)
call RemoveDestructable(gg_dest_B002_4753)
call RemoveDestructable(gg_dest_B002_4754)
call RemoveDestructable(gg_dest_B002_2214)
call SetUnitInvulnerable(gg_unit_n007_0105,false)
call SetUnitInvulnerable(gg_unit_nndr_0158,false)
call SetUnitInvulnerable(gg_unit_nndr_0024,false)
call SetUnitInvulnerable(gg_unit_nndr_0025,false)
call SetUnitInvulnerable(gg_unit_nndr_0331,false)
call SetUnitInvulnerable(gg_unit_nvde_0037,false)
call SetUnitInvulnerable(gg_unit_nvde_0194,false)
call SetUnitInvulnerable(gg_unit_nvde_0064,false)
call SetUnitInvulnerable(gg_unit_nvde_0115,false)
call SetUnitInvulnerable(gg_unit_nvde_0332,false)
call SetUnitInvulnerable(gg_unit_nvde_0128,false)
call SetUnitInvulnerable(gg_unit_nvde_0101,false)
call SetUnitInvulnerable(gg_unit_nvde_0127,false)
endfunction
function InitTrig_MID_Unblock takes nothing returns nothing
set gg_trg_MID_Unblock=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_MID_Unblock,1100.00)
call TriggerAddAction(gg_trg_MID_Unblock,function Trig_MID_Unblock_Actions)
endfunction
function Trig_MID_DestroyeD_Func007002 takes nothing returns nothing
call RemoveUnit(GetEnumUnit())
endfunction
function Trig_MID_DestroyeD_Func008002 takes nothing returns nothing
call RemoveUnit(GetEnumUnit())
endfunction
function Trig_MID_DestroyeD_Func009002 takes nothing returns nothing
call RemoveUnit(GetEnumUnit())
endfunction
function Trig_MID_DestroyeD_Actions takes nothing returns nothing
call SetPlayerHandicapXPBJ(Player(0),15.00)
call SetPlayerHandicapXPBJ(Player(1),15.00)
call SetPlayerHandicapXPBJ(Player(2),15.00)
call SetPlayerHandicapXPBJ(Player(3),15.00)
call SetPlayerHandicapXPBJ(Player(4),15.00)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x68303146),function Trig_MID_DestroyeD_Func007002)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x68303147),function Trig_MID_DestroyeD_Func008002)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x75736864),function Trig_MID_DestroyeD_Func009002)
call CommandAI(Player(0),1,0)
call CommandAI(Player(1),1,0)
call CommandAI(Player(2),1,0)
call CommandAI(Player(3),1,0)
call CommandAI(Player(4),1,0)
call CreateFogModifierRadiusLocBJ(true,Player(0),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid01),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(1),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid01),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(2),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid01),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(3),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid01),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(4),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid01),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(0),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid02),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(1),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid02),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(2),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid02),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(3),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid02),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(4),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid02),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(0),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid03),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(1),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid03),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(2),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid03),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(3),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid03),1300.00)
call CreateFogModifierRadiusLocBJ(true,Player(4),FOG_OF_WAR_MASKED,GetRectCenter(gg_rct_ProbeDroid03),1300.00)
call SetPlayerTechResearchedSwap(0x52303030,1,Player(5))
call EnableTrigger(gg_trg_Undead_10_Gold)
call EnableTrigger(gg_trg_Undead_Players_Gold)
call DisableTrigger(gg_trg_Start_AI_Attacks)
call DisableTrigger(gg_trg_MID_Secure)
endfunction
function InitTrig_MID_DestroyeD takes nothing returns nothing
set gg_trg_MID_DestroyeD=CreateTrigger()
call TriggerRegisterUnitEvent(gg_trg_MID_DestroyeD,gg_unit_n007_0105,EVENT_UNIT_DEATH)
call TriggerAddAction(gg_trg_MID_DestroyeD,function Trig_MID_DestroyeD_Actions)
endfunction
function Trig_CreepsRemove_1850_Func001002 takes nothing returns nothing
call RemoveUnit(GetEnumUnit())
endfunction
function Trig_CreepsRemove_1850_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsInRectOfPlayer(GetPlayableMapRect(),Player(PLAYER_NEUTRAL_AGGRESSIVE)),function Trig_CreepsRemove_1850_Func001002)
endfunction
function InitTrig_CreepsRemove_1850 takes nothing returns nothing
set gg_trg_CreepsRemove_1850=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_CreepsRemove_1850,1850.00)
call TriggerAddAction(gg_trg_CreepsRemove_1850,function Trig_CreepsRemove_1850_Actions)
endfunction
function Trig_GeneratorDestroyed_Func018002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_GeneratorDestroyed_Func019002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_GeneratorDestroyed_Func020002 takes nothing returns nothing
call ShowUnitShow(GetEnumUnit())
endfunction
function Trig_GeneratorDestroyed_Func021002 takes nothing returns nothing
call WaygateActivateBJ(true,GetEnumUnit())
endfunction
function Trig_GeneratorDestroyed_Actions takes nothing returns nothing
call DisableTrigger(gg_trg_POWER_3300_Ready)
call DisableTrigger(gg_trg_GeneratorTEXT)
call DisableTrigger(gg_trg_UndeadHOLD01)
call DisableTrigger(gg_trg_UndeadHOLD02)
call DisableTrigger(gg_trg_UndeadHOLD03)
call DisableTrigger(gg_trg_UndeadHOLD04)
call DisableTrigger(gg_trg_StopHOLD01)
call DisableTrigger(gg_trg_StopHOLD02)
call DisableTrigger(gg_trg_StopHOLD03)
call DisableTrigger(gg_trg_StopHOLD04)
call EnableTrigger(gg_trg_Undead_7)
call EnableTrigger(gg_trg_Undead_8)
call EnableTrigger(gg_trg_Undead_9)
call EnableTrigger(gg_trg_Undead_10_Gold)
call EnableTrigger(gg_trg_Undead_11)
call EnableTrigger(gg_trg_Undead_12)
call DestroyTextTagBJ(udg_AAAGeneratorText)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314B),function Trig_GeneratorDestroyed_Func018002)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314A),function Trig_GeneratorDestroyed_Func019002)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6E303051),function Trig_GeneratorDestroyed_Func020002)
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6E303051),function Trig_GeneratorDestroyed_Func021002)
call ShowUnitShow(gg_unit_n00R_0689)
call ShowDestructableBJ(true,gg_dest_B001_1434)
call WaygateActivateBJ(true,gg_unit_n00Q_0667)
call WaygateActivateBJ(true,gg_unit_n00Q_0670)
call WaygateActivateBJ(true,gg_unit_n00Q_0666)
call WaygateActivateBJ(true,gg_unit_n00Q_0668)
call WaygateActivateBJ(true,gg_unit_n00Q_0669)
call WaygateActivateBJ(true,gg_unit_n00Q_0671)
call WaygateActivateBJ(true,gg_unit_n00Q_0672)
call WaygateActivateBJ(true,gg_unit_n00Q_0673)
call CameraSetEQNoiseForPlayer(Player(0),5.00)
call CameraSetEQNoiseForPlayer(Player(1),5.00)
call CameraSetEQNoiseForPlayer(Player(2),5.00)
call CameraSetEQNoiseForPlayer(Player(3),5.00)
call CameraSetEQNoiseForPlayer(Player(4),5.00)
call CameraSetEQNoiseForPlayer(Player(5),5.00)
call AdjustPlayerStateBJ(1000,Player(6),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(1000,Player(7),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(1000,Player(8),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(1000,Player(10),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(1000,Player(11),PLAYER_STATE_RESOURCE_GOLD)
call PlaySoundBJ(gg_snd_PortalCreate)
call TriggerSleepAction(5.00)
call CameraClearNoiseForPlayer(Player(0))
call CameraClearNoiseForPlayer(Player(1))
call CameraClearNoiseForPlayer(Player(2))
call CameraClearNoiseForPlayer(Player(3))
call CameraClearNoiseForPlayer(Player(4))
call CameraClearNoiseForPlayer(Player(5))
call DisplayTimedTextToForce(GetPlayersAll(),5.00,"TRIGSTR_6276")
call TriggerSleepAction(3.00)
call DisplayTimedTextToForce(GetPlayersAll(),8.00,"TRIGSTR_6277")
endfunction
function InitTrig_GeneratorDestroyed takes nothing returns nothing
set gg_trg_GeneratorDestroyed=CreateTrigger()
call TriggerRegisterUnitEvent(gg_trg_GeneratorDestroyed,gg_unit_h015_0457,EVENT_UNIT_DEATH)
call TriggerAddAction(gg_trg_GeneratorDestroyed,function Trig_GeneratorDestroyed_Actions)
endfunction
function Trig_GeneratorTEXT_Actions takes nothing returns nothing
call CreateTextTagLocBJ("TRIGSTR_6325",GetRectCenter(gg_rct_Generator),0,15.00,100,100.00,100.00,0)
set udg_AAAGeneratorText=GetLastCreatedTextTag()
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6334",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6335",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6340",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6341",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6342",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6343",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6344",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6345",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6346",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6347",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6348",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6349",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6350",15.00)
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6351",15.00)
call DisplayTimedTextToForce(bj_FORCE_PLAYER[0],5.00,"TRIGSTR_6359")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[1],5.00,"TRIGSTR_6360")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[2],5.00,"TRIGSTR_6361")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[3],5.00,"TRIGSTR_6362")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[4],5.00,"TRIGSTR_6363")
call TriggerSleepAction(220.00)
call SetTextTagTextBJ(udg_AAAGeneratorText,"TRIGSTR_6352",15.00)
endfunction
function InitTrig_GeneratorTEXT takes nothing returns nothing
set gg_trg_GeneratorTEXT=CreateTrigger()
call TriggerAddAction(gg_trg_GeneratorTEXT,function Trig_GeneratorTEXT_Actions)
endfunction
function Trig_POWER_3300_Ready_Actions takes nothing returns nothing
call DisplayTimedTextToForce(bj_FORCE_PLAYER[0],10.00,"TRIGSTR_6353")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[1],10.00,"TRIGSTR_6354")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[2],10.00,"TRIGSTR_6355")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[3],10.00,"TRIGSTR_6356")
call DisplayTimedTextToForce(bj_FORCE_PLAYER[4],10.00,"TRIGSTR_6357")
call SetPlayerTechResearchedSwap(0x52303031,1,Player(0))
call SetPlayerTechResearchedSwap(0x52303031,1,Player(1))
call SetPlayerTechResearchedSwap(0x52303031,1,Player(2))
call SetPlayerTechResearchedSwap(0x52303031,1,Player(3))
call SetPlayerTechResearchedSwap(0x52303031,1,Player(4))
endfunction
function InitTrig_POWER_3300_Ready takes nothing returns nothing
set gg_trg_POWER_3300_Ready=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_POWER_3300_Ready,3300.00)
call TriggerAddAction(gg_trg_POWER_3300_Ready,function Trig_POWER_3300_Ready_Actions)
endfunction
function Trig_GeneratorWeapon_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303254))then
return false
endif
return true
endfunction
function Trig_GeneratorWeapon_Actions takes nothing returns nothing
call UnitRemoveAbilityBJ(0x41303254,gg_unit_h015_0457)
call DestroyTextTagBJ(udg_AAAGeneratorText)
call CameraSetEQNoiseForPlayer(Player(0),4.00)
call CameraSetEQNoiseForPlayer(Player(1),4.00)
call CameraSetEQNoiseForPlayer(Player(2),4.00)
call CameraSetEQNoiseForPlayer(Player(3),4.00)
call CameraSetEQNoiseForPlayer(Player(4),4.00)
call CameraSetEQNoiseForPlayer(Player(5),4.00)
call TriggerSleepAction(17.00)
call CameraClearNoiseForPlayer(Player(0))
call CameraClearNoiseForPlayer(Player(1))
call CameraClearNoiseForPlayer(Player(2))
call CameraClearNoiseForPlayer(Player(3))
call CameraClearNoiseForPlayer(Player(4))
call CameraClearNoiseForPlayer(Player(5))
endfunction
function InitTrig_GeneratorWeapon takes nothing returns nothing
set gg_trg_GeneratorWeapon=CreateTrigger()
call TriggerRegisterUnitEvent(gg_trg_GeneratorWeapon,gg_unit_h015_0457,EVENT_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_GeneratorWeapon,Condition(function Trig_GeneratorWeapon_Conditions))
call TriggerAddAction(gg_trg_GeneratorWeapon,function Trig_GeneratorWeapon_Actions)
endfunction
function Trig_Seconds_150_Actions takes nothing returns nothing
call DisplayTimedTextToForce(GetPlayersAll(),8.00,"TRIGSTR_2892")
endfunction
function InitTrig_Seconds_150 takes nothing returns nothing
set gg_trg_Seconds_150=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Seconds_150,150.00)
call TriggerAddAction(gg_trg_Seconds_150,function Trig_Seconds_150_Actions)
endfunction
function Trig_Seconds_700_Actions takes nothing returns nothing
call DisplayTimedTextToForce(GetPlayersAll(),10.00,"TRIGSTR_6201")
call TriggerSleepAction(4.00)
call DisplayTimedTextToForce(GetPlayersAll(),10.00,"TRIGSTR_6203")
call TriggerSleepAction(4.00)
call DisplayTimedTextToForce(GetPlayersAll(),10.00,"TRIGSTR_6204")
endfunction
function InitTrig_Seconds_700 takes nothing returns nothing
set gg_trg_Seconds_700=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Seconds_700,680.00)
call TriggerAddAction(gg_trg_Seconds_700,function Trig_Seconds_700_Actions)
endfunction
function Trig_MID_See_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x68303146,Player(0),GetRectCenter(gg_rct_MID),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x68303146,Player(5),GetRectCenter(gg_rct_MID),bj_UNIT_FACING)
endfunction
function InitTrig_MID_See takes nothing returns nothing
set gg_trg_MID_See=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_MID_See,2.00)
call TriggerAddAction(gg_trg_MID_See,function Trig_MID_See_Actions)
endfunction
function Trig_MID_Block_01_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetTriggerUnit())!=Player(PLAYER_NEUTRAL_AGGRESSIVE)))then
return false
endif
return true
endfunction
function Trig_MID_Block_01_Actions takes nothing returns nothing
call KillUnit(GetTriggerUnit())
endfunction
function InitTrig_MID_Block_01 takes nothing returns nothing
set gg_trg_MID_Block_01=CreateTrigger()
call TriggerRegisterEnterRectSimple(gg_trg_MID_Block_01,gg_rct_BlockMID_01)
call TriggerAddCondition(gg_trg_MID_Block_01,Condition(function Trig_MID_Block_01_Conditions))
call TriggerAddAction(gg_trg_MID_Block_01,function Trig_MID_Block_01_Actions)
endfunction
function Trig_MID_Block_02_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetTriggerUnit())!=Player(PLAYER_NEUTRAL_AGGRESSIVE)))then
return false
endif
return true
endfunction
function Trig_MID_Block_02_Actions takes nothing returns nothing
call KillUnit(GetTriggerUnit())
endfunction
function InitTrig_MID_Block_02 takes nothing returns nothing
set gg_trg_MID_Block_02=CreateTrigger()
call TriggerRegisterEnterRectSimple(gg_trg_MID_Block_02,gg_rct_BlockMID_02)
call TriggerAddCondition(gg_trg_MID_Block_02,Condition(function Trig_MID_Block_02_Conditions))
call TriggerAddAction(gg_trg_MID_Block_02,function Trig_MID_Block_02_Actions)
endfunction
function Trig_MID_Secure_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_n007_0105)>0.00))then
return false
endif
return true
endfunction
function Trig_MID_Secure_Actions takes nothing returns nothing
call IssuePointOrderLocBJ(gg_unit_n007_0105,"attack",GetRectCenter(gg_rct_MID))
endfunction
function InitTrig_MID_Secure takes nothing returns nothing
set gg_trg_MID_Secure=CreateTrigger()
call TriggerRegisterTimerEventPeriodic(gg_trg_MID_Secure,3.00)
call TriggerAddCondition(gg_trg_MID_Secure,Condition(function Trig_MID_Secure_Conditions))
call TriggerAddAction(gg_trg_MID_Secure,function Trig_MID_Secure_Actions)
endfunction
function Trig_Sniper_Sound_Conditions takes nothing returns boolean
if(not(GetUnitTypeId(GetAttacker())==0x686B6E69))then
return false
endif
return true
endfunction
function Trig_Sniper_Sound_Actions takes nothing returns nothing
call PlaySoundOnUnitBJ(gg_snd_Sniper,80.00,GetAttacker())
endfunction
function InitTrig_Sniper_Sound takes nothing returns nothing
set gg_trg_Sniper_Sound=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Sniper_Sound,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_Sniper_Sound,Condition(function Trig_Sniper_Sound_Conditions))
call TriggerAddAction(gg_trg_Sniper_Sound,function Trig_Sniper_Sound_Actions)
endfunction
function Trig_AAgun_Sound_Conditions takes nothing returns boolean
if(not(GetUnitTypeId(GetAttacker())==0x68677477))then
return false
endif
return true
endfunction
function Trig_AAgun_Sound_Actions takes nothing returns nothing
call PlaySoundOnUnitBJ(gg_snd_AAgun,80.00,GetAttacker())
endfunction
function InitTrig_AAgun_Sound takes nothing returns nothing
set gg_trg_AAgun_Sound=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_AAgun_Sound,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_AAgun_Sound,Condition(function Trig_AAgun_Sound_Conditions))
call TriggerAddAction(gg_trg_AAgun_Sound,function Trig_AAgun_Sound_Actions)
endfunction
function Trig_Annihilation_Gun_Sound_Conditions takes nothing returns boolean
if(not(GetUnitTypeId(GetAttacker())==0x68303134))then
return false
endif
return true
endfunction
function Trig_Annihilation_Gun_Sound_Actions takes nothing returns nothing
call TriggerSleepAction(0.30)
call PlaySoundOnUnitBJ(gg_snd_AnnihilationGun,80.00,GetAttacker())
endfunction
function InitTrig_Annihilation_Gun_Sound takes nothing returns nothing
set gg_trg_Annihilation_Gun_Sound=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Annihilation_Gun_Sound,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_Annihilation_Gun_Sound,Condition(function Trig_Annihilation_Gun_Sound_Conditions))
call TriggerAddAction(gg_trg_Annihilation_Gun_Sound,function Trig_Annihilation_Gun_Sound_Actions)
endfunction
function Trig_BETA_MapSee_Actions takes nothing returns nothing
call CreateFogModifierRectBJ(true,Player(5),FOG_OF_WAR_VISIBLE,GetPlayableMapRect())
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
call CreateItemLoc(0x49303031,GetRectCenter(gg_rct_M0))
endfunction
function InitTrig_BETA_MapSee takes nothing returns nothing
set gg_trg_BETA_MapSee=CreateTrigger()
call TriggerRegisterPlayerChatEvent(gg_trg_BETA_MapSee,Player(5),"-m0",true)
call TriggerAddAction(gg_trg_BETA_MapSee,function Trig_BETA_MapSee_Actions)
endfunction
function Trig_Player_1_Leave_Actions takes nothing returns nothing
call TriggerSleepAction(2.00)
call SetPlayerName(Player(0),(GetPlayerName(Player(0))+" [Отключился]"))
endfunction
function InitTrig_Player_1_Leave takes nothing returns nothing
set gg_trg_Player_1_Leave=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_Player_1_Leave,Player(0))
call TriggerAddAction(gg_trg_Player_1_Leave,function Trig_Player_1_Leave_Actions)
endfunction
function Trig_Player_2_Leave_Actions takes nothing returns nothing
call TriggerSleepAction(2.00)
call SetPlayerName(Player(1),(GetPlayerName(Player(1))+" [Отключился]"))
endfunction
function InitTrig_Player_2_Leave takes nothing returns nothing
set gg_trg_Player_2_Leave=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_Player_2_Leave,Player(1))
call TriggerAddAction(gg_trg_Player_2_Leave,function Trig_Player_2_Leave_Actions)
endfunction
function Trig_Player_3_Leave_Actions takes nothing returns nothing
call TriggerSleepAction(2.00)
call SetPlayerName(Player(2),(GetPlayerName(Player(2))+" [Отключился]"))
endfunction
function InitTrig_Player_3_Leave takes nothing returns nothing
set gg_trg_Player_3_Leave=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_Player_3_Leave,Player(2))
call TriggerAddAction(gg_trg_Player_3_Leave,function Trig_Player_3_Leave_Actions)
endfunction
function Trig_Player_4_Leave_Actions takes nothing returns nothing
call TriggerSleepAction(2.00)
call SetPlayerName(Player(3),(GetPlayerName(Player(3))+" [Отключился]"))
endfunction
function InitTrig_Player_4_Leave takes nothing returns nothing
set gg_trg_Player_4_Leave=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_Player_4_Leave,Player(3))
call TriggerAddAction(gg_trg_Player_4_Leave,function Trig_Player_4_Leave_Actions)
endfunction
function Trig_Player_5_Leave_Actions takes nothing returns nothing
call TriggerSleepAction(2.00)
call SetPlayerName(Player(4),(GetPlayerName(Player(4))+" [Отключился]"))
endfunction
function InitTrig_Player_5_Leave takes nothing returns nothing
set gg_trg_Player_5_Leave=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_Player_5_Leave,Player(4))
call TriggerAddAction(gg_trg_Player_5_Leave,function Trig_Player_5_Leave_Actions)
endfunction
function Trig_No_Generator_Kill_01_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(0)))then
return false
endif
if(not(GetTriggerUnit()==gg_unit_h015_0457))then
return false
endif
return true
endfunction
function Trig_No_Generator_Kill_01_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Generator_Kill_01 takes nothing returns nothing
set gg_trg_No_Generator_Kill_01=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Generator_Kill_01,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Generator_Kill_01,Condition(function Trig_No_Generator_Kill_01_Conditions))
call TriggerAddAction(gg_trg_No_Generator_Kill_01,function Trig_No_Generator_Kill_01_Actions)
endfunction
function Trig_No_Generator_Kill_02_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(1)))then
return false
endif
if(not(GetTriggerUnit()==gg_unit_h015_0457))then
return false
endif
return true
endfunction
function Trig_No_Generator_Kill_02_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Generator_Kill_02 takes nothing returns nothing
set gg_trg_No_Generator_Kill_02=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Generator_Kill_02,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Generator_Kill_02,Condition(function Trig_No_Generator_Kill_02_Conditions))
call TriggerAddAction(gg_trg_No_Generator_Kill_02,function Trig_No_Generator_Kill_02_Actions)
endfunction
function Trig_No_Generator_Kill_03_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(2)))then
return false
endif
if(not(GetTriggerUnit()==gg_unit_h015_0457))then
return false
endif
return true
endfunction
function Trig_No_Generator_Kill_03_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Generator_Kill_03 takes nothing returns nothing
set gg_trg_No_Generator_Kill_03=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Generator_Kill_03,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Generator_Kill_03,Condition(function Trig_No_Generator_Kill_03_Conditions))
call TriggerAddAction(gg_trg_No_Generator_Kill_03,function Trig_No_Generator_Kill_03_Actions)
endfunction
function Trig_No_Generator_Kill_04_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(3)))then
return false
endif
if(not(GetTriggerUnit()==gg_unit_h015_0457))then
return false
endif
return true
endfunction
function Trig_No_Generator_Kill_04_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Generator_Kill_04 takes nothing returns nothing
set gg_trg_No_Generator_Kill_04=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Generator_Kill_04,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Generator_Kill_04,Condition(function Trig_No_Generator_Kill_04_Conditions))
call TriggerAddAction(gg_trg_No_Generator_Kill_04,function Trig_No_Generator_Kill_04_Actions)
endfunction
function Trig_No_Generator_Kill_05_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(4)))then
return false
endif
if(not(GetTriggerUnit()==gg_unit_h015_0457))then
return false
endif
return true
endfunction
function Trig_No_Generator_Kill_05_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Generator_Kill_05 takes nothing returns nothing
set gg_trg_No_Generator_Kill_05=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Generator_Kill_05,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Generator_Kill_05,Condition(function Trig_No_Generator_Kill_05_Conditions))
call TriggerAddAction(gg_trg_No_Generator_Kill_05,function Trig_No_Generator_Kill_05_Actions)
endfunction
function Trig_No_Team_Kill_01_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(5)))then
return false
endif
if(not(GetOwningPlayer(GetAttackedUnitBJ())==Player(6)))then
return false
endif
return true
endfunction
function Trig_No_Team_Kill_01_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Team_Kill_01 takes nothing returns nothing
set gg_trg_No_Team_Kill_01=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Team_Kill_01,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Team_Kill_01,Condition(function Trig_No_Team_Kill_01_Conditions))
call TriggerAddAction(gg_trg_No_Team_Kill_01,function Trig_No_Team_Kill_01_Actions)
endfunction
function Trig_No_Team_Kill_02_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(5)))then
return false
endif
if(not(GetOwningPlayer(GetAttackedUnitBJ())==Player(7)))then
return false
endif
return true
endfunction
function Trig_No_Team_Kill_02_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Team_Kill_02 takes nothing returns nothing
set gg_trg_No_Team_Kill_02=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Team_Kill_02,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Team_Kill_02,Condition(function Trig_No_Team_Kill_02_Conditions))
call TriggerAddAction(gg_trg_No_Team_Kill_02,function Trig_No_Team_Kill_02_Actions)
endfunction
function Trig_No_Team_Kill_03_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(5)))then
return false
endif
if(not(GetOwningPlayer(GetAttackedUnitBJ())==Player(8)))then
return false
endif
return true
endfunction
function Trig_No_Team_Kill_03_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Team_Kill_03 takes nothing returns nothing
set gg_trg_No_Team_Kill_03=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Team_Kill_03,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Team_Kill_03,Condition(function Trig_No_Team_Kill_03_Conditions))
call TriggerAddAction(gg_trg_No_Team_Kill_03,function Trig_No_Team_Kill_03_Actions)
endfunction
function Trig_No_Team_Kill_04_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(5)))then
return false
endif
if(not(GetOwningPlayer(GetAttackedUnitBJ())==Player(9)))then
return false
endif
return true
endfunction
function Trig_No_Team_Kill_04_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Team_Kill_04 takes nothing returns nothing
set gg_trg_No_Team_Kill_04=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Team_Kill_04,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Team_Kill_04,Condition(function Trig_No_Team_Kill_04_Conditions))
call TriggerAddAction(gg_trg_No_Team_Kill_04,function Trig_No_Team_Kill_04_Actions)
endfunction
function Trig_No_Team_Kill_05_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(5)))then
return false
endif
if(not(GetOwningPlayer(GetAttackedUnitBJ())==Player(10)))then
return false
endif
return true
endfunction
function Trig_No_Team_Kill_05_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Team_Kill_05 takes nothing returns nothing
set gg_trg_No_Team_Kill_05=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Team_Kill_05,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Team_Kill_05,Condition(function Trig_No_Team_Kill_05_Conditions))
call TriggerAddAction(gg_trg_No_Team_Kill_05,function Trig_No_Team_Kill_05_Actions)
endfunction
function Trig_No_Team_Kill_06_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(5)))then
return false
endif
if(not(GetOwningPlayer(GetAttackedUnitBJ())==Player(11)))then
return false
endif
return true
endfunction
function Trig_No_Team_Kill_06_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Team_Kill_06 takes nothing returns nothing
set gg_trg_No_Team_Kill_06=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Team_Kill_06,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Team_Kill_06,Condition(function Trig_No_Team_Kill_06_Conditions))
call TriggerAddAction(gg_trg_No_Team_Kill_06,function Trig_No_Team_Kill_06_Actions)
endfunction
function Trig_No_Team_Kill_07_Conditions takes nothing returns boolean
if(not(GetOwningPlayer(GetAttacker())==Player(5)))then
return false
endif
if(not(GetOwningPlayer(GetAttackedUnitBJ())==Player(5)))then
return false
endif
return true
endfunction
function Trig_No_Team_Kill_07_Actions takes nothing returns nothing
call IssueImmediateOrderBJ(GetAttacker(),"stop")
endfunction
function InitTrig_No_Team_Kill_07 takes nothing returns nothing
set gg_trg_No_Team_Kill_07=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_No_Team_Kill_07,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_No_Team_Kill_07,Condition(function Trig_No_Team_Kill_07_Conditions))
call TriggerAddAction(gg_trg_No_Team_Kill_07,function Trig_No_Team_Kill_07_Actions)
endfunction
function Trig_PlayerLeave01_Actions takes nothing returns nothing
call PlaySoundBJ(gg_snd_PlayerLeave)
endfunction
function InitTrig_PlayerLeave01 takes nothing returns nothing
set gg_trg_PlayerLeave01=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_PlayerLeave01,Player(0))
call TriggerAddAction(gg_trg_PlayerLeave01,function Trig_PlayerLeave01_Actions)
endfunction
function Trig_PlayerLeave02_Actions takes nothing returns nothing
call PlaySoundBJ(gg_snd_PlayerLeave)
endfunction
function InitTrig_PlayerLeave02 takes nothing returns nothing
set gg_trg_PlayerLeave02=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_PlayerLeave02,Player(1))
call TriggerAddAction(gg_trg_PlayerLeave02,function Trig_PlayerLeave02_Actions)
endfunction
function Trig_PlayerLeave03_Actions takes nothing returns nothing
call PlaySoundBJ(gg_snd_PlayerLeave)
endfunction
function InitTrig_PlayerLeave03 takes nothing returns nothing
set gg_trg_PlayerLeave03=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_PlayerLeave03,Player(2))
call TriggerAddAction(gg_trg_PlayerLeave03,function Trig_PlayerLeave03_Actions)
endfunction
function Trig_PlayerLeave04_Actions takes nothing returns nothing
call PlaySoundBJ(gg_snd_PlayerLeave)
endfunction
function InitTrig_PlayerLeave04 takes nothing returns nothing
set gg_trg_PlayerLeave04=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_PlayerLeave04,Player(3))
call TriggerAddAction(gg_trg_PlayerLeave04,function Trig_PlayerLeave04_Actions)
endfunction
function Trig_PlayerLeave05_Actions takes nothing returns nothing
call PlaySoundBJ(gg_snd_PlayerLeave)
endfunction
function InitTrig_PlayerLeave05 takes nothing returns nothing
set gg_trg_PlayerLeave05=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_PlayerLeave05,Player(4))
call TriggerAddAction(gg_trg_PlayerLeave05,function Trig_PlayerLeave05_Actions)
endfunction
function Trig_PlayerLeave06_Actions takes nothing returns nothing
call PlaySoundBJ(gg_snd_PlayerLeave)
endfunction
function InitTrig_PlayerLeave06 takes nothing returns nothing
set gg_trg_PlayerLeave06=CreateTrigger()
call TriggerRegisterPlayerEventLeave(gg_trg_PlayerLeave06,Player(5))
call TriggerAddAction(gg_trg_PlayerLeave06,function Trig_PlayerLeave06_Actions)
endfunction
function Trig_UndeadHOLD01_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
call CreateItemLoc(0x49303133,GetRectCenter(gg_rct_UndeadItem01))
call CreateItemLoc(0x49303058,GetRectCenter(gg_rct_UndeadItem01))
call CreateItemLoc(0x49303132,GetRectCenter(gg_rct_UndeadItem02))
call CreateItemLoc(0x49303137,GetRectCenter(gg_rct_UndeadItem02))
call CreateItemLoc(0x49303131,GetRectCenter(gg_rct_UndeadItem03))
call CreateItemLoc(0x49303133,GetRectCenter(gg_rct_UndeadItem03))
call CreateItemLoc(0x49303130,GetRectCenter(gg_rct_UndeadItem04))
call CreateItemLoc(0x4930305A,GetRectCenter(gg_rct_UndeadItem04))
call CreateItemLoc(0x49303134,GetRectCenter(gg_rct_UndeadItem05))
call CreateItemLoc(0x49303133,GetRectCenter(gg_rct_UndeadItem05))
call CreateItemLoc(0x49303058,GetRectCenter(gg_rct_UndeadItem06))
call CreateItemLoc(0x49303132,GetRectCenter(gg_rct_UndeadItem06))
endfunction
function InitTrig_UndeadHOLD01 takes nothing returns nothing
set gg_trg_UndeadHOLD01=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadHOLD01,1500.00)
call TriggerAddAction(gg_trg_UndeadHOLD01,function Trig_UndeadHOLD01_Actions)
endfunction
function Trig_StopHOLD01_Func002002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_StopHOLD01_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314A),function Trig_StopHOLD01_Func002002)
call CreateNUnitsAtLoc(1,0x6830314B,Player(4),GetRectCenter(gg_rct_Generator),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314B,Player(6),GetRectCenter(gg_rct_Generator),bj_UNIT_FACING)
endfunction
function InitTrig_StopHOLD01 takes nothing returns nothing
set gg_trg_StopHOLD01=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_StopHOLD01,1800.00)
call TriggerAddAction(gg_trg_StopHOLD01,function Trig_StopHOLD01_Actions)
endfunction
function Trig_UndeadHOLD02_Func001002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_UndeadHOLD02_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314B),function Trig_UndeadHOLD02_Func001002)
call AdjustPlayerStateBJ(4500,Player(6),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4500,Player(7),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4500,Player(8),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4500,Player(9),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4500,Player(10),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4500,Player(11),PLAYER_STATE_RESOURCE_GOLD)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
call CreateItemLoc(0x49303137,GetRectCenter(gg_rct_UndeadItem01))
call CreateItemLoc(0x49303133,GetRectCenter(gg_rct_UndeadItem01))
call CreateItemLoc(0x4930305A,GetRectCenter(gg_rct_UndeadItem02))
call CreateItemLoc(0x49303132,GetRectCenter(gg_rct_UndeadItem02))
call CreateItemLoc(0x49303133,GetRectCenter(gg_rct_UndeadItem03))
call CreateItemLoc(0x49303130,GetRectCenter(gg_rct_UndeadItem03))
call CreateItemLoc(0x49303058,GetRectCenter(gg_rct_UndeadItem04))
call CreateItemLoc(0x49303137,GetRectCenter(gg_rct_UndeadItem04))
call CreateItemLoc(0x49303132,GetRectCenter(gg_rct_UndeadItem05))
call CreateItemLoc(0x49303133,GetRectCenter(gg_rct_UndeadItem05))
call CreateItemLoc(0x49303130,GetRectCenter(gg_rct_UndeadItem06))
call CreateItemLoc(0x49303058,GetRectCenter(gg_rct_UndeadItem06))
endfunction
function InitTrig_UndeadHOLD02 takes nothing returns nothing
set gg_trg_UndeadHOLD02=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadHOLD02,2500.00)
call TriggerAddAction(gg_trg_UndeadHOLD02,function Trig_UndeadHOLD02_Actions)
endfunction
function Trig_StopHOLD02_Func001002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_StopHOLD02_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314A),function Trig_StopHOLD02_Func001002)
call CreateNUnitsAtLoc(1,0x6830314B,Player(4),GetRectCenter(gg_rct_Generator),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314B,Player(6),GetRectCenter(gg_rct_Generator),bj_UNIT_FACING)
endfunction
function InitTrig_StopHOLD02 takes nothing returns nothing
set gg_trg_StopHOLD02=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_StopHOLD02,2900.00)
call TriggerAddAction(gg_trg_StopHOLD02,function Trig_StopHOLD02_Actions)
endfunction
function Trig_UndeadDragon01_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0678)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon01_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon01 takes nothing returns nothing
set gg_trg_UndeadDragon01=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon01,2850.00)
call TriggerAddCondition(gg_trg_UndeadDragon01,Condition(function Trig_UndeadDragon01_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon01,function Trig_UndeadDragon01_Actions)
endfunction
function Trig_UndeadDragon02_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0688)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon02_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon02 takes nothing returns nothing
set gg_trg_UndeadDragon02=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon02,2850.00)
call TriggerAddCondition(gg_trg_UndeadDragon02,Condition(function Trig_UndeadDragon02_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon02,function Trig_UndeadDragon02_Actions)
endfunction
function Trig_UndeadDragon03_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0584)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon03_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon03 takes nothing returns nothing
set gg_trg_UndeadDragon03=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon03,2850.00)
call TriggerAddCondition(gg_trg_UndeadDragon03,Condition(function Trig_UndeadDragon03_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon03,function Trig_UndeadDragon03_Actions)
endfunction
function Trig_UndeadHOLD03_Func001002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_UndeadHOLD03_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314B),function Trig_UndeadHOLD03_Func001002)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
call CreateItemLoc(0x49303137,GetRectCenter(gg_rct_UndeadItem01))
call CreateItemLoc(0x49303058,GetRectCenter(gg_rct_UndeadItem02))
call CreateItemLoc(0x49303133,GetRectCenter(gg_rct_UndeadItem03))
call CreateItemLoc(0x49303131,GetRectCenter(gg_rct_UndeadItem04))
call CreateItemLoc(0x49303058,GetRectCenter(gg_rct_UndeadItem05))
endfunction
function InitTrig_UndeadHOLD03 takes nothing returns nothing
set gg_trg_UndeadHOLD03=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadHOLD03,3700.00)
call TriggerAddAction(gg_trg_UndeadHOLD03,function Trig_UndeadHOLD03_Actions)
endfunction
function Trig_StopHOLD03_Func001002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_StopHOLD03_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314A),function Trig_StopHOLD03_Func001002)
call CreateNUnitsAtLoc(1,0x6830314B,Player(4),GetRectCenter(gg_rct_Generator),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314B,Player(6),GetRectCenter(gg_rct_Generator),bj_UNIT_FACING)
endfunction
function InitTrig_StopHOLD03 takes nothing returns nothing
set gg_trg_StopHOLD03=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_StopHOLD03,4100.00)
call TriggerAddAction(gg_trg_StopHOLD03,function Trig_StopHOLD03_Actions)
endfunction
function Trig_UndeadDragon04_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0678)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon04_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon04 takes nothing returns nothing
set gg_trg_UndeadDragon04=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon04,4050.00)
call TriggerAddCondition(gg_trg_UndeadDragon04,Condition(function Trig_UndeadDragon04_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon04,function Trig_UndeadDragon04_Actions)
endfunction
function Trig_UndeadDragon05_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0688)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon05_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon05 takes nothing returns nothing
set gg_trg_UndeadDragon05=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon05,4050.00)
call TriggerAddCondition(gg_trg_UndeadDragon05,Condition(function Trig_UndeadDragon05_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon05,function Trig_UndeadDragon05_Actions)
endfunction
function Trig_UndeadHOLD04_Func001002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_UndeadHOLD04_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314B),function Trig_UndeadHOLD04_Func001002)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(4),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT01),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT02),bj_UNIT_FACING)
call CreateNUnitsAtLoc(1,0x6830314A,Player(6),GetRectCenter(gg_rct_UndeadAT03),bj_UNIT_FACING)
endfunction
function InitTrig_UndeadHOLD04 takes nothing returns nothing
set gg_trg_UndeadHOLD04=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadHOLD04,4800.00)
call TriggerAddAction(gg_trg_UndeadHOLD04,function Trig_UndeadHOLD04_Actions)
endfunction
function Trig_StopHOLD04_Func001002 takes nothing returns nothing
call KillUnit(GetEnumUnit())
endfunction
function Trig_StopHOLD04_Actions takes nothing returns nothing
call ForGroupBJ(GetUnitsOfTypeIdAll(0x6830314A),function Trig_StopHOLD04_Func001002)
endfunction
function InitTrig_StopHOLD04 takes nothing returns nothing
set gg_trg_StopHOLD04=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_StopHOLD04,5200.00)
call TriggerAddAction(gg_trg_StopHOLD04,function Trig_StopHOLD04_Actions)
endfunction
function Trig_UndeadDragon06_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0678)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon06_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon06 takes nothing returns nothing
set gg_trg_UndeadDragon06=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon06,5150.00)
call TriggerAddCondition(gg_trg_UndeadDragon06,Condition(function Trig_UndeadDragon06_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon06,function Trig_UndeadDragon06_Actions)
endfunction
function Trig_UndeadDragon07_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0688)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon07_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon07 takes nothing returns nothing
set gg_trg_UndeadDragon07=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon07,5150.00)
call TriggerAddCondition(gg_trg_UndeadDragon07,Condition(function Trig_UndeadDragon07_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon07,function Trig_UndeadDragon07_Actions)
endfunction
function Trig_UndeadDragon08_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0584)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon08_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon08 takes nothing returns nothing
set gg_trg_UndeadDragon08=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon08,5150.00)
call TriggerAddCondition(gg_trg_UndeadDragon08,Condition(function Trig_UndeadDragon08_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon08,function Trig_UndeadDragon08_Actions)
endfunction
function Trig_Meat1_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x7561626F))then
return true
endif
return false
endfunction
function Trig_Meat1_Conditions takes nothing returns boolean
if(not Trig_Meat1_Func002C())then
return false
endif
return true
endfunction
function Trig_Meat1_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(2,0x75637332,Player(5),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
endfunction
function InitTrig_Meat1 takes nothing returns nothing
set gg_trg_Meat1=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_Meat1,Player(5),EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Meat1,Condition(function Trig_Meat1_Conditions))
call TriggerAddAction(gg_trg_Meat1,function Trig_Meat1_Actions)
endfunction
function Trig_Meat2_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x7561626F))then
return true
endif
return false
endfunction
function Trig_Meat2_Conditions takes nothing returns boolean
if(not Trig_Meat2_Func002C())then
return false
endif
return true
endfunction
function Trig_Meat2_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(2,0x75637332,Player(6),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
endfunction
function InitTrig_Meat2 takes nothing returns nothing
set gg_trg_Meat2=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_Meat2,Player(6),EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Meat2,Condition(function Trig_Meat2_Conditions))
call TriggerAddAction(gg_trg_Meat2,function Trig_Meat2_Actions)
endfunction
function Trig_Meat3_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x7561626F))then
return true
endif
return false
endfunction
function Trig_Meat3_Conditions takes nothing returns boolean
if(not Trig_Meat3_Func002C())then
return false
endif
return true
endfunction
function Trig_Meat3_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(2,0x75637332,Player(7),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
endfunction
function InitTrig_Meat3 takes nothing returns nothing
set gg_trg_Meat3=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_Meat3,Player(7),EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Meat3,Condition(function Trig_Meat3_Conditions))
call TriggerAddAction(gg_trg_Meat3,function Trig_Meat3_Actions)
endfunction
function Trig_Meat4_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x7561626F))then
return true
endif
return false
endfunction
function Trig_Meat4_Conditions takes nothing returns boolean
if(not Trig_Meat4_Func002C())then
return false
endif
return true
endfunction
function Trig_Meat4_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(2,0x75637332,Player(8),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
endfunction
function InitTrig_Meat4 takes nothing returns nothing
set gg_trg_Meat4=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_Meat4,Player(8),EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Meat4,Condition(function Trig_Meat4_Conditions))
call TriggerAddAction(gg_trg_Meat4,function Trig_Meat4_Actions)
endfunction
function Trig_Meat5_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x7561626F))then
return true
endif
return false
endfunction
function Trig_Meat5_Conditions takes nothing returns boolean
if(not Trig_Meat5_Func002C())then
return false
endif
return true
endfunction
function Trig_Meat5_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(2,0x75637332,Player(9),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
endfunction
function InitTrig_Meat5 takes nothing returns nothing
set gg_trg_Meat5=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_Meat5,Player(9),EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Meat5,Condition(function Trig_Meat5_Conditions))
call TriggerAddAction(gg_trg_Meat5,function Trig_Meat5_Actions)
endfunction
function Trig_Meat6_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x7561626F))then
return true
endif
return false
endfunction
function Trig_Meat6_Conditions takes nothing returns boolean
if(not Trig_Meat6_Func002C())then
return false
endif
return true
endfunction
function Trig_Meat6_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(2,0x75637332,Player(10),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
endfunction
function InitTrig_Meat6 takes nothing returns nothing
set gg_trg_Meat6=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_Meat6,Player(10),EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Meat6,Condition(function Trig_Meat6_Conditions))
call TriggerAddAction(gg_trg_Meat6,function Trig_Meat6_Actions)
endfunction
function Trig_Meat7_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x7561626F))then
return true
endif
return false
endfunction
function Trig_Meat7_Conditions takes nothing returns boolean
if(not Trig_Meat7_Func002C())then
return false
endif
return true
endfunction
function Trig_Meat7_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(2,0x75637332,Player(11),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
endfunction
function InitTrig_Meat7 takes nothing returns nothing
set gg_trg_Meat7=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_Meat7,Player(11),EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Meat7,Condition(function Trig_Meat7_Conditions))
call TriggerAddAction(gg_trg_Meat7,function Trig_Meat7_Actions)
endfunction
function Trig_Player_6_Gold_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(1,Player(5),PLAYER_STATE_RESOURCE_GOLD)
endfunction
function InitTrig_Player_6_Gold takes nothing returns nothing
set gg_trg_Player_6_Gold=CreateTrigger()
call TriggerRegisterTimerEventPeriodic(gg_trg_Player_6_Gold,1.00)
call TriggerAddAction(gg_trg_Player_6_Gold,function Trig_Player_6_Gold_Actions)
endfunction
function Trig_Undead_Players_Gold_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(60,Player(6),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(60,Player(7),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(60,Player(8),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(60,Player(10),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(60,Player(11),PLAYER_STATE_RESOURCE_GOLD)
endfunction
function InitTrig_Undead_Players_Gold takes nothing returns nothing
set gg_trg_Undead_Players_Gold=CreateTrigger()
call DisableTrigger(gg_trg_Undead_Players_Gold)
call TriggerRegisterTimerEventPeriodic(gg_trg_Undead_Players_Gold,13.00)
call TriggerAddAction(gg_trg_Undead_Players_Gold,function Trig_Undead_Players_Gold_Actions)
endfunction
function Trig_Undead_10_Gold_Actions takes nothing returns nothing
call SetPlayerStateBJ(Player(9),PLAYER_STATE_RESOURCE_GOLD,1700)
endfunction
function InitTrig_Undead_10_Gold takes nothing returns nothing
set gg_trg_Undead_10_Gold=CreateTrigger()
call DisableTrigger(gg_trg_Undead_10_Gold)
call TriggerRegisterPlayerStateEvent(gg_trg_Undead_10_Gold,Player(9),PLAYER_STATE_RESOURCE_GOLD,LESS_THAN_OR_EQUAL,1600.00)
call TriggerAddAction(gg_trg_Undead_10_Gold,function Trig_Undead_10_Gold_Actions)
endfunction
function Trig_Undead_7_Actions takes nothing returns nothing
call SetPlayerStateBJ(Player(6),PLAYER_STATE_RESOURCE_GOLD,1800)
endfunction
function InitTrig_Undead_7 takes nothing returns nothing
set gg_trg_Undead_7=CreateTrigger()
call DisableTrigger(gg_trg_Undead_7)
call TriggerRegisterPlayerStateEvent(gg_trg_Undead_7,Player(6),PLAYER_STATE_RESOURCE_GOLD,LESS_THAN_OR_EQUAL,1700.00)
call TriggerAddAction(gg_trg_Undead_7,function Trig_Undead_7_Actions)
endfunction
function Trig_Undead_8_Actions takes nothing returns nothing
call SetPlayerStateBJ(Player(7),PLAYER_STATE_RESOURCE_GOLD,1700)
endfunction
function InitTrig_Undead_8 takes nothing returns nothing
set gg_trg_Undead_8=CreateTrigger()
call DisableTrigger(gg_trg_Undead_8)
call TriggerRegisterPlayerStateEvent(gg_trg_Undead_8,Player(7),PLAYER_STATE_RESOURCE_GOLD,LESS_THAN_OR_EQUAL,1600.00)
call TriggerAddAction(gg_trg_Undead_8,function Trig_Undead_8_Actions)
endfunction
function Trig_Undead_9_Actions takes nothing returns nothing
call SetPlayerStateBJ(Player(8),PLAYER_STATE_RESOURCE_GOLD,1800)
endfunction
function InitTrig_Undead_9 takes nothing returns nothing
set gg_trg_Undead_9=CreateTrigger()
call DisableTrigger(gg_trg_Undead_9)
call TriggerRegisterPlayerStateEvent(gg_trg_Undead_9,Player(8),PLAYER_STATE_RESOURCE_GOLD,LESS_THAN_OR_EQUAL,1700.00)
call TriggerAddAction(gg_trg_Undead_9,function Trig_Undead_9_Actions)
endfunction
function Trig_Undead_11_Actions takes nothing returns nothing
call SetPlayerStateBJ(Player(10),PLAYER_STATE_RESOURCE_GOLD,1700)
endfunction
function InitTrig_Undead_11 takes nothing returns nothing
set gg_trg_Undead_11=CreateTrigger()
call DisableTrigger(gg_trg_Undead_11)
call TriggerRegisterPlayerStateEvent(gg_trg_Undead_11,Player(10),PLAYER_STATE_RESOURCE_GOLD,LESS_THAN_OR_EQUAL,1600.00)
call TriggerAddAction(gg_trg_Undead_11,function Trig_Undead_11_Actions)
endfunction
function Trig_Undead_12_Actions takes nothing returns nothing
call SetPlayerStateBJ(Player(11),PLAYER_STATE_RESOURCE_GOLD,1700)
endfunction
function InitTrig_Undead_12 takes nothing returns nothing
set gg_trg_Undead_12=CreateTrigger()
call DisableTrigger(gg_trg_Undead_12)
call TriggerRegisterPlayerStateEvent(gg_trg_Undead_12,Player(11),PLAYER_STATE_RESOURCE_GOLD,LESS_THAN_OR_EQUAL,1600.00)
call TriggerAddAction(gg_trg_Undead_12,function Trig_Undead_12_Actions)
endfunction
function Trig_UndeadWood01_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(200,Player(6),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_UndeadWood01 takes nothing returns nothing
set gg_trg_UndeadWood01=CreateTrigger()
call TriggerRegisterPlayerStateEvent(gg_trg_UndeadWood01,Player(6),PLAYER_STATE_RESOURCE_LUMBER,LESS_THAN_OR_EQUAL,300.00)
call TriggerAddAction(gg_trg_UndeadWood01,function Trig_UndeadWood01_Actions)
endfunction
function Trig_UndeadWood02_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(250,Player(7),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_UndeadWood02 takes nothing returns nothing
set gg_trg_UndeadWood02=CreateTrigger()
call TriggerRegisterPlayerStateEvent(gg_trg_UndeadWood02,Player(7),PLAYER_STATE_RESOURCE_LUMBER,LESS_THAN_OR_EQUAL,300.00)
call TriggerAddAction(gg_trg_UndeadWood02,function Trig_UndeadWood02_Actions)
endfunction
function Trig_UndeadWood03_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(200,Player(8),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_UndeadWood03 takes nothing returns nothing
set gg_trg_UndeadWood03=CreateTrigger()
call TriggerRegisterPlayerStateEvent(gg_trg_UndeadWood03,Player(8),PLAYER_STATE_RESOURCE_LUMBER,LESS_THAN_OR_EQUAL,300.00)
call TriggerAddAction(gg_trg_UndeadWood03,function Trig_UndeadWood03_Actions)
endfunction
function Trig_UndeadWood04_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(300,Player(9),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_UndeadWood04 takes nothing returns nothing
set gg_trg_UndeadWood04=CreateTrigger()
call TriggerRegisterPlayerStateEvent(gg_trg_UndeadWood04,Player(9),PLAYER_STATE_RESOURCE_LUMBER,LESS_THAN_OR_EQUAL,300.00)
call TriggerAddAction(gg_trg_UndeadWood04,function Trig_UndeadWood04_Actions)
endfunction
function Trig_UndeadWood05_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(200,Player(10),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_UndeadWood05 takes nothing returns nothing
set gg_trg_UndeadWood05=CreateTrigger()
call TriggerRegisterPlayerStateEvent(gg_trg_UndeadWood05,Player(10),PLAYER_STATE_RESOURCE_LUMBER,LESS_THAN_OR_EQUAL,300.00)
call TriggerAddAction(gg_trg_UndeadWood05,function Trig_UndeadWood05_Actions)
endfunction
function Trig_UndeadWood06_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(250,Player(11),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_UndeadWood06 takes nothing returns nothing
set gg_trg_UndeadWood06=CreateTrigger()
call TriggerRegisterPlayerStateEvent(gg_trg_UndeadWood06,Player(11),PLAYER_STATE_RESOURCE_LUMBER,LESS_THAN_OR_EQUAL,300.00)
call TriggerAddAction(gg_trg_UndeadWood06,function Trig_UndeadWood06_Actions)
endfunction
function Trig_Seconds_1550_Func006Func001C takes nothing returns boolean
if(not(GetAIDifficulty(GetEnumPlayer())==AI_DIFFICULTY_NORMAL))then
return false
endif
return true
endfunction
function Trig_Seconds_1550_Func006A takes nothing returns nothing
if(Trig_Seconds_1550_Func006Func001C())then
call SetPlayerTechResearchedSwap(0x52756D65,3,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52757261,3,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756172,3,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756372,3,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756E65,2,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756261,2,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x5275736D,1,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x5275736C,1,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756662,1,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52757063,1,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756766,1,GetEnumPlayer())
else
endif
endfunction
function Trig_Seconds_1550_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(5000,Player(6),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(5000,Player(7),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(5000,Player(8),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(5000,Player(10),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(5000,Player(11),PLAYER_STATE_RESOURCE_GOLD)
call ForForce(GetPlayersByMapControl(MAP_CONTROL_COMPUTER),function Trig_Seconds_1550_Func006A)
endfunction
function InitTrig_Seconds_1550 takes nothing returns nothing
set gg_trg_Seconds_1550=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Seconds_1550,1550.00)
call TriggerAddAction(gg_trg_Seconds_1550,function Trig_Seconds_1550_Actions)
endfunction
function Trig_Seconds_4000_Func001Func001C takes nothing returns boolean
if(not(GetAIDifficulty(GetEnumPlayer())==AI_DIFFICULTY_NORMAL))then
return false
endif
return true
endfunction
function Trig_Seconds_4000_Func001A takes nothing returns nothing
if(Trig_Seconds_4000_Func001Func001C())then
call SetPlayerTechResearchedSwap(0x52756D65,4,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52757261,4,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756172,4,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756372,4,GetEnumPlayer())
else
endif
endfunction
function Trig_Seconds_4000_Actions takes nothing returns nothing
call ForForce(GetPlayersByMapControl(MAP_CONTROL_COMPUTER),function Trig_Seconds_4000_Func001A)
endfunction
function InitTrig_Seconds_4000 takes nothing returns nothing
set gg_trg_Seconds_4000=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Seconds_4000,4000.00)
call TriggerAddAction(gg_trg_Seconds_4000,function Trig_Seconds_4000_Actions)
endfunction
function Trig_Seconds_4400_Func006Func001C takes nothing returns boolean
if(not(GetAIDifficulty(GetEnumPlayer())==AI_DIFFICULTY_NORMAL))then
return false
endif
return true
endfunction
function Trig_Seconds_4400_Func006A takes nothing returns nothing
if(Trig_Seconds_4400_Func006Func001C())then
call SetPlayerTechResearchedSwap(0x52756D65,5,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52757261,5,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756172,5,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756372,5,GetEnumPlayer())
else
endif
endfunction
function Trig_Seconds_4400_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(3000,Player(6),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(3000,Player(7),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(3000,Player(8),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(3000,Player(10),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(3000,Player(11),PLAYER_STATE_RESOURCE_GOLD)
call ForForce(GetPlayersByMapControl(MAP_CONTROL_COMPUTER),function Trig_Seconds_4400_Func006A)
endfunction
function InitTrig_Seconds_4400 takes nothing returns nothing
set gg_trg_Seconds_4400=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Seconds_4400,4400.00)
call TriggerAddAction(gg_trg_Seconds_4400,function Trig_Seconds_4400_Actions)
endfunction
function Trig_Seconds_4800_Func006Func001C takes nothing returns boolean
if(not(GetAIDifficulty(GetEnumPlayer())==AI_DIFFICULTY_NORMAL))then
return false
endif
return true
endfunction
function Trig_Seconds_4800_Func006A takes nothing returns nothing
if(Trig_Seconds_4800_Func006Func001C())then
call SetPlayerTechResearchedSwap(0x52756D65,6,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52757261,6,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756172,6,GetEnumPlayer())
call SetPlayerTechResearchedSwap(0x52756372,6,GetEnumPlayer())
else
endif
endfunction
function Trig_Seconds_4800_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(4000,Player(6),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4000,Player(7),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4000,Player(8),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4000,Player(10),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(4000,Player(11),PLAYER_STATE_RESOURCE_GOLD)
call ForForce(GetPlayersByMapControl(MAP_CONTROL_COMPUTER),function Trig_Seconds_4800_Func006A)
endfunction
function InitTrig_Seconds_4800 takes nothing returns nothing
set gg_trg_Seconds_4800=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Seconds_4800,4800.00)
call TriggerAddAction(gg_trg_Seconds_4800,function Trig_Seconds_4800_Actions)
endfunction
function Trig_Seconds_5300_Actions takes nothing returns nothing
call EnableTrigger(gg_trg_Undead_7)
call EnableTrigger(gg_trg_Undead_8)
call EnableTrigger(gg_trg_Undead_9)
call EnableTrigger(gg_trg_Undead_11)
call EnableTrigger(gg_trg_Undead_12)
endfunction
function InitTrig_Seconds_5300 takes nothing returns nothing
set gg_trg_Seconds_5300=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Seconds_5300,5300.00)
call TriggerAddAction(gg_trg_Seconds_5300,function Trig_Seconds_5300_Actions)
endfunction
function Trig_UndeadDragon10_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0584)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon10_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon10 takes nothing returns nothing
set gg_trg_UndeadDragon10=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon10,5600.00)
call TriggerAddCondition(gg_trg_UndeadDragon10,Condition(function Trig_UndeadDragon10_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon10,function Trig_UndeadDragon10_Actions)
endfunction
function Trig_UndeadDragon11_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0688)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon11_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon11 takes nothing returns nothing
set gg_trg_UndeadDragon11=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon11,5600.00)
call TriggerAddCondition(gg_trg_UndeadDragon11,Condition(function Trig_UndeadDragon11_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon11,function Trig_UndeadDragon11_Actions)
endfunction
function Trig_UndeadDragon12_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0678)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon12_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon12 takes nothing returns nothing
set gg_trg_UndeadDragon12=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon12,5600.00)
call TriggerAddCondition(gg_trg_UndeadDragon12,Condition(function Trig_UndeadDragon12_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon12,function Trig_UndeadDragon12_Actions)
endfunction
function Trig_UndeadDragon13_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0678)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon13_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(9),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon13 takes nothing returns nothing
set gg_trg_UndeadDragon13=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon13,6200.00)
call TriggerAddCondition(gg_trg_UndeadDragon13,Condition(function Trig_UndeadDragon13_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon13,function Trig_UndeadDragon13_Actions)
endfunction
function Trig_UndeadDragon14_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0584)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon14_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(8),GetRandomLocInRect(gg_rct_UndeadDragon01),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon14 takes nothing returns nothing
set gg_trg_UndeadDragon14=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon14,6200.00)
call TriggerAddCondition(gg_trg_UndeadDragon14,Condition(function Trig_UndeadDragon14_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon14,function Trig_UndeadDragon14_Actions)
endfunction
function Trig_UndeadDragon15_Conditions takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_unpl_0688)>=100.00))then
return false
endif
return true
endfunction
function Trig_UndeadDragon15_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x75627370,Player(11),GetRandomLocInRect(gg_rct_UndeadDragon02),bj_UNIT_FACING)
call RecycleGuardPosition(GetLastCreatedUnit())
endfunction
function InitTrig_UndeadDragon15 takes nothing returns nothing
set gg_trg_UndeadDragon15=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_UndeadDragon15,6200.00)
call TriggerAddCondition(gg_trg_UndeadDragon15,Condition(function Trig_UndeadDragon15_Conditions))
call TriggerAddAction(gg_trg_UndeadDragon15,function Trig_UndeadDragon15_Actions)
endfunction
function Trig_Start_AI_Attacks_Actions takes nothing returns nothing
call CommandAI(Player(0),1,0)
call CommandAI(Player(1),1,0)
call CommandAI(Player(2),1,0)
call CommandAI(Player(3),1,0)
call CommandAI(Player(4),1,0)
endfunction
function InitTrig_Start_AI_Attacks takes nothing returns nothing
set gg_trg_Start_AI_Attacks=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_Start_AI_Attacks,1380.00)
call TriggerAddAction(gg_trg_Start_AI_Attacks,function Trig_Start_AI_Attacks_Actions)
endfunction
function Trig_AI_Res_01_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(0))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Res_01_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(300,Player(0),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(300,Player(0),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_AI_Res_01 takes nothing returns nothing
set gg_trg_AI_Res_01=CreateTrigger()
call TriggerRegisterTimerEventPeriodic(gg_trg_AI_Res_01,40.00)
call TriggerAddCondition(gg_trg_AI_Res_01,Condition(function Trig_AI_Res_01_Conditions))
call TriggerAddAction(gg_trg_AI_Res_01,function Trig_AI_Res_01_Actions)
endfunction
function Trig_AI_Res_02_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(1))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Res_02_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(300,Player(1),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(300,Player(1),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_AI_Res_02 takes nothing returns nothing
set gg_trg_AI_Res_02=CreateTrigger()
call TriggerRegisterTimerEventPeriodic(gg_trg_AI_Res_02,40.00)
call TriggerAddCondition(gg_trg_AI_Res_02,Condition(function Trig_AI_Res_02_Conditions))
call TriggerAddAction(gg_trg_AI_Res_02,function Trig_AI_Res_02_Actions)
endfunction
function Trig_AI_Res_03_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(2))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Res_03_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(300,Player(2),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(300,Player(2),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_AI_Res_03 takes nothing returns nothing
set gg_trg_AI_Res_03=CreateTrigger()
call TriggerRegisterTimerEventPeriodic(gg_trg_AI_Res_03,40.00)
call TriggerAddCondition(gg_trg_AI_Res_03,Condition(function Trig_AI_Res_03_Conditions))
call TriggerAddAction(gg_trg_AI_Res_03,function Trig_AI_Res_03_Actions)
endfunction
function Trig_AI_Res_04_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(3))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Res_04_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(300,Player(3),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(300,Player(3),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_AI_Res_04 takes nothing returns nothing
set gg_trg_AI_Res_04=CreateTrigger()
call TriggerRegisterTimerEventPeriodic(gg_trg_AI_Res_04,40.00)
call TriggerAddCondition(gg_trg_AI_Res_04,Condition(function Trig_AI_Res_04_Conditions))
call TriggerAddAction(gg_trg_AI_Res_04,function Trig_AI_Res_04_Actions)
endfunction
function Trig_AI_Res_05_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(4))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Res_05_Actions takes nothing returns nothing
call AdjustPlayerStateBJ(300,Player(4),PLAYER_STATE_RESOURCE_GOLD)
call AdjustPlayerStateBJ(300,Player(4),PLAYER_STATE_RESOURCE_LUMBER)
endfunction
function InitTrig_AI_Res_05 takes nothing returns nothing
set gg_trg_AI_Res_05=CreateTrigger()
call TriggerRegisterTimerEventPeriodic(gg_trg_AI_Res_05,40.00)
call TriggerAddCondition(gg_trg_AI_Res_05,Condition(function Trig_AI_Res_05_Conditions))
call TriggerAddAction(gg_trg_AI_Res_05,function Trig_AI_Res_05_Actions)
endfunction
function Trig_AI_Res_STOP_Actions takes nothing returns nothing
call DisableTrigger(gg_trg_AI_Res_01)
call DisableTrigger(gg_trg_AI_Res_02)
call DisableTrigger(gg_trg_AI_Res_03)
call DisableTrigger(gg_trg_AI_Res_04)
call DisableTrigger(gg_trg_AI_Res_05)
endfunction
function InitTrig_AI_Res_STOP takes nothing returns nothing
set gg_trg_AI_Res_STOP=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_AI_Res_STOP,3800.00)
call TriggerAddAction(gg_trg_AI_Res_STOP,function Trig_AI_Res_STOP_Actions)
endfunction
function Trig_AI_Start_Item_01_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(0))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Start_Item_01_Actions takes nothing returns nothing
call TriggerSleepAction(22.00)
call CreateItemLoc(0x49303056,GetRectCenter(gg_rct_AI_item_1))
endfunction
function InitTrig_AI_Start_Item_01 takes nothing returns nothing
set gg_trg_AI_Start_Item_01=CreateTrigger()
call TriggerAddCondition(gg_trg_AI_Start_Item_01,Condition(function Trig_AI_Start_Item_01_Conditions))
call TriggerAddAction(gg_trg_AI_Start_Item_01,function Trig_AI_Start_Item_01_Actions)
endfunction
function Trig_AI_Start_Item_02_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(1))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Start_Item_02_Actions takes nothing returns nothing
call TriggerSleepAction(23.00)
call CreateItemLoc(0x49303056,GetRectCenter(gg_rct_AI_item_2))
endfunction
function InitTrig_AI_Start_Item_02 takes nothing returns nothing
set gg_trg_AI_Start_Item_02=CreateTrigger()
call TriggerAddCondition(gg_trg_AI_Start_Item_02,Condition(function Trig_AI_Start_Item_02_Conditions))
call TriggerAddAction(gg_trg_AI_Start_Item_02,function Trig_AI_Start_Item_02_Actions)
endfunction
function Trig_AI_Start_Item_03_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(2))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Start_Item_03_Actions takes nothing returns nothing
call TriggerSleepAction(25.00)
call CreateItemLoc(0x49303056,GetRectCenter(gg_rct_AI_item_3))
endfunction
function InitTrig_AI_Start_Item_03 takes nothing returns nothing
set gg_trg_AI_Start_Item_03=CreateTrigger()
call TriggerAddCondition(gg_trg_AI_Start_Item_03,Condition(function Trig_AI_Start_Item_03_Conditions))
call TriggerAddAction(gg_trg_AI_Start_Item_03,function Trig_AI_Start_Item_03_Actions)
endfunction
function Trig_AI_Start_Item_04_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(3))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Start_Item_04_Actions takes nothing returns nothing
call TriggerSleepAction(23.00)
call CreateItemLoc(0x49303056,GetRectCenter(gg_rct_AI_item_4))
endfunction
function InitTrig_AI_Start_Item_04 takes nothing returns nothing
set gg_trg_AI_Start_Item_04=CreateTrigger()
call TriggerAddCondition(gg_trg_AI_Start_Item_04,Condition(function Trig_AI_Start_Item_04_Conditions))
call TriggerAddAction(gg_trg_AI_Start_Item_04,function Trig_AI_Start_Item_04_Actions)
endfunction
function Trig_AI_Start_Item_05_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(4))==MAP_CONTROL_COMPUTER))then
return false
endif
return true
endfunction
function Trig_AI_Start_Item_05_Actions takes nothing returns nothing
call TriggerSleepAction(20.00)
call CreateItemLoc(0x49303056,GetRectCenter(gg_rct_AI_item_5))
endfunction
function InitTrig_AI_Start_Item_05 takes nothing returns nothing
set gg_trg_AI_Start_Item_05=CreateTrigger()
call TriggerAddCondition(gg_trg_AI_Start_Item_05,Condition(function Trig_AI_Start_Item_05_Conditions))
call TriggerAddAction(gg_trg_AI_Start_Item_05,function Trig_AI_Start_Item_05_Actions)
endfunction
function Trig_AI_item_01_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(0))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x68636173))then
return false
endif
return true
endfunction
function Trig_AI_item_01_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(130.00)
call CreateItemLoc(0x49303052,GetRectCenter(gg_rct_AI_item_1))
endfunction
function InitTrig_AI_item_01 takes nothing returns nothing
set gg_trg_AI_item_01=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_01,Player(0),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_01,Condition(function Trig_AI_item_01_Conditions))
call TriggerAddAction(gg_trg_AI_item_01,function Trig_AI_item_01_Actions)
endfunction
function Trig_AI_item_02_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(1))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x68636173))then
return false
endif
return true
endfunction
function Trig_AI_item_02_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(130.00)
call CreateItemLoc(0x49303053,GetRectCenter(gg_rct_AI_item_2))
endfunction
function InitTrig_AI_item_02 takes nothing returns nothing
set gg_trg_AI_item_02=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_02,Player(1),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_02,Condition(function Trig_AI_item_02_Conditions))
call TriggerAddAction(gg_trg_AI_item_02,function Trig_AI_item_02_Actions)
endfunction
function Trig_AI_item_03_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(2))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x68636173))then
return false
endif
return true
endfunction
function Trig_AI_item_03_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(130.00)
call CreateItemLoc(0x49303053,GetRectCenter(gg_rct_AI_item_3))
endfunction
function InitTrig_AI_item_03 takes nothing returns nothing
set gg_trg_AI_item_03=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_03,Player(2),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_03,Condition(function Trig_AI_item_03_Conditions))
call TriggerAddAction(gg_trg_AI_item_03,function Trig_AI_item_03_Actions)
endfunction
function Trig_AI_item_04_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(3))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x68636173))then
return false
endif
return true
endfunction
function Trig_AI_item_04_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(130.00)
call CreateItemLoc(0x49303054,GetRectCenter(gg_rct_AI_item_4))
endfunction
function InitTrig_AI_item_04 takes nothing returns nothing
set gg_trg_AI_item_04=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_04,Player(3),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_04,Condition(function Trig_AI_item_04_Conditions))
call TriggerAddAction(gg_trg_AI_item_04,function Trig_AI_item_04_Actions)
endfunction
function Trig_AI_item_05_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(4))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x68636173))then
return false
endif
return true
endfunction
function Trig_AI_item_05_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(130.00)
call CreateItemLoc(0x49303052,GetRectCenter(gg_rct_AI_item_5))
endfunction
function InitTrig_AI_item_05 takes nothing returns nothing
set gg_trg_AI_item_05=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_05,Player(4),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_05,Condition(function Trig_AI_item_05_Conditions))
call TriggerAddAction(gg_trg_AI_item_05,function Trig_AI_item_05_Actions)
endfunction
function Trig_AI_item_01_II_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(0))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x686B6565))then
return false
endif
return true
endfunction
function Trig_AI_item_01_II_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(30.00)
call CreateItemLoc(0x49303055,GetRectCenter(gg_rct_AI_item_1))
endfunction
function InitTrig_AI_item_01_II takes nothing returns nothing
set gg_trg_AI_item_01_II=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_01_II,Player(0),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_01_II,Condition(function Trig_AI_item_01_II_Conditions))
call TriggerAddAction(gg_trg_AI_item_01_II,function Trig_AI_item_01_II_Actions)
endfunction
function Trig_AI_item_02_II_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(1))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x686B6565))then
return false
endif
return true
endfunction
function Trig_AI_item_02_II_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(30.00)
call CreateItemLoc(0x49303055,GetRectCenter(gg_rct_AI_item_2))
endfunction
function InitTrig_AI_item_02_II takes nothing returns nothing
set gg_trg_AI_item_02_II=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_02_II,Player(1),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_02_II,Condition(function Trig_AI_item_02_II_Conditions))
call TriggerAddAction(gg_trg_AI_item_02_II,function Trig_AI_item_02_II_Actions)
endfunction
function Trig_AI_item_03_II_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(2))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x686B6565))then
return false
endif
return true
endfunction
function Trig_AI_item_03_II_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(30.00)
call CreateItemLoc(0x49303055,GetRectCenter(gg_rct_AI_item_3))
endfunction
function InitTrig_AI_item_03_II takes nothing returns nothing
set gg_trg_AI_item_03_II=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_03_II,Player(2),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_03_II,Condition(function Trig_AI_item_03_II_Conditions))
call TriggerAddAction(gg_trg_AI_item_03_II,function Trig_AI_item_03_II_Actions)
endfunction
function Trig_AI_item_04_II_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(3))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x686B6565))then
return false
endif
return true
endfunction
function Trig_AI_item_04_II_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(30.00)
call CreateItemLoc(0x49303055,GetRectCenter(gg_rct_AI_item_4))
endfunction
function InitTrig_AI_item_04_II takes nothing returns nothing
set gg_trg_AI_item_04_II=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_04_II,Player(3),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_04_II,Condition(function Trig_AI_item_04_II_Conditions))
call TriggerAddAction(gg_trg_AI_item_04_II,function Trig_AI_item_04_II_Actions)
endfunction
function Trig_AI_item_05_II_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(4))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitTypeId(GetTriggerUnit())==0x686B6565))then
return false
endif
return true
endfunction
function Trig_AI_item_05_II_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call TriggerSleepAction(30.00)
call CreateItemLoc(0x49303055,GetRectCenter(gg_rct_AI_item_5))
endfunction
function InitTrig_AI_item_05_II takes nothing returns nothing
set gg_trg_AI_item_05_II=CreateTrigger()
call TriggerRegisterPlayerUnitEventSimple(gg_trg_AI_item_05_II,Player(4),EVENT_PLAYER_UNIT_UPGRADE_FINISH)
call TriggerAddCondition(gg_trg_AI_item_05_II,Condition(function Trig_AI_item_05_II_Conditions))
call TriggerAddAction(gg_trg_AI_item_05_II,function Trig_AI_item_05_II_Actions)
endfunction
function Trig_AI_item_01_III_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(0))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_htow_0047)>=1000.00))then
return false
endif
return true
endfunction
function Trig_AI_item_01_III_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call CreateItemLoc(0x49303054,GetRectCenter(gg_rct_AI_item_1))
endfunction
function InitTrig_AI_item_01_III takes nothing returns nothing
set gg_trg_AI_item_01_III=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_AI_item_01_III,2580.00)
call TriggerAddCondition(gg_trg_AI_item_01_III,Condition(function Trig_AI_item_01_III_Conditions))
call TriggerAddAction(gg_trg_AI_item_01_III,function Trig_AI_item_01_III_Actions)
endfunction
function Trig_AI_item_02_III_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(1))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_htow_0487)>=1000.00))then
return false
endif
return true
endfunction
function Trig_AI_item_02_III_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call CreateItemLoc(0x49303054,GetRectCenter(gg_rct_AI_item_2))
endfunction
function InitTrig_AI_item_02_III takes nothing returns nothing
set gg_trg_AI_item_02_III=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_AI_item_02_III,2530.00)
call TriggerAddCondition(gg_trg_AI_item_02_III,Condition(function Trig_AI_item_02_III_Conditions))
call TriggerAddAction(gg_trg_AI_item_02_III,function Trig_AI_item_02_III_Actions)
endfunction
function Trig_AI_item_03_III_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(2))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_htow_0484)>=1000.00))then
return false
endif
return true
endfunction
function Trig_AI_item_03_III_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call CreateItemLoc(0x49303052,GetRectCenter(gg_rct_AI_item_3))
endfunction
function InitTrig_AI_item_03_III takes nothing returns nothing
set gg_trg_AI_item_03_III=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_AI_item_03_III,2560.00)
call TriggerAddCondition(gg_trg_AI_item_03_III,Condition(function Trig_AI_item_03_III_Conditions))
call TriggerAddAction(gg_trg_AI_item_03_III,function Trig_AI_item_03_III_Actions)
endfunction
function Trig_AI_item_04_III_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(3))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_htow_0481)>=1000.00))then
return false
endif
return true
endfunction
function Trig_AI_item_04_III_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call CreateItemLoc(0x49303053,GetRectCenter(gg_rct_AI_item_4))
endfunction
function InitTrig_AI_item_04_III takes nothing returns nothing
set gg_trg_AI_item_04_III=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_AI_item_04_III,2600.00)
call TriggerAddCondition(gg_trg_AI_item_04_III,Condition(function Trig_AI_item_04_III_Conditions))
call TriggerAddAction(gg_trg_AI_item_04_III,function Trig_AI_item_04_III_Actions)
endfunction
function Trig_AI_item_05_III_Conditions takes nothing returns boolean
if(not(GetPlayerController(Player(4))==MAP_CONTROL_COMPUTER))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,gg_unit_htow_0519)>=1000.00))then
return false
endif
return true
endfunction
function Trig_AI_item_05_III_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call CreateItemLoc(0x49303054,GetRectCenter(gg_rct_AI_item_5))
endfunction
function InitTrig_AI_item_05_III takes nothing returns nothing
set gg_trg_AI_item_05_III=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_AI_item_05_III,2500.00)
call TriggerAddCondition(gg_trg_AI_item_05_III,Condition(function Trig_AI_item_05_III_Conditions))
call TriggerAddAction(gg_trg_AI_item_05_III,function Trig_AI_item_05_III_Actions)
endfunction
function Trig_Random_Conditions takes nothing returns boolean
if(not(GetUnitTypeId(GetTrainedUnit())==0x456B6565))then
return false
endif
return true
endfunction
function Trig_Random_Actions takes nothing returns nothing
call SetPlayerUnitAvailableBJ(GetUnitTypeId(GetTrainedUnit()),false,GetOwningPlayer(GetLastCreatedUnit()))
call RemoveUnit(GetTrainedUnit())
call CreateNUnitsAtLoc(1,udg_RandomHero[GetRandomInt(1,10)],GetOwningPlayer(GetTrainedUnit()),GetUnitLoc(GetTrainedUnit()),bj_UNIT_FACING)
call SetPlayerUnitAvailableBJ(GetUnitTypeId(GetLastCreatedUnit()),false,GetOwningPlayer(GetLastCreatedUnit()))
call UnitAddItemByIdSwapped(0x49303030,GetLastCreatedUnit())
endfunction
function InitTrig_Random takes nothing returns nothing
set gg_trg_Random=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Random,EVENT_PLAYER_UNIT_TRAIN_FINISH)
call TriggerAddCondition(gg_trg_Random,Condition(function Trig_Random_Conditions))
call TriggerAddAction(gg_trg_Random,function Trig_Random_Actions)
endfunction
function Trig_SetRandom_Actions takes nothing returns nothing
set udg_RandomHero[1]=0x45776172
set udg_RandomHero[2]=0x4870616C
set udg_RandomHero[3]=0x48616D67
set udg_RandomHero[4]=0x486D6B67
set udg_RandomHero[5]=0x48626C6D
set udg_RandomHero[6]=0x4F626C61
set udg_RandomHero[7]=0x4F666172
set udg_RandomHero[8]=0x4F746368
set udg_RandomHero[9]=0x4F736864
set udg_RandomHero[10]=0x4564656D
endfunction
function InitTrig_SetRandom takes nothing returns nothing
set gg_trg_SetRandom=CreateTrigger()
call TriggerAddAction(gg_trg_SetRandom,function Trig_SetRandom_Actions)
endfunction
function Trig_Big_Explosion_1_Func001C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x68746F77))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x686B6565))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68636173))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68303135))then
return true
endif
return false
endfunction
function Trig_Big_Explosion_1_Conditions takes nothing returns boolean
if(not Trig_Big_Explosion_1_Func001C())then
return false
endif
return true
endfunction
function Trig_Big_Explosion_1_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionBig,100,GetUnitLoc(GetDyingUnit()),400.00)
call CreateNUnitsAtLoc(1,0x68303041,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Big_Explosion_1 takes nothing returns nothing
set gg_trg_Big_Explosion_1=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Big_Explosion_1,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Big_Explosion_1,Condition(function Trig_Big_Explosion_1_Conditions))
call TriggerAddAction(gg_trg_Big_Explosion_1,function Trig_Big_Explosion_1_Actions)
endfunction
function Trig_Big_Explosion_2_Func001C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x68677477))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68637477))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68617477))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x686D7474))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x6F777477))then
return true
endif
return false
endfunction
function Trig_Big_Explosion_2_Conditions takes nothing returns boolean
if(not Trig_Big_Explosion_2_Func001C())then
return false
endif
return true
endfunction
function Trig_Big_Explosion_2_Actions takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x68303036,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Big_Explosion_2 takes nothing returns nothing
set gg_trg_Big_Explosion_2=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Big_Explosion_2,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Big_Explosion_2,Condition(function Trig_Big_Explosion_2_Conditions))
call TriggerAddAction(gg_trg_Big_Explosion_2,function Trig_Big_Explosion_2_Actions)
endfunction
function Trig_Big_Explosion_3_Func001C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x686C756D))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68626C61))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x6861726D))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68626172))then
return true
endif
return false
endfunction
function Trig_Big_Explosion_3_Conditions takes nothing returns boolean
if(not Trig_Big_Explosion_3_Func001C())then
return false
endif
return true
endfunction
function Trig_Big_Explosion_3_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionLarge,100,GetUnitLoc(GetDyingUnit()),300.00)
call CreateNUnitsAtLoc(1,0x68303039,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x68303039,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Big_Explosion_3 takes nothing returns nothing
set gg_trg_Big_Explosion_3=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Big_Explosion_3,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Big_Explosion_3,Condition(function Trig_Big_Explosion_3_Conditions))
call TriggerAddAction(gg_trg_Big_Explosion_3,function Trig_Big_Explosion_3_Actions)
endfunction
function Trig_Big_Explosion_4_Func001C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x686D746D))then
return true
endif
return false
endfunction
function Trig_Big_Explosion_4_Conditions takes nothing returns boolean
if(not Trig_Big_Explosion_4_Func001C())then
return false
endif
return true
endfunction
function Trig_Big_Explosion_4_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionBig,100,GetUnitLoc(GetDyingUnit()),300.00)
call CreateNUnitsAtLoc(1,0x68303034,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Big_Explosion_4 takes nothing returns nothing
set gg_trg_Big_Explosion_4=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Big_Explosion_4,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Big_Explosion_4,Condition(function Trig_Big_Explosion_4_Conditions))
call TriggerAddAction(gg_trg_Big_Explosion_4,function Trig_Big_Explosion_4_Actions)
endfunction
function Trig_Big_Explosion_5_Func001C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x6F666F72))then
return true
endif
return false
endfunction
function Trig_Big_Explosion_5_Conditions takes nothing returns boolean
if(not Trig_Big_Explosion_5_Func001C())then
return false
endif
return true
endfunction
function Trig_Big_Explosion_5_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionLarge,100,GetUnitLoc(GetDyingUnit()),300.00)
call CreateNUnitsAtLoc(1,0x68303039,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
call CreateNUnitsAtLoc(1,0x68303039,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
call RemoveUnit(GetTriggerUnit())
endfunction
function InitTrig_Big_Explosion_5 takes nothing returns nothing
set gg_trg_Big_Explosion_5=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Big_Explosion_5,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Big_Explosion_5,Condition(function Trig_Big_Explosion_5_Conditions))
call TriggerAddAction(gg_trg_Big_Explosion_5,function Trig_Big_Explosion_5_Actions)
endfunction
function Trig_Big_Explosion_6_Func001C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x68303134))then
return true
endif
return false
endfunction
function Trig_Big_Explosion_6_Conditions takes nothing returns boolean
if(not Trig_Big_Explosion_6_Func001C())then
return false
endif
return true
endfunction
function Trig_Big_Explosion_6_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionLarge,100,GetUnitLoc(GetDyingUnit()),300.00)
call CreateNUnitsAtLoc(1,0x68303039,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
call TriggerSleepAction(0.30)
call CreateNUnitsAtLoc(1,0x68303039,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
call RemoveUnit(GetTriggerUnit())
endfunction
function InitTrig_Big_Explosion_6 takes nothing returns nothing
set gg_trg_Big_Explosion_6=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Big_Explosion_6,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Big_Explosion_6,Condition(function Trig_Big_Explosion_6_Conditions))
call TriggerAddAction(gg_trg_Big_Explosion_6,function Trig_Big_Explosion_6_Actions)
endfunction
function Trig_Big_Explosion_7_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x6F746175))then
return true
endif
return false
endfunction
function Trig_Big_Explosion_7_Conditions takes nothing returns boolean
if(not Trig_Big_Explosion_7_Func002C())then
return false
endif
return true
endfunction
function Trig_Big_Explosion_7_Actions takes nothing returns nothing
call TriggerSleepAction(1.50)
call PlaySoundAtPointBJ(gg_snd_ExplosionLarge,100,GetUnitLoc(GetDyingUnit()),300.00)
endfunction
function InitTrig_Big_Explosion_7 takes nothing returns nothing
set gg_trg_Big_Explosion_7=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Big_Explosion_7,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Big_Explosion_7,Condition(function Trig_Big_Explosion_7_Conditions))
call TriggerAddAction(gg_trg_Big_Explosion_7,function Trig_Big_Explosion_7_Actions)
endfunction
function Trig_Mine_Explosion_Func003C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x6E303030))then
return true
endif
return false
endfunction
function Trig_Mine_Explosion_Conditions takes nothing returns boolean
if(not Trig_Mine_Explosion_Func003C())then
return false
endif
return true
endfunction
function Trig_Mine_Explosion_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionSmall,100,GetUnitLoc(GetDyingUnit()),400.00)
call CreateNUnitsAtLoc(1,0x68303035,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Mine_Explosion takes nothing returns nothing
set gg_trg_Mine_Explosion=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Mine_Explosion,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Mine_Explosion,Condition(function Trig_Mine_Explosion_Conditions))
call TriggerAddAction(gg_trg_Mine_Explosion,function Trig_Mine_Explosion_Actions)
endfunction
function Trig_Explosion_1_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x68737074))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68303048))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68303047))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x68303046))then
return true
endif
return false
endfunction
function Trig_Explosion_1_Conditions takes nothing returns boolean
if(not Trig_Explosion_1_Func002C())then
return false
endif
return true
endfunction
function Trig_Explosion_1_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionBig,100,GetUnitLoc(GetDyingUnit()),400.00)
call CreateNUnitsAtLoc(1,0x68303041,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Explosion_1 takes nothing returns nothing
set gg_trg_Explosion_1=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Explosion_1,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Explosion_1,Condition(function Trig_Explosion_1_Conditions))
call TriggerAddAction(gg_trg_Explosion_1,function Trig_Explosion_1_Actions)
endfunction
function Trig_Explosion_2_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x68677972))then
return true
endif
if((GetUnitTypeId(GetTriggerUnit())==0x6F746272))then
return true
endif
return false
endfunction
function Trig_Explosion_2_Conditions takes nothing returns boolean
if(not Trig_Explosion_2_Func002C())then
return false
endif
return true
endfunction
function Trig_Explosion_2_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionBig,100,GetUnitLoc(GetDyingUnit()),400.00)
call CreateNUnitsAtLoc(1,0x68303038,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Explosion_2 takes nothing returns nothing
set gg_trg_Explosion_2=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Explosion_2,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Explosion_2,Condition(function Trig_Explosion_2_Conditions))
call TriggerAddAction(gg_trg_Explosion_2,function Trig_Explosion_2_Actions)
endfunction
function Trig_Explosion_3_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x68726966))then
return true
endif
return false
endfunction
function Trig_Explosion_3_Conditions takes nothing returns boolean
if(not Trig_Explosion_3_Func002C())then
return false
endif
return true
endfunction
function Trig_Explosion_3_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionSmall,100,GetUnitLoc(GetDyingUnit()),400.00)
call CreateNUnitsAtLoc(1,0x68303035,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Explosion_3 takes nothing returns nothing
set gg_trg_Explosion_3=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Explosion_3,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Explosion_3,Condition(function Trig_Explosion_3_Conditions))
call TriggerAddAction(gg_trg_Explosion_3,function Trig_Explosion_3_Actions)
endfunction
function Trig_Explosion_4_Func002C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x68706561))then
return true
endif
return false
endfunction
function Trig_Explosion_4_Conditions takes nothing returns boolean
if(not Trig_Explosion_4_Func002C())then
return false
endif
return true
endfunction
function Trig_Explosion_4_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionSmall,100,GetUnitLoc(GetDyingUnit()),400.00)
endfunction
function InitTrig_Explosion_4 takes nothing returns nothing
set gg_trg_Explosion_4=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Explosion_4,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Explosion_4,Condition(function Trig_Explosion_4_Conditions))
call TriggerAddAction(gg_trg_Explosion_4,function Trig_Explosion_4_Actions)
endfunction
function Trig_Explosion_5_Func004C takes nothing returns boolean
if((GetUnitTypeId(GetTriggerUnit())==0x6F70656F))then
return true
endif
return false
endfunction
function Trig_Explosion_5_Conditions takes nothing returns boolean
if(not Trig_Explosion_5_Func004C())then
return false
endif
return true
endfunction
function Trig_Explosion_5_Actions takes nothing returns nothing
call PlaySoundAtPointBJ(gg_snd_ExplosionSmall,100,GetUnitLoc(GetDyingUnit()),400.00)
call CreateNUnitsAtLoc(1,0x68303035,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call UnitApplyTimedLifeBJ(0.01,0x42544C46,GetLastCreatedUnit())
endfunction
function InitTrig_Explosion_5 takes nothing returns nothing
set gg_trg_Explosion_5=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Explosion_5,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Explosion_5,Condition(function Trig_Explosion_5_Conditions))
call TriggerAddAction(gg_trg_Explosion_5,function Trig_Explosion_5_Actions)
endfunction
function Trig_EMPIRE_WIN_Actions takes nothing returns nothing
call DisableTrigger(GetTriggeringTrigger())
call EndThematicMusicBJ()
call SetMusicVolumeBJ(0.00)
call DisableTrigger(gg_trg_AAgun_Sound)
call DisableTrigger(gg_trg_Annihilation_Gun_Sound)
call DisableTrigger(gg_trg_Sniper_Sound)
call CinematicModeBJ(true,GetPlayersAll())
call PlaySoundBJ(gg_snd_EmpireWin)
call SetSoundVolumeBJ(GetLastPlayedSound(),100)
call CreateNUnitsAtLoc(1,0x68303149,GetOwningPlayer(GetKillingUnitBJ()),GetUnitLoc(GetDyingUnit()),GetUnitFacing(GetKillingUnitBJ()))
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_01,Player(0),2.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_01,Player(1),2.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_01,Player(2),2.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_01,Player(3),2.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_01,Player(4),2.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_01,Player(5),2.00)
call TriggerSleepAction(2.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_02,Player(0),10.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_02,Player(1),10.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_02,Player(2),10.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_02,Player(3),10.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_02,Player(4),10.00)
call CameraSetupApplyForPlayer(true,gg_cam_WIN_Camera_02,Player(5),10.00)
call TriggerSleepAction(6.00)
call CinematicFadeBJ(bj_CINEFADETYPE_FADEOUT,4.00,"ReplaceableTextures\\CameraMasks\\Black_mask.blp",100.00,100.00,100.00,0)
call TriggerSleepAction(5.50)
call CustomVictoryBJ(Player(0),true,true)
call CustomVictoryBJ(Player(1),true,true)
call CustomVictoryBJ(Player(2),true,true)
call CustomVictoryBJ(Player(3),true,true)
call CustomVictoryBJ(Player(4),true,true)
call CustomDefeatBJ(Player(5),"TRIGSTR_6156")
endfunction
function InitTrig_EMPIRE_WIN takes nothing returns nothing
set gg_trg_EMPIRE_WIN=CreateTrigger()
call TriggerRegisterUnitEvent(gg_trg_EMPIRE_WIN,gg_unit_u001_0415,EVENT_UNIT_DEATH)
call TriggerAddAction(gg_trg_EMPIRE_WIN,function Trig_EMPIRE_WIN_Actions)
endfunction
function Trig_Standart_Camera_Actions takes nothing returns nothing
call SetCameraFieldForPlayer(GetTriggerPlayer(),CAMERA_FIELD_TARGET_DISTANCE,bj_CAMERA_DEFAULT_DISTANCE,1.00)
endfunction
function InitTrig_Standart_Camera takes nothing returns nothing
set gg_trg_Standart_Camera=CreateTrigger()
call TriggerRegisterPlayerChatEvent(gg_trg_Standart_Camera,Player(0),"-c1",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Standart_Camera,Player(1),"-c1",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Standart_Camera,Player(2),"-c1",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Standart_Camera,Player(3),"-c1",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Standart_Camera,Player(4),"-c1",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Standart_Camera,Player(5),"-c1",true)
call TriggerAddAction(gg_trg_Standart_Camera,function Trig_Standart_Camera_Actions)
endfunction
function Trig_Medium_Camera_Actions takes nothing returns nothing
call SetCameraFieldForPlayer(GetTriggerPlayer(),CAMERA_FIELD_TARGET_DISTANCE,2200.00,1.00)
endfunction
function InitTrig_Medium_Camera takes nothing returns nothing
set gg_trg_Medium_Camera=CreateTrigger()
call TriggerRegisterPlayerChatEvent(gg_trg_Medium_Camera,Player(0),"-c2",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Medium_Camera,Player(1),"-c2",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Medium_Camera,Player(2),"-c2",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Medium_Camera,Player(3),"-c2",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Medium_Camera,Player(4),"-c2",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Medium_Camera,Player(5),"-c2",true)
call TriggerAddAction(gg_trg_Medium_Camera,function Trig_Medium_Camera_Actions)
endfunction
function Trig_Far_Camera_Actions takes nothing returns nothing
call SetCameraFieldForPlayer(GetTriggerPlayer(),CAMERA_FIELD_TARGET_DISTANCE,2800.00,1.00)
endfunction
function InitTrig_Far_Camera takes nothing returns nothing
set gg_trg_Far_Camera=CreateTrigger()
call TriggerRegisterPlayerChatEvent(gg_trg_Far_Camera,Player(0),"-c3",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Far_Camera,Player(1),"-c3",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Far_Camera,Player(2),"-c3",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Far_Camera,Player(3),"-c3",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Far_Camera,Player(4),"-c3",true)
call TriggerRegisterPlayerChatEvent(gg_trg_Far_Camera,Player(5),"-c3",true)
call TriggerAddAction(gg_trg_Far_Camera,function Trig_Far_Camera_Actions)
endfunction
function Trig_SithMask_Conditions takes nothing returns boolean
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303138))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303142))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303032))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303143))==true))then
return false
endif
return true
endfunction
function Trig_SithMask_Actions takes nothing returns nothing
call AddSpecialEffectTargetUnitBJ("origin",GetTriggerUnit(),"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl")
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303138))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303142))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303032))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303143))
call UnitAddItemByIdSwapped(0x6D6F6474,GetManipulatingUnit())
endfunction
function InitTrig_SithMask takes nothing returns nothing
set gg_trg_SithMask=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_SithMask,EVENT_PLAYER_UNIT_PICKUP_ITEM)
call TriggerAddCondition(gg_trg_SithMask,Condition(function Trig_SithMask_Conditions))
call TriggerAddAction(gg_trg_SithMask,function Trig_SithMask_Actions)
endfunction
function Trig_LightSaber_Conditions takes nothing returns boolean
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303139))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x6F666972))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303141))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303144))==true))then
return false
endif
return true
endfunction
function Trig_LightSaber_Actions takes nothing returns nothing
call AddSpecialEffectTargetUnitBJ("origin",GetTriggerUnit(),"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl")
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303139))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x6F666972))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303141))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303144))
call UnitAddItemByIdSwapped(0x72617436,GetManipulatingUnit())
endfunction
function InitTrig_LightSaber takes nothing returns nothing
set gg_trg_LightSaber=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_LightSaber,EVENT_PLAYER_UNIT_PICKUP_ITEM)
call TriggerAddCondition(gg_trg_LightSaber,Condition(function Trig_LightSaber_Conditions))
call TriggerAddAction(gg_trg_LightSaber,function Trig_LightSaber_Actions)
endfunction
function Trig_Rog_of_power_Conditions takes nothing returns boolean
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303048))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304A))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304B))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304D))==true))then
return false
endif
return true
endfunction
function Trig_Rog_of_power_Actions takes nothing returns nothing
call AddSpecialEffectTargetUnitBJ("origin",GetTriggerUnit(),"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl")
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303048))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304A))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304B))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304D))
call UnitAddItemByIdSwapped(0x4930304C,GetManipulatingUnit())
endfunction
function InitTrig_Rog_of_power takes nothing returns nothing
set gg_trg_Rog_of_power=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Rog_of_power,EVENT_PLAYER_UNIT_PICKUP_ITEM)
call TriggerAddCondition(gg_trg_Rog_of_power,Condition(function Trig_Rog_of_power_Conditions))
call TriggerAddAction(gg_trg_Rog_of_power,function Trig_Rog_of_power_Actions)
endfunction
function Trig_Ring_of_Fire_Conditions takes nothing returns boolean
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304F))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x73726264))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x636C666D))==true))then
return false
endif
return true
endfunction
function Trig_Ring_of_Fire_Actions takes nothing returns nothing
call AddSpecialEffectTargetUnitBJ("origin",GetTriggerUnit(),"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl")
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x636C666D))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x4930304F))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x73726264))
call UnitAddItemByIdSwapped(0x4930304E,GetManipulatingUnit())
endfunction
function InitTrig_Ring_of_Fire takes nothing returns nothing
set gg_trg_Ring_of_Fire=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Ring_of_Fire,EVENT_PLAYER_UNIT_PICKUP_ITEM)
call TriggerAddCondition(gg_trg_Ring_of_Fire,Condition(function Trig_Ring_of_Fire_Conditions))
call TriggerAddAction(gg_trg_Ring_of_Fire,function Trig_Ring_of_Fire_Actions)
endfunction
function Trig_Ring_of_Water_Conditions takes nothing returns boolean
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303037))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303050))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x6F6C6932))==true))then
return false
endif
return true
endfunction
function Trig_Ring_of_Water_Actions takes nothing returns nothing
call AddSpecialEffectTargetUnitBJ("origin",GetTriggerUnit(),"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl")
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x6F6C6932))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303037))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303050))
call UnitAddItemByIdSwapped(0x49303051,GetManipulatingUnit())
endfunction
function InitTrig_Ring_of_Water takes nothing returns nothing
set gg_trg_Ring_of_Water=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Ring_of_Water,EVENT_PLAYER_UNIT_PICKUP_ITEM)
call TriggerAddCondition(gg_trg_Ring_of_Water,Condition(function Trig_Ring_of_Water_Conditions))
call TriggerAddAction(gg_trg_Ring_of_Water,function Trig_Ring_of_Water_Actions)
endfunction
function Trig_Magic_Reload_Conditions takes nothing returns boolean
if(not(GetItemTypeId(GetManipulatedItem())==0x49303049))then
return false
endif
return true
endfunction
function Trig_Magic_Reload_Actions takes nothing returns nothing
call UnitResetCooldown(GetManipulatingUnit())
endfunction
function InitTrig_Magic_Reload takes nothing returns nothing
set gg_trg_Magic_Reload=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Magic_Reload,EVENT_PLAYER_UNIT_USE_ITEM)
call TriggerAddCondition(gg_trg_Magic_Reload,Condition(function Trig_Magic_Reload_Conditions))
call TriggerAddAction(gg_trg_Magic_Reload,function Trig_Magic_Reload_Actions)
endfunction
function Trig_Heal_Conditions takes nothing returns boolean
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x70686561))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x73726567))==true))then
return false
endif
if(not(UnitHasItem(GetTriggerUnit(),GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303135))==true))then
return false
endif
return true
endfunction
function Trig_Heal_Actions takes nothing returns nothing
call AddSpecialEffectTargetUnitBJ("origin",GetTriggerUnit(),"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl")
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x73726567))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x70686561))
call RemoveItem(GetItemOfTypeFromUnitBJ(GetManipulatingUnit(),0x49303135))
call UnitAddItemByIdSwapped(0x49303059,GetManipulatingUnit())
endfunction
function InitTrig_Heal takes nothing returns nothing
set gg_trg_Heal=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Heal,EVENT_PLAYER_UNIT_PICKUP_ITEM)
call TriggerAddCondition(gg_trg_Heal,Condition(function Trig_Heal_Conditions))
call TriggerAddAction(gg_trg_Heal,function Trig_Heal_Actions)
endfunction
function Trig_Black_Hole_Init_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_Enigma_Hashtable=GetLastCreatedHashtableBJ()
endfunction
function InitTrig_Black_Hole_Init takes nothing returns nothing
set gg_trg_Black_Hole_Init=CreateTrigger()
call TriggerAddAction(gg_trg_Black_Hole_Init,function Trig_Black_Hole_Init_Actions)
endfunction
function Trig_Black_Hole_Helpful_Files_Actions takes nothing returns nothing
set udg_BH_Key=0
set udg_BH_MX=0.00
set udg_BH_MY=0.00
set udg_BH_PullUnitsX=0.00
set udg_BH_PullUnitsY=0.00
set udg_BH_X=0.00
set udg_BH_Y=0.00
set udg_BH_SpellX=0.00
set udg_BH_SpellY=0.00
endfunction
function InitTrig_Black_Hole_Helpful_Files takes nothing returns nothing
set gg_trg_Black_Hole_Helpful_Files=CreateTrigger()
call TriggerAddAction(gg_trg_Black_Hole_Helpful_Files,function Trig_Black_Hole_Helpful_Files_Actions)
endfunction
function Trig_Black_Hole_Config_Actions takes nothing returns nothing
set udg_BH_Ability=0x41303254
set udg_BH_DummyUnit=0x75303036
set udg_BH_ColorRed=0.00
set udg_BH_ColorGreen=0.00
set udg_BH_ColorBlue=0.00
set udg_BH_UnitSize=8000.00
set udg_BH_UnitSizePerLevel=1000.00
set udg_BH_FlyHeight=300.00
set udg_BH_FlyHeightPerLevel=45.00
set udg_BH_Transparency=0.00
set udg_BH_TransparencyPerLevel=0.00
set udg_BH_Duration=17.00
set udg_BH_DurationPerLevel=2.50
set udg_BH_Damage=300.00
set udg_BH_DamagePerLevel=5.00
set udg_BH_Radius=900.00
set udg_BH_RadiusPerLevel=250.00
set udg_BH_SmallRadius=300.00
set udg_BH_SmallRadiusPerLevel=50.00
set udg_BH_SmallRadDamage=30.00
set udg_BH_SmallRadDamagePerLevel=2.50
set udg_BH_CenterRadius=150.00
set udg_BH_CenterRadiusPerLevel=25.00
set udg_BH_CenterDamage=250.00
set udg_BH_CenterDamagePerLevel=10.00
set udg_BH_CenterChance=40.00
set udg_BH_CenterChancePerLevel=10.00
set udg_BH_CenterIgnoreUnitTypes=true
set udg_BH_SpeedPull=17.00
set udg_BH_SpeedPullPerLevel=0.75
set udg_BH_ChanceEffect=15.00
set udg_BH_ChanceEffectPerLevel=2.50
set udg_BH_AttackType=ATTACK_TYPE_CHAOS
set udg_BH_DamageType=DAMAGE_TYPE_NORMAL
set udg_BH_CenterAttackType=ATTACK_TYPE_CHAOS
set udg_BH_CenterDamageType=DAMAGE_TYPE_NORMAL
set udg_BH_SmallRadiusDamageEffect="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl"
set udg_BH_SmallRadiusAttachment="head"
set udg_BH_CenterSFX="Abilities\\Spells\\Items\\TomeOfRetraining\\TomeOfRetrainingCaster.mdl"
set udg_BH_SpawnEffect="Abilities\\Spells\\NightElf\\Taunt\\TauntCaster.mdl"
set udg_BH_DamageSfx="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl"
endfunction
function InitTrig_Black_Hole_Config takes nothing returns nothing
set gg_trg_Black_Hole_Config=CreateTrigger()
call TriggerAddAction(gg_trg_Black_Hole_Config,function Trig_Black_Hole_Config_Actions)
endfunction
function Trig_Black_Hole_Execution_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==udg_BH_Ability))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Execution_Func048C takes nothing returns boolean
if(not(udg_BH_ActiveInstances==1))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Execution_Actions takes nothing returns nothing
set udg_BH_Caster=GetTriggerUnit()
set udg_BH_Level=GetUnitAbilityLevelSwapped(udg_BH_Ability,udg_BH_Caster)
set udg_BH_RealLevel=I2R(udg_BH_Level)
set udg_BH_Reals[1]=(udg_BH_Damage+(udg_BH_DamagePerLevel*udg_BH_RealLevel))
set udg_BH_Reals[2]=(udg_BH_Duration+(udg_BH_DurationPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[3]=(udg_BH_Radius+(udg_BH_RadiusPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[4]=(udg_BH_SpeedPull+(udg_BH_SpeedPullPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[5]=(udg_BH_FlyHeight+(udg_BH_FlyHeightPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[6]=(udg_BH_UnitSize+(udg_BH_UnitSizePerLevel*udg_BH_RealLevel))
set udg_BH_Reals[10]=(udg_BH_SmallRadDamage+(udg_BH_SmallRadDamagePerLevel*udg_BH_RealLevel))
set udg_BH_Reals[11]=(udg_BH_SmallRadius+(udg_BH_SmallRadiusPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[12]=(udg_BH_ChanceEffect+(udg_BH_ChanceEffectPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[13]=(udg_BH_CenterRadius+(udg_BH_CenterRadiusPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[14]=(udg_BH_CenterDamage+(udg_BH_CenterDamagePerLevel*udg_BH_RealLevel))
set udg_BH_Reals[15]=(udg_BH_CenterChance+(udg_BH_CenterChancePerLevel*udg_BH_RealLevel))
set udg_BH_Reals[16]=(udg_BH_Transparency+(udg_BH_TransparencyPerLevel*udg_BH_RealLevel))
set udg_BH_Reals[7]=udg_BH_ColorRed
set udg_BH_Reals[8]=udg_BH_ColorGreen
set udg_BH_Reals[9]=udg_BH_ColorBlue
set udg_BH_Counter=0.00
set udg_BH_SpellX=GetSpellTargetX()
set udg_BH_SpellY=GetSpellTargetY()
set udg_BH_UnitTracker=CreateUnit(GetTriggerPlayer(),udg_BH_DummyUnit,udg_BH_SpellX,udg_BH_SpellY,0)
set udg_BH_Key=GetHandleId(udg_BH_UnitTracker)
call DestroyEffect(AddSpecialEffect(udg_BH_SpawnEffect,udg_BH_SpellX,udg_BH_SpellY))
call SetUnitScalePercent(udg_BH_UnitTracker,udg_BH_Reals[6],0.00,0.00)
call SetUnitVertexColorBJ(udg_BH_UnitTracker,udg_BH_Reals[7],udg_BH_Reals[8],udg_BH_Reals[9],udg_BH_Reals[16])
call SetUnitFlyHeightBJ(udg_BH_UnitTracker,udg_BH_Reals[5],0.00)
call SaveUnitHandleBJ(udg_BH_Caster,StringHashBJ("caster"),udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[1],1,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[2],2,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[3],3,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[4],4,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[10],5,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[11],6,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[12],7,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[13],8,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[14],9,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[15],10,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Reals[17],11,udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ(udg_BH_Counter,StringHashBJ("counter"),udg_BH_Key,udg_Enigma_Hashtable)
call GroupAddUnitSimple(udg_BH_UnitTracker,udg_BH_Group)
set udg_BH_ActiveInstances=(udg_BH_ActiveInstances+1)
if(Trig_Black_Hole_Execution_Func048C())then
call EnableTrigger(gg_trg_Black_Hole_Loop_Pull)
else
endif
endfunction
function InitTrig_Black_Hole_Execution takes nothing returns nothing
set gg_trg_Black_Hole_Execution=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Black_Hole_Execution,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Black_Hole_Execution,Condition(function Trig_Black_Hole_Execution_Conditions))
call TriggerAddAction(gg_trg_Black_Hole_Execution,function Trig_Black_Hole_Execution_Actions)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)!=true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002001 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_BH_Caster))==true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)!=true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002002002 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002002001(),Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002002002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002001(),Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003001(),Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func003Func002C takes nothing returns boolean
if(not(GetRandomReal(0,100.00)<=udg_BH_Reals[12]))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022Func003A takes nothing returns nothing
set udg_BH_SmallRadiusUnits=GetEnumUnit()
if(Trig_Black_Hole_Loop_Pull_Func001Func022Func003Func002C())then
call UnitDamageTargetBJ(udg_BH_Caster,udg_BH_SmallRadiusUnits,udg_BH_Reals[10],udg_BH_AttackType,udg_BH_DamageType)
call DestroyEffect(AddSpecialEffectTarget(udg_BH_SmallRadiusDamageEffect,udg_BH_SmallRadiusUnits,udg_BH_SmallRadiusAttachment))
else
endif
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func022C takes nothing returns boolean
if(not(udg_BH_SmallRadiusDistance<=udg_BH_Reals[11]))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func001002003 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),Player(0))==true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func003A takes nothing returns nothing
set udg_BH_CenterUnits=GetEnumUnit()
call UnitDamageTargetBJ(udg_BH_Caster,udg_BH_CenterUnits,udg_BH_Reals[14],udg_BH_CenterAttackType,udg_BH_CenterDamageType)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)!=true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002001 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_BH_Caster))==true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)!=true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002002002 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MECHANICAL)!=true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002002001(),Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002002002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002001(),Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002001(),Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003001(),Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func006A takes nothing returns nothing
set udg_BH_CenterUnits=GetEnumUnit()
call UnitDamageTargetBJ(udg_BH_Caster,udg_BH_CenterUnits,udg_BH_Reals[14],udg_BH_CenterAttackType,udg_BH_CenterDamageType)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023Func002C takes nothing returns boolean
if(not(udg_BH_CenterIgnoreUnitTypes==true))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func023C takes nothing returns boolean
if(not(GetRandomReal(0,100.00)<=udg_BH_Reals[15]))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func025002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)!=true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func025002003002001 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_BH_Caster))==true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func025002003002002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)!=true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func025002003002002002 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func025002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func025002003002002001(),Trig_Black_Hole_Loop_Pull_Func001Func025002003002002002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func025002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func025002003002001(),Trig_Black_Hole_Loop_Pull_Func001Func025002003002002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func025002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Black_Hole_Loop_Pull_Func001Func025002003001(),Trig_Black_Hole_Loop_Pull_Func001Func025002003002())
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func027Func014C takes nothing returns boolean
if(not(GetRandomReal(0,100.00)<=udg_BH_Reals[12]))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func027A takes nothing returns nothing
set udg_BH_PickedPullUnits=GetEnumUnit()
call SaveUnitHandleBJ(udg_BH_PickedPullUnits,12,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_PullUnitsX=GetUnitX(udg_BH_PickedPullUnits)
set udg_BH_PullUnitsY=GetUnitY(udg_BH_PickedPullUnits)
set udg_BH_PullUnitsXY=Location(udg_BH_PullUnitsX,udg_BH_PullUnitsY)
set udg_BH_Reals[10]=AngleBetweenPoints(udg_BH_PullUnitsXY,udg_BH_PickedUnitsXY)
set udg_BH_MX=udg_BH_PullUnitsX+udg_BH_Reals[4]*Cos(udg_BH_Reals[10]*0.01747)
set udg_BH_MY=udg_BH_PullUnitsY+udg_BH_Reals[4]*Sin(udg_BH_Reals[10]*0.01747)
call SetUnitX(udg_BH_PickedPullUnits,udg_BH_MX)
call SetUnitY(udg_BH_PickedPullUnits,udg_BH_MY)
if(Trig_Black_Hole_Loop_Pull_Func001Func027Func014C())then
call UnitDamageTargetBJ(udg_BH_Caster,udg_BH_PickedPullUnits,udg_BH_Reals[1],udg_BH_AttackType,udg_BH_DamageType)
call DestroyEffect(AddSpecialEffect(udg_BH_DamageSfx,udg_BH_PullUnitsX,udg_BH_PullUnitsY))
else
endif
call RemoveLocation(udg_BH_PullUnitsXY)
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func031Func005C takes nothing returns boolean
if(not(udg_BH_ActiveInstances==0))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Loop_Pull_Func001Func031C takes nothing returns boolean
if(not(udg_BH_Counter>=udg_BH_Reals[2]))then
return false
endif
return true
endfunction
function Trig_Black_Hole_Loop_Pull_Func001A takes nothing returns nothing
set udg_BH_PickedUnits=GetEnumUnit()
set udg_BH_Key=GetHandleId(udg_BH_PickedUnits)
set udg_BH_X=GetUnitX(udg_BH_PickedUnits)
set udg_BH_Y=GetUnitY(udg_BH_PickedUnits)
set udg_BH_Caster=LoadUnitHandleBJ(StringHashBJ("caster"),udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[1]=LoadRealBJ(1,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[2]=LoadRealBJ(2,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[3]=LoadRealBJ(3,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[4]=LoadRealBJ(4,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[10]=LoadRealBJ(5,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[11]=LoadRealBJ(6,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[12]=LoadRealBJ(7,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[13]=LoadRealBJ(8,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[14]=LoadRealBJ(9,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Reals[15]=LoadRealBJ(10,udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_Counter=LoadRealBJ(StringHashBJ("counter"),udg_BH_Key,udg_Enigma_Hashtable)
call SaveRealBJ((udg_BH_Counter+0.05),StringHashBJ("counter"),udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_SmallRadiusDistance=SquareRoot(udg_BH_X-udg_BH_X*udg_BH_Y-udg_BH_Y+udg_BH_PullUnitsX-udg_BH_PullUnitsX*udg_BH_PullUnitsY-udg_BH_PullUnitsY)
set udg_BH_PickedUnitsXY=Location(udg_BH_X,udg_BH_Y)
if(Trig_Black_Hole_Loop_Pull_Func001Func022C())then
set udg_BH_SmallRadGroup=GetUnitsInRangeOfLocMatching(udg_BH_Reals[11],udg_BH_PickedUnitsXY,Condition(function Trig_Black_Hole_Loop_Pull_Func001Func022Func001002003))
set bj_wantDestroyGroup=true
call ForGroupBJ(udg_BH_SmallRadGroup,function Trig_Black_Hole_Loop_Pull_Func001Func022Func003A)
else
endif
if(Trig_Black_Hole_Loop_Pull_Func001Func023C())then
call DestroyEffect(AddSpecialEffect(udg_BH_CenterSFX,udg_BH_X,udg_BH_Y))
if(Trig_Black_Hole_Loop_Pull_Func001Func023Func002C())then
set udg_BH_CenterIgnoreGroup=GetUnitsInRangeOfLocMatching(udg_BH_Reals[13],udg_BH_PickedUnitsXY,Condition(function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func001002003))
set bj_wantDestroyGroup=true
call ForGroupBJ(udg_BH_CenterIgnoreGroup,function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func003A)
else
set udg_BH_CenterGroup=GetUnitsInRangeOfLocMatching(udg_BH_Reals[13],udg_BH_PickedUnitsXY,Condition(function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func004002003))
set bj_wantDestroyGroup=true
call ForGroupBJ(udg_BH_CenterGroup,function Trig_Black_Hole_Loop_Pull_Func001Func023Func002Func006A)
endif
else
endif
set udg_BH_PullGroup=GetUnitsInRangeOfLocMatching(udg_BH_Reals[3],udg_BH_PickedUnitsXY,Condition(function Trig_Black_Hole_Loop_Pull_Func001Func025002003))
set bj_wantDestroyGroup=true
call ForGroupBJ(udg_BH_PullGroup,function Trig_Black_Hole_Loop_Pull_Func001Func027A)
call RemoveLocation(udg_BH_PickedUnitsXY)
if(Trig_Black_Hole_Loop_Pull_Func001Func031C())then
call KillUnit(udg_BH_PickedUnits)
call GroupRemoveUnitSimple(udg_BH_PickedUnits,udg_BH_Group)
call FlushChildHashtableBJ(udg_BH_Key,udg_Enigma_Hashtable)
set udg_BH_ActiveInstances=(udg_BH_ActiveInstances-1)
if(Trig_Black_Hole_Loop_Pull_Func001Func031Func005C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
else
endif
endfunction
function Trig_Black_Hole_Loop_Pull_Actions takes nothing returns nothing
call ForGroupBJ(udg_BH_Group,function Trig_Black_Hole_Loop_Pull_Func001A)
endfunction
function InitTrig_Black_Hole_Loop_Pull takes nothing returns nothing
set gg_trg_Black_Hole_Loop_Pull=CreateTrigger()
call DisableTrigger(gg_trg_Black_Hole_Loop_Pull)
call TriggerRegisterTimerEventPeriodic(gg_trg_Black_Hole_Loop_Pull,0.05)
call TriggerAddAction(gg_trg_Black_Hole_Loop_Pull,function Trig_Black_Hole_Loop_Pull_Actions)
endfunction
function Trig_Bonebreaker_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303145))then
return false
endif
return true
endfunction
function Trig_Bonebreaker_Actions takes nothing returns nothing
call PlaySoundOnUnitBJ(gg_snd_ForcePush,100,GetSpellAbilityUnit())
call TriggerExecute(gg_trg_Knockback_Index)
set udg_KB_Unit[udg_kb]=GetSpellTargetUnit()
set udg_point=GetUnitLoc(GetTriggerUnit())
set udg_point2=GetUnitLoc(udg_KB_Unit[udg_kb])
call AddSpecialEffectLocBJ(udg_point2,"Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set udg_KB_Angle[udg_kb]=AngleBetweenPoints(udg_point,udg_point2)
set udg_KB_MaxDist[udg_kb]=650.00
set udg_KB_Speed[udg_kb]=50.00
set udg_KB_Dist[udg_kb]=0.00
call EnableTrigger(gg_trg_Knockback_Move)
call RemoveLocation(udg_point)
call RemoveLocation(udg_point2)
endfunction
function InitTrig_Bonebreaker takes nothing returns nothing
set gg_trg_Bonebreaker=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Bonebreaker,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Bonebreaker,Condition(function Trig_Bonebreaker_Conditions))
call TriggerAddAction(gg_trg_Bonebreaker,function Trig_Bonebreaker_Actions)
endfunction
function Trig_Knockback_Index_Actions takes nothing returns nothing
set udg_KB_Max=(udg_KB_Max+1)
set udg_kb=udg_KB_Max
endfunction
function InitTrig_Knockback_Index takes nothing returns nothing
set gg_trg_Knockback_Index=CreateTrigger()
call TriggerAddAction(gg_trg_Knockback_Index,function Trig_Knockback_Index_Actions)
endfunction
function Trig_Knockback_Move_Func002Func003Func001C takes nothing returns boolean
if((IsTerrainPathableBJ(udg_point2,PATHING_TYPE_WALKABILITY)==true))then
return true
endif
if((udg_KB_Dist[udg_kb]>=udg_KB_MaxDist[udg_kb]))then
return true
endif
return false
endfunction
function Trig_Knockback_Move_Func002Func003Func002C takes nothing returns boolean
if(not(udg_KB_Max==1))then
return false
endif
return true
endfunction
function Trig_Knockback_Move_Func002Func003C takes nothing returns boolean
if(not Trig_Knockback_Move_Func002Func003Func001C())then
return false
endif
return true
endfunction
function Trig_Knockback_Move_Actions takes nothing returns nothing
set udg_kb=1
loop
exitwhen udg_kb>udg_KB_Max
set udg_point=GetUnitLoc(udg_KB_Unit[udg_kb])
set udg_point2=PolarProjectionBJ(udg_point,udg_KB_Speed[udg_kb],udg_KB_Angle[udg_kb])
if(Trig_Knockback_Move_Func002Func003C())then
if(Trig_Knockback_Move_Func002Func003Func002C())then
call DisableTrigger(GetTriggeringTrigger())
else
set udg_KB_Angle[udg_kb]=udg_KB_Angle[udg_KB_Max]
set udg_KB_Dist[udg_kb]=udg_KB_Dist[udg_KB_Max]
set udg_KB_MaxDist[udg_kb]=udg_KB_MaxDist[udg_KB_Max]
set udg_KB_Speed[udg_kb]=udg_KB_Speed[udg_KB_Max]
set udg_KB_Unit[udg_kb]=udg_KB_Unit[udg_KB_Max]
set udg_kb=(udg_kb-1)
endif
set udg_KB_Max=(udg_KB_Max-1)
else
call SetUnitPositionLoc(udg_KB_Unit[udg_kb],udg_point2)
call AddSpecialEffectLocBJ(udg_point2,"Abilities\\Spells\\Human\\FlakCannons\\FlakTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set udg_KB_Dist[udg_kb]=(udg_KB_Dist[udg_kb]+udg_KB_Speed[udg_kb])
endif
call RemoveLocation(udg_point)
call RemoveLocation(udg_point2)
set udg_kb=udg_kb+1
endloop
endfunction
function InitTrig_Knockback_Move takes nothing returns nothing
set gg_trg_Knockback_Move=CreateTrigger()
call DisableTrigger(gg_trg_Knockback_Move)
call TriggerRegisterTimerEventPeriodic(gg_trg_Knockback_Move,0.02)
call TriggerAddAction(gg_trg_Knockback_Move,function Trig_Knockback_Move_Actions)
endfunction
function Trig_Initial_Telekinesis_GUI_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303146))then
return false
endif
return true
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false)
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003002002001001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003002002001002 takes nothing returns boolean
return(IsUnitInGroup(GetFilterUnit(),udg_TK_FlyingUnits)==false)
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003002002001 takes nothing returns boolean
return GetBooleanAnd(Trig_Initial_Telekinesis_GUI_Func040002003002002001001(),Trig_Initial_Telekinesis_GUI_Func040002003002002001002())
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003002002002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit()))==true)
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Initial_Telekinesis_GUI_Func040002003002002001(),Trig_Initial_Telekinesis_GUI_Func040002003002002002())
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Initial_Telekinesis_GUI_Func040002003002001(),Trig_Initial_Telekinesis_GUI_Func040002003002002())
endfunction
function Trig_Initial_Telekinesis_GUI_Func040002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Initial_Telekinesis_GUI_Func040002003001(),Trig_Initial_Telekinesis_GUI_Func040002003002())
endfunction
function Trig_Initial_Telekinesis_GUI_Func041Func001C takes nothing returns boolean
if(not(udg_TK_Integers[1]==0))then
return false
endif
return true
endfunction
function Trig_Initial_Telekinesis_GUI_Func041Func015C takes nothing returns boolean
if(not(udg_TK_Pause==true))then
return false
endif
return true
endfunction
function Trig_Initial_Telekinesis_GUI_Func041A takes nothing returns nothing
if(Trig_Initial_Telekinesis_GUI_Func041Func001C())then
call EnableTrigger(gg_trg_Telekinesis_GUI)
else
endif
set udg_TK_Integers[1]=(udg_TK_Integers[1]+1)
set udg_TK_Integers[2]=(udg_TK_Integers[2]+1)
set udg_TK_Unit[udg_TK_Integers[2]]=GetEnumUnit()
set udg_TK_Hero[udg_TK_Integers[2]]=GetTriggerUnit()
set udg_TK_Level[udg_TK_Integers[2]]=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),GetTriggerUnit())
set udg_TK_Interval[udg_TK_Integers[2]]=0.00
set udg_TK_LsfxT[udg_TK_Integers[2]]=0.00
call AddSpecialEffectTargetUnitBJ("hand, left",GetTriggerUnit(),"Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl")
set udg_TK_MaxHeight[udg_TK_Integers[2]]=GetRandomReal((udg_TK_MinHeightStart+(udg_TK_MinHeightIncreasement*(I2R(udg_TK_Level[udg_TK_Integers[2]])-1))),(udg_TK_MaxHeightStart+(udg_TK_MaxHeightIncreasement*(I2R(udg_TK_Level[udg_TK_Integers[2]])-1))))
set udg_TK_FSpeed[udg_TK_Integers[2]]=(1.80/GetRandomReal((udg_TK_Speed*(1+udg_TK_SpeedVariationPerc)),(udg_TK_Speed*(1.00-udg_TK_SpeedVariationPerc))))
call GroupAddUnitSimple(udg_TK_Unit[udg_TK_Integers[2]],udg_TK_FlyingUnits)
call UnitAddAbilityBJ(0x41726176,udg_TK_Unit[udg_TK_Integers[2]])
call UnitRemoveAbilityBJ(0x41726176,udg_TK_Unit[udg_TK_Integers[2]])
if(Trig_Initial_Telekinesis_GUI_Func041Func015C())then
call PauseUnitBJ(true,udg_TK_Unit[udg_TK_Integers[2]])
else
endif
set udg_TK_TempPoint[2]=GetUnitLoc(udg_TK_Unit[udg_TK_Integers[2]])
call AddSpecialEffectLocBJ(udg_TK_TempPoint[2],udg_TK_StartSFX)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call RemoveLocation(udg_TK_TempPoint[2])
endfunction
function Trig_Initial_Telekinesis_GUI_Actions takes nothing returns nothing
set udg_TK_SpellAoEStart=250.00
set udg_TK_SpellAoEIncreasement=50.00
set udg_TK_MinHeightStart=500.00
set udg_TK_MinHeightIncreasement=0.00
set udg_TK_MaxHeightStart=0.00
set udg_TK_MaxHeightIncreasement=0.00
set udg_TK_Speed=1.40
set udg_TK_SpeedVariationPerc=0.20
set udg_TK_LiftSFX="Abilities\\Spells\\Undead\\OrbOfDeath\\OrbOfDeathMissile.mdl"
set udg_TK_LiftSFXTimer=0.30
set udg_TK_ImpactSFX="Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl"
set udg_TK_HDmgInPercStart=0.10
set udg_TK_HDmgInPercIncreasement=0.10
set udg_TK_ImpactDmgStart=1200.00
set udg_TK_ImpactDmgIncreasement=1200.00
set udg_TK_AttackType=ATTACK_TYPE_MELEE
set udg_TK_DamageType=DAMAGE_TYPE_NORMAL
set udg_TK_Pause=true
set udg_TK_TempPoint[1]=GetSpellTargetLoc()
set udg_TK_UnitGroup=GetUnitsInRangeOfLocMatching((udg_TK_SpellAoEStart+(udg_TK_SpellAoEIncreasement*(I2R(GetUnitAbilityLevelSwapped(GetSpellAbilityId(),GetTriggerUnit()))-1))),udg_TK_TempPoint[1],Condition(function Trig_Initial_Telekinesis_GUI_Func040002003))
call ForGroupBJ(udg_TK_UnitGroup,function Trig_Initial_Telekinesis_GUI_Func041A)
call RemoveLocation(udg_TK_TempPoint[1])
call DestroyGroup(udg_TK_UnitGroup)
endfunction
function InitTrig_Initial_Telekinesis_GUI takes nothing returns nothing
set gg_trg_Initial_Telekinesis_GUI=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Initial_Telekinesis_GUI,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Initial_Telekinesis_GUI,Condition(function Trig_Initial_Telekinesis_GUI_Conditions))
call TriggerAddAction(gg_trg_Initial_Telekinesis_GUI,function Trig_Initial_Telekinesis_GUI_Actions)
endfunction
function Trig_Telekinesis_GUI_Func001Func001Func001Func003C takes nothing returns boolean
if(not(udg_TK_Pause==true))then
return false
endif
return true
endfunction
function Trig_Telekinesis_GUI_Func001Func001Func001Func011C takes nothing returns boolean
if(not(udg_TK_Integers[1]==0))then
return false
endif
return true
endfunction
function Trig_Telekinesis_GUI_Func001Func001Func001Func015C takes nothing returns boolean
if(not(udg_TK_LsfxT[udg_TK_Integers[3]]>=udg_TK_LiftSFXTimer))then
return false
endif
return true
endfunction
function Trig_Telekinesis_GUI_Func001Func001Func001C takes nothing returns boolean
if(not(udg_TK_Interval[udg_TK_Integers[3]]<180.00))then
return false
endif
return true
endfunction
function Trig_Telekinesis_GUI_Func001Func001C takes nothing returns boolean
if(not(udg_TK_Unit[udg_TK_Integers[3]]!=null))then
return false
endif
return true
endfunction
function Trig_Telekinesis_GUI_Actions takes nothing returns nothing
set udg_TK_Integers[3]=1
loop
exitwhen udg_TK_Integers[3]>udg_TK_Integers[2]
if(Trig_Telekinesis_GUI_Func001Func001C())then
if(Trig_Telekinesis_GUI_Func001Func001Func001C())then
set udg_TK_Interval[udg_TK_Integers[3]]=(udg_TK_Interval[udg_TK_Integers[3]]+udg_TK_FSpeed[udg_TK_Integers[3]])
set udg_TK_LsfxT[udg_TK_Integers[3]]=(udg_TK_LsfxT[udg_TK_Integers[3]]+0.01)
call SetUnitFlyHeightBJ(udg_TK_Unit[udg_TK_Integers[3]],((SinBJ(udg_TK_Interval[udg_TK_Integers[3]])*udg_TK_MaxHeight[udg_TK_Integers[3]])+GetUnitDefaultFlyHeight(udg_TK_Unit[udg_TK_Integers[3]])),0.00)
if(Trig_Telekinesis_GUI_Func001Func001Func001Func015C())then
call AddSpecialEffectTargetUnitBJ("chest",udg_TK_Unit[udg_TK_Integers[3]],udg_TK_LiftSFX)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set udg_TK_LsfxT[udg_TK_Integers[3]]=0.00
else
endif
else
set udg_TK_TempPoint[1]=GetUnitLoc(udg_TK_Unit[udg_TK_Integers[3]])
call GroupRemoveUnitSimple(udg_TK_Unit[udg_TK_Integers[3]],udg_TK_FlyingUnits)
if(Trig_Telekinesis_GUI_Func001Func001Func001Func003C())then
call PauseUnitBJ(false,udg_TK_Unit[udg_TK_Integers[3]])
else
endif
call AddSpecialEffectLocBJ(udg_TK_TempPoint[1],udg_TK_ImpactSFX)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call SetUnitFlyHeightBJ(udg_TK_Unit[udg_TK_Integers[3]],GetUnitDefaultFlyHeight(udg_TK_Unit[udg_TK_Integers[3]]),0.00)
call UnitDamageTargetBJ(udg_TK_Hero[udg_TK_Integers[3]],udg_TK_Unit[udg_TK_Integers[3]],((udg_TK_HDmgInPercStart+(udg_TK_HDmgInPercIncreasement*(I2R(udg_TK_Level[udg_TK_Integers[3]])-1)))+(udg_TK_ImpactDmgStart+(udg_TK_ImpactDmgIncreasement*(I2R(udg_TK_Level[udg_TK_Integers[3]])-1)))),udg_TK_AttackType,udg_TK_DamageType)
call RemoveLocation(udg_TK_TempPoint[1])
set udg_TK_Unit[udg_TK_Integers[3]]=null
set udg_TK_Integers[1]=(udg_TK_Integers[1]-1)
if(Trig_Telekinesis_GUI_Func001Func001Func001Func011C())then
set udg_TK_Integers[2]=0
call DisableTrigger(GetTriggeringTrigger())
else
endif
endif
else
endif
set udg_TK_Integers[3]=udg_TK_Integers[3]+1
endloop
endfunction
function InitTrig_Telekinesis_GUI takes nothing returns nothing
set gg_trg_Telekinesis_GUI=CreateTrigger()
call DisableTrigger(gg_trg_Telekinesis_GUI)
call TriggerRegisterTimerEventPeriodic(gg_trg_Telekinesis_GUI,0.01)
call TriggerAddAction(gg_trg_Telekinesis_GUI,function Trig_Telekinesis_GUI_Actions)
endfunction
function Trig_Shadowstep_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303239))then
return false
endif
return true
endfunction
function Trig_Shadowstep_Actions takes nothing returns nothing
set udg_Shadowstep_Caster=GetTriggerUnit()
set udg_Shadowstep_Target=GetSpellTargetUnit()
set udg_Shadowstep_Ability_Level=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_Shadowstep_Caster)
set udg_Shadowstep_Location=PolarProjectionBJ(GetUnitLoc(udg_Shadowstep_Target),125.00,GetUnitFacing(udg_Shadowstep_Caster))
set udg_Shadowstep_Location_2=GetUnitLoc(udg_Shadowstep_Caster)
set udg_Shadowstep_Loop_Number=20
set udg_Shadowstep_Base_Damage=GetUnitMoveSpeed(udg_Shadowstep_Caster)
set udg_Shadowstep_Damage_Multiplier=0.40
set udg_Shadowstep_Total_Damage=(udg_Shadowstep_Base_Damage*(udg_Shadowstep_Damage_Multiplier*I2R(udg_Shadowstep_Ability_Level)))
set udg_Shadowstep_Calculation=(DistanceBetweenPoints(udg_Shadowstep_Location,udg_Shadowstep_Location_2)/I2R(udg_Shadowstep_Loop_Number))
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=udg_Shadowstep_Loop_Number
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
set udg_Shadowstep_Loop_Location=PolarProjectionBJ(udg_Shadowstep_Location_2,(udg_Shadowstep_Calculation*I2R(GetForLoopIndexA())),GetUnitFacing(udg_Shadowstep_Caster))
call CreateNUnitsAtLoc(1,0x68303033,GetOwningPlayer(udg_Shadowstep_Caster),udg_Shadowstep_Loop_Location,bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(2.50,0x42544C46,GetLastCreatedUnit())
call RemoveLocation(udg_Shadowstep_Loop_Location)
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
call PauseUnitBJ(true,udg_Shadowstep_Caster)
call SetUnitPositionLocFacingBJ(udg_Shadowstep_Caster,udg_Shadowstep_Location,GetUnitFacing(udg_Shadowstep_Target))
call PauseUnitBJ(false,udg_Shadowstep_Caster)
call UnitDamageTargetBJ(udg_Shadowstep_Caster,udg_Shadowstep_Target,udg_Shadowstep_Total_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
call AddSpecialEffectTargetUnitBJ("origin",udg_Shadowstep_Target,"Abilities\\Spells\\Human\\Invisibility\\InvisibilityTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call RemoveLocation(udg_Shadowstep_Location)
call RemoveLocation(udg_Shadowstep_Location_2)
endfunction
function InitTrig_Shadowstep takes nothing returns nothing
set gg_trg_Shadowstep=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Shadowstep,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Shadowstep,Condition(function Trig_Shadowstep_Conditions))
call TriggerAddAction(gg_trg_Shadowstep,function Trig_Shadowstep_Actions)
endfunction
function Trig_VO_Start_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303246))then
return false
endif
return true
endfunction
function Trig_VO_Start_Func004C takes nothing returns boolean
if(not(udg_VO_index[1]==0))then
return false
endif
return true
endfunction
function Trig_VO_Start_Func026C takes nothing returns boolean
if(not(UnitHasBuffBJ(udg_VO_Victom[udg_VO_index[2]],0x42303030)==true))then
return false
endif
return true
endfunction
function Trig_VO_Start_Actions takes nothing returns nothing
if(Trig_VO_Start_Func004C())then
call EnableTrigger(gg_trg_VO_Loop)
else
endif
set udg_VO_index[1]=(udg_VO_index[1]+1)
set udg_VO_index[2]=(udg_VO_index[2]+1)
set udg_VO_Victom[udg_VO_index[2]]=GetSpellTargetUnit()
set udg_VO_Caster[udg_VO_index[2]]=GetTriggerUnit()
set udg_VO_Damage[udg_VO_index[2]]=300.00
set udg_VO_Duration[udg_VO_index[2]]=2.00
set udg_VO_Boolean[udg_VO_index[2]]=true
set udg_VO_Speed[udg_VO_index[2]]=10.00
set udg_VO_Point[1]=GetUnitLoc(GetTriggerUnit())
set udg_VO_Point[2]=GetUnitLoc(GetSpellTargetUnit())
set udg_VO_Angle[udg_VO_index[2]]=AngleBetweenPoints(udg_VO_Point[1],udg_VO_Point[2])
call RemoveLocation(udg_VO_Point[1])
call RemoveLocation(udg_VO_Point[2])
if(Trig_VO_Start_Func026C())then
set udg_VO_Point[3]=GetUnitLoc(udg_VO_Victom[udg_VO_index[2]])
call UnitDamageTargetBJ(udg_VO_Caster[udg_VO_index[2]],udg_VO_Victom[udg_VO_index[2]],udg_VO_Damage[udg_VO_index[2]],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_LIGHTNING)
call CreateNUnitsAtLoc(1,0x65303032,GetOwningPlayer(udg_VO_Caster[udg_VO_index[2]]),udg_VO_Point[udg_VO_index[2]],bj_UNIT_FACING)
call KillUnit(GetLastCreatedUnit())
call RemoveLocation(udg_VO_Point[3])
else
endif
endfunction
function InitTrig_VO_Start takes nothing returns nothing
set gg_trg_VO_Start=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_VO_Start,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_VO_Start,Condition(function Trig_VO_Start_Conditions))
call TriggerAddAction(gg_trg_VO_Start,function Trig_VO_Start_Actions)
endfunction
function Trig_VO_Loop_Func001Func002Func002Func016C takes nothing returns boolean
if(not(udg_VO_index[1]==0))then
return false
endif
return true
endfunction
function Trig_VO_Loop_Func001Func002Func002Func022C takes nothing returns boolean
if(not(IsUnitAliveBJ(udg_VO_Victom[udg_VO_index[3]])==true))then
return false
endif
return true
endfunction
function Trig_VO_Loop_Func001Func002Func002C takes nothing returns boolean
if(not(udg_VO_Duration[udg_VO_index[3]]>=0.00))then
return false
endif
return true
endfunction
function Trig_VO_Loop_Func001Func002C takes nothing returns boolean
if(not(udg_VO_Boolean[udg_VO_index[3]]==true))then
return false
endif
return true
endfunction
function Trig_VO_Loop_Actions takes nothing returns nothing
set udg_VO_index[3]=1
loop
exitwhen udg_VO_index[3]>udg_VO_index[2]
if(Trig_VO_Loop_Func001Func002C())then
if(Trig_VO_Loop_Func001Func002Func002C())then
set udg_VO_Duration[udg_VO_index[3]]=(udg_VO_Duration[udg_VO_index[3]]-0.03)
if(Trig_VO_Loop_Func001Func002Func002Func022C())then
set udg_VO_Point[4]=GetUnitLoc(udg_VO_Victom[udg_VO_index[3]])
set udg_VO_Point[5]=PolarProjectionBJ(udg_VO_Point[4],udg_VO_Speed[udg_VO_index[3]],udg_VO_Angle[udg_VO_index[3]])
call SetUnitPositionLoc(udg_VO_Victom[udg_VO_index[3]],udg_VO_Point[5])
call AddSpecialEffectLocBJ(udg_VO_Point[5],"Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectLocBJ(udg_VO_Point[5],"Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectTargetUnitBJ("origin",udg_VO_Victom[udg_VO_index[3]],"Abilities\\Spells\\Human\\ManaFlare\\ManaFlareBoltImpact.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call RemoveLocation(udg_VO_Point[4])
call RemoveLocation(udg_VO_Point[5])
else
endif
else
set udg_VO_index[1]=(udg_VO_index[1]-1)
set udg_VO_Boolean[udg_VO_index[3]]=false
call AddSpecialEffectTargetUnitBJ("origin",udg_VO_Victom[udg_VO_index[3]],"Abilities\\Spells\\Orc\\LightningShield\\LightningShieldTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
if(Trig_VO_Loop_Func001Func002Func002Func016C())then
set udg_VO_index[2]=0
call DisableTrigger(GetTriggeringTrigger())
else
endif
endif
else
endif
set udg_VO_index[3]=udg_VO_index[3]+1
endloop
endfunction
function InitTrig_VO_Loop takes nothing returns nothing
set gg_trg_VO_Loop=CreateTrigger()
call DisableTrigger(gg_trg_VO_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_VO_Loop,0.03)
call TriggerAddAction(gg_trg_VO_Loop,function Trig_VO_Loop_Actions)
endfunction
function Trig_Fire_Ball_Setings_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303238))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Setings_Func003C takes nothing returns boolean
if(not(udg_FB_Skip==0))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Setings_Actions takes nothing returns nothing
if(Trig_Fire_Ball_Setings_Func003C())then
call EnableTrigger(gg_trg_Fire_Ball_Loop)
else
endif
set udg_FB_Skip=(udg_FB_Skip+1)
set udg_FB_Times=(udg_FB_Times+1)
set udg_FB_Off[udg_FB_Times]=true
set udg_FB_Big[udg_FB_Times]=true
set udg_FB_Hero[udg_FB_Times]=GetSpellAbilityUnit()
set udg_FB_Point[0]=GetUnitLoc(GetSpellAbilityUnit())
set udg_FB_Point[1]=GetSpellTargetLoc()
set udg_FB_Angle[udg_FB_Times]=AngleBetweenPoints(udg_FB_Point[0],udg_FB_Point[1])
set udg_FB_Distance[udg_FB_Times]=850.00
set udg_FB_Speed[udg_FB_Times]=15.00
set udg_FB_Damage[udg_FB_Times]=(60.00+(60.00*I2R(GetUnitAbilityLevelSwapped(0x41303238,GetSpellAbilityUnit()))))
set udg_FB_AoE[udg_FB_Times]=250.00
set udg_FB_Colision[udg_FB_Times]=(50.00+(20.00*I2R(GetUnitAbilityLevelSwapped(0x41303238,GetSpellAbilityUnit()))))
set udg_FB_Fragments[udg_FB_Times]=(2+(1*GetUnitAbilityLevelSwapped(0x41303238,GetSpellAbilityUnit())))
set udg_FB_Scale=(90.00+(10.00*I2R(GetUnitAbilityLevelSwapped(0x41303238,GetSpellAbilityUnit()))))
call CreateNUnitsAtLoc(1,0x6E303036,GetOwningPlayer(udg_FB_Hero[udg_FB_Times]),udg_FB_Point[0],udg_FB_Angle[udg_FB_Times])
set udg_FB_Missile[udg_FB_Times]=GetLastCreatedUnit()
call SetUnitFlyHeightBJ(udg_FB_Missile[udg_FB_Times],30.00,0.00)
call SetUnitScalePercent(udg_FB_Missile[udg_FB_Times],udg_FB_Scale,udg_FB_Scale,udg_FB_Scale)
call AddSpecialEffectTargetUnitBJ("chest",udg_FB_Missile[udg_FB_Times],"Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl")
set udg_FB_Effect1[udg_FB_Times]=GetLastCreatedEffectBJ()
call AddSpecialEffectTargetUnitBJ("chest",udg_FB_Missile[udg_FB_Times],"Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl")
set udg_FB_Effect2[udg_FB_Times]=GetLastCreatedEffectBJ()
call RemoveLocation(udg_FB_Point[0])
call RemoveLocation(udg_FB_Point[1])
endfunction
function InitTrig_Fire_Ball_Setings takes nothing returns nothing
set gg_trg_Fire_Ball_Setings=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Fire_Ball_Setings,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Fire_Ball_Setings,Condition(function Trig_Fire_Ball_Setings_Conditions))
call TriggerAddAction(gg_trg_Fire_Ball_Setings,function Trig_Fire_Ball_Setings_Actions)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func007Func001Func008C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_FB_Missile[udg_FB])==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func007Func001C takes nothing returns boolean
if(not(IsDestructableAliveBJ(GetEnumDestructable())==true))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func007A takes nothing returns nothing
if(Trig_Fire_Ball_Loop_Func005Func001Func011Func007Func001C())then
call IssueTargetDestructableOrder(udg_FB_Missile[udg_FB],"harvest",GetEnumDestructable())
if(Trig_Fire_Ball_Loop_Func005Func001Func011Func007Func001Func008C())then
set udg_FB_Distance[udg_FB]=0.00
else
endif
else
endif
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003001001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003001002 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003001 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003001001(),Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003001002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002001001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_FLYING)==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002001002 takes nothing returns boolean
return(IsUnitDeadBJ(GetFilterUnit())==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002001 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002001001(),Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002001002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002002 takes nothing returns boolean
return(IsUnitAlly(GetFilterUnit(),GetOwningPlayer(udg_FB_Hero[udg_FB]))==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002001(),Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003001(),Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011Func012C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_FB_Group[udg_FB])>0))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func011C takes nothing returns boolean
if(not(udg_FB_Big[udg_FB]==true))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func006Func013Func001Func002C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_FB_Missile[udg_FB])==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func006Func013Func001C takes nothing returns boolean
if(not(IsDestructableAliveBJ(GetEnumDestructable())==true))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func006Func013A takes nothing returns nothing
if(Trig_Fire_Ball_Loop_Func005Func001Func012Func006Func013Func001C())then
call IssueTargetDestructableOrder(udg_FB_Missile[udg_FB],"harvest",GetEnumDestructable())
if(Trig_Fire_Ball_Loop_Func005Func001Func012Func006Func013Func001Func002C())then
call KillDestructable(GetEnumDestructable())
else
endif
else
endif
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func006C takes nothing returns boolean
if(not(udg_FB_Big[udg_FB]==false))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003001001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003001002 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003001 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003001001(),Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003001002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002001001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_FLYING)==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002001002 takes nothing returns boolean
return(IsUnitDeadBJ(GetFilterUnit())==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002001 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002001001(),Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002001002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002002 takes nothing returns boolean
return(IsUnitAlly(GetFilterUnit(),GetOwningPlayer(udg_FB_Hero[udg_FB]))==false)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002001(),Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003001(),Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003002())
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func011A takes nothing returns nothing
call UnitDamageTargetBJ(udg_FB_Hero[udg_FB],GetEnumUnit(),udg_FB_Damage[udg_FB],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_FIRE)
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012Func025C takes nothing returns boolean
if(not(udg_FB_Skip==0))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001Func012C takes nothing returns boolean
if(not(udg_FB_Distance[udg_FB]<=0.00))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Func005Func001C takes nothing returns boolean
if(not(udg_FB_Off[udg_FB]==true))then
return false
endif
return true
endfunction
function Trig_Fire_Ball_Loop_Actions takes nothing returns nothing
set udg_FB=1
loop
exitwhen udg_FB>udg_FB_Times
if(Trig_Fire_Ball_Loop_Func005Func001C())then
set udg_FB_Point[2]=GetUnitLoc(udg_FB_Missile[udg_FB])
set udg_FB_Point[3]=PolarProjectionBJ(udg_FB_Point[2],udg_FB_Speed[udg_FB],udg_FB_Angle[udg_FB])
call SetUnitPositionLoc(udg_FB_Missile[udg_FB],udg_FB_Point[3])
set udg_FB_Distance[udg_FB]=(udg_FB_Distance[udg_FB]-udg_FB_Speed[udg_FB])
if(Trig_Fire_Ball_Loop_Func005Func001Func011C())then
call EnumDestructablesInCircleBJ(udg_FB_Colision[udg_FB],udg_FB_Point[3],function Trig_Fire_Ball_Loop_Func005Func001Func011Func007A)
set udg_FB_Group[udg_FB]=GetUnitsInRangeOfLocMatching(udg_FB_Colision[udg_FB],udg_FB_Point[3],Condition(function Trig_Fire_Ball_Loop_Func005Func001Func011Func011002003))
if(Trig_Fire_Ball_Loop_Func005Func001Func011Func012C())then
set udg_FB_Distance[udg_FB]=0.00
else
endif
call DestroyGroup(udg_FB_Group[udg_FB])
else
set udg_FB_Parabola[udg_FB]=(((4.00*udg_FB_Height[udg_FB])/udg_FB_MaxDistance[udg_FB])*((udg_FB_MaxDistance[udg_FB]-udg_FB_Distance[udg_FB])*(udg_FB_Distance[udg_FB]/udg_FB_MaxDistance[udg_FB])))
call SetUnitFlyHeightBJ(udg_FB_Missile[udg_FB],udg_FB_Parabola[udg_FB],0.00)
endif
if(Trig_Fire_Ball_Loop_Func005Func001Func012C())then
call DestroyEffectBJ(udg_FB_Effect1[udg_FB])
if(Trig_Fire_Ball_Loop_Func005Func001Func012Func006C())then
call AddSpecialEffectLocBJ(udg_FB_Point[3],"Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
call DestroyEffectBJ(udg_FB_Effect2[udg_FB])
call AddSpecialEffectLocBJ(udg_FB_Point[3],"Objects\\Spawnmodels\\Other\\NeutralBuildingExplosion\\NeutralBuildingExplosion.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call EnumDestructablesInCircleBJ(udg_FB_AoE[udg_FB],udg_FB_Point[3],function Trig_Fire_Ball_Loop_Func005Func001Func012Func006Func013A)
set udg_FB_Point[4]=GetUnitLoc(udg_FB_Missile[udg_FB])
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=udg_FB_Fragments[udg_FB]
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
set udg_FB_Skip=(udg_FB_Skip+1)
set udg_FB_Times=(udg_FB_Times+1)
set udg_FB_Off[udg_FB_Times]=true
set udg_FB_Big[udg_FB_Times]=false
set udg_FB_Hero[udg_FB_Times]=udg_FB_Hero[udg_FB]
set udg_FB_Angle[udg_FB_Times]=(udg_FB_Angle[udg_FB]+GetRandomReal(-60.00,60.00))
set udg_FB_Distance[udg_FB_Times]=GetRandomReal(200.00,400.00)
set udg_FB_MaxDistance[udg_FB_Times]=udg_FB_Distance[udg_FB_Times]
set udg_FB_Speed[udg_FB_Times]=(udg_FB_MaxDistance[udg_FB_Times]*0.02)
set udg_FB_Height[udg_FB_Times]=GetRandomReal(100.00,200.00)
set udg_FB_Damage[udg_FB_Times]=(udg_FB_Damage[udg_FB]/4.00)
set udg_FB_AoE[udg_FB_Times]=150.00
set udg_FB_Scale=50.00
call CreateNUnitsAtLoc(1,0x6E303036,GetOwningPlayer(udg_FB_Hero[udg_FB_Times]),udg_FB_Point[4],udg_FB_Angle[udg_FB_Times])
set udg_FB_Missile[udg_FB_Times]=GetLastCreatedUnit()
call SetUnitScalePercent(udg_FB_Missile[udg_FB_Times],udg_FB_Scale,udg_FB_Scale,udg_FB_Scale)
call AddSpecialEffectTargetUnitBJ("chest",udg_FB_Missile[udg_FB_Times],"Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl")
set udg_FB_Effect1[udg_FB_Times]=GetLastCreatedEffectBJ()
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
call RemoveLocation(udg_FB_Point[4])
endif
set udg_FB_Group[udg_FB]=GetUnitsInRangeOfLocMatching(udg_FB_AoE[udg_FB],udg_FB_Point[3],Condition(function Trig_Fire_Ball_Loop_Func005Func001Func012Func010002003))
call ForGroupBJ(udg_FB_Group[udg_FB],function Trig_Fire_Ball_Loop_Func005Func001Func012Func011A)
call DestroyGroup(udg_FB_Group[udg_FB])
call KillUnit(udg_FB_Missile[udg_FB])
set udg_FB_Skip=(udg_FB_Skip-1)
set udg_FB_Off[udg_FB]=false
if(Trig_Fire_Ball_Loop_Func005Func001Func012Func025C())then
set udg_FB_Times=0
call DisableTrigger(GetTriggeringTrigger())
else
endif
else
endif
call RemoveLocation(udg_FB_Point[2])
call RemoveLocation(udg_FB_Point[3])
else
endif
set udg_FB=udg_FB+1
endloop
endfunction
function InitTrig_Fire_Ball_Loop takes nothing returns nothing
set gg_trg_Fire_Ball_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Fire_Ball_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Fire_Ball_Loop,0.02)
call TriggerAddAction(gg_trg_Fire_Ball_Loop,function Trig_Fire_Ball_Loop_Actions)
endfunction
function Trig_Psychic_Rape_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303241))then
return false
endif
return true
endfunction
function Trig_Psychic_Rape_Func020C takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_MANA,udg_PR_Target)<=udg_PR_Damage))then
return false
endif
return true
endfunction
function Trig_Psychic_Rape_Func034C takes nothing returns boolean
if(not(GetUnitStateSwap(UNIT_STATE_MANA,udg_PR_Target)==0.00))then
return false
endif
return true
endfunction
function Trig_Psychic_Rape_Actions takes nothing returns nothing
set udg_PR_Caster=GetTriggerUnit()
set udg_PR_Target=GetSpellTargetUnit()
set udg_PR_Caster_Loc=GetUnitLoc(udg_PR_Caster)
set udg_PR_Target_Loc=GetUnitLoc(udg_PR_Target)
set udg_PR_Ability_Level=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_PR_Caster)
set udg_PR_Damage_Factor=0.00
set udg_PR_Atribute=GetHeroStatBJ(bj_HEROSTAT_INT,udg_PR_Caster,true)
set udg_PR_Damage=(100.00*I2R(udg_PR_Ability_Level))
set udg_PR_Dummy_Ability=0x41303242
set udg_PR_Target_Mana=GetUnitStateSwap(UNIT_STATE_MANA,udg_PR_Target)
if(Trig_Psychic_Rape_Func020C())then
call UnitDamageTargetBJ(udg_PR_Caster,udg_PR_Target,udg_PR_Target_Mana,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
call CreateTextTagUnitBJ(("-"+I2S(R2I(udg_PR_Target_Mana))),udg_PR_Target,0,11.00,0.00,30.00,70.00,0)
else
call UnitDamageTargetBJ(udg_PR_Caster,udg_PR_Target,udg_PR_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
call CreateTextTagUnitBJ(("-"+I2S(R2I(udg_PR_Damage))),udg_PR_Target,0,11.00,0.00,30.00,70.00,0)
endif
call SetTextTagPermanentBJ(GetLastCreatedTextTag(),false)
call SetTextTagVelocityBJ(GetLastCreatedTextTag(),64,90)
call SetTextTagFadepointBJ(GetLastCreatedTextTag(),2.00)
call SetTextTagLifespanBJ(GetLastCreatedTextTag(),2.50)
call SetUnitManaBJ(udg_PR_Target,(GetUnitStateSwap(UNIT_STATE_MANA,udg_PR_Target)-udg_PR_Damage))
call AddSpecialEffectTargetUnitBJ("origin",udg_PR_Target,"Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
if(Trig_Psychic_Rape_Func034C())then
call CreateNUnitsAtLoc(1,0x68303037,GetOwningPlayer(udg_PR_Caster),udg_PR_Target_Loc,bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(1.50,0x42544C46,GetLastCreatedUnit())
call UnitAddAbilityBJ(udg_PR_Dummy_Ability,GetLastCreatedUnit())
call SetUnitAbilityLevelSwapped(udg_PR_Dummy_Ability,GetLastCreatedUnit(),udg_PR_Ability_Level)
call IssueTargetOrderBJ(GetLastCreatedUnit(),"thunderbolt",udg_PR_Target)
call AddSpecialEffectTargetUnitBJ("origin",udg_PR_Target,"Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
endif
call RemoveLocation(udg_PR_Target_Loc)
call RemoveLocation(udg_PR_Caster_Loc)
endfunction
function InitTrig_Psychic_Rape takes nothing returns nothing
set gg_trg_Psychic_Rape=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Psychic_Rape,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Psychic_Rape,Condition(function Trig_Psychic_Rape_Conditions))
call TriggerAddAction(gg_trg_Psychic_Rape,function Trig_Psychic_Rape_Actions)
endfunction
function Trig_Wound_Poison_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303243))then
return false
endif
return true
endfunction
function Trig_Wound_Poison_Actions takes nothing returns nothing
local unit a=GetTriggerUnit()
local unit b=GetSpellTargetUnit()
local integer c=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),a)
local integer d=1
local real e=60.
local real f=(e*I2R(c))
local real g=5.
local real h=(g*I2R(c))
local real i=.5
call UnitDamageTarget(a,b,f,true,false,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN,WEAPON_TYPE_WHOKNOWS)
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl",b,"chest"))
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl",b,"origin"))
loop
exitwhen GetBooleanOr(d>20,GetUnitState(b,UNIT_STATE_LIFE)<=0.405)
call TriggerSleepAction(i)
call UnitDamageTarget(a,b,h,true,false,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN,WEAPON_TYPE_WHOKNOWS)
call DestroyEffect(AddSpecialEffectTarget("Objects\\Spawnmodels\\Other\\HumanBloodCinematicEffect\\HumanBloodCinematicEffect.mdl",b,"chest"))
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Other\\AcidBomb\\BottleImpact.mdl",b,"chest"))
set d=d+1
endloop
set a=null
set b=null
endfunction
function InitTrig_Wound_Poison takes nothing returns nothing
set gg_trg_Wound_Poison=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Wound_Poison,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Wound_Poison,Condition(function Trig_Wound_Poison_Conditions))
call TriggerAddAction(gg_trg_Wound_Poison,function Trig_Wound_Poison_Actions)
endfunction
function Trig_Initialization_Fan_of_Knives_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_FoK_Table=GetLastCreatedHashtableBJ()
endfunction
function InitTrig_Initialization_Fan_of_Knives takes nothing returns nothing
set gg_trg_Initialization_Fan_of_Knives=CreateTrigger()
call TriggerAddAction(gg_trg_Initialization_Fan_of_Knives,function Trig_Initialization_Fan_of_Knives_Actions)
endfunction
function Trig_Fan_of_Knives_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303247))then
return false
endif
return true
endfunction
function Trig_Fan_of_Knives_Func023Func005C takes nothing returns boolean
if(not(udg_FoK_Random_Path==true))then
return false
endif
return true
endfunction
function Trig_Fan_of_Knives_Actions takes nothing returns nothing
set udg_FoK_Caster=GetTriggerUnit()
set udg_FoK_Loc1=GetUnitLoc(udg_FoK_Caster)
set udg_FoK_Ability_Level=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_FoK_Caster)
set udg_FoK_Random_Path=true
set udg_FoK_Random_Movement=false
set udg_FoK_Knives_Count=16
set udg_FoK_Detection_Area=90.00
set udg_FoK_Base_Damage=100.00
set udg_FoK_Total_Damage=(udg_FoK_Base_Damage*I2R(udg_FoK_Ability_Level))
set udg_FoK_Distance=600.00
set udg_FoK_Speed=15.00
set udg_FoK_Spiral_Angle=4.00
call EnableTrigger(gg_trg_Fan_of_Knives_Execution)
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=udg_FoK_Knives_Count
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
set udg_FoK_Angle=((360.00/I2R(udg_FoK_Knives_Count))*I2R(GetForLoopIndexA()))
if(Trig_Fan_of_Knives_Func023Func005C())then
set udg_FoK_Loc2=PolarProjectionBJ(udg_FoK_Loc1,GetRandomReal(0.00,100.00),udg_FoK_Angle)
call CreateNUnitsAtLoc(1,0x68303042,GetOwningPlayer(udg_FoK_Caster),udg_FoK_Loc2,udg_FoK_Angle)
call SetUnitTimeScalePercent(GetLastCreatedUnit(),100.00)
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_FoK_Dummy_Group)
call SaveUnitHandleBJ(udg_FoK_Caster,StringHashBJ("caster"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
call SaveRealBJ(udg_FoK_Distance,StringHashBJ("distance"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
call SaveRealBJ(udg_FoK_Speed,StringHashBJ("speed"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
call SaveRealBJ(udg_FoK_Total_Damage,StringHashBJ("damage"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
call RemoveLocation(udg_FoK_Loc2)
else
call CreateNUnitsAtLoc(1,0x68303042,GetOwningPlayer(udg_FoK_Caster),udg_FoK_Loc1,udg_FoK_Angle)
call SetUnitTimeScalePercent(GetLastCreatedUnit(),100.00)
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_FoK_Dummy_Group)
call SaveUnitHandleBJ(udg_FoK_Caster,StringHashBJ("caster"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
call SaveRealBJ(udg_FoK_Distance,StringHashBJ("distance"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
call SaveRealBJ(udg_FoK_Speed,StringHashBJ("speed"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
call SaveRealBJ(udg_FoK_Total_Damage,StringHashBJ("damage"),GetHandleIdBJ(GetLastCreatedUnit()),udg_FoK_Table)
endif
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
call RemoveLocation(udg_FoK_Loc1)
endfunction
function InitTrig_Fan_of_Knives takes nothing returns nothing
set gg_trg_Fan_of_Knives=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Fan_of_Knives,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Fan_of_Knives,Condition(function Trig_Fan_of_Knives_Conditions))
call TriggerAddAction(gg_trg_Fan_of_Knives,function Trig_Fan_of_Knives_Actions)
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func014C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_FoK_Dummy_Group)==0))then
return false
endif
return true
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func016C takes nothing returns boolean
if(not(udg_FoK_Random_Movement==true))then
return false
endif
return true
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func023002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func023002003002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func023002003002002 takes nothing returns boolean
return(IsPlayerEnemy(GetOwningPlayer(GetFilterUnit()),GetOwningPlayer(GetEnumUnit()))==true)
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func023002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Fan_of_Knives_Execution_Func005Func006Func023002003002001(),Trig_Fan_of_Knives_Execution_Func005Func006Func023002003002002())
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func023002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Fan_of_Knives_Execution_Func005Func006Func023002003001(),Trig_Fan_of_Knives_Execution_Func005Func006Func023002003002())
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func024Func008A takes nothing returns nothing
call UnitDamageTargetBJ(udg_FoK_Caster,GetEnumUnit(),udg_FoK_Total_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
call AddSpecialEffectTargetUnitBJ("origin",GetEnumUnit(),"Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectTargetUnitBJ("origin",GetEnumUnit(),"Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func024Func016C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_FoK_Dummy_Group)==0))then
return false
endif
return true
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006Func024C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_FoK_Damage_Group)>=1))then
return false
endif
return true
endfunction
function Trig_Fan_of_Knives_Execution_Func005Func006C takes nothing returns boolean
if(not(udg_FoK_Distance>0.00))then
return false
endif
return true
endfunction
function Trig_Fan_of_Knives_Execution_Func005A takes nothing returns nothing
set udg_FoK_Distance=LoadRealBJ(StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_FoK_Table)
set udg_FoK_Speed=LoadRealBJ(StringHashBJ("speed"),GetHandleIdBJ(GetEnumUnit()),udg_FoK_Table)
if(Trig_Fan_of_Knives_Execution_Func005Func006C())then
set udg_FoK_Caster=LoadUnitHandleBJ(StringHashBJ("caster"),GetHandleIdBJ(GetEnumUnit()),udg_FoK_Table)
call SaveRealBJ((udg_FoK_Distance-udg_FoK_Speed),StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_FoK_Table)
if(Trig_Fan_of_Knives_Execution_Func005Func006Func016C())then
set udg_FoK_Facing=(GetUnitFacing(GetEnumUnit())+GetRandomReal(3.00,12.00))
else
set udg_FoK_Facing=(GetUnitFacing(GetEnumUnit())+udg_FoK_Spiral_Angle)
endif
set udg_FoK_Loc3=GetUnitLoc(GetEnumUnit())
set udg_FoK_Loc4=PolarProjectionBJ(udg_FoK_Loc3,udg_FoK_Speed,udg_FoK_Facing)
call SetUnitPositionLocFacingBJ(GetEnumUnit(),udg_FoK_Loc4,udg_FoK_Facing)
set udg_FoK_Damage_Group=GetUnitsInRangeOfLocMatching(udg_FoK_Detection_Area,udg_FoK_Loc4,Condition(function Trig_Fan_of_Knives_Execution_Func005Func006Func023002003))
if(Trig_Fan_of_Knives_Execution_Func005Func006Func024C())then
call KillUnit(GetEnumUnit())
call RemoveUnit(GetEnumUnit())
call GroupRemoveUnitSimple(GetEnumUnit(),udg_FoK_Dummy_Group)
set udg_FoK_Total_Damage=LoadRealBJ(StringHashBJ("damage"),GetHandleIdBJ(GetEnumUnit()),udg_FoK_Table)
call ForGroupBJ(udg_FoK_Damage_Group,function Trig_Fan_of_Knives_Execution_Func005Func006Func024Func008A)
call DestroyGroup(udg_FoK_Damage_Group)
if(Trig_Fan_of_Knives_Execution_Func005Func006Func024Func016C())then
call DisableTrigger(gg_trg_Fan_of_Knives_Execution)
else
endif
else
endif
call RemoveLocation(udg_FoK_Loc3)
call RemoveLocation(udg_FoK_Loc4)
else
call KillUnit(GetEnumUnit())
call GroupRemoveUnitSimple(GetEnumUnit(),udg_FoK_Dummy_Group)
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_FoK_Table)
if(Trig_Fan_of_Knives_Execution_Func005Func006Func014C())then
call DisableTrigger(gg_trg_Fan_of_Knives_Execution)
else
endif
endif
endfunction
function Trig_Fan_of_Knives_Execution_Actions takes nothing returns nothing
call ForGroupBJ(udg_FoK_Dummy_Group,function Trig_Fan_of_Knives_Execution_Func005A)
endfunction
function InitTrig_Fan_of_Knives_Execution takes nothing returns nothing
set gg_trg_Fan_of_Knives_Execution=CreateTrigger()
call DisableTrigger(gg_trg_Fan_of_Knives_Execution)
call TriggerRegisterTimerEventPeriodic(gg_trg_Fan_of_Knives_Execution,0.03)
call TriggerAddAction(gg_trg_Fan_of_Knives_Execution,function Trig_Fan_of_Knives_Execution_Actions)
endfunction
function Trig_Telekinetic_Seizure_Setings_Conditions takes nothing returns boolean
if(not(0x4130314D==GetSpellAbilityId()))then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Setings_Func001C takes nothing returns boolean
if(not(udg_TS_Skip==0))then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Setings_Actions takes nothing returns nothing
if(Trig_Telekinetic_Seizure_Setings_Func001C())then
call EnableTrigger(gg_trg_Telekinetic_Seizure_Loop)
else
endif
set udg_TS_Skip=(udg_TS_Skip+1)
set udg_TS_Times=(udg_TS_Times+1)
set udg_TS_Off[udg_TS_Times]=true
set udg_TS_Hero[udg_TS_Times]=GetSpellAbilityUnit()
set udg_TS_Target[udg_TS_Times]=GetSpellTargetUnit()
call SetUnitTimeScalePercent(udg_TS_Target[udg_TS_Times],0.00)
call UnitAddAbilityBJ(0x41726176,udg_TS_Target[udg_TS_Times])
call PauseUnitBJ(true,udg_TS_Target[udg_TS_Times])
call SetUnitPathing(udg_TS_Target[udg_TS_Times],false)
set udg_TS_Point[0]=GetUnitLoc(udg_TS_Hero[udg_TS_Times])
set udg_TS_Point[1]=GetUnitLoc(udg_TS_Target[udg_TS_Times])
set udg_TS_Radius[udg_TS_Times]=DistanceBetweenPoints(udg_TS_Point[0],udg_TS_Point[1])
set udg_TS_Angle[udg_TS_Times]=AngleBetweenPoints(udg_TS_Point[1],udg_TS_Point[0])
set udg_TS_Distance[udg_TS_Times]=(udg_TS_Radius[udg_TS_Times]*2.00)
set udg_TS_MaxDistance[udg_TS_Times]=udg_TS_Distance[udg_TS_Times]
set udg_TS_Speed[udg_TS_Times]=(udg_TS_MaxDistance[udg_TS_Times]*0.04)
set udg_TS_Height[udg_TS_Times]=udg_TS_Radius[udg_TS_Times]
set udg_TS_Damage[udg_TS_Times]=(60.00+(40.00*I2R(GetUnitAbilityLevelSwapped(0x4130314D,udg_TS_Hero[udg_TS_Times]))))
set udg_TS_Slams[udg_TS_Times]=(1+GetUnitAbilityLevelSwapped(0x4130314D,udg_TS_Hero[udg_TS_Times]))
call AddSpecialEffectTargetUnitBJ("origin",udg_TS_Hero[udg_TS_Times],"Abilities\\Spells\\Other\\Charm\\CharmTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectTargetUnitBJ("origin",udg_TS_Target[udg_TS_Times],"Abilities\\Spells\\Other\\Charm\\CharmTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call SetUnitLookAt(udg_TS_Hero[udg_TS_Times],"bone_head",udg_TS_Target[udg_TS_Times],0,0,GetUnitFlyHeight(udg_TS_Target[udg_TS_Times]))
call RemoveLocation(udg_TS_Point[0])
call RemoveLocation(udg_TS_Point[1])
endfunction
function InitTrig_Telekinetic_Seizure_Setings takes nothing returns nothing
set gg_trg_Telekinetic_Seizure_Setings=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Telekinetic_Seizure_Setings,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Telekinetic_Seizure_Setings,Condition(function Trig_Telekinetic_Seizure_Setings_Conditions))
call TriggerAddAction(gg_trg_Telekinetic_Seizure_Setings,function Trig_Telekinetic_Seizure_Setings_Actions)
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func015C takes nothing returns boolean
if(not(udg_TS_Skip==0))then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003001001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_FLYING)==false)
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003001002 takes nothing returns boolean
return(IsUnitDeadBJ(GetFilterUnit())==false)
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003001 takes nothing returns boolean
return GetBooleanAnd(Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003001001(),Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003001002())
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003002 takes nothing returns boolean
return(IsUnitAlly(GetFilterUnit(),GetOwningPlayer(udg_TS_Hero[udg_TS]))==false)
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003001(),Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003002())
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func010A takes nothing returns nothing
call UnitDamageTargetBJ(udg_TS_Hero[udg_TS],GetEnumUnit(),udg_TS_Damage[udg_TS],ATTACK_TYPE_HERO,DAMAGE_TYPE_FORCE)
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func016Func015C takes nothing returns boolean
if((IsUnitDeadBJ(udg_TS_Target[udg_TS])==true))then
return true
endif
if((UnitHasBuffBJ(udg_TS_Target[udg_TS],0x42303031)==false))then
return true
endif
return false
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func016C takes nothing returns boolean
if(not Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func016Func015C())then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func031C takes nothing returns boolean
if(not(RectContainsLoc(GetPlayableMapRect(),udg_TS_Point[3])==false))then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016C takes nothing returns boolean
if(not(udg_TS_Distance[udg_TS]<=0.00))then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001C takes nothing returns boolean
if(not(udg_TS_Slams[udg_TS]>0))then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Loop_Func001Func001C takes nothing returns boolean
if(not(udg_TS_Off[udg_TS]==true))then
return false
endif
return true
endfunction
function Trig_Telekinetic_Seizure_Loop_Actions takes nothing returns nothing
set udg_TS=1
loop
exitwhen udg_TS>udg_TS_Times
if(Trig_Telekinetic_Seizure_Loop_Func001Func001C())then
if(Trig_Telekinetic_Seizure_Loop_Func001Func001Func001C())then
if(Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016C())then
set udg_TS_Slams[udg_TS]=(udg_TS_Slams[udg_TS]-1)
set udg_TS_Point[4]=GetUnitLoc(udg_TS_Target[udg_TS])
set udg_TS_Group[udg_TS]=GetUnitsInRangeOfLocMatching(200.00,udg_TS_Point[4],Condition(function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func009002003))
call ForGroupBJ(udg_TS_Group[udg_TS],function Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func010A)
call AddSpecialEffectLocBJ(udg_TS_Point[4],"Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
if(Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func016C())then
set udg_TS_Slams[udg_TS]=0
call SetUnitTimeScalePercent(udg_TS_Target[udg_TS_Times],100.00)
else
set udg_TS_Point[5]=GetUnitLoc(udg_TS_Hero[udg_TS])
set udg_TS_Angle[udg_TS]=AngleBetweenPoints(udg_TS_Point[4],udg_TS_Point[5])
set udg_TS_Angle[udg_TS]=(udg_TS_Angle[udg_TS]+GetRandomReal(-30.00,30.00))
set udg_TS_Point[6]=PolarProjectionBJ(udg_TS_Point[5],udg_TS_Radius[udg_TS],udg_TS_Angle[udg_TS])
set udg_TS_Angle[udg_TS]=AngleBetweenPoints(udg_TS_Point[4],udg_TS_Point[6])
set udg_TS_Distance[udg_TS]=DistanceBetweenPoints(udg_TS_Point[4],udg_TS_Point[6])
set udg_TS_MaxDistance[udg_TS]=udg_TS_Distance[udg_TS]
call RemoveLocation(udg_TS_Point[5])
call RemoveLocation(udg_TS_Point[6])
endif
call RemoveLocation(udg_TS_Point[4])
call DestroyGroup(udg_TS_Group[udg_TS])
else
set udg_TS_Distance[udg_TS]=(udg_TS_Distance[udg_TS]-udg_TS_Speed[udg_TS])
set udg_TS_Point[2]=GetUnitLoc(udg_TS_Target[udg_TS])
set udg_TS_Point[3]=PolarProjectionBJ(udg_TS_Point[2],udg_TS_Speed[udg_TS],udg_TS_Angle[udg_TS])
if(Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func016Func031C())then
else
call SetUnitPositionLoc(udg_TS_Target[udg_TS],udg_TS_Point[3])
endif
set udg_TS_Parabola[udg_TS]=(((4.00*udg_TS_Height[udg_TS])/udg_TS_MaxDistance[udg_TS])*((udg_TS_MaxDistance[udg_TS]-udg_TS_Distance[udg_TS])*(udg_TS_Distance[udg_TS]/udg_TS_MaxDistance[udg_TS])))
call SetUnitFlyHeightBJ(udg_TS_Target[udg_TS],udg_TS_Parabola[udg_TS],0.00)
call SetUnitFacingToFaceUnitTimed(udg_TS_Hero[udg_TS],udg_TS_Target[udg_TS],0)
call RemoveLocation(udg_TS_Point[2])
call RemoveLocation(udg_TS_Point[3])
endif
else
call SetUnitTimeScalePercent(udg_TS_Target[udg_TS_Times],100.00)
call ResetUnitLookAt(udg_TS_Hero[udg_TS])
call UnitRemoveBuffBJ(0x42303031,udg_TS_Target[udg_TS])
call UnitRemoveAbilityBJ(0x41726176,udg_TS_Target[udg_TS])
call SetUnitPathing(udg_TS_Target[udg_TS],true)
call PauseUnitBJ(false,udg_TS_Target[udg_TS])
set udg_TS_Skip=(udg_TS_Skip-1)
set udg_TS_Off[udg_TS]=false
if(Trig_Telekinetic_Seizure_Loop_Func001Func001Func001Func015C())then
set udg_TS_Times=0
call DisableTrigger(GetTriggeringTrigger())
else
endif
endif
else
endif
set udg_TS=udg_TS+1
endloop
endfunction
function InitTrig_Telekinetic_Seizure_Loop takes nothing returns nothing
set gg_trg_Telekinetic_Seizure_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Telekinetic_Seizure_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Telekinetic_Seizure_Loop,0.02)
call TriggerAddAction(gg_trg_Telekinetic_Seizure_Loop,function Trig_Telekinetic_Seizure_Loop_Actions)
endfunction
function Trig_CE_Initialization_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_CE_Knocktable=GetLastCreatedHashtableBJ()
endfunction
function InitTrig_CE_Initialization takes nothing returns nothing
set gg_trg_CE_Initialization=CreateTrigger()
call TriggerAddAction(gg_trg_CE_Initialization,function Trig_CE_Initialization_Actions)
endfunction
function Trig_Cutting_Edge_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303055))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Actions takes nothing returns nothing
set udg_CE_Caster=GetTriggerUnit()
set udg_CE_Location=GetUnitLoc(udg_CE_Caster)
set udg_CE_Location2=GetSpellTargetLoc()
set udg_CE_Ability_Level=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_CE_Caster)
set udg_CE_Base_Damage=35.00
set udg_CE_Total_Damage=(udg_CE_Base_Damage*I2R(udg_CE_Ability_Level))
set udg_CE_Area_of_Effect=200.00
set udg_CE_Destroy_Trees=true
set udg_CE_Pathing_On=true
call AddSpecialEffectTargetUnitBJ("weapon",udg_CE_Caster,"Abilities\\Spells\\Items\\OrbCorruption\\OrbCorruptionSpecialArt.mdl")
set udg_CE_Special_Effect=GetLastCreatedEffectBJ()
call AddSpecialEffectTargetUnitBJ("weapon",udg_CE_Caster,"Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile_mini.mdl")
set udg_CE_Special_Effect1=GetLastCreatedEffectBJ()
set udg_CE_Knock_Angle=AngleBetweenPoints(udg_CE_Location,udg_CE_Location2)
set udg_CE_Knock_Speed=50.00
set udg_CE_Knock_Distance=900.00
call SaveRealBJ(udg_CE_Knock_Angle,StringHashBJ("angle"),GetHandleIdBJ(GetTriggerUnit()),udg_CE_Knocktable)
call SaveRealBJ(udg_CE_Knock_Speed,StringHashBJ("speed"),GetHandleIdBJ(GetTriggerUnit()),udg_CE_Knocktable)
call SaveRealBJ(udg_CE_Knock_Distance,StringHashBJ("distance"),GetHandleIdBJ(GetTriggerUnit()),udg_CE_Knocktable)
call SaveUnitHandleBJ(udg_CE_Caster,StringHashBJ("caster"),GetHandleIdBJ(GetTriggerUnit()),udg_CE_Knocktable)
call SaveEffectHandleBJ(udg_CE_Special_Effect,StringHashBJ("sfx"),GetHandleIdBJ(GetTriggerUnit()),udg_CE_Knocktable)
call SaveEffectHandleBJ(udg_CE_Special_Effect1,StringHashBJ("sfx1"),GetHandleIdBJ(GetTriggerUnit()),udg_CE_Knocktable)
call SetUnitTimeScalePercent(udg_CE_Caster,1500.00)
call SetUnitPathing(udg_CE_Caster,false)
call GroupAddUnitSimple(udg_CE_Caster,udg_CE_Knock_Group)
call EnableTrigger(gg_trg_Cutting_Edge_Knock)
call RemoveLocation(udg_CE_Location)
call RemoveLocation(udg_CE_Location2)
endfunction
function InitTrig_Cutting_Edge takes nothing returns nothing
set gg_trg_Cutting_Edge=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Cutting_Edge,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Cutting_Edge,Condition(function Trig_Cutting_Edge_Conditions))
call TriggerAddAction(gg_trg_Cutting_Edge,function Trig_Cutting_Edge_Actions)
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func008C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_CE_Knock_Group)==0))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func011002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func011002003002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func011002003002002 takes nothing returns boolean
return(IsPlayerEnemy(GetOwningPlayer(GetFilterUnit()),GetOwningPlayer(GetEnumUnit()))==true)
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func011002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Cutting_Edge_Knock_Func004Func007Func011002003002001(),Trig_Cutting_Edge_Knock_Func004Func007Func011002003002002())
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func011002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Cutting_Edge_Knock_Func004Func007Func011002003001(),Trig_Cutting_Edge_Knock_Func004Func007Func011002003002())
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func012Func001Func001Func005C takes nothing returns boolean
if(not(GetUnitCurrentOrder(GetLastCreatedUnit())==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func012Func001Func001C takes nothing returns boolean
if(not(IsDestructableAliveBJ(GetEnumDestructable())==true))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func012Func001A takes nothing returns nothing
if(Trig_Cutting_Edge_Knock_Func004Func007Func012Func001Func001C())then
call CreateNUnitsAtLoc(1,0x68706561,GetOwningPlayer(GetEnumUnit()),udg_CE_Knock_Loc1,bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(0.50,0x42544C46,GetLastCreatedUnit())
call ShowUnitHide(GetLastCreatedUnit())
call IssueTargetDestructableOrder(GetLastCreatedUnit(),"harvest",GetEnumDestructable())
if(Trig_Cutting_Edge_Knock_Func004Func007Func012Func001Func001Func005C())then
call KillDestructable(GetEnumDestructable())
else
endif
else
endif
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func012C takes nothing returns boolean
if(not(udg_CE_Destroy_Trees==true))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func009Func002Func001C takes nothing returns boolean
if(not(GetRandomInt(1,100)<=50))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func009Func002C takes nothing returns boolean
if(not(GetRandomInt(1,100)<33))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func009A takes nothing returns nothing
call UnitDamageTargetBJ(udg_CE_Caster,GetEnumUnit(),udg_CE_Total_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
if(Trig_Cutting_Edge_Knock_Func004Func007Func013Func009Func002C())then
if(Trig_Cutting_Edge_Knock_Func004Func007Func013Func009Func002Func001C())then
call AddSpecialEffectTargetUnitBJ("chest",GetEnumUnit(),"Objects\\Spawnmodels\\Critters\\Albatross\\CritterBloodAlbatross.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
call AddSpecialEffectTargetUnitBJ("chest",GetEnumUnit(),"Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
endif
else
endif
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001Func018Func002Func001C takes nothing returns boolean
if(not(GetRandomInt(1,100)<=50))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001Func018Func002C takes nothing returns boolean
if(not(GetRandomInt(1,100)<33))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001Func018A takes nothing returns nothing
call UnitDamageTargetBJ(udg_CE_Caster,GetEnumUnit(),udg_CE_Total_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
if(Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001Func018Func002C())then
if(Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001Func018Func002Func001C())then
call AddSpecialEffectTargetUnitBJ("chest",GetEnumUnit(),"Objects\\Spawnmodels\\Critters\\Albatross\\CritterBloodAlbatross.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
call AddSpecialEffectTargetUnitBJ("chest",GetEnumUnit(),"Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
endif
else
endif
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001C takes nothing returns boolean
if(not(IsUnitDeadBJ(GetEnumUnit())==true))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func011C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_CE_Knock_Group)==0))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013Func014C takes nothing returns boolean
if(not(IsTerrainPathableBJ(udg_CE_Knock_Loc2,PATHING_TYPE_WALKABILITY)==true))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007Func013C takes nothing returns boolean
if(not(udg_CE_Pathing_On==true))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004Func007C takes nothing returns boolean
if(not(udg_CE_Knock_Distance>0.00))then
return false
endif
return true
endfunction
function Trig_Cutting_Edge_Knock_Func004A takes nothing returns nothing
set udg_CE_Knock_Angle=LoadRealBJ(StringHashBJ("angle"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
set udg_CE_Knock_Speed=LoadRealBJ(StringHashBJ("speed"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
set udg_CE_Knock_Distance=LoadRealBJ(StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
set udg_CE_Caster=LoadUnitHandleBJ(StringHashBJ("caster"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
set udg_CE_Special_Effect=LoadEffectHandleBJ(StringHashBJ("sfx"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
set udg_CE_Special_Effect1=LoadEffectHandleBJ(StringHashBJ("sfx1"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
if(Trig_Cutting_Edge_Knock_Func004Func007C())then
set udg_CE_Knock_Loc1=GetUnitLoc(GetEnumUnit())
set udg_CE_Knock_Loc2=PolarProjectionBJ(udg_CE_Knock_Loc1,udg_CE_Knock_Speed,udg_CE_Knock_Angle)
set udg_CE_Damage_Group=GetUnitsInRangeOfLocMatching(udg_CE_Area_of_Effect,udg_CE_Knock_Loc1,Condition(function Trig_Cutting_Edge_Knock_Func004Func007Func011002003))
if(Trig_Cutting_Edge_Knock_Func004Func007Func012C())then
call EnumDestructablesInCircleBJ(udg_CE_Area_of_Effect,udg_CE_Knock_Loc1,function Trig_Cutting_Edge_Knock_Func004Func007Func012Func001A)
else
endif
if(Trig_Cutting_Edge_Knock_Func004Func007Func013C())then
if(Trig_Cutting_Edge_Knock_Func004Func007Func013Func014C())then
call SetUnitPathing(udg_CE_Caster,true)
call ResetUnitAnimation(GetEnumUnit())
call SetUnitTimeScalePercent(GetEnumUnit(),100.00)
call DestroyEffectBJ(udg_CE_Special_Effect)
call DestroyEffectBJ(udg_CE_Special_Effect1)
call RemoveLocation(udg_CE_Knock_Loc1)
call RemoveLocation(udg_CE_Knock_Loc2)
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
call GroupRemoveUnitSimple(GetEnumUnit(),udg_CE_Knock_Group)
if(Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func011C())then
call DisableTrigger(gg_trg_Cutting_Edge_Knock)
else
endif
else
if(Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001C())then
call SetUnitPathing(udg_CE_Caster,true)
call ResetUnitAnimation(GetEnumUnit())
call SetUnitTimeScalePercent(GetEnumUnit(),100.00)
call DestroyEffectBJ(udg_CE_Special_Effect)
call DestroyEffectBJ(udg_CE_Special_Effect1)
call RemoveLocation(udg_CE_Knock_Loc1)
call RemoveLocation(udg_CE_Knock_Loc2)
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
call GroupRemoveUnitSimple(GetEnumUnit(),udg_CE_Knock_Group)
else
call SetUnitPositionLoc(GetEnumUnit(),udg_CE_Knock_Loc2)
call SetUnitFacingTimed(GetEnumUnit(),udg_CE_Knock_Angle,0)
call SetUnitAnimation(GetEnumUnit(),"attack")
call CreateNUnitsAtLoc(1,0x68303045,GetOwningPlayer(GetEnumUnit()),udg_CE_Knock_Loc2,udg_CE_Knock_Angle)
call UnitApplyTimedLifeBJ(0.50,0x42544C46,GetLastCreatedUnit())
call SetUnitVertexColorBJ(GetLastCreatedUnit(),100,100,100,85.00)
call SetUnitTimeScalePercent(GetLastCreatedUnit(),200.00)
call SetUnitAnimation(GetLastCreatedUnit(),"attack")
call ForGroupBJ(udg_CE_Damage_Group,function Trig_Cutting_Edge_Knock_Func004Func007Func013Func014Func001Func018A)
call SaveRealBJ((udg_CE_Knock_Distance-udg_CE_Knock_Speed),StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
call RemoveLocation(udg_CE_Knock_Loc1)
call RemoveLocation(udg_CE_Knock_Loc2)
call DestroyGroup(udg_CE_Damage_Group)
endif
endif
else
call SetUnitPositionLoc(GetEnumUnit(),udg_CE_Knock_Loc2)
call SetUnitFacingTimed(GetEnumUnit(),udg_CE_Knock_Angle,0)
call SetUnitAnimation(GetEnumUnit(),"attack")
call CreateNUnitsAtLoc(1,0x68303045,GetOwningPlayer(GetEnumUnit()),udg_CE_Knock_Loc2,udg_CE_Knock_Angle)
call UnitApplyTimedLifeBJ(0.50,0x42544C46,GetLastCreatedUnit())
call SetUnitVertexColorBJ(GetLastCreatedUnit(),100,100,100,85.00)
call SetUnitTimeScalePercent(GetLastCreatedUnit(),200.00)
call SetUnitAnimation(GetLastCreatedUnit(),"attack")
call ForGroupBJ(udg_CE_Damage_Group,function Trig_Cutting_Edge_Knock_Func004Func007Func013Func009A)
call SaveRealBJ((udg_CE_Knock_Distance-udg_CE_Knock_Speed),StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
call RemoveLocation(udg_CE_Knock_Loc1)
call RemoveLocation(udg_CE_Knock_Loc2)
call DestroyGroup(udg_CE_Damage_Group)
endif
else
call SetUnitPathing(udg_CE_Caster,true)
call ResetUnitAnimation(GetEnumUnit())
call SetUnitTimeScalePercent(GetEnumUnit(),100.00)
call DestroyEffectBJ(udg_CE_Special_Effect)
call DestroyEffectBJ(udg_CE_Special_Effect1)
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_CE_Knocktable)
call GroupRemoveUnitSimple(GetEnumUnit(),udg_CE_Knock_Group)
if(Trig_Cutting_Edge_Knock_Func004Func007Func008C())then
call DisableTrigger(gg_trg_Cutting_Edge_Knock)
else
endif
endif
endfunction
function Trig_Cutting_Edge_Knock_Actions takes nothing returns nothing
call ForGroupBJ(udg_CE_Knock_Group,function Trig_Cutting_Edge_Knock_Func004A)
endfunction
function InitTrig_Cutting_Edge_Knock takes nothing returns nothing
set gg_trg_Cutting_Edge_Knock=CreateTrigger()
call DisableTrigger(gg_trg_Cutting_Edge_Knock)
call TriggerRegisterTimerEventPeriodic(gg_trg_Cutting_Edge_Knock,0.06)
call TriggerAddAction(gg_trg_Cutting_Edge_Knock,function Trig_Cutting_Edge_Knock_Actions)
endfunction
function Trig_Remove_Dummies_Conditions takes nothing returns boolean
if(not(GetUnitTypeId(GetTriggerUnit())==0x68303045))then
return false
endif
return true
endfunction
function Trig_Remove_Dummies_Actions takes nothing returns nothing
call RemoveUnit(GetTriggerUnit())
endfunction
function InitTrig_Remove_Dummies takes nothing returns nothing
set gg_trg_Remove_Dummies=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Remove_Dummies,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_Remove_Dummies,Condition(function Trig_Remove_Dummies_Conditions))
call TriggerAddAction(gg_trg_Remove_Dummies,function Trig_Remove_Dummies_Actions)
endfunction
function Trig_Shade_Sheild_On_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x4130314A))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_On_Func001C takes nothing returns boolean
if(not(udg_SS_Skip==0))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_On_Actions takes nothing returns nothing
if(Trig_Shade_Sheild_On_Func001C())then
call EnableTrigger(gg_trg_Shade_Sheild_Loop)
else
endif
set udg_SS_LEVEL=GetUnitAbilityLevelSwapped(0x4130314A,GetSpellAbilityUnit())
set udg_Sheild_How_Many=4
set udg_SS_Number[1]=(360.00/I2R(udg_Sheild_How_Many))
set udg_SS_Number[2]=udg_SS_Number[1]
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=udg_Sheild_How_Many
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
set udg_SS_Times=(udg_SS_Times+1)
set udg_SS_Skip=(udg_SS_Skip+1)
set udg_SS_Rotate_Off[udg_SS_Times]=true
set udg_SS_Knockback_Off[udg_SS_Times]=false
set udg_SS_Hero[udg_SS_Times]=GetSpellAbilityUnit()
set udg_SS_Point[1]=GetUnitLoc(udg_SS_Hero[udg_SS_Times])
set udg_SS_Point[2]=PolarProjectionBJ(udg_SS_Point[1],165.00,udg_SS_Number[2])
call CreateNUnitsAtLoc(1,0x68303049,GetOwningPlayer(udg_SS_Hero[udg_SS_Times]),udg_SS_Point[2],(AngleBetweenPoints(udg_SS_Point[1],udg_SS_Point[2])+90.00))
set udg_SS_Dummy[udg_SS_Times]=GetLastCreatedUnit()
call AddSpecialEffectTargetUnitBJ("chest",udg_SS_Dummy[udg_SS_Times],"Abilities\\Spells\\Undead\\OrbOfDeath\\AnnihilationMissile.mdl")
set udg_SS_Special[udg_SS_Times]=GetLastCreatedEffectBJ()
set udg_SS_Angle[udg_SS_Times]=udg_SS_Number[2]
set udg_SS_Angle_Speed_Rotation[udg_SS_Times]=6.00
set udg_SS_Countdown[udg_SS_Times]=400
set udg_SS_Damage[udg_SS_Times]=(50.00*I2R(udg_SS_LEVEL))
set udg_SS_Distance[udg_SS_Times]=(udg_SS_Damage[udg_SS_Times]+50.00)
set udg_SS_Speed[udg_SS_Times]=15.00
set udg_SS_Formula[udg_SS_Times]=(udg_SS_Distance[udg_SS_Times]/udg_SS_Speed[udg_SS_Times])
set udg_SS_Number[2]=(udg_SS_Number[2]+udg_SS_Number[1])
call RemoveLocation(udg_SS_Point[1])
call RemoveLocation(udg_SS_Point[2])
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
set udg_SS_LEVEL=0
set udg_Sheild_How_Many=0
set udg_SS_Number[1]=0.00
set udg_SS_Number[2]=0.00
endfunction
function InitTrig_Shade_Sheild_On takes nothing returns nothing
set gg_trg_Shade_Sheild_On=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Shade_Sheild_On,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Shade_Sheild_On,Condition(function Trig_Shade_Sheild_On_Conditions))
call TriggerAddAction(gg_trg_Shade_Sheild_On,function Trig_Shade_Sheild_On_Actions)
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func012C takes nothing returns boolean
if(not(udg_SS_Skip==0))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func020Func001C takes nothing returns boolean
if(not(udg_SS_Countdown[udg_SS]==6))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func020C takes nothing returns boolean
if(not(udg_SS_Countdown[udg_SS]==4))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func021003 takes nothing returns nothing
call KillDestructable(GetEnumDestructable())
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func026C takes nothing returns boolean
if((udg_SS_Distance[udg_SS]<=0.00))then
return true
endif
if((IsUnitDeadBJ(udg_SS_Unit[udg_SS])==true))then
return true
endif
return false
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func001Func001C takes nothing returns boolean
if(not Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func026C())then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func001C takes nothing returns boolean
if(not(udg_SS_Knockback_Off[udg_SS]==true))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func016C takes nothing returns boolean
if(not(udg_SS_Skip==0))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003001 takes nothing returns boolean
return(GetOwningPlayer(GetFilterUnit())!=GetOwningPlayer(udg_SS_Hero[udg_SS]))
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003002002 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003002001(),Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003002002())
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003001(),Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003002())
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func025Func002A takes nothing returns nothing
set udg_SS_Rotate_Off[udg_SS]=false
set udg_SS_Knockback_Off[udg_SS]=true
call DestroyEffectBJ(udg_SS_Special[udg_SS])
call UnitApplyTimedLifeBJ(0.03,0x42544C46,udg_SS_Dummy[udg_SS])
set udg_SS_Dummy[udg_SS]=null
call AddSpecialEffectLocBJ(udg_SS_Point[4],"Objects\\Spawnmodels\\Undead\\ImpaleTargetDust\\ImpaleTargetDust.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set udg_SS_Unit[udg_SS]=GetEnumUnit()
call UnitDamageTargetBJ(udg_SS_Hero[udg_SS],udg_SS_Unit[udg_SS],udg_SS_Damage[udg_SS],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_SHADOW_STRIKE)
call AddSpecialEffectTargetUnitBJ("chest",udg_SS_Unit[udg_SS],"Abilities\\Weapons\\IllidanMissile\\IllidanMissile.mdl")
set udg_SS_Special[udg_SS]=GetLastCreatedEffectBJ()
set udg_SS_Angle[udg_SS]=(udg_SS_Angle[udg_SS]+90.00)
set udg_SS_Countdown[udg_SS]=0
set udg_SS_Angle_Speed_Rotation[udg_SS]=0.00
set udg_SS_Damage[udg_SS]=0.00
set udg_SS_Hero[udg_SS]=null
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002Func025C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_SS_Group[udg_SS])>=1))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001Func002C takes nothing returns boolean
if(not(udg_SS_Countdown[udg_SS]==0))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Func001Func001C takes nothing returns boolean
if(not(udg_SS_Rotate_Off[udg_SS]==true))then
return false
endif
return true
endfunction
function Trig_Shade_Sheild_Loop_Actions takes nothing returns nothing
set udg_SS=1
loop
exitwhen udg_SS>udg_SS_Times
if(Trig_Shade_Sheild_Loop_Func001Func001C())then
if(Trig_Shade_Sheild_Loop_Func001Func001Func002C())then
set udg_SS_Rotate_Off[udg_SS]=false
set udg_SS_Skip=(udg_SS_Skip-1)
call DestroyEffectBJ(udg_SS_Special[udg_SS])
call UnitApplyTimedLifeBJ(0.03,0x42544C46,udg_SS_Dummy[udg_SS])
set udg_SS_Dummy[udg_SS]=null
set udg_SS_Angle[udg_SS]=0.00
set udg_SS_Countdown[udg_SS]=0
set udg_SS_Angle_Speed_Rotation[udg_SS]=0.00
set udg_SS_Damage[udg_SS]=0.00
set udg_SS_Distance[udg_SS]=0.00
set udg_SS_Speed[udg_SS]=0.00
set udg_SS_Formula[udg_SS]=0.00
set udg_SS_Hero[udg_SS]=null
if(Trig_Shade_Sheild_Loop_Func001Func001Func002Func016C())then
set udg_SS_Times=0
call DisableTrigger(gg_trg_Shade_Sheild_Loop)
else
endif
else
set udg_SS_Countdown[udg_SS]=(udg_SS_Countdown[udg_SS]-1)
set udg_SS_Point[3]=GetUnitLoc(udg_SS_Hero[udg_SS])
set udg_SS_Point[4]=PolarProjectionBJ(udg_SS_Point[3],165.00,udg_SS_Angle[udg_SS])
call SetUnitPositionLocFacingBJ(udg_SS_Dummy[udg_SS],udg_SS_Point[4],(AngleBetweenPoints(udg_SS_Point[3],udg_SS_Point[4])+90.00))
set udg_SS_Angle[udg_SS]=(udg_SS_Angle[udg_SS]+udg_SS_Angle_Speed_Rotation[udg_SS])
set udg_SS_Group[udg_SS]=GetUnitsInRangeOfLocMatching(65.00,udg_SS_Point[4],Condition(function Trig_Shade_Sheild_Loop_Func001Func001Func002Func024002003))
if(Trig_Shade_Sheild_Loop_Func001Func001Func002Func025C())then
call ForGroupBJ(udg_SS_Group[udg_SS],function Trig_Shade_Sheild_Loop_Func001Func001Func002Func025Func002A)
else
endif
call DestroyGroup(udg_SS_Group[udg_SS])
call RemoveLocation(udg_SS_Point[3])
call RemoveLocation(udg_SS_Point[4])
endif
else
if(Trig_Shade_Sheild_Loop_Func001Func001Func001C())then
if(Trig_Shade_Sheild_Loop_Func001Func001Func001Func001C())then
set udg_SS_Knockback_Off[udg_SS]=false
set udg_SS_Skip=(udg_SS_Skip-1)
call DestroyEffectBJ(udg_SS_Special[udg_SS])
set udg_SS_Unit[udg_SS]=null
set udg_SS_Angle[udg_SS]=0.00
set udg_SS_Countdown[udg_SS]=0
set udg_SS_Distance[udg_SS]=0.00
set udg_SS_Speed[udg_SS]=0.00
set udg_SS_Formula[udg_SS]=0.00
if(Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func012C())then
set udg_SS_Times=0
call DisableTrigger(gg_trg_Shade_Sheild_Loop)
else
endif
else
set udg_SS_Point[5]=GetUnitLoc(udg_SS_Unit[udg_SS])
set udg_SS_Speed[udg_SS]=(udg_SS_Distance[udg_SS]/udg_SS_Formula[udg_SS])
set udg_SS_Speed[udg_SS]=(udg_SS_Speed[udg_SS]+1.00)
set udg_SS_Point[6]=PolarProjectionBJ(udg_SS_Point[5],udg_SS_Speed[udg_SS],udg_SS_Angle[udg_SS])
call SetUnitPositionLoc(udg_SS_Unit[udg_SS],udg_SS_Point[6])
set udg_SS_Countdown[udg_SS]=(udg_SS_Countdown[udg_SS]+1)
if(Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func020C())then
call AddSpecialEffectLocBJ(udg_SS_Point[5],"Abilities\\Spells\\Human\\FlakCannons\\FlakTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
if(Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func020Func001C())then
set udg_SS_Countdown[udg_SS]=0
call AddSpecialEffectLocBJ(udg_SS_Point[5],"Abilities\\Spells\\Undead\\OrbOfDeath\\AnnihilationMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
endif
endif
call EnumDestructablesInCircleBJ(150.00,udg_SS_Point[6],function Trig_Shade_Sheild_Loop_Func001Func001Func001Func001Func021003)
call RemoveLocation(udg_SS_Point[5])
call RemoveLocation(udg_SS_Point[6])
set udg_SS_Distance[udg_SS]=(udg_SS_Distance[udg_SS]-udg_SS_Speed[udg_SS])
endif
else
endif
endif
set udg_SS=udg_SS+1
endloop
endfunction
function InitTrig_Shade_Sheild_Loop takes nothing returns nothing
set gg_trg_Shade_Sheild_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Shade_Sheild_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Shade_Sheild_Loop,0.03)
call TriggerAddAction(gg_trg_Shade_Sheild_Loop,function Trig_Shade_Sheild_Loop_Actions)
endfunction
function Trig_BA_Initialization_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_Beast_Attack_Table=GetLastCreatedHashtableBJ()
endfunction
function InitTrig_BA_Initialization takes nothing returns nothing
set gg_trg_BA_Initialization=CreateTrigger()
call TriggerAddAction(gg_trg_BA_Initialization,function Trig_BA_Initialization_Actions)
endfunction
function Trig_Beast_Attack_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303144))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Func059002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Beast_Attack_Func059002003002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Beast_Attack_Func059002003002002001 takes nothing returns boolean
return(IsPlayerEnemy(GetOwningPlayer(GetFilterUnit()),GetOwningPlayer(udg_Beast_Attack_Caster))==true)
endfunction
function Trig_Beast_Attack_Func059002003002002002 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)!=true)
endfunction
function Trig_Beast_Attack_Func059002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Beast_Attack_Func059002003002002001(),Trig_Beast_Attack_Func059002003002002002())
endfunction
function Trig_Beast_Attack_Func059002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Beast_Attack_Func059002003002001(),Trig_Beast_Attack_Func059002003002002())
endfunction
function Trig_Beast_Attack_Func059002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Beast_Attack_Func059002003001(),Trig_Beast_Attack_Func059002003002())
endfunction
function Trig_Beast_Attack_Func072Func010Func001C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_Beast_Attack_Damage_Group)>=1))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Func072Func010Func011C takes nothing returns boolean
if(not(udg_Beast_Attack_Random_Distance==true))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Func072Func010C takes nothing returns boolean
if(not(udg_Beast_Attack_Knock_Back_on==true))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Func072A takes nothing returns nothing
call UnitDamageTargetBJ(udg_Beast_Attack_Caster,GetEnumUnit(),udg_Beast_Attack_Total_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
call AddSpecialEffectTargetUnitBJ("origin",GetEnumUnit(),"Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
if(Trig_Beast_Attack_Func072Func010C())then
if(Trig_Beast_Attack_Func072Func010Func001C())then
call EnableTrigger(gg_trg_Beast_Attack_Knock)
else
endif
set udg_Beast_Attack_LocationII=GetUnitLoc(GetEnumUnit())
call SetUnitPathing(GetEnumUnit(),false)
call GroupAddUnitSimple(GetEnumUnit(),udg_Beast_Attack_KB_Group)
if(Trig_Beast_Attack_Func072Func010Func011C())then
set udg_Beast_Attack_KB_Total_Distance=GetRandomReal(udg_Beast_Attack_KB_Minim_Distance,udg_Beast_Attack_KB_Total_Distance)
else
endif
set udg_Beast_Attack_KB_Angle=AngleBetweenPoints(udg_Beast_Attack_Location,udg_Beast_Attack_LocationII)
call SaveRealBJ(udg_Beast_Attack_KB_Total_Distance,StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
call SaveRealBJ(udg_Beast_Attack_KB_Speed,StringHashBJ("speed"),GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
call SaveRealBJ(udg_Beast_Attack_KB_Angle,StringHashBJ("angle"),GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
call RemoveLocation(udg_Beast_Attack_LocationII)
else
endif
endfunction
function Trig_Beast_Attack_Actions takes nothing returns nothing
call PlaySoundOnUnitBJ(gg_snd_ForcePush,100,GetSpellAbilityUnit())
set udg_Beast_Attack_Caster=GetTriggerUnit()
set udg_Beast_Attack_Ability_Level=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_Beast_Attack_Caster)
set udg_Beast_Attack_Location=GetUnitLoc(udg_Beast_Attack_Caster)
set udg_Beast_Attack_Direction=GetUnitFacing(udg_Beast_Attack_Caster)
set udg_Beast_Attack_Destroy_Trees=true
set udg_Beast_Attack_Knock_Back_on=true
set udg_Beast_Attack_Random_Distance=true
set udg_Beast_Attack_KB_Special_Effect="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl"
set udg_Beast_Attack_Destroy_Trees_SE="Abilities\\Spells\\Human\\FlakCannons\\FlakTarget.mdl"
set udg_Beast_Attack_Base_Offset=60.00
set udg_Beast_Attack_Bonus_Offset=20.00
set udg_Beast_Attack_Base_Radius=80.00
set udg_Beast_Attack_Bonus_Radius=40.00
set udg_Beast_Attack_Atribute=GetHeroStatBJ(bj_HEROSTAT_STR,udg_Beast_Attack_Caster,true)
set udg_Beast_Attack_Damage_Multiplier=2.50
set udg_Beast_Attack_Destruct_Kill_AoE=150.00
set udg_Beast_Attack_KB_Minim_Distance=85.00
set udg_Beast_Attack_KB_Base_Distance=100.00
set udg_Beast_Attack_KB_Bonus_Distance=50.00
set udg_Beast_Attack_KB_Speed=12.00
set udg_Beast_Attack_Total_Radius=200.00
set udg_Beast_Attack_Total_Offset=1.00
set udg_Beast_Attack_Total_Damage=(110.00*I2R(udg_Beast_Attack_Ability_Level))
set udg_Beast_Attack_KB_Total_Distance=(200.00*I2R(udg_Beast_Attack_Ability_Level))
set udg_Beast_Attack_Damage_Location=PolarProjectionBJ(udg_Beast_Attack_Location,udg_Beast_Attack_Total_Offset,udg_Beast_Attack_Direction)
set udg_Beast_Attack_Damage_Group=GetUnitsInRangeOfLocMatching(udg_Beast_Attack_Total_Radius,udg_Beast_Attack_Damage_Location,Condition(function Trig_Beast_Attack_Func059002003))
call AddSpecialEffectTargetUnitBJ("hand, left",udg_Beast_Attack_Caster,"Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectTargetUnitBJ("hand, right",udg_Beast_Attack_Caster,"Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call CreateNUnitsAtLoc(1,0x6830304A,GetOwningPlayer(udg_Beast_Attack_Caster),udg_Beast_Attack_Damage_Location,udg_Beast_Attack_Direction)
call KillUnit(GetLastCreatedUnit())
call ForGroupBJ(udg_Beast_Attack_Damage_Group,function Trig_Beast_Attack_Func072A)
call RemoveLocation(udg_Beast_Attack_Location)
call RemoveLocation(udg_Beast_Attack_Damage_Location)
call DestroyGroup(udg_Beast_Attack_Damage_Group)
endfunction
function InitTrig_Beast_Attack takes nothing returns nothing
set gg_trg_Beast_Attack=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Beast_Attack,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Beast_Attack,Condition(function Trig_Beast_Attack_Conditions))
call TriggerAddAction(gg_trg_Beast_Attack,function Trig_Beast_Attack_Actions)
endfunction
function Trig_Beast_Attack_Knock_Func004Func010Func010C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_Beast_Attack_KB_Group)==0))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Knock_Func004Func010Func017Func007C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_Beast_Attack_KB_Group)==0))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Knock_Func004Func010Func017C takes nothing returns boolean
if(not(IsTerrainPathableBJ(udg_Beast_Attack_KB_LocII,PATHING_TYPE_WALKABILITY)==true))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Knock_Func004Func010Func018C takes nothing returns boolean
if(not(GetRandomReal(1.00,10.00)<=3.33))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Knock_Func004Func010Func022Func002Func002C takes nothing returns boolean
if(not(IsDestructableAliveBJ(GetEnumDestructable())==true))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Knock_Func004Func010Func022Func002A takes nothing returns nothing
set udg_Beast_Attack_KB_LocIII=GetDestructableLoc(GetEnumDestructable())
if(Trig_Beast_Attack_Knock_Func004Func010Func022Func002Func002C())then
call AddSpecialEffectLocBJ(udg_Beast_Attack_KB_LocIII,udg_Beast_Attack_Destroy_Trees_SE)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
endif
call KillDestructable(GetEnumDestructable())
call RemoveLocation(udg_Beast_Attack_KB_LocIII)
endfunction
function Trig_Beast_Attack_Knock_Func004Func010Func022C takes nothing returns boolean
if(not(udg_Beast_Attack_Destroy_Trees==true))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Knock_Func004Func010C takes nothing returns boolean
if(not(udg_Beast_Attack_KB_Total_Distance>0.00))then
return false
endif
return true
endfunction
function Trig_Beast_Attack_Knock_Func004A takes nothing returns nothing
set udg_Beast_Attack_KB_Total_Distance=LoadRealBJ(StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
set udg_Beast_Attack_KB_Speed=LoadRealBJ(StringHashBJ("speed"),GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
set udg_Beast_Attack_KB_Angle=LoadRealBJ(StringHashBJ("angle"),GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
if(Trig_Beast_Attack_Knock_Func004Func010C())then
set udg_Beast_Attack_KB_LocI=GetUnitLoc(GetEnumUnit())
set udg_Beast_Attack_KB_LocII=PolarProjectionBJ(udg_Beast_Attack_KB_LocI,udg_Beast_Attack_KB_Speed,udg_Beast_Attack_KB_Angle)
call SaveRealBJ((udg_Beast_Attack_KB_Total_Distance-udg_Beast_Attack_KB_Speed),StringHashBJ("distance"),GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
if(Trig_Beast_Attack_Knock_Func004Func010Func017C())then
call SetUnitPathing(GetEnumUnit(),true)
call GroupRemoveUnitSimple(GetEnumUnit(),udg_Beast_Attack_KB_Group)
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
if(Trig_Beast_Attack_Knock_Func004Func010Func017Func007C())then
call DisableTrigger(gg_trg_Beast_Attack_Knock)
else
endif
else
call SetUnitPositionLoc(GetEnumUnit(),udg_Beast_Attack_KB_LocII)
endif
if(Trig_Beast_Attack_Knock_Func004Func010Func018C())then
call AddSpecialEffectTargetUnitBJ("origin",GetEnumUnit(),udg_Beast_Attack_KB_Special_Effect)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
endif
if(Trig_Beast_Attack_Knock_Func004Func010Func022C())then
call EnumDestructablesInCircleBJ(udg_Beast_Attack_Destruct_Kill_AoE,udg_Beast_Attack_KB_LocII,function Trig_Beast_Attack_Knock_Func004Func010Func022Func002A)
else
endif
call RemoveLocation(udg_Beast_Attack_KB_LocI)
call RemoveLocation(udg_Beast_Attack_KB_LocII)
else
call SetUnitPathing(GetEnumUnit(),true)
call GroupRemoveUnitSimple(GetEnumUnit(),udg_Beast_Attack_KB_Group)
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_Beast_Attack_Table)
if(Trig_Beast_Attack_Knock_Func004Func010Func010C())then
call DisableTrigger(gg_trg_Beast_Attack_Knock)
else
endif
endif
endfunction
function Trig_Beast_Attack_Knock_Actions takes nothing returns nothing
call ForGroupBJ(udg_Beast_Attack_KB_Group,function Trig_Beast_Attack_Knock_Func004A)
endfunction
function InitTrig_Beast_Attack_Knock takes nothing returns nothing
set gg_trg_Beast_Attack_Knock=CreateTrigger()
call DisableTrigger(gg_trg_Beast_Attack_Knock)
call TriggerRegisterTimerEventPeriodic(gg_trg_Beast_Attack_Knock,0.03)
call TriggerAddAction(gg_trg_Beast_Attack_Knock,function Trig_Beast_Attack_Knock_Actions)
endfunction
function Trig_Sinister_Strike_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x4130324C))then
return false
endif
return true
endfunction
function Trig_Sinister_Strike_Func027C takes nothing returns boolean
if(not(GetRandomReal(1.00,100.00)<=udg_Sinister_Strike_Total_Chance))then
return false
endif
return true
endfunction
function Trig_Sinister_Strike_Actions takes nothing returns nothing
set udg_Sinister_Strike_Caster=GetTriggerUnit()
set udg_Sinister_Strike_Target=GetSpellTargetUnit()
set udg_Sinister_Strike_Ability_Level=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_Sinister_Strike_Caster)
set udg_Sinister_Strike_Location=GetUnitLoc(udg_Sinister_Strike_Target)
set udg_Sinister_Strike_Owner=GetOwningPlayer(udg_Sinister_Strike_Caster)
set udg_Sinister_Strike_Dummy_Ability=0x4130324B
set udg_Sinister_Strike_Damage_Factor=2.00
set udg_Sinister_Strike_Total_Damage=(150.00*I2R(udg_Sinister_Strike_Ability_Level))
set udg_Sinister_Strike_Normal_Armor=(udg_Sinister_Strike_Ability_Level+2)
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=10
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
call AddSpecialEffectTargetUnitBJ("origin",udg_Sinister_Strike_Target,"Abilities\\Spells\\Undead\\DeathandDecay\\DeathandDecayTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
call UnitDamageTargetBJ(udg_Sinister_Strike_Caster,udg_Sinister_Strike_Target,udg_Sinister_Strike_Total_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
if(Trig_Sinister_Strike_Func027C())then
call CreateNUnitsAtLoc(1,0x68303037,udg_Sinister_Strike_Owner,udg_Sinister_Strike_Location,bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(1.50,0x42544C46,GetLastCreatedUnit())
call UnitAddAbilityBJ(udg_Sinister_Strike_Dummy_Ability2,GetLastCreatedUnit())
call SetUnitAbilityLevelSwapped(udg_Sinister_Strike_Dummy_Ability,GetLastCreatedUnit(),udg_Sinister_Strike_Ability_Level)
call IssueTargetOrderBJ(GetLastCreatedUnit(),"acidbomb",udg_Sinister_Strike_Target)
call AddSpecialEffectTargetUnitBJ("origin",udg_Sinister_Strike_Target,"units\\nightelf\\SpiritOfVengeance\\SpiritOfVengeance.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
call CreateNUnitsAtLoc(1,0x68303037,udg_Sinister_Strike_Owner,udg_Sinister_Strike_Location,bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(1.50,0x42544C46,GetLastCreatedUnit())
call UnitAddAbilityBJ(udg_Sinister_Strike_Dummy_Ability,GetLastCreatedUnit())
call SetUnitAbilityLevelSwapped(udg_Sinister_Strike_Dummy_Ability,GetLastCreatedUnit(),udg_Sinister_Strike_Ability_Level)
call IssueTargetOrderBJ(GetLastCreatedUnit(),"acidbomb",udg_Sinister_Strike_Target)
endif
call SetTextTagPermanentBJ(GetLastCreatedTextTag(),false)
call SetTextTagVelocityBJ(GetLastCreatedTextTag(),64,90)
call SetTextTagFadepointBJ(GetLastCreatedTextTag(),3.00)
call SetTextTagLifespanBJ(GetLastCreatedTextTag(),5.00)
call RemoveLocation(udg_Sinister_Strike_Location)
endfunction
function InitTrig_Sinister_Strike takes nothing returns nothing
set gg_trg_Sinister_Strike=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Sinister_Strike,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Sinister_Strike,Condition(function Trig_Sinister_Strike_Conditions))
call TriggerAddAction(gg_trg_Sinister_Strike,function Trig_Sinister_Strike_Actions)
endfunction
function Trig_SInitialization_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_Hashtable=GetLastCreatedHashtableBJ()
endfunction
function InitTrig_SInitialization takes nothing returns nothing
set gg_trg_SInitialization=CreateTrigger()
call TriggerAddAction(gg_trg_SInitialization,function Trig_SInitialization_Actions)
endfunction
function Trig_Shockwave_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x4130304D))then
return false
endif
return true
endfunction
function Trig_Shockwave_Cast_Func029C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_Shockwaves)==true))then
return false
endif
return true
endfunction
function Trig_Shockwave_Cast_Actions takes nothing returns nothing
set udg_Caster=GetTriggerUnit()
set udg_Points[1]=GetUnitLoc(udg_Caster)
set udg_Points[2]=GetSpellTargetLoc()
set udg_Points[3]=PolarProjectionBJ(udg_Points[1],200.00,AngleBetweenPoints(udg_Points[1],udg_Points[2]))
set udg_Real[1]=850.00
set udg_Real[2]=(2.00+I2R(GetUnitAbilityLevelSwapped(0x4130304D,udg_Caster)))
set udg_Real[3]=(40.00+(20.00*I2R(GetUnitAbilityLevelSwapped(0x4130304D,udg_Caster))))
call CreateNUnitsAtLoc(1,0x6830304C,GetOwningPlayer(udg_Caster),udg_Points[3],AngleBetweenPoints(udg_Points[1],udg_Points[2]))
call PlaySoundOnUnitBJ(gg_snd_Shockwave,100,GetTriggerUnit())
call SaveUnitHandleBJ(udg_Caster,0,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveRealBJ(udg_Real[1],1,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveRealBJ(udg_Real[1],2,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveRealBJ(udg_Real[2],3,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveRealBJ(udg_Real[3],4,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
if(Trig_Shockwave_Cast_Func029C())then
call EnableTrigger(gg_trg_Shockwave_Slide)
else
endif
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_Shockwaves)
call RemoveLocation(udg_Points[1])
call RemoveLocation(udg_Points[2])
call RemoveLocation(udg_Points[3])
endfunction
function InitTrig_Shockwave_Cast takes nothing returns nothing
set gg_trg_Shockwave_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Shockwave_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Shockwave_Cast,Condition(function Trig_Shockwave_Cast_Conditions))
call TriggerAddAction(gg_trg_Shockwave_Cast,function Trig_Shockwave_Cast_Actions)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003001001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)!=true)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003001002 takes nothing returns boolean
return(UnitHasBuffBJ(GetFilterUnit(),0x42303030)!=true)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003001 takes nothing returns boolean
return GetBooleanAnd(Trig_Shockwave_Slide_Func001Func023002003001001(),Trig_Shockwave_Slide_Func001Func023002003001002())
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MECHANICAL)!=true)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)!=true)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002002002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_GROUND)==true)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002002002002001 takes nothing returns boolean
return(IsUnitDeadBJ(GetFilterUnit())!=true)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002002002002002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_Caster))==true)
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002002002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Shockwave_Slide_Func001Func023002003002002002002001(),Trig_Shockwave_Slide_Func001Func023002003002002002002002())
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Shockwave_Slide_Func001Func023002003002002002001(),Trig_Shockwave_Slide_Func001Func023002003002002002002())
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Shockwave_Slide_Func001Func023002003002002001(),Trig_Shockwave_Slide_Func001Func023002003002002002())
endfunction
function Trig_Shockwave_Slide_Func001Func023002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Shockwave_Slide_Func001Func023002003002001(),Trig_Shockwave_Slide_Func001Func023002003002002())
endfunction
function Trig_Shockwave_Slide_Func001Func023002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Shockwave_Slide_Func001Func023002003001(),Trig_Shockwave_Slide_Func001Func023002003002())
endfunction
function Trig_Shockwave_Slide_Func001Func027A takes nothing returns nothing
call CreateNUnitsAtLoc(1,0x6830304D,GetOwningPlayer(udg_Caster),udg_Points[2],bj_UNIT_FACING)
call UnitAddAbilityBJ(0x4130324D,GetLastCreatedUnit())
call SetUnitAbilityLevelSwapped(0x4130324D,GetLastCreatedUnit(),GetUnitAbilityLevelSwapped(0x4130304D,udg_Caster))
call IssueTargetOrderBJ(GetLastCreatedUnit(),"magicleash",GetEnumUnit())
call UnitApplyTimedLifeBJ(udg_Real[4],0x42544C46,GetLastCreatedUnit())
call UnitDamageTargetBJ(udg_Caster,GetEnumUnit(),udg_Real[5],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
endfunction
function Trig_Shockwave_Slide_Func001Func029C takes nothing returns boolean
if(not(udg_Real[1]<=0.00))then
return false
endif
return true
endfunction
function Trig_Shockwave_Slide_Func001A takes nothing returns nothing
set udg_Caster=LoadUnitHandleBJ(0,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[1]=LoadRealBJ(1,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[1]=(udg_Real[1]-27.00)
set udg_Real[2]=LoadRealBJ(2,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[3]=(udg_Real[1]/udg_Real[2])
set udg_Real[4]=LoadRealBJ(3,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[4]=(udg_Real[3]*udg_Real[4])
set udg_Real[5]=LoadRealBJ(4,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Points[1]=GetUnitLoc(GetEnumUnit())
set udg_Points[2]=PolarProjectionBJ(udg_Points[1],27.00,GetUnitFacing(GetEnumUnit()))
set udg_Enemies=GetUnitsInRangeOfLocMatching(200.00,udg_Points[2],Condition(function Trig_Shockwave_Slide_Func001Func023002003))
call SetUnitPositionLoc(GetEnumUnit(),udg_Points[2])
call ForGroupBJ(udg_Enemies,function Trig_Shockwave_Slide_Func001Func027A)
if(Trig_Shockwave_Slide_Func001Func029C())then
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
call GroupRemoveUnitSimple(GetEnumUnit(),udg_Shockwaves)
call RemoveUnit(GetEnumUnit())
else
call SaveRealBJ(udg_Real[1],1,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
endif
call DestroyGroup(udg_Enemies)
call RemoveLocation(udg_Points[1])
call RemoveLocation(udg_Points[2])
endfunction
function Trig_Shockwave_Slide_Func004C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_Shockwaves)==true))then
return false
endif
return true
endfunction
function Trig_Shockwave_Slide_Actions takes nothing returns nothing
call ForGroupBJ(udg_Shockwaves,function Trig_Shockwave_Slide_Func001A)
if(Trig_Shockwave_Slide_Func004C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endfunction
function InitTrig_Shockwave_Slide takes nothing returns nothing
set gg_trg_Shockwave_Slide=CreateTrigger()
call DisableTrigger(gg_trg_Shockwave_Slide)
call TriggerRegisterTimerEventPeriodic(gg_trg_Shockwave_Slide,0.03)
call TriggerAddAction(gg_trg_Shockwave_Slide,function Trig_Shockwave_Slide_Actions)
endfunction
function Trig_Ion_Canon_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303237))then
return false
endif
return true
endfunction
function Trig_Ion_Canon_Func022Func017002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Ion_Canon_Func022Func017002003002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Ion_Canon_Func022Func017002003002002 takes nothing returns boolean
return(IsPlayerEnemy(GetOwningPlayer(GetFilterUnit()),GetOwningPlayer(udg_Ion_Canon_Caster))==true)
endfunction
function Trig_Ion_Canon_Func022Func017002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Ion_Canon_Func022Func017002003002001(),Trig_Ion_Canon_Func022Func017002003002002())
endfunction
function Trig_Ion_Canon_Func022Func017002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Ion_Canon_Func022Func017002003001(),Trig_Ion_Canon_Func022Func017002003002())
endfunction
function Trig_Ion_Canon_Func022Func018A takes nothing returns nothing
call UnitDamageTargetBJ(udg_Ion_Canon_Caster,GetEnumUnit(),udg_Ion_Canon_Total_Damage,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
call SetUnitManaBJ(GetEnumUnit(),(GetUnitStateSwap(UNIT_STATE_MANA,GetEnumUnit())-udg_Ion_Canon_Total_Mana_Burn))
call AddSpecialEffectTargetUnitBJ("chest",GetEnumUnit(),"Abilities\\Weapons\\DragonHawkMissile\\DragonHawkMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectTargetUnitBJ("chest",GetEnumUnit(),"Abilities\\Spells\\Human\\Feedback\\ArcaneTowerAttack.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
endfunction
function Trig_Ion_Canon_Actions takes nothing returns nothing
set udg_Ion_Canon_Caster=GetTriggerUnit()
set udg_Ion_Canon_Ability_Level=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_Ion_Canon_Caster)
set udg_Ion_Canon_Distance=50.00
set udg_Ion_Canon_Loop_Number=25
set udg_Ion_Canon_Base_Damage=100.00
set udg_Ion_Canon_Total_Damage=(udg_Ion_Canon_Base_Damage*I2R(udg_Ion_Canon_Ability_Level))
set udg_Ion_Canon_Base_Mana_Burn=30.00
set udg_Ion_Canon_Total_Mana_Burn=(udg_Ion_Canon_Base_Mana_Burn*I2R(udg_Ion_Canon_Ability_Level))
set udg_Ion_Canon_AoE=75.00
set udg_Ion_Canon_Location=PolarProjectionBJ(GetUnitLoc(udg_Ion_Canon_Caster),100.00,GetUnitFacing(udg_Ion_Canon_Caster))
call CreateNUnitsAtLoc(1,0x6830304E,GetOwningPlayer(udg_Ion_Canon_Caster),udg_Ion_Canon_Location,GetUnitFacing(udg_Ion_Canon_Caster))
call UnitApplyTimedLifeBJ(1.00,0x42544C46,GetLastCreatedUnit())
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=udg_Ion_Canon_Loop_Number
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
set udg_Ion_Canon_Loop_Location=PolarProjectionBJ(udg_Ion_Canon_Location,(udg_Ion_Canon_Distance*I2R(GetForLoopIndexA())),GetUnitFacing(udg_Ion_Canon_Caster))
call CreateNUnitsAtLoc(1,0x6830304F,GetOwningPlayer(udg_Ion_Canon_Caster),udg_Ion_Canon_Loop_Location,GetUnitFacing(udg_Ion_Canon_Caster))
call UnitAddAbilityBJ(0x4130304C,GetLastCreatedUnit())
call UnitRemoveAbilityBJ(0x4130304C,GetLastCreatedUnit())
call SetUnitFlyHeightBJ(GetLastCreatedUnit(),100.00,0.00)
call SetUnitPathing(GetLastCreatedUnit(),false)
call UnitApplyTimedLifeBJ((0.85-(0.01*I2R(GetForLoopIndexA()))),0x42544C46,GetLastCreatedUnit())
set udg_Ion_Canon_Damage_Group=GetUnitsInRangeOfLocMatching(udg_Ion_Canon_AoE,udg_Ion_Canon_Loop_Location,Condition(function Trig_Ion_Canon_Func022Func017002003))
call ForGroupBJ(udg_Ion_Canon_Damage_Group,function Trig_Ion_Canon_Func022Func018A)
call DestroyGroup(udg_Ion_Canon_Damage_Group)
call RemoveLocation(udg_Ion_Canon_Loop_Location)
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
call RemoveLocation(udg_Ion_Canon_Location)
endfunction
function InitTrig_Ion_Canon takes nothing returns nothing
set gg_trg_Ion_Canon=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Ion_Canon,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Ion_Canon,Condition(function Trig_Ion_Canon_Conditions))
call TriggerAddAction(gg_trg_Ion_Canon,function Trig_Ion_Canon_Actions)
endfunction
function Trig_Magic_Leash_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303049))then
return false
endif
return true
endfunction
function Trig_Magic_Leash_Actions takes nothing returns nothing
set udg_Units[10]=GetSpellAbilityUnit()
set udg_Units[11]=GetSpellTargetUnit()
call PlaySoundOnUnitBJ(gg_snd_ForcePull,100,GetSpellAbilityUnit())
call SetUnitFacingToFaceUnitTimed(udg_Units[10],udg_Units[11],0.00)
call SetUnitPathing(udg_Units[11],false)
call EnableTrigger(gg_trg_Magic_Leash_Move)
endfunction
function InitTrig_Magic_Leash takes nothing returns nothing
set gg_trg_Magic_Leash=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Magic_Leash,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Magic_Leash,Condition(function Trig_Magic_Leash_Conditions))
call TriggerAddAction(gg_trg_Magic_Leash,function Trig_Magic_Leash_Actions)
endfunction
function Trig_Magic_Leash_Move_Func004003 takes nothing returns nothing
call KillDestructable(GetEnumDestructable())
endfunction
function Trig_Magic_Leash_Move_Func007C takes nothing returns boolean
if(not(DistanceBetweenPoints(GetUnitLoc(udg_Units[10]),GetUnitLoc(udg_Units[11]))<=100.00))then
return false
endif
return true
endfunction
function Trig_Magic_Leash_Move_Actions takes nothing returns nothing
call SetUnitPositionLoc(udg_Units[11],PolarProjectionBJ(GetUnitLoc(udg_Units[11]),-10.00,AngleBetweenPoints(GetUnitLoc(udg_Units[10]),GetUnitLoc(udg_Units[11]))))
call UnitDamageTargetBJ(udg_Units[10],udg_Units[11],20.00,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
call SetUnitLifeBJ(udg_Units[10],(GetUnitStateSwap(UNIT_STATE_LIFE,udg_Units[10])+1))
call EnumDestructablesInCircleBJ(100.00,GetUnitLoc(udg_Units[11]),function Trig_Magic_Leash_Move_Func004003)
call AddSpecialEffectLocBJ(GetUnitLoc(udg_Units[11]),"Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
if(Trig_Magic_Leash_Move_Func007C())then
call SetUnitPathing(udg_Units[11],true)
call UnitRemoveBuffBJ(0x426D6C74,udg_Units[11])
set udg_Units[10]=null
set udg_Units[11]=null
call DisableTrigger(GetTriggeringTrigger())
else
endif
endfunction
function InitTrig_Magic_Leash_Move takes nothing returns nothing
set gg_trg_Magic_Leash_Move=CreateTrigger()
call DisableTrigger(gg_trg_Magic_Leash_Move)
call TriggerRegisterTimerEventPeriodic(gg_trg_Magic_Leash_Move,0.01)
call TriggerAddAction(gg_trg_Magic_Leash_Move,function Trig_Magic_Leash_Move_Actions)
endfunction
function Trig_Hook_Table_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_PH_Table=GetLastCreatedHashtableBJ()
endfunction
function InitTrig_Hook_Table takes nothing returns nothing
set gg_trg_Hook_Table=CreateTrigger()
call TriggerAddAction(gg_trg_Hook_Table,function Trig_Hook_Table_Actions)
endfunction
function Trig_Hook_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303051))then
return false
endif
return true
endfunction
function Trig_Hook_Func007C takes nothing returns boolean
if(not(udg_PH_Index[1]==0))then
return false
endif
return true
endfunction
function Trig_Hook_Actions takes nothing returns nothing
call PlaySoundOnUnitBJ(gg_snd_Harpoon,100,GetSpellAbilityUnit())
if(Trig_Hook_Func007C())then
call EnableTrigger(gg_trg_Hook_Loop)
else
endif
set udg_PH_Index[1]=(udg_PH_Index[1]+1)
set udg_PH_Index[2]=(udg_PH_Index[2]+1)
set udg_PH_Counter[udg_PH_Index[2]]=0
set udg_PH_Cast_Point=GetUnitLoc(GetTriggerUnit())
set udg_PH_Target_Point=GetSpellTargetLoc()
set udg_PH_Caster[udg_PH_Index[2]]=GetTriggerUnit()
call PauseUnitBJ(true,udg_PH_Caster[udg_PH_Index[2]])
set udg_PH_Hook_Angle[udg_PH_Index[2]]=AngleBetweenPoints(udg_PH_Cast_Point,udg_PH_Target_Point)
set udg_PH_Near_Point=PolarProjectionBJ(udg_PH_Cast_Point,100.00,udg_PH_Hook_Angle[udg_PH_Index[2]])
call CreateNUnitsAtLoc(1,0x6E303044,GetOwningPlayer(udg_PH_Caster[udg_PH_Index[2]]),udg_PH_Near_Point,bj_UNIT_FACING)
set udg_PH_Dummy[udg_PH_Index[2]]=GetLastCreatedUnit()
set udg_PH_Hooked_Is[udg_PH_Index[2]]=false
set udg_PH_Hooked_Unit[udg_PH_Index[2]]=null
call RemoveLocation(udg_PH_Near_Point)
call RemoveLocation(udg_PH_Cast_Point)
call RemoveLocation(udg_PH_Target_Point)
set udg_PH_Damage=(100*GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_PH_Caster[udg_PH_Index[2]]))
set udg_PH_Distance=(15+(4*GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_PH_Caster[udg_PH_Index[2]])))
endfunction
function InitTrig_Hook takes nothing returns nothing
set gg_trg_Hook=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Hook,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Hook,Condition(function Trig_Hook_Conditions))
call TriggerAddAction(gg_trg_Hook,function Trig_Hook_Actions)
endfunction
function Trig_Hook_Loop_Func001Func001Func001Func019001003001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Hook_Loop_Func001Func001Func001Func019001003002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_PH_Caster[udg_PH_Index[3]]))==true)
endfunction
function Trig_Hook_Loop_Func001Func001Func001Func019001003 takes nothing returns boolean
return GetBooleanAnd(Trig_Hook_Loop_Func001Func001Func001Func019001003001(),Trig_Hook_Loop_Func001Func001Func001Func019001003002())
endfunction
function Trig_Hook_Loop_Func001Func001Func001Func019Func001C takes nothing returns boolean
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false))then
return false
endif
if(not(udg_PH_Hooked_Is[udg_PH_Index[3]]==false))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001Func001Func019A takes nothing returns nothing
if(Trig_Hook_Loop_Func001Func001Func001Func019Func001C())then
set udg_PH_Hooked_Unit[udg_PH_Index[3]]=GetEnumUnit()
set udg_PH_Hooked_Is[udg_PH_Index[3]]=true
call PauseUnitBJ(true,GetEnumUnit())
call SetUnitPathing(GetEnumUnit(),false)
call UnitDamageTargetBJ(udg_PH_Caster[udg_PH_Index[3]],GetEnumUnit(),I2R(udg_PH_Damage),ATTACK_TYPE_NORMAL,DAMAGE_TYPE_LIGHTNING)
else
endif
endfunction
function Trig_Hook_Loop_Func001Func001Func001Func027C takes nothing returns boolean
if(not(udg_PH_Counter[udg_PH_Index[3]]==udg_PH_Distance))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001Func001C takes nothing returns boolean
if(not(udg_PH_Hooked_Is[udg_PH_Index[3]]==false))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001Func002Func021C takes nothing returns boolean
if(not(udg_PH_Hooked_Unit[udg_PH_Index[3]]!=null))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001Func002C takes nothing returns boolean
if(not(udg_PH_Hooked_Is[udg_PH_Index[3]]==true))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001Func003Func011C takes nothing returns boolean
if(not(udg_PH_Hooked_Unit[udg_PH_Index[3]]!=null))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001Func003Func016C takes nothing returns boolean
if(not(udg_PH_Index[1]==0))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001Func003C takes nothing returns boolean
if(not(udg_PH_Counter[udg_PH_Index[3]]==0))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Func001Func001C takes nothing returns boolean
if(not(udg_PH_Counter[udg_PH_Index[3]]<udg_PH_Distance))then
return false
endif
return true
endfunction
function Trig_Hook_Loop_Actions takes nothing returns nothing
set udg_PH_Index[3]=1
loop
exitwhen udg_PH_Index[3]>udg_PH_Index[2]
if(Trig_Hook_Loop_Func001Func001C())then
if(Trig_Hook_Loop_Func001Func001Func001C())then
set udg_PH_Counter[udg_PH_Index[3]]=(udg_PH_Counter[udg_PH_Index[3]]+1)
set udg_PH_Dummy_Point[udg_PH_Index[3]]=GetUnitLoc(udg_PH_Dummy[udg_PH_Index[3]])
set udg_PH_Hook_Point[udg_PH_Index[3]]=PolarProjectionBJ(udg_PH_Dummy_Point[udg_PH_Index[3]],30.00,udg_PH_Hook_Angle[udg_PH_Index[3]])
call SetUnitPositionLoc(udg_PH_Dummy[udg_PH_Index[3]],udg_PH_Hook_Point[udg_PH_Index[3]])
call CreateNUnitsAtLoc(1,0x6E303049,GetOwningPlayer(udg_PH_Caster[udg_PH_Index[3]]),udg_PH_Dummy_Point[udg_PH_Index[3]],udg_PH_Hook_Angle[udg_PH_Index[3]])
call SetUnitPathing(GetLastCreatedUnit(),false)
call SaveUnitHandleBJ(GetLastCreatedUnit(),udg_PH_Counter[udg_PH_Index[3]],udg_PH_Index[3],udg_PH_Table)
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocMatching(64.00,udg_PH_Hook_Point[udg_PH_Index[3]],Condition(function Trig_Hook_Loop_Func001Func001Func001Func019001003)),function Trig_Hook_Loop_Func001Func001Func001Func019A)
call RemoveLocation(udg_PH_Dummy_Point[udg_PH_Index[3]])
call RemoveLocation(udg_PH_Hook_Point[udg_PH_Index[3]])
if(Trig_Hook_Loop_Func001Func001Func001Func027C())then
set udg_PH_Hooked_Is[udg_PH_Index[3]]=true
call PauseUnitBJ(false,udg_PH_Caster[udg_PH_Index[3]])
else
endif
else
endif
if(Trig_Hook_Loop_Func001Func001Func002C())then
set udg_PH_Counter[udg_PH_Index[3]]=(udg_PH_Counter[udg_PH_Index[3]]-1)
set udg_PH_Dummy_Point[udg_PH_Index[3]]=GetUnitLoc(udg_PH_Dummy[udg_PH_Index[3]])
set udg_PH_Hook_Point[udg_PH_Index[3]]=PolarProjectionBJ(udg_PH_Dummy_Point[udg_PH_Index[3]],30.00,(udg_PH_Hook_Angle[udg_PH_Index[3]]-180.00))
set udg_PH_Effect=LoadUnitHandleBJ((udg_PH_Counter[udg_PH_Index[3]]+1),udg_PH_Index[3],udg_PH_Table)
call KillUnit(udg_PH_Effect)
call RemoveUnit(udg_PH_Effect)
call SetUnitPositionLoc(udg_PH_Dummy[udg_PH_Index[3]],udg_PH_Hook_Point[udg_PH_Index[3]])
if(Trig_Hook_Loop_Func001Func001Func002Func021C())then
call SetUnitPositionLoc(udg_PH_Hooked_Unit[udg_PH_Index[3]],udg_PH_Dummy_Point[udg_PH_Index[3]])
else
endif
call RemoveLocation(udg_PH_Dummy_Point[udg_PH_Index[3]])
call RemoveLocation(udg_PH_Hook_Point[udg_PH_Index[3]])
else
endif
if(Trig_Hook_Loop_Func001Func001Func003C())then
call KillUnit(udg_PH_Dummy[udg_PH_Index[3]])
call RemoveUnit(udg_PH_Dummy[udg_PH_Index[3]])
call PauseUnitBJ(false,udg_PH_Caster[udg_PH_Index[3]])
call ResetUnitAnimation(udg_PH_Caster[udg_PH_Index[3]])
if(Trig_Hook_Loop_Func001Func001Func003Func011C())then
call PauseUnitBJ(false,udg_PH_Hooked_Unit[udg_PH_Index[3]])
call SetUnitPathing(udg_PH_Hooked_Unit[udg_PH_Index[3]],true)
else
endif
set udg_PH_Index[1]=(udg_PH_Index[1]-1)
if(Trig_Hook_Loop_Func001Func001Func003Func016C())then
set udg_PH_Index[2]=0
call DisableTrigger(GetTriggeringTrigger())
else
endif
else
endif
else
endif
set udg_PH_Index[3]=udg_PH_Index[3]+1
endloop
endfunction
function InitTrig_Hook_Loop takes nothing returns nothing
set gg_trg_Hook_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Hook_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Hook_Loop,0.02)
call TriggerAddAction(gg_trg_Hook_Loop,function Trig_Hook_Loop_Actions)
endfunction
function Trig_Elune_Arrow_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303250))then
return false
endif
return true
endfunction
function Trig_Elune_Arrow_Func003C takes nothing returns boolean
if(not(udg_Arrow_Counts>udg_Arrow_CountMaxSize))then
return false
endif
return true
endfunction
function Trig_Elune_Arrow_Actions takes nothing returns nothing
set udg_Arrow_Counts=(udg_Arrow_Counts+1)
set udg_Arrow_CountMaxSize=8191
if(Trig_Elune_Arrow_Func003C())then
set udg_Arrow_Counts=1
else
endif
set udg_Arrow_Caster[udg_Arrow_Counts]=GetSpellAbilityUnit()
set udg_Arrow_CasterLoc=GetUnitLoc(udg_Arrow_Caster[udg_Arrow_Counts])
set udg_Arrow_TargetPoint=GetSpellTargetLoc()
set udg_Arrow_Angle=AngleBetweenPoints(udg_Arrow_CasterLoc,udg_Arrow_TargetPoint)
call CreateNUnitsAtLoc(1,0x65303033,GetOwningPlayer(udg_Arrow_Caster[udg_Arrow_Counts]),udg_Arrow_CasterLoc,udg_Arrow_Angle)
call SetUnitUserData(GetLastCreatedUnit(),udg_Arrow_Counts)
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_Arrow_StartGroup)
set udg_Arrow_Distance[udg_Arrow_Counts]=2000.00
set udg_Arrow_DistanceTravel[udg_Arrow_Counts]=0.00
set udg_Arrow_StunDuration[udg_Arrow_Counts]=1
set udg_Arrow_DistanceCount[udg_Arrow_Counts]=0.00
call EnableTrigger(gg_trg_Elune_Arrow_Move)
call RemoveLocation(udg_Arrow_CasterLoc)
call RemoveLocation(udg_Arrow_TargetPoint)
endfunction
function InitTrig_Elune_Arrow takes nothing returns nothing
set gg_trg_Elune_Arrow=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Elune_Arrow,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Elune_Arrow,Condition(function Trig_Elune_Arrow_Conditions))
call TriggerAddAction(gg_trg_Elune_Arrow,function Trig_Elune_Arrow_Actions)
endfunction
function Trig_Elune_Arrow_Move_Func001Func007C takes nothing returns boolean
if(not(udg_Arrow_DistanceCount[udg_Arrow_CusValue]>=225.00))then
return false
endif
return true
endfunction
function Trig_Elune_Arrow_Move_Func001Func008002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)!=true)
endfunction
function Trig_Elune_Arrow_Move_Func001Func008002003002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Elune_Arrow_Move_Func001Func008002003002002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_Arrow_Caster[udg_Arrow_CusValue]))==true)
endfunction
function Trig_Elune_Arrow_Move_Func001Func008002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Elune_Arrow_Move_Func001Func008002003002001(),Trig_Elune_Arrow_Move_Func001Func008002003002002())
endfunction
function Trig_Elune_Arrow_Move_Func001Func008002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Elune_Arrow_Move_Func001Func008002003001(),Trig_Elune_Arrow_Move_Func001Func008002003002())
endfunction
function Trig_Elune_Arrow_Move_Func001Func010A takes nothing returns nothing
call UnitDamageTargetBJ(udg_Arrow_Caster[udg_Arrow_CusValue],GetEnumUnit(),(150.00*I2R(GetUnitAbilityLevelSwapped(0x41303250,udg_Arrow_Caster[udg_Arrow_CusValue]))),ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
call CreateNUnitsAtLoc(1,0x65303034,GetOwningPlayer(udg_Arrow_Caster[udg_Arrow_CusValue]),udg_Arrow_Movement,bj_UNIT_FACING)
call UnitAddAbilityBJ(0x4130324F,GetLastCreatedUnit())
call SetUnitAbilityLevelSwapped(0x4130324F,GetLastCreatedUnit(),udg_Arrow_StunDuration[udg_Arrow_CusValue])
call IssueTargetOrderBJ(GetLastCreatedUnit(),"thunderbolt",GetEnumUnit())
call UnitApplyTimedLifeBJ(1.50,0x42544C46,GetLastCreatedUnit())
endfunction
function Trig_Elune_Arrow_Move_Func001Func011Func001C takes nothing returns boolean
if((udg_Arrow_DistanceTravel[udg_Arrow_CusValue]>=udg_Arrow_Distance[udg_Arrow_CusValue]))then
return true
endif
if((CountUnitsInGroup(udg_Arrow_UnitGroup)>0))then
return true
endif
return false
endfunction
function Trig_Elune_Arrow_Move_Func001Func011C takes nothing returns boolean
if(not Trig_Elune_Arrow_Move_Func001Func011Func001C())then
return false
endif
return true
endfunction
function Trig_Elune_Arrow_Move_Func001A takes nothing returns nothing
set udg_Arrow_CusValue=GetUnitUserData(GetEnumUnit())
set udg_Arrow_DummyLoc=GetUnitLoc(GetEnumUnit())
set udg_Arrow_Movement=PolarProjectionBJ(udg_Arrow_DummyLoc,20.00,GetUnitFacing(GetEnumUnit()))
call SetUnitPositionLoc(GetEnumUnit(),udg_Arrow_Movement)
set udg_Arrow_DistanceTravel[udg_Arrow_CusValue]=(udg_Arrow_DistanceTravel[udg_Arrow_CusValue]+18.00)
set udg_Arrow_DistanceCount[udg_Arrow_CusValue]=(udg_Arrow_DistanceCount[udg_Arrow_CusValue]+18.00)
if(Trig_Elune_Arrow_Move_Func001Func007C())then
set udg_Arrow_StunDuration[udg_Arrow_CusValue]=(udg_Arrow_StunDuration[udg_Arrow_CusValue]+1)
set udg_Arrow_DistanceCount[udg_Arrow_CusValue]=0.00
else
endif
set udg_Arrow_UnitGroup=GetUnitsInRangeOfLocMatching(150.00,udg_Arrow_Movement,Condition(function Trig_Elune_Arrow_Move_Func001Func008002003))
set udg_Arrow_RandomUnit=GetRandomSubGroup(1,udg_Arrow_UnitGroup)
call ForGroupBJ(udg_Arrow_RandomUnit,function Trig_Elune_Arrow_Move_Func001Func010A)
if(Trig_Elune_Arrow_Move_Func001Func011C())then
call KillUnit(GetEnumUnit())
call GroupRemoveUnitSimple(GetEnumUnit(),udg_Arrow_StartGroup)
else
endif
call RemoveLocation(udg_Arrow_DummyLoc)
call RemoveLocation(udg_Arrow_Movement)
call DestroyGroup(udg_Arrow_UnitGroup)
call DestroyGroup(udg_Arrow_RandomUnit)
endfunction
function Trig_Elune_Arrow_Move_Func002C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_Arrow_StartGroup)==0))then
return false
endif
return true
endfunction
function Trig_Elune_Arrow_Move_Actions takes nothing returns nothing
call ForGroupBJ(udg_Arrow_StartGroup,function Trig_Elune_Arrow_Move_Func001A)
if(Trig_Elune_Arrow_Move_Func002C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endfunction
function InitTrig_Elune_Arrow_Move takes nothing returns nothing
set gg_trg_Elune_Arrow_Move=CreateTrigger()
call DisableTrigger(gg_trg_Elune_Arrow_Move)
call TriggerRegisterTimerEventPeriodic(gg_trg_Elune_Arrow_Move,0.02)
call TriggerAddAction(gg_trg_Elune_Arrow_Move,function Trig_Elune_Arrow_Move_Actions)
endfunction
function Trig_Lightning_Ball_Begin_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303251))then
return false
endif
return true
endfunction
function Trig_Lightning_Ball_Begin_Func001C takes nothing returns boolean
if(not(udg_LP_Integer[1]==0))then
return false
endif
return true
endfunction
function Trig_Lightning_Ball_Begin_Actions takes nothing returns nothing
if(Trig_Lightning_Ball_Begin_Func001C())then
call EnableTrigger(gg_trg_Lightning_Ball_Move)
else
endif
set udg_LP_Integer[1]=(udg_LP_Integer[1]+1)
set udg_LP_Integer[2]=(udg_LP_Integer[2]+1)
set udg_LP_Caster[udg_LP_Integer[2]]=GetTriggerUnit()
set udg_LP_Location[udg_LP_Integer[2]]=GetUnitLoc(udg_LP_Caster[udg_LP_Integer[2]])
set udg_LP_Location2[udg_LP_Integer[2]]=GetSpellTargetLoc()
set udg_LP_Angle[udg_LP_Integer[2]]=AngleBetweenPoints(udg_LP_Location[udg_LP_Integer[2]],udg_LP_Location2[udg_LP_Integer[2]])
set udg_LP_Tick[udg_LP_Integer[2]]=21
call CreateNUnitsAtLoc(1,0x68303055,GetOwningPlayer(udg_LP_Caster[udg_LP_Integer[2]]),udg_LP_Location[udg_LP_Integer[2]],udg_LP_Angle[udg_LP_Integer[2]])
set udg_LP_Dummy[udg_LP_Integer[2]]=GetLastCreatedUnit()
set udg_LP_DummyPoint[udg_LP_Integer[2]]=GetUnitLoc(udg_LP_Dummy[udg_LP_Integer[2]])
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_LP_DummyGroup[udg_LP_Integer[2]])
call AddLightningLoc("FORK",udg_LP_Location[udg_LP_Integer[2]],udg_LP_DummyPoint[udg_LP_Integer[2]])
set udg_LP_Lightning[udg_LP_Integer[2]]=GetLastCreatedLightningBJ()
call RemoveLocation(udg_LP_Location2[udg_LP_Integer[2]])
call RemoveLocation(udg_LP_DummyPoint[udg_LP_Integer[2]])
endfunction
function InitTrig_Lightning_Ball_Begin takes nothing returns nothing
set gg_trg_Lightning_Ball_Begin=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Lightning_Ball_Begin,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Lightning_Ball_Begin,Condition(function Trig_Lightning_Ball_Begin_Conditions))
call TriggerAddAction(gg_trg_Lightning_Ball_Begin,function Trig_Lightning_Ball_Begin_Actions)
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false)
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002002001 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_LP_Caster[udg_LP_Integer[3]]))==true)
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002002002 takes nothing returns boolean
return(IsUnitInGroup(GetFilterUnit(),udg_LP_NonStrike[udg_LP_Integer[3]])==false)
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002002001(),Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002002002())
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002001(),Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002002())
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002001(),Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002002())
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003001(),Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003002())
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001Func008A takes nothing returns nothing
set udg_LP_PickedUnit[udg_LP_Integer[3]]=GetEnumUnit()
set udg_LP_PositionPickedUnit[udg_LP_Integer[3]]=GetUnitLoc(udg_LP_PickedUnit[udg_LP_Integer[3]])
call CreateNUnitsAtLoc(1,0x68303056,GetOwningPlayer(udg_LP_Caster[udg_LP_Integer[3]]),udg_LP_DummyPoint[udg_LP_Integer[3]],udg_LP_Angle[udg_LP_Integer[3]])
call ShowUnitHide(GetLastCreatedUnit())
call IssueTargetOrderBJ(GetLastCreatedUnit(),"slow",GetEnumUnit())
call UnitApplyTimedLifeBJ(2.00,0x42544C46,GetLastCreatedUnit())
call AddSpecialEffectLocBJ(udg_LP_PositionPickedUnit[udg_LP_Integer[3]],"Abilities\\Weapons\\Bolt\\BoltImpact.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call UnitDamageTargetBJ(udg_LP_Caster[udg_LP_Integer[3]],GetEnumUnit(),(280.00*I2R(GetUnitAbilityLevelSwapped(0x41303251,udg_LP_Caster[udg_LP_Integer[3]]))),ATTACK_TYPE_CHAOS,DAMAGE_TYPE_NORMAL)
call GroupAddUnitSimple(GetEnumUnit(),udg_LP_NonStrike[udg_LP_Integer[3]])
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func001C takes nothing returns boolean
if(not(udg_LP_Tick[udg_LP_Integer[3]]>0))then
return false
endif
return true
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func002Func004Func003C takes nothing returns boolean
if(not(udg_LP_Integer[1]==0))then
return false
endif
return true
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func002Func004C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_LP_DummyGroup[udg_LP_Integer[3]])==true))then
return false
endif
return true
endfunction
function Trig_Lightning_Ball_Move_Func001Func001Func002C takes nothing returns boolean
if(not(udg_LP_Tick[udg_LP_Integer[3]]==0))then
return false
endif
return true
endfunction
function Trig_Lightning_Ball_Move_Func001Func001A takes nothing returns nothing
if(Trig_Lightning_Ball_Move_Func001Func001Func001C())then
set udg_LP_DummyPoint[udg_LP_Integer[3]]=GetUnitLoc(GetEnumUnit())
set udg_LP_Location2[udg_LP_Integer[3]]=PolarProjectionBJ(udg_LP_DummyPoint[udg_LP_Integer[3]],50.00,udg_LP_Angle[udg_LP_Integer[3]])
call AddSpecialEffectLocBJ(udg_LP_DummyPoint[udg_LP_Integer[3]],"Abilities\\Weapons\\Bolt\\BoltImpact.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call SetUnitPositionLoc(udg_LP_Dummy[udg_LP_Integer[3]],udg_LP_Location2[udg_LP_Integer[3]])
call MoveLightningLoc(udg_LP_Lightning[udg_LP_Integer[3]],udg_LP_Location[udg_LP_Integer[3]],udg_LP_DummyPoint[udg_LP_Integer[3]])
set udg_LP_Strike[udg_LP_Integer[3]]=GetUnitsInRangeOfLocMatching(125.00,udg_LP_DummyPoint[udg_LP_Integer[3]],Condition(function Trig_Lightning_Ball_Move_Func001Func001Func001Func007002003))
call ForGroupBJ(udg_LP_Strike[udg_LP_Integer[3]],function Trig_Lightning_Ball_Move_Func001Func001Func001Func008A)
call RemoveLocation(udg_LP_DummyPoint[udg_LP_Integer[3]])
call RemoveLocation(udg_LP_Location2[udg_LP_Integer[3]])
call RemoveLocation(udg_LP_PositionPickedUnit[udg_LP_Integer[3]])
call DestroyGroup(udg_LP_Strike[udg_LP_Integer[3]])
set udg_LP_Tick[udg_LP_Integer[3]]=(udg_LP_Tick[udg_LP_Integer[3]]-1)
else
endif
if(Trig_Lightning_Ball_Move_Func001Func001Func002C())then
call GroupRemoveUnitSimple(udg_LP_Dummy[udg_LP_Integer[3]],udg_LP_DummyGroup[udg_LP_Integer[3]])
call KillUnit(GetEnumUnit())
call DestroyLightningBJ(udg_LP_Lightning[udg_LP_Integer[3]])
if(Trig_Lightning_Ball_Move_Func001Func001Func002Func004C())then
set udg_LP_Integer[1]=(udg_LP_Integer[1]-1)
if(Trig_Lightning_Ball_Move_Func001Func001Func002Func004Func003C())then
set udg_LP_Integer[2]=0
call GroupClear(udg_LP_NonStrike[udg_LP_Integer[3]])
call DisableTrigger(GetTriggeringTrigger())
else
endif
else
endif
else
endif
endfunction
function Trig_Lightning_Ball_Move_Actions takes nothing returns nothing
set udg_LP_Integer[3]=1
loop
exitwhen udg_LP_Integer[3]>udg_LP_Integer[2]
call ForGroupBJ(udg_LP_DummyGroup[udg_LP_Integer[3]],function Trig_Lightning_Ball_Move_Func001Func001A)
set udg_LP_Integer[3]=udg_LP_Integer[3]+1
endloop
endfunction
function InitTrig_Lightning_Ball_Move takes nothing returns nothing
set gg_trg_Lightning_Ball_Move=CreateTrigger()
call DisableTrigger(gg_trg_Lightning_Ball_Move)
call TriggerRegisterTimerEventPeriodic(gg_trg_Lightning_Ball_Move,0.03)
call TriggerAddAction(gg_trg_Lightning_Ball_Move,function Trig_Lightning_Ball_Move_Actions)
endfunction
function Trig_Heat_Ripple_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303042))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Func003C takes nothing returns boolean
if(not(udg_HR_Index_Size==0))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Func005C takes nothing returns boolean
if(not(udg_HR_Index_Size>udg_HR_Index_maxSize))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Actions takes nothing returns nothing
call PlaySoundOnUnitBJ(gg_snd_HeatRipple,100,GetSpellAbilityUnit())
if(Trig_Heat_Ripple_Func003C())then
call EnableTrigger(gg_trg_Heat_Ripple_Loop)
else
endif
set udg_HR_Index_Size=(udg_HR_Index_Size+1)
if(Trig_Heat_Ripple_Func005C())then
set udg_HR_Index[udg_HR_Index_Size]=udg_HR_Index_Size
set udg_HR_Index_maxSize=udg_HR_Index_Size
else
endif
set udg_TempInt=udg_HR_Index[udg_HR_Index_Size]
set udg_HR_Caster[udg_TempInt]=GetTriggerUnit()
set udg_HR_TempLoc1[udg_TempInt]=GetUnitLoc(GetTriggerUnit())
set udg_HR_TempLoc2[udg_TempInt]=PolarProjectionBJ(GetUnitLoc(GetTriggerUnit()),udg_HR_Offset[udg_TempInt],udg_HR_Degree[udg_TempInt])
set udg_HR_TempLoc3[udg_TempInt]=PolarProjectionBJ(GetUnitLoc(GetTriggerUnit()),udg_HR_Offset[udg_TempInt],(udg_HR_Degree[udg_TempInt]-180.00))
set udg_HR_TempLoc4[udg_TempInt]=PolarProjectionBJ(udg_HR_TempLoc1[udg_TempInt],udg_HR_Offset[udg_TempInt],(udg_HR_Degree[udg_TempInt]-90.00))
set udg_HR_TempLoc5[udg_TempInt]=PolarProjectionBJ(udg_HR_TempLoc1[udg_TempInt],udg_HR_Offset[udg_TempInt],(udg_HR_Degree[udg_TempInt]-270.00))
set udg_HR_Dur[udg_TempInt]=1.00
set udg_HR_Damage[udg_TempInt]=(100.00*I2R(GetUnitAbilityLevelSwapped(GetSpellAbilityId(),GetTriggerUnit())))
set udg_HR_Degree[udg_TempInt]=GetRandomDirectionDeg()
set udg_HR_Offset[udg_TempInt]=40.00
set udg_HR_AoE[udg_TempInt]=150.00
endfunction
function InitTrig_Heat_Ripple takes nothing returns nothing
set gg_trg_Heat_Ripple=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Heat_Ripple,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Heat_Ripple,Condition(function Trig_Heat_Ripple_Conditions))
call TriggerAddAction(gg_trg_Heat_Ripple,function Trig_Heat_Ripple_Actions)
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func029Func001Func002C takes nothing returns boolean
if(not(IsUnitEnemy(udg_HR_Caster[udg_TempInt],GetOwningPlayer(GetEnumUnit()))==true))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,GetEnumUnit())>0.41))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func029Func001C takes nothing returns boolean
if(not Trig_Heat_Ripple_Loop_Func001Func004Func029Func001Func002C())then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func029A takes nothing returns nothing
if(Trig_Heat_Ripple_Loop_Func001Func004Func029Func001C())then
call UnitDamageTargetBJ(udg_HR_Caster[udg_TempInt],GetEnumUnit(),udg_HR_Damage[udg_TempInt],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
else
endif
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func031Func001Func002C takes nothing returns boolean
if(not(IsUnitEnemy(udg_HR_Caster[udg_TempInt],GetOwningPlayer(GetEnumUnit()))==true))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,GetEnumUnit())>0.41))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func031Func001C takes nothing returns boolean
if(not Trig_Heat_Ripple_Loop_Func001Func004Func031Func001Func002C())then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func031A takes nothing returns nothing
if(Trig_Heat_Ripple_Loop_Func001Func004Func031Func001C())then
call UnitDamageTargetBJ(udg_HR_Caster[udg_TempInt],GetEnumUnit(),udg_HR_Damage[udg_TempInt],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
else
endif
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func033Func001Func002C takes nothing returns boolean
if(not(IsUnitEnemy(udg_HR_Caster[udg_TempInt],GetOwningPlayer(GetEnumUnit()))==true))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,GetEnumUnit())>0.41))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func033Func001C takes nothing returns boolean
if(not Trig_Heat_Ripple_Loop_Func001Func004Func033Func001Func002C())then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func033A takes nothing returns nothing
if(Trig_Heat_Ripple_Loop_Func001Func004Func033Func001C())then
call UnitDamageTargetBJ(udg_HR_Caster[udg_TempInt],GetEnumUnit(),udg_HR_Damage[udg_TempInt],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
else
endif
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func035Func001Func002C takes nothing returns boolean
if(not(IsUnitEnemy(udg_HR_Caster[udg_TempInt],GetOwningPlayer(GetEnumUnit()))==true))then
return false
endif
if(not(GetUnitStateSwap(UNIT_STATE_LIFE,GetEnumUnit())>0.41))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func035Func001C takes nothing returns boolean
if(not Trig_Heat_Ripple_Loop_Func001Func004Func035Func001Func002C())then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004Func035A takes nothing returns nothing
if(Trig_Heat_Ripple_Loop_Func001Func004Func035Func001C())then
call UnitDamageTargetBJ(udg_HR_Caster[udg_TempInt],GetEnumUnit(),udg_HR_Damage[udg_TempInt],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
else
endif
endfunction
function Trig_Heat_Ripple_Loop_Func001Func004C takes nothing returns boolean
if(not(udg_HR_Dur[udg_TempInt]>0.00))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Func003C takes nothing returns boolean
if(not(udg_HR_Index_Size==0))then
return false
endif
return true
endfunction
function Trig_Heat_Ripple_Loop_Actions takes nothing returns nothing
set udg_HR_LOOP=1
loop
exitwhen udg_HR_LOOP>udg_HR_Index_Size
set udg_TempInt=udg_HR_Index[udg_HR_LOOP]
if(Trig_Heat_Ripple_Loop_Func001Func004C())then
set udg_HR_Dur[udg_TempInt]=(udg_HR_Dur[udg_TempInt]-0.10)
set udg_HR_Offset[udg_TempInt]=(udg_HR_Offset[udg_TempInt]+50.00)
set udg_HR_TempLoc2[udg_TempInt]=PolarProjectionBJ(udg_HR_TempLoc1[udg_TempInt],udg_HR_Offset[udg_TempInt],udg_HR_Degree[udg_TempInt])
set udg_HR_TempLoc3[udg_TempInt]=PolarProjectionBJ(udg_HR_TempLoc1[udg_TempInt],udg_HR_Offset[udg_TempInt],(udg_HR_Degree[udg_TempInt]-180.00))
set udg_HR_TempLoc4[udg_TempInt]=PolarProjectionBJ(udg_HR_TempLoc1[udg_TempInt],udg_HR_Offset[udg_TempInt],(udg_HR_Degree[udg_TempInt]-90.00))
set udg_HR_TempLoc5[udg_TempInt]=PolarProjectionBJ(udg_HR_TempLoc1[udg_TempInt],udg_HR_Offset[udg_TempInt],(udg_HR_Degree[udg_TempInt]-270.00))
call AddSpecialEffectLocBJ(udg_HR_TempLoc2[udg_TempInt],"Objects\\Spawnmodels\\NightElf\\EntBirthTarget\\EntBirthTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectLocBJ(udg_HR_TempLoc3[udg_TempInt],"Objects\\Spawnmodels\\NightElf\\EntBirthTarget\\EntBirthTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectLocBJ(udg_HR_TempLoc4[udg_TempInt],"Objects\\Spawnmodels\\NightElf\\EntBirthTarget\\EntBirthTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call AddSpecialEffectLocBJ(udg_HR_TempLoc5[udg_TempInt],"Objects\\Spawnmodels\\NightElf\\EntBirthTarget\\EntBirthTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocAll(udg_HR_AoE[udg_TempInt],udg_HR_TempLoc2[udg_TempInt]),function Trig_Heat_Ripple_Loop_Func001Func004Func029A)
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocAll(udg_HR_AoE[udg_TempInt],udg_HR_TempLoc3[udg_TempInt]),function Trig_Heat_Ripple_Loop_Func001Func004Func031A)
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocAll(udg_HR_AoE[udg_TempInt],udg_HR_TempLoc4[udg_TempInt]),function Trig_Heat_Ripple_Loop_Func001Func004Func033A)
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocAll(udg_HR_AoE[udg_TempInt],udg_HR_TempLoc5[udg_TempInt]),function Trig_Heat_Ripple_Loop_Func001Func004Func035A)
call RemoveLocation(udg_HR_TempLoc2[udg_TempInt])
call RemoveLocation(udg_HR_TempLoc3[udg_TempInt])
call RemoveLocation(udg_HR_TempLoc4[udg_TempInt])
call RemoveLocation(udg_HR_TempLoc5[udg_TempInt])
else
call RemoveLocation(udg_HR_TempLoc1[udg_TempInt])
call RemoveLocation(udg_HR_TempLoc2[udg_TempInt])
call RemoveLocation(udg_HR_TempLoc3[udg_TempInt])
call RemoveLocation(udg_HR_TempLoc4[udg_TempInt])
call RemoveLocation(udg_HR_TempLoc5[udg_TempInt])
set udg_HR_Index[udg_HR_LOOP]=udg_HR_Index[udg_HR_Index_Size]
set udg_HR_Index[udg_HR_Index_Size]=udg_TempInt
set udg_HR_Index_Size=(udg_HR_Index_Size-1)
set udg_HR_LOOP=(udg_HR_LOOP-1)
endif
set udg_HR_LOOP=udg_HR_LOOP+1
endloop
if(Trig_Heat_Ripple_Loop_Func003C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endfunction
function InitTrig_Heat_Ripple_Loop takes nothing returns nothing
set gg_trg_Heat_Ripple_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Heat_Ripple_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Heat_Ripple_Loop,0.10)
call TriggerAddAction(gg_trg_Heat_Ripple_Loop,function Trig_Heat_Ripple_Loop_Actions)
endfunction
function Trig_Tornado_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x414F7777))then
return false
endif
return true
endfunction
function Trig_Tornado_Actions takes nothing returns nothing
set udg_TO_Max=(udg_TO_Max+1)
set udg_TO_Hero[udg_TO_Max]=GetTriggerUnit()
set udg_TO_Duration[udg_TO_Max]=7.00
call EnableTrigger(gg_trg_Tornado_Damage)
endfunction
function InitTrig_Tornado takes nothing returns nothing
set gg_trg_Tornado=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Tornado,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Tornado,Condition(function Trig_Tornado_Conditions))
call TriggerAddAction(gg_trg_Tornado,function Trig_Tornado_Actions)
endfunction
function Trig_Tornado_Damage_Func001Func001Func001C takes nothing returns boolean
if(not(udg_TO_Max==1))then
return false
endif
return true
endfunction
function Trig_Tornado_Damage_Func001Func001Func005002003001 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_TO_Hero[udg_to]))==true)
endfunction
function Trig_Tornado_Damage_Func001Func001Func005002003002 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Tornado_Damage_Func001Func001Func005002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Tornado_Damage_Func001Func001Func005002003001(),Trig_Tornado_Damage_Func001Func001Func005002003002())
endfunction
function Trig_Tornado_Damage_Func001Func001Func006Func005C takes nothing returns boolean
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_STRUCTURE)==false))then
return false
endif
return true
endfunction
function Trig_Tornado_Damage_Func001Func001Func006A takes nothing returns nothing
call UnitDamageTargetBJ(udg_TO_Hero[udg_to],GetEnumUnit(),20.00,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
if(Trig_Tornado_Damage_Func001Func001Func006Func005C())then
call TriggerExecute(gg_trg_Knockback_Index)
set udg_KB_Unit[udg_kb]=GetEnumUnit()
set udg_point2=GetUnitLoc(udg_KB_Unit[udg_kb])
set udg_KB_Angle[udg_kb]=AngleBetweenPoints(udg_point,udg_point2)
set udg_KB_MaxDist[udg_kb]=200.00
set udg_KB_Speed[udg_kb]=50.00
set udg_KB_Dist[udg_kb]=0.00
call EnableTrigger(gg_trg_Knockback_Move)
call RemoveLocation(udg_point2)
else
endif
endfunction
function Trig_Tornado_Damage_Func001Func001C takes nothing returns boolean
if(not(udg_TO_Duration[udg_to]>0.00))then
return false
endif
return true
endfunction
function Trig_Tornado_Damage_Actions takes nothing returns nothing
set udg_to=1
loop
exitwhen udg_to>udg_TO_Max
if(Trig_Tornado_Damage_Func001Func001C())then
set udg_TO_Duration[udg_to]=(udg_TO_Duration[udg_to]-0.10)
set udg_point=GetUnitLoc(udg_TO_Hero[udg_to])
set udg_group=GetUnitsInRangeOfLocMatching(200.00,udg_point,Condition(function Trig_Tornado_Damage_Func001Func001Func005002003))
call ForGroupBJ(udg_group,function Trig_Tornado_Damage_Func001Func001Func006A)
call DestroyGroup(udg_group)
call RemoveLocation(udg_point)
else
if(Trig_Tornado_Damage_Func001Func001Func001C())then
call DisableTrigger(GetTriggeringTrigger())
else
set udg_TO_Duration[udg_to]=udg_TO_Duration[udg_TO_Max]
set udg_TO_Hero[udg_to]=udg_TO_Hero[udg_TO_Max]
set udg_to=(udg_to-1)
endif
set udg_TO_Max=(udg_TO_Max-1)
endif
set udg_to=udg_to+1
endloop
endfunction
function InitTrig_Tornado_Damage takes nothing returns nothing
set gg_trg_Tornado_Damage=CreateTrigger()
call DisableTrigger(gg_trg_Tornado_Damage)
call TriggerRegisterTimerEventPeriodic(gg_trg_Tornado_Damage,0.10)
call TriggerAddAction(gg_trg_Tornado_Damage,function Trig_Tornado_Damage_Actions)
endfunction
function Trig_Heroic_Leap_vAoE_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303249))then
return false
endif
return true
endfunction
function Trig_Heroic_Leap_vAoE_Cast_Func007C takes nothing returns boolean
if(not(IsTerrainPathableBJ(udg_Points[2],PATHING_TYPE_WALKABILITY)==true))then
return false
endif
return true
endfunction
function Trig_Heroic_Leap_vAoE_Cast_Func032C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_AoELeapers)==true))then
return false
endif
return true
endfunction
function Trig_Heroic_Leap_vAoE_Cast_Actions takes nothing returns nothing
set udg_Caster=GetTriggerUnit()
set udg_Points[1]=GetUnitLoc(udg_Caster)
set udg_Points[2]=GetSpellTargetLoc()
if(Trig_Heroic_Leap_vAoE_Cast_Func007C())then
call CreateItemLoc(0x74657870,udg_Points[2])
call RemoveLocation(udg_Points[2])
set udg_Points[2]=GetItemLoc(GetLastCreatedItem())
call RemoveItem(GetLastCreatedItem())
else
endif
set udg_Real[1]=DistanceBetweenPoints(udg_Points[1],udg_Points[2])
set udg_Real[2]=(udg_Real[1]/2.00)
set udg_Real[3]=AngleBetweenPoints(udg_Points[1],udg_Points[2])
call SetUnitPathing(udg_Caster,false)
call SetUnitInvulnerable(udg_Caster,true)
call UnitAddAbilityBJ(0x41726176,udg_Caster)
call UnitRemoveAbilityBJ(0x41726176,udg_Caster)
call AddSpecialEffectTargetUnitBJ("origin",udg_Caster,"Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call SaveRealBJ(udg_Real[1],0,GetHandleIdBJ(GetTriggerUnit()),udg_Hashtable)
call SaveRealBJ(udg_Real[2],1,GetHandleIdBJ(GetTriggerUnit()),udg_Hashtable)
call SaveRealBJ(udg_Real[3],2,GetHandleIdBJ(GetTriggerUnit()),udg_Hashtable)
if(Trig_Heroic_Leap_vAoE_Cast_Func032C())then
call EnableTrigger(gg_trg_Heroic_Leap_vAoE_Slide)
else
endif
call GroupAddUnitSimple(GetTriggerUnit(),udg_AoELeapers)
call RemoveLocation(udg_Points[1])
call RemoveLocation(udg_Points[2])
endfunction
function InitTrig_Heroic_Leap_vAoE_Cast takes nothing returns nothing
set gg_trg_Heroic_Leap_vAoE_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Heroic_Leap_vAoE_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Heroic_Leap_vAoE_Cast,Condition(function Trig_Heroic_Leap_vAoE_Cast_Conditions))
call TriggerAddAction(gg_trg_Heroic_Leap_vAoE_Cast,function Trig_Heroic_Leap_vAoE_Cast_Actions)
endfunction
function Trig_Heroic_Leap_vAoE_Slide_Func001Func015Func023001 takes nothing returns boolean
return(udg_Real[1]>udg_Real[2])
endfunction
function Trig_Heroic_Leap_vAoE_Slide_Func001Func015C takes nothing returns boolean
if(not(udg_Real[1]>=0.00))then
return false
endif
return true
endfunction
function Trig_Heroic_Leap_vAoE_Slide_Func001A takes nothing returns nothing
set udg_Caster=GetEnumUnit()
set udg_Real[1]=LoadRealBJ(0,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[1]=(udg_Real[1]-33.00)
set udg_Real[2]=LoadRealBJ(1,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[3]=LoadRealBJ(2,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Points[1]=GetUnitLoc(udg_Caster)
set udg_Points[2]=PolarProjectionBJ(udg_Points[1],33.00,udg_Real[3])
if(Trig_Heroic_Leap_vAoE_Slide_Func001Func015C())then
call SetUnitPositionLoc(udg_Caster,udg_Points[2])
if(Trig_Heroic_Leap_vAoE_Slide_Func001Func015Func023001())then
set udg_Real[3]=20.00
else
set udg_Real[3]=-20.00
endif
call SetUnitFlyHeightBJ(udg_Caster,(GetUnitFlyHeight(udg_Caster)+udg_Real[3]),0.00)
call SaveRealBJ(udg_Real[1],0,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
else
call SetUnitPathing(udg_Caster,true)
call SetUnitInvulnerable(udg_Caster,false)
call SetUnitFlyHeightBJ(udg_Caster,GetUnitDefaultFlyHeight(udg_Caster),0.00)
call SetUnitAnimation(udg_Caster,"slam")
call CreateNUnitsAtLoc(1,0x6830305A,GetOwningPlayer(udg_Caster),udg_Points[2],bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(0.50,0x42544C46,GetLastCreatedUnit())
call UnitAddAbilityBJ(0x41303257,GetLastCreatedUnit())
call SetUnitAbilityLevelSwapped(0x41303257,GetLastCreatedUnit(),GetUnitAbilityLevelSwapped(0x41303258,udg_Caster))
call IssueImmediateOrderBJ(GetLastCreatedUnit(),"stomp")
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
call GroupRemoveUnitSimple(udg_Caster,udg_AoELeapers)
endif
call RemoveLocation(udg_Points[1])
call RemoveLocation(udg_Points[2])
endfunction
function Trig_Heroic_Leap_vAoE_Slide_Func004C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_AoELeapers)==true))then
return false
endif
return true
endfunction
function Trig_Heroic_Leap_vAoE_Slide_Actions takes nothing returns nothing
call ForGroupBJ(udg_AoELeapers,function Trig_Heroic_Leap_vAoE_Slide_Func001A)
if(Trig_Heroic_Leap_vAoE_Slide_Func004C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endfunction
function InitTrig_Heroic_Leap_vAoE_Slide takes nothing returns nothing
set gg_trg_Heroic_Leap_vAoE_Slide=CreateTrigger()
call DisableTrigger(gg_trg_Heroic_Leap_vAoE_Slide)
call TriggerRegisterTimerEventPeriodic(gg_trg_Heroic_Leap_vAoE_Slide,0.03)
call TriggerAddAction(gg_trg_Heroic_Leap_vAoE_Slide,function Trig_Heroic_Leap_vAoE_Slide_Actions)
endfunction
function Trig_Mana_Leak_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x4130304E))then
return false
endif
return true
endfunction
function Trig_Mana_Leak_Cast_Func035001 takes nothing returns boolean
return(IsUnitGroupEmptyBJ(udg_LifeLeaks)==true)
endfunction
function Trig_Mana_Leak_Cast_Actions takes nothing returns nothing
set udg_Caster=GetTriggerUnit()
set udg_Target=GetSpellTargetUnit()
set udg_Points[1]=GetUnitLoc(udg_Caster)
set udg_Points[2]=GetUnitLoc(udg_Target)
call AddLightningLoc("DRAM",udg_Points[1],udg_Points[1])
set udg_Lightning=GetLastCreatedLightningBJ()
call CreateNUnitsAtLoc(1,0x68303057,GetOwningPlayer(udg_Caster),udg_Points[1],bj_UNIT_FACING)
call SaveRealBJ(8.00,0,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveIntegerBJ(GetUnitAbilityLevelSwapped(0x4130304E,udg_Caster),11,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveUnitHandleBJ(udg_Caster,2,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveUnitHandleBJ(udg_Target,3,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveLightningHandleBJ(udg_Lightning,4,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveRealBJ(GetLocationX(udg_Points[2]),5,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call SaveRealBJ(GetLocationY(udg_Points[2]),6,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call AddSpecialEffectTargetUnitBJ("overhead",udg_Caster,"Abilities\\Spells\\Other\\Drain\\ManaDrainTarget.mdl")
call SaveEffectHandleBJ(GetLastCreatedEffectBJ(),7,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
call AddSpecialEffectTargetUnitBJ("overhead",udg_Target,"Abilities\\Spells\\Other\\Drain\\ManaDrainCaster.mdl")
call SaveEffectHandleBJ(GetLastCreatedEffectBJ(),8,GetHandleIdBJ(GetLastCreatedUnit()),udg_Hashtable)
if(Trig_Mana_Leak_Cast_Func035001())then
call EnableTrigger(gg_trg_Mana_Leak_Loop)
else
call DoNothing()
endif
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_LifeLeaks)
call RemoveLocation(udg_Points[1])
call RemoveLocation(udg_Points[2])
endfunction
function InitTrig_Mana_Leak_Cast takes nothing returns nothing
set gg_trg_Mana_Leak_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Mana_Leak_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Mana_Leak_Cast,Condition(function Trig_Mana_Leak_Cast_Conditions))
call TriggerAddAction(gg_trg_Mana_Leak_Cast,function Trig_Mana_Leak_Cast_Actions)
endfunction
function Trig_Mana_Leak_Loop_Func001Func042Func027C takes nothing returns boolean
if((udg_Real[2]>=800.00))then
return true
endif
if((udg_Real[3]==0.00))then
return true
endif
if((IsUnitDeadBJ(udg_Caster)==true))then
return true
endif
if((IsUnitDeadBJ(udg_Target)==true))then
return true
endif
if((GetUnitStateSwap(UNIT_STATE_MANA,udg_Target)==0.00))then
return true
endif
return false
endfunction
function Trig_Mana_Leak_Loop_Func001Func042C takes nothing returns boolean
if(not Trig_Mana_Leak_Loop_Func001Func042Func027C())then
return false
endif
return true
endfunction
function Trig_Mana_Leak_Loop_Func001A takes nothing returns nothing
set udg_Caster=LoadUnitHandleBJ(2,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Target=LoadUnitHandleBJ(3,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Lightning=LoadLightningHandleBJ(4,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Points[1]=GetUnitLoc(udg_Caster)
set udg_Points[2]=GetUnitLoc(udg_Target)
set udg_Points[3]=Location(LoadRealBJ(5,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable),LoadRealBJ(6,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable))
set udg_Real[1]=0.30
set udg_ManaDrain_Integer=LoadIntegerBJ(11,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[1]=(udg_Real[1]*I2R(udg_ManaDrain_Integer))
set udg_Real[2]=DistanceBetweenPoints(udg_Points[1],udg_Points[2])
set udg_Real[3]=LoadRealBJ(0,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
set udg_Real[3]=(udg_Real[3]-0.05)
if(Trig_Mana_Leak_Loop_Func001Func042C())then
call DestroyLightningBJ(udg_Lightning)
call DestroyEffectBJ(LoadEffectHandleBJ(7,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable))
call DestroyEffectBJ(LoadEffectHandleBJ(8,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable))
call FlushChildHashtableBJ(GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
call GroupRemoveUnitSimple(GetEnumUnit(),udg_LifeLeaks)
call RemoveUnit(GetEnumUnit())
else
call SetUnitManaBJ(udg_Caster,(GetUnitStateSwap(UNIT_STATE_MANA,udg_Caster)+udg_Real[1]))
call SetUnitManaBJ(udg_Target,(GetUnitStateSwap(UNIT_STATE_MANA,udg_Target)-udg_Real[1]))
set udg_Real[0]=GetLocationZ(udg_Points[1])
set udg_Real[1]=((udg_Real[0]+GetUnitFlyHeight(udg_Caster))+45.00)
set udg_Real[0]=GetLocationZ(udg_Points[2])
set udg_Real[2]=((udg_Real[0]+GetUnitFlyHeight(udg_Target))+45.00)
call MoveLightningEx(udg_Lightning,true,GetUnitX(udg_Caster),GetUnitY(udg_Caster),udg_Real[1],GetUnitX(udg_Target),GetUnitY(udg_Target),udg_Real[2])
call SaveRealBJ(GetLocationX(udg_Points[2]),5,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
call SaveRealBJ(GetLocationY(udg_Points[2]),6,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
call SaveRealBJ(udg_Real[3],0,GetHandleIdBJ(GetEnumUnit()),udg_Hashtable)
endif
call RemoveLocation(udg_Points[1])
call RemoveLocation(udg_Points[2])
call RemoveLocation(udg_Points[3])
endfunction
function Trig_Mana_Leak_Loop_Func004001 takes nothing returns boolean
return(IsUnitGroupEmptyBJ(udg_LifeLeaks)==true)
endfunction
function Trig_Mana_Leak_Loop_Actions takes nothing returns nothing
call ForGroupBJ(udg_LifeLeaks,function Trig_Mana_Leak_Loop_Func001A)
if(Trig_Mana_Leak_Loop_Func004001())then
call DisableTrigger(GetTriggeringTrigger())
else
call DoNothing()
endif
endfunction
function InitTrig_Mana_Leak_Loop takes nothing returns nothing
set gg_trg_Mana_Leak_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Mana_Leak_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Mana_Leak_Loop,0.05)
call TriggerAddAction(gg_trg_Mana_Leak_Loop,function Trig_Mana_Leak_Loop_Actions)
endfunction
function Trig_HookIni_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_Hook_Hashtable=GetLastCreatedHashtableBJ()
set udg_loc=Location(0,0)
call CreateNUnitsAtLoc(1,0x68706561,Player(PLAYER_NEUTRAL_PASSIVE),udg_loc,0.00)
call ShowUnitHide(GetLastCreatedUnit())
call SetUnitInvulnerable(GetLastCreatedUnit(),true)
set udg_harvester=GetLastCreatedUnit()
call RemoveLocation(udg_loc)
endfunction
function InitTrig_HookIni takes nothing returns nothing
set gg_trg_HookIni=CreateTrigger()
call TriggerAddAction(gg_trg_HookIni,function Trig_HookIni_Actions)
endfunction
function Trig_HookCast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x4130304F))then
return false
endif
return true
endfunction
function Trig_HookCast_Func014001003001001001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false)
endfunction
function Trig_HookCast_Func014001003001001002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_u))==true)
endfunction
function Trig_HookCast_Func014001003001001 takes nothing returns boolean
return GetBooleanAnd(Trig_HookCast_Func014001003001001001(),Trig_HookCast_Func014001003001001002())
endfunction
function Trig_HookCast_Func014001003001002 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_FLYING)==false)
endfunction
function Trig_HookCast_Func014001003001 takes nothing returns boolean
return GetBooleanAnd(Trig_HookCast_Func014001003001001(),Trig_HookCast_Func014001003001002())
endfunction
function Trig_HookCast_Func014001003002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_HookCast_Func014001003002002 takes nothing returns boolean
return(GetUnitStateSwap(UNIT_STATE_LIFE,GetFilterUnit())>0.00)
endfunction
function Trig_HookCast_Func014001003002 takes nothing returns boolean
return GetBooleanAnd(Trig_HookCast_Func014001003002001(),Trig_HookCast_Func014001003002002())
endfunction
function Trig_HookCast_Func014001003 takes nothing returns boolean
return GetBooleanAnd(Trig_HookCast_Func014001003001(),Trig_HookCast_Func014001003002())
endfunction
function Trig_HookCast_Func014Func003C takes nothing returns boolean
if(not(udg_i2==10))then
return false
endif
return true
endfunction
function Trig_HookCast_Func014A takes nothing returns nothing
if(Trig_HookCast_Func014Func003C())then
return
else
endif
set udg_loc2=GetUnitLoc(GetEnumUnit())
set udg_a=AngleBetweenPoints(udg_loc,udg_loc2)
call RemoveLocation(udg_loc2)
call CreateNUnitsAtLoc(1,0x65303035,GetOwningPlayer(udg_u),udg_loc,udg_a)
call SetUnitFlyHeightBJ(GetLastCreatedUnit(),75.00,0.00)
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_Hook_Heads)
call UnitApplyTimedLifeBJ(20.00,0x42544C46,GetLastCreatedUnit())
set udg_i=GetHandleIdBJ(GetLastCreatedUnit())
call SaveUnitHandleBJ(GetEnumUnit(),udg_i,0,udg_Hook_Hashtable)
call SaveUnitHandleBJ(udg_u,udg_i,1,udg_Hook_Hashtable)
call SaveRealBJ(15.00,2,udg_i,udg_Hook_Hashtable)
call SaveRealBJ(50.00,3,udg_i,udg_Hook_Hashtable)
call SaveRealBJ(17.00,4,udg_i,udg_Hook_Hashtable)
call SaveRealBJ(((30.00+(30.00*I2R(GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_u))))/33.00),5,udg_i,udg_Hook_Hashtable)
call SaveRealBJ((100.00+(100.00*I2R(GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_u)))),6,udg_i,udg_Hook_Hashtable)
set udg_i2=(udg_i2+1)
endfunction
function Trig_HookCast_Actions takes nothing returns nothing
set udg_i2=0
set udg_u=GetTriggerUnit()
set udg_loc=GetUnitLoc(udg_u)
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocMatching((450.00+(50.00*I2R(GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_u)))),udg_loc,Condition(function Trig_HookCast_Func014001003)),function Trig_HookCast_Func014A)
call RemoveLocation(udg_loc)
call EnableTrigger(gg_trg_HookLoop)
endfunction
function InitTrig_HookCast takes nothing returns nothing
set gg_trg_HookCast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_HookCast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_HookCast,Condition(function Trig_HookCast_Conditions))
call TriggerAddAction(gg_trg_HookCast,function Trig_HookCast_Actions)
endfunction
function Trig_HookLoop_Func022Func002Func009Func012C takes nothing returns boolean
if(not(4096.00>(((udg_x-udg_x2)*(udg_x-udg_x2))+((udg_y-udg_y2)*(udg_y-udg_y2)))))then
return false
endif
return true
endfunction
function Trig_HookLoop_Func022Func002Func009Func036Func001Func002C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_harvester)==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_HookLoop_Func022Func002Func009Func036Func001C takes nothing returns boolean
if(not(GetDestructableLife(GetEnumDestructable())>0.00))then
return false
endif
return true
endfunction
function Trig_HookLoop_Func022Func002Func009Func036A takes nothing returns nothing
if(Trig_HookLoop_Func022Func002Func009Func036Func001C())then
call IssueTargetDestructableOrder(udg_harvester,"harvest",GetEnumDestructable())
if(Trig_HookLoop_Func022Func002Func009Func036Func001Func002C())then
call KillDestructable(GetEnumDestructable())
else
endif
call IssueImmediateOrderBJ(udg_harvester,"stop")
else
endif
endfunction
function Trig_HookLoop_Func022Func002Func009C takes nothing returns boolean
if(not(udg_i2>-1))then
return false
endif
return true
endfunction
function Trig_HookLoop_Func022Func002Func020Func013C takes nothing returns boolean
if(not(4096.00<(((udg_x-udg_x2)*(udg_x-udg_x2))+((udg_y-udg_y2)*(udg_y-udg_y2)))))then
return false
endif
return true
endfunction
function Trig_HookLoop_Func022Func002Func020C takes nothing returns boolean
if(not(4096.00<(((udg_x-udg_x2)*(udg_x-udg_x2))+((udg_y-udg_y2)*(udg_y-udg_y2)))))then
return false
endif
return true
endfunction
function Trig_HookLoop_Func022Func002C takes nothing returns boolean
if(not(LoadIntegerBJ(1,udg_i,udg_Hook_Hashtable)==0))then
return false
endif
return true
endfunction
function Trig_HookLoop_Func022A takes nothing returns nothing
set udg_i=GetHandleIdBJ(GetEnumUnit())
if(Trig_HookLoop_Func022Func002C())then
set udg_r=LoadRealBJ(2,udg_i,udg_Hook_Hashtable)
set udg_u=LoadUnitHandleBJ(udg_i,0,udg_Hook_Hashtable)
set udg_x=GetUnitX(GetEnumUnit())
set udg_y=GetUnitY(GetEnumUnit())
set udg_x2=GetUnitX(udg_u)
set udg_y2=GetUnitY(udg_u)
set udg_a=Atan2BJ((udg_y2-udg_y),(udg_x2-udg_x))
set udg_x=(udg_x+(CosBJ(udg_a)*udg_r))
set udg_y=(udg_y+(SinBJ(udg_a)*udg_r))
call SetUnitFacing(GetEnumUnit(),udg_a)
if(Trig_HookLoop_Func022Func002Func020C())then
call SetUnitX(GetEnumUnit(),udg_x)
call SetUnitY(GetEnumUnit(),udg_y)
set udg_r=LoadRealBJ(3,udg_i,udg_Hook_Hashtable)
set udg_i2=1
loop
exitwhen udg_i2>LoadIntegerBJ(0,udg_i,udg_Hook_Hashtable)
set udg_u=LoadUnitHandleBJ(udg_i2,udg_i,udg_Hook_Hashtable)
set udg_x2=GetUnitX(udg_u)
set udg_y2=GetUnitY(udg_u)
set udg_a=Atan2BJ((udg_y-udg_y2),(udg_x-udg_x2))
set udg_x=(udg_x-(CosBJ(udg_a)*udg_r))
set udg_y=(udg_y-(SinBJ(udg_a)*udg_r))
call SetUnitX(udg_u,udg_x)
call SetUnitY(udg_u,udg_y)
call SetUnitFacing(udg_u,udg_a)
set udg_i2=udg_i2+1
endloop
set udg_u=LoadUnitHandleBJ(udg_i,1,udg_Hook_Hashtable)
set udg_x2=GetUnitX(udg_u)
set udg_y2=GetUnitY(udg_u)
if(Trig_HookLoop_Func022Func002Func020Func013C())then
set bj_lastCreatedUnit=CreateUnit(GetOwningPlayer(GetEnumUnit()),GetUnitTypeId(GetEnumUnit()),udg_x2,udg_y2,udg_a)
call SetUnitFlyHeightBJ(GetLastCreatedUnit(),GetUnitFlyHeight(GetEnumUnit()),0.00)
call SaveIntegerBJ(udg_i2,0,udg_i,udg_Hook_Hashtable)
set udg_i2=GetHandleIdBJ(GetLastCreatedUnit())
call SaveUnitHandleBJ(GetLastCreatedUnit(),LoadIntegerBJ(0,udg_i,udg_Hook_Hashtable),udg_i,udg_Hook_Hashtable)
else
endif
else
call SaveIntegerBJ(1,1,udg_i,udg_Hook_Hashtable)
call SaveUnitHandleBJ(GetEnumUnit(),0,udg_i,udg_Hook_Hashtable)
endif
else
set udg_r=LoadRealBJ(4,udg_i,udg_Hook_Hashtable)
set udg_u=LoadUnitHandleBJ(udg_i,1,udg_Hook_Hashtable)
set udg_x=GetUnitX(udg_u)
set udg_y=GetUnitY(udg_u)
set udg_i2=LoadIntegerBJ(0,udg_i,udg_Hook_Hashtable)
if(Trig_HookLoop_Func022Func002Func009C())then
set udg_u=LoadUnitHandleBJ(udg_i2,udg_i,udg_Hook_Hashtable)
set udg_x2=GetUnitX(udg_u)
set udg_y2=GetUnitY(udg_u)
if(Trig_HookLoop_Func022Func002Func009Func012C())then
call KillUnit(udg_u)
call SaveIntegerBJ((udg_i2-1),0,udg_i,udg_Hook_Hashtable)
else
endif
loop
exitwhen udg_i2==-1
set udg_u=LoadUnitHandleBJ(udg_i2,udg_i,udg_Hook_Hashtable)
set udg_x2=GetUnitX(udg_u)
set udg_y2=GetUnitY(udg_u)
set udg_a=Atan2BJ((udg_y-udg_y2),(udg_x-udg_x2))
set udg_x=(udg_x2+(CosBJ(udg_a)*udg_r))
set udg_y=(udg_y2+(SinBJ(udg_a)*udg_r))
call SetUnitX(udg_u,udg_x)
call SetUnitY(udg_u,udg_y)
call SetUnitFacing(udg_u,180+udg_a)
set udg_i2=(udg_i2-1)
endloop
set udg_u=LoadUnitHandleBJ(udg_i,0,udg_Hook_Hashtable)
call UnitDamageTargetBJ(LoadUnitHandleBJ(udg_i,1,udg_Hook_Hashtable),udg_u,LoadRealBJ(5,udg_i,udg_Hook_Hashtable),ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
call SetUnitX(udg_u,udg_x)
call SetUnitY(udg_u,udg_y)
set udg_loc=Location(udg_x2,udg_y2)
call EnumDestructablesInCircleBJ(150.00,udg_loc,function Trig_HookLoop_Func022Func002Func009Func036A)
else
call UnitDamageTargetBJ(LoadUnitHandleBJ(udg_i,1,udg_Hook_Hashtable),LoadUnitHandleBJ(udg_i,0,udg_Hook_Hashtable),LoadRealBJ(6,udg_i,udg_Hook_Hashtable),ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
set udg_u=LoadUnitHandleBJ(udg_i,0,udg_Hook_Hashtable)
call IssueImmediateOrderBJ(udg_u,"stop")
call GroupRemoveUnitSimple(GetEnumUnit(),udg_Hook_Heads)
call FlushChildHashtableBJ(udg_i,udg_Hook_Hashtable)
endif
endif
endfunction
function Trig_HookLoop_Func023C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_Hook_Heads)==true))then
return false
endif
return true
endfunction
function Trig_HookLoop_Actions takes nothing returns nothing
call ForGroupBJ(udg_Hook_Heads,function Trig_HookLoop_Func022A)
if(Trig_HookLoop_Func023C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endfunction
function InitTrig_HookLoop takes nothing returns nothing
set gg_trg_HookLoop=CreateTrigger()
call DisableTrigger(gg_trg_HookLoop)
call TriggerRegisterTimerEventPeriodic(gg_trg_HookLoop,0.03)
call TriggerAddAction(gg_trg_HookLoop,function Trig_HookLoop_Actions)
endfunction
function Trig_HookRemoveDummys_Conditions takes nothing returns boolean
if(not(GetUnitTypeId(GetTriggerUnit())==0x65303035))then
return false
endif
return true
endfunction
function Trig_HookRemoveDummys_Actions takes nothing returns nothing
call PolledWait(2)
call RemoveUnit(GetTriggerUnit())
endfunction
function InitTrig_HookRemoveDummys takes nothing returns nothing
set gg_trg_HookRemoveDummys=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_HookRemoveDummys,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddCondition(gg_trg_HookRemoveDummys,Condition(function Trig_HookRemoveDummys_Conditions))
call TriggerAddAction(gg_trg_HookRemoveDummys,function Trig_HookRemoveDummys_Actions)
endfunction
function Trig_Bouncer_Main_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x4130324A))then
return false
endif
return true
endfunction
function Trig_Bouncer_Main_Func025C takes nothing returns boolean
if(not(udg_MUI2==0))then
return false
endif
return true
endfunction
function Trig_Bouncer_Main_Actions takes nothing returns nothing
set udg_B_Caster[udg_MUI2]=GetTriggerUnit()
set udg_B_Target[udg_MUI2]=GetSpellTargetUnit()
set udg_B_cPoint=GetUnitLoc(GetTriggerUnit())
set udg_B_tPoint[udg_MUI2]=GetUnitLoc(udg_B_Target[udg_MUI2])
call CreateNUnitsAtLocFacingLocBJ(1,0x68303058,GetOwningPlayer(GetTriggerUnit()),udg_B_cPoint,udg_B_tPoint[udg_MUI2])
set udg_B_Dummy[udg_MUI2]=GetLastCreatedUnit()
call SetUnitFlyHeightBJ(udg_B_Dummy[udg_MUI2],75.00,0.00)
call AddSpecialEffectTargetUnitBJ("origin",udg_B_Dummy[udg_MUI2],"Abilities\\Weapons\\IllidanMissile\\IllidanMissile.mdl")
set udg_B_MissleModel[udg_MUI2]=GetLastCreatedEffectBJ()
set udg_B_Level[udg_MUI2]=GetUnitAbilityLevelSwapped(0x4130324A,GetTriggerUnit())
set udg_B_NumBounces[udg_MUI2]=0
set udg_B_MaxBounces[udg_MUI2]=(2+(3*udg_B_Level[udg_MUI2]))
set udg_B_Damage[udg_MUI2]=(20.00*I2R(udg_B_Level[udg_MUI2]))
set udg_B_Increment[udg_MUI2]=(2.00*I2R(udg_B_Level[udg_MUI2]))
set udg_B_Angle[udg_MUI2]=AngleBetweenPoints(udg_B_cPoint,udg_B_tPoint[udg_MUI2])
call RemoveLocation(udg_B_cPoint)
call RemoveLocation(udg_B_tPoint[udg_MUI2])
if(Trig_Bouncer_Main_Func025C())then
call EnableTrigger(gg_trg_Bouncer_Loop)
else
endif
set udg_MUI2=(udg_MUI2+1)
endfunction
function InitTrig_Bouncer_Main takes nothing returns nothing
set gg_trg_Bouncer_Main=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Bouncer_Main,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Bouncer_Main,Condition(function Trig_Bouncer_Main_Conditions))
call TriggerAddAction(gg_trg_Bouncer_Main,function Trig_Bouncer_Main_Actions)
endfunction
function Trig_Bouncer_Loop_Func002Func011Func012002003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Bouncer_Loop_Func002Func011Func012002003002001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Bouncer_Loop_Func002Func011Func012002003002002001 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_B_Dummy[udg_MUI3]))==true)
endfunction
function Trig_Bouncer_Loop_Func002Func011Func012002003002002002 takes nothing returns boolean
return(GetFilterUnit()!=udg_B_LastTarget[udg_MUI3])
endfunction
function Trig_Bouncer_Loop_Func002Func011Func012002003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Bouncer_Loop_Func002Func011Func012002003002002001(),Trig_Bouncer_Loop_Func002Func011Func012002003002002002())
endfunction
function Trig_Bouncer_Loop_Func002Func011Func012002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Bouncer_Loop_Func002Func011Func012002003002001(),Trig_Bouncer_Loop_Func002Func011Func012002003002002())
endfunction
function Trig_Bouncer_Loop_Func002Func011Func012002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Bouncer_Loop_Func002Func011Func012002003001(),Trig_Bouncer_Loop_Func002Func011Func012002003002())
endfunction
function Trig_Bouncer_Loop_Func002Func011C takes nothing returns boolean
if(not(udg_B_Distance[udg_MUI3]<=100.00))then
return false
endif
return true
endfunction
function Trig_Bouncer_Loop_Func002Func017Func004C takes nothing returns boolean
if(not(udg_MUI2==0))then
return false
endif
return true
endfunction
function Trig_Bouncer_Loop_Func002Func017Func018C takes nothing returns boolean
if((udg_B_Target[udg_MUI3]==null))then
return true
endif
if((udg_B_NumBounces[udg_MUI3]==udg_B_MaxBounces[udg_MUI3]))then
return true
endif
return false
endfunction
function Trig_Bouncer_Loop_Func002Func017C takes nothing returns boolean
if(not Trig_Bouncer_Loop_Func002Func017Func018C())then
return false
endif
return true
endfunction
function Trig_Bouncer_Loop_Actions takes nothing returns nothing
set udg_MUI3=0
loop
exitwhen udg_MUI3>(udg_MUI2-1)
set udg_B_dPoint[udg_MUI3]=GetUnitLoc(udg_B_Dummy[udg_MUI3])
set udg_B_tPoint[udg_MUI3]=GetUnitLoc(udg_B_Target[udg_MUI3])
set udg_B_Angle[udg_MUI3]=AngleBetweenPoints(udg_B_dPoint[udg_MUI3],udg_B_tPoint[udg_MUI3])
set udg_B_mPoint[udg_MUI3]=PolarProjectionBJ(udg_B_dPoint[udg_MUI3],25.00,udg_B_Angle[udg_MUI3])
call SetUnitPositionLoc(udg_B_Dummy[udg_MUI3],udg_B_mPoint[udg_MUI3])
set udg_B_Distance[udg_MUI3]=DistanceBetweenPoints(udg_B_dPoint[udg_MUI3],udg_B_tPoint[udg_MUI3])
if(Trig_Bouncer_Loop_Func002Func011C())then
set udg_B_NumBounces[udg_MUI3]=(udg_B_NumBounces[udg_MUI3]+1)
call UnitDamageTargetBJ(udg_B_Caster[udg_MUI3],udg_B_Target[udg_MUI3],(udg_B_Damage[udg_MUI3]+(udg_B_Increment[udg_MUI3]*I2R(udg_B_NumBounces[udg_MUI3]))),ATTACK_TYPE_NORMAL,DAMAGE_TYPE_UNKNOWN)
call AddSpecialEffectLocBJ(udg_B_tPoint[udg_MUI3],"Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set udg_B_LastTarget[udg_MUI3]=udg_B_Target[udg_MUI3]
call DestroyGroup(udg_B_HitGroup[udg_MUI3])
set udg_B_HitGroup[udg_MUI3]=GetUnitsInRangeOfLocMatching(325.00,udg_B_dPoint[udg_MUI3],Condition(function Trig_Bouncer_Loop_Func002Func011Func012002003))
set udg_B_Target[udg_MUI3]=GroupPickRandomUnit(udg_B_HitGroup[udg_MUI3])
call DestroyGroup(udg_B_HitGroup[udg_MUI3])
else
endif
call RemoveLocation(udg_B_tPoint[udg_MUI3])
call RemoveLocation(udg_B_dPoint[udg_MUI3])
call RemoveLocation(udg_B_mPoint[udg_MUI3])
if(Trig_Bouncer_Loop_Func002Func017C())then
set udg_MUI2=(udg_MUI2-1)
if(Trig_Bouncer_Loop_Func002Func017Func004C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
set udg_B_Caster[udg_MUI3]=udg_B_Caster[udg_MUI2]
call RemoveUnit(udg_B_Dummy[udg_MUI3])
set udg_B_Dummy[udg_MUI3]=udg_B_Dummy[udg_MUI2]
set udg_B_Target[udg_MUI3]=udg_B_Target[udg_MUI2]
call DestroyEffectBJ(udg_B_MissleModel[udg_MUI3])
set udg_B_MissleModel[udg_MUI3]=udg_B_MissleModel[udg_MUI2]
set udg_B_MaxBounces[udg_MUI3]=udg_B_MaxBounces[udg_MUI2]
set udg_B_NumBounces[udg_MUI3]=udg_B_NumBounces[udg_MUI2]
set udg_B_Damage[udg_MUI3]=udg_B_Damage[udg_MUI2]
set udg_B_Increment[udg_MUI3]=udg_B_Increment[udg_MUI2]
set udg_MUI3=(udg_MUI3-1)
else
endif
set udg_MUI3=udg_MUI3+1
endloop
endfunction
function InitTrig_Bouncer_Loop takes nothing returns nothing
set gg_trg_Bouncer_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Bouncer_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Bouncer_Loop,0.03)
call TriggerAddAction(gg_trg_Bouncer_Loop,function Trig_Bouncer_Loop_Actions)
endfunction
function Trig_LDH_Helpful_Files_Actions takes nothing returns nothing
set udg_LDH_FinalParabola=0.00
set udg_LDH_MX=0.00
set udg_LDH_MY=0.00
set udg_LDH_X=0.00
set udg_LDH_Y=0.00
set udg_LDH_Cos=0.00
set udg_LDH_Sin=0.00
set udg_LDH_PW=0.00
endfunction
function InitTrig_LDH_Helpful_Files takes nothing returns nothing
set gg_trg_LDH_Helpful_Files=CreateTrigger()
call TriggerAddAction(gg_trg_LDH_Helpful_Files,function Trig_LDH_Helpful_Files_Actions)
endfunction
function Trig_Lightning_Down_Hatred_Configuration_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_LDH_Hash=GetLastCreatedHashtableBJ()
set udg_LDH_UnitHarvester=CreateUnit(Player(15),0x68706561,0,0,0)
call UnitAddAbility(udg_LDH_UnitHarvester,0x416C6F63)
call ShowUnitHide(udg_LDH_UnitHarvester)
set udg_LDH_Ability=0x41303143
set udg_LDH_DummyType=0x75303033
set udg_LDH_DummyAbility=0x4130325A
set udg_LDH_DummyAbility2=0x41303142
set udg_LDH_AirDamage[1]=10.00
set udg_LDH_AirDamage[2]=15.00
set udg_LDH_AirDamage[3]=20.00
set udg_LDH_AirDamage[4]=25.00
set udg_LDH_AirDamage[5]=30.00
set udg_LDH_AirDamageChance[1]=0.10
set udg_LDH_AirDamageChance[2]=0.14
set udg_LDH_AirDamageChance[3]=0.18
set udg_LDH_AirDamageChance[4]=0.22
set udg_LDH_AirDamageChance[5]=0.26
set udg_LDH_AirEffects="Abilities\\Weapons\\Bolt\\BoltImpact.mdl"
set udg_LDH_AirEffectPoint="origin"
set udg_LDH_BlastArea[1]=400.00
set udg_LDH_BlastArea[2]=450.00
set udg_LDH_BlastArea[3]=500.00
set udg_LDH_BlastArea[4]=550.00
set udg_LDH_BlastArea[5]=600.00
set udg_LDH_DestroyTreesAreaStart[1]=100.00
set udg_LDH_DestroyTreesAreaStart[2]=100.00
set udg_LDH_DestroyTreesAreaStart[3]=100.00
set udg_LDH_DestroyTreesAreaStart[4]=100.00
set udg_LDH_DestroyTreesAreaStart[5]=100.00
set udg_LDH_DestroyTreesAreaLoop[1]=200.00
set udg_LDH_DestroyTreesAreaLoop[2]=200.00
set udg_LDH_DestroyTreesAreaLoop[3]=200.00
set udg_LDH_DestroyTreesAreaLoop[4]=200.00
set udg_LDH_DestroyTreesAreaLoop[5]=200.00
set udg_LDH_Effects="Abilities\\Spells\\Human\\ThunderClap\\ThunderClapCaster.mdl"
set udg_LDH_Effects2="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl"
set udg_LDH_ImpactArea[1]=100.00
set udg_LDH_ImpactArea[2]=150.00
set udg_LDH_ImpactArea[3]=200.00
set udg_LDH_ImpactArea[4]=210.00
set udg_LDH_ImpactArea[5]=220.00
set udg_LDH_ImpactDamage[1]=100.00
set udg_LDH_ImpactDamage[2]=150.00
set udg_LDH_ImpactDamage[3]=200.00
set udg_LDH_ImpactDamage[4]=250.00
set udg_LDH_ImpactDamage[5]=300.00
set udg_LDH_ImpactEffect="Abilities\\Spells\\Human\\ThunderClap\\ThunderClapCaster.mdl"
set udg_LDH_ImpactPickedUnitEffect="Abilities\\Weapons\\Bolt\\BoltImpact.mdl"
set udg_LDH_MaxHeight[1]=500.00
set udg_LDH_MaxHeight[2]=550.00
set udg_LDH_MaxHeight[3]=600.00
set udg_LDH_MaxHeight[4]=650.00
set udg_LDH_MaxHeight[5]=700.00
set udg_LDH_NumberOfEffects[1]=14
set udg_LDH_NumberOfEffects[2]=20
set udg_LDH_NumberOfEffects[3]=26
set udg_LDH_NumberOfEffects[4]=32
set udg_LDH_NumberOfEffects[5]=38
set udg_LDH_Speed[1]=3.85
set udg_LDH_Speed[2]=3.50
set udg_LDH_Speed[3]=3.25
set udg_LDH_Speed[4]=3.25
set udg_LDH_Speed[5]=3.25
set udg_LDH_AttackType=ATTACK_TYPE_NORMAL
set udg_LDH_DamageType=DAMAGE_TYPE_NORMAL
endfunction
function InitTrig_Lightning_Down_Hatred_Configuration takes nothing returns nothing
set gg_trg_Lightning_Down_Hatred_Configuration=CreateTrigger()
call TriggerAddAction(gg_trg_Lightning_Down_Hatred_Configuration,function Trig_Lightning_Down_Hatred_Configuration_Actions)
endfunction
function Trig_LDH_Execute_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==udg_LDH_Ability))then
return false
endif
return true
endfunction
function Trig_LDH_Execute_Func005Func004Func003Func001C takes nothing returns boolean
if(not(IsDestructableAliveBJ(udg_LDH_PickedTrees)==true))then
return false
endif
return true
endfunction
function Trig_LDH_Execute_Func005Func004Func003C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_LDH_UnitHarvester)==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_LDH_Execute_Func005Func004A takes nothing returns nothing
set udg_LDH_PickedTrees=GetEnumDestructable()
call IssueTargetDestructableOrder(udg_LDH_UnitHarvester,"harvest",udg_LDH_PickedTrees)
if(Trig_LDH_Execute_Func005Func004Func003C())then
if(Trig_LDH_Execute_Func005Func004Func003Func001C())then
set udg_LDH_TreePos=GetDestructableLoc(udg_LDH_PickedTrees)
call DestroyEffect(AddSpecialEffectLoc(udg_LDH_Effects2,udg_LDH_TreePos))
call KillDestructable(udg_LDH_PickedTrees)
call RemoveLocation(udg_LDH_TreePos)
else
endif
else
endif
call IssueImmediateOrderBJ(udg_LDH_UnitHarvester,"stop")
endfunction
function Trig_LDH_Execute_Func008Func003Func022001 takes nothing returns boolean
return(CountUnitsInGroup(udg_LDH_GroupLoop)==1)
endfunction
function Trig_LDH_Execute_Func008Func003C takes nothing returns boolean
if(not(IsUnitIllusionBJ(udg_LDH_Target)!=true))then
return false
endif
if(not(IsUnitType(udg_LDH_Target,UNIT_TYPE_MAGIC_IMMUNE)!=true))then
return false
endif
if(not(IsUnitType(udg_LDH_Target,UNIT_TYPE_STRUCTURE)!=true))then
return false
endif
if(not(IsUnitAliveBJ(udg_LDH_Target)==true))then
return false
endif
if(not(IsUnitEnemy(udg_LDH_Target,GetOwningPlayer(udg_LDH_Caster))==true))then
return false
endif
return true
endfunction
function Trig_LDH_Execute_Func008A takes nothing returns nothing
set udg_LDH_Target=GetEnumUnit()
set udg_LDH_ID=GetHandleId(udg_LDH_Target)
if(Trig_LDH_Execute_Func008Func003C())then
set udg_LDH_TargetPosition=GetUnitLoc(udg_LDH_Target)
set udg_LDH_Angle2=GetRandomDirectionDeg()
set udg_LDH_DistanceRange=DistanceBetweenPoints(udg_LDH_CasterPosition,udg_LDH_TargetPosition)
set udg_LDH_CurrentDistanceRange=0.00
call CreateNUnitsAtLoc(1,udg_LDH_DummyType,GetOwningPlayer(udg_LDH_Caster),udg_LDH_CasterPosition,bj_UNIT_FACING)
set udg_LDH_Dummy=GetLastCreatedUnit()
call UnitAddAbilityBJ(udg_LDH_DummyAbility,udg_LDH_Dummy)
call SetUnitAbilityLevelSwapped(udg_LDH_DummyAbility,udg_LDH_Dummy,udg_LDH_Level)
call IssueTargetOrderBJ(udg_LDH_Dummy,"chainlightning",udg_LDH_Target)
call UnitApplyTimedLifeBJ(2.00,0x42544C46,udg_LDH_Dummy)
set udg_LDH_PW=GetUnitPropWindow(udg_LDH_Target)
call SaveRealBJ(udg_LDH_Angle2,1,udg_LDH_ID,udg_LDH_Hash)
call SaveRealBJ(udg_LDH_DistanceRange,2,udg_LDH_ID,udg_LDH_Hash)
call SaveRealBJ(udg_LDH_CurrentDistanceRange,3,udg_LDH_ID,udg_LDH_Hash)
call SaveUnitHandleBJ(udg_LDH_Caster,7,udg_LDH_ID,udg_LDH_Hash)
call SaveRealBJ(GetUnitDefaultFlyHeight(udg_LDH_Target),10,udg_LDH_ID,udg_LDH_Hash)
call SaveIntegerBJ(udg_LDH_Level,11,udg_LDH_ID,udg_LDH_Hash)
call SaveRealBJ(udg_LDH_PW,12,udg_LDH_ID,udg_LDH_Hash)
if UnitAddAbility(udg_LDH_Target,0x416D7266)and UnitRemoveAbility(udg_LDH_Target,0x416D7266)then
endif
call GroupAddUnitSimple(udg_LDH_Target,udg_LDH_GroupLoop)
if(Trig_LDH_Execute_Func008Func003Func022001())then
call EnableTrigger(gg_trg_LDH_Loop)
else
endif
call RemoveLocation(udg_LDH_TargetPosition)
else
endif
endfunction
function Trig_LDH_Execute_Actions takes nothing returns nothing
set udg_LDH_Caster=GetTriggerUnit()
set udg_LDH_Level=GetUnitAbilityLevelSwapped(udg_LDH_Ability,udg_LDH_Caster)
set udg_LDH_CasterPosition=GetUnitLoc(udg_LDH_Caster)
set udg_LDH_Int=1
loop
exitwhen udg_LDH_Int>udg_LDH_NumberOfEffects[udg_LDH_Level]
set udg_LDH_Angle=(udg_LDH_Angle+(360.00/I2R(udg_LDH_NumberOfEffects[udg_LDH_Level])))
set udg_LDH_StartPointEffect=PolarProjectionBJ(udg_LDH_CasterPosition,udg_LDH_BlastArea[udg_LDH_Level],udg_LDH_Angle)
call DestroyEffect(AddSpecialEffectLoc(udg_LDH_Effects,udg_LDH_StartPointEffect))
call EnumDestructablesInCircleBJ(udg_LDH_DestroyTreesAreaStart[udg_LDH_Level],udg_LDH_StartPointEffect,function Trig_LDH_Execute_Func005Func004A)
call RemoveLocation(udg_LDH_StartPointEffect)
set udg_LDH_Int=udg_LDH_Int+1
endloop
set udg_LDH_GroupStart=GetUnitsInRangeOfLocAll(udg_LDH_BlastArea[udg_LDH_Level],udg_LDH_CasterPosition)
set bj_wantDestroyGroup=true
call ForGroupBJ(udg_LDH_GroupStart,function Trig_LDH_Execute_Func008A)
call RemoveLocation(udg_LDH_CasterPosition)
endfunction
function InitTrig_LDH_Execute takes nothing returns nothing
set gg_trg_LDH_Execute=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_LDH_Execute,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_LDH_Execute,Condition(function Trig_LDH_Execute_Conditions))
call TriggerAddAction(gg_trg_LDH_Execute,function Trig_LDH_Execute_Actions)
endfunction
function Trig_LDH_Loop_Func001Func010Func002Func003Func001C takes nothing returns boolean
if(not(IsDestructableAliveBJ(udg_LDH_PickedTrees)==true))then
return false
endif
return true
endfunction
function Trig_LDH_Loop_Func001Func010Func002Func003C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_LDH_UnitHarvester)==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_LDH_Loop_Func001Func010Func002A takes nothing returns nothing
set udg_LDH_PickedTrees=GetEnumDestructable()
call IssueTargetDestructableOrder(udg_LDH_UnitHarvester,"harvest",udg_LDH_PickedTrees)
if(Trig_LDH_Loop_Func001Func010Func002Func003C())then
if(Trig_LDH_Loop_Func001Func010Func002Func003Func001C())then
set udg_LDH_TreePos=GetDestructableLoc(udg_LDH_PickedTrees)
call DestroyEffect(AddSpecialEffectLoc(udg_LDH_Effects2,udg_LDH_TreePos))
call KillDestructable(udg_LDH_PickedTrees)
call RemoveLocation(udg_LDH_TreePos)
else
endif
else
endif
call IssueImmediateOrderBJ(udg_LDH_UnitHarvester,"stop")
endfunction
function Trig_LDH_Loop_Func001Func010Func021Func002C takes nothing returns boolean
if(not(IsUnitIllusionBJ(udg_LDH_ImpactUnit)!=true))then
return false
endif
if(not(IsUnitType(udg_LDH_ImpactUnit,UNIT_TYPE_MAGIC_IMMUNE)!=true))then
return false
endif
if(not(IsUnitType(udg_LDH_ImpactUnit,UNIT_TYPE_FLYING)!=true))then
return false
endif
if(not(IsUnitAliveBJ(udg_LDH_ImpactUnit)==true))then
return false
endif
if(not(IsUnitEnemy(udg_LDH_ImpactUnit,GetOwningPlayer(udg_LDH_Caster))==true))then
return false
endif
return true
endfunction
function Trig_LDH_Loop_Func001Func010Func021A takes nothing returns nothing
set udg_LDH_ImpactUnit=GetEnumUnit()
if(Trig_LDH_Loop_Func001Func010Func021Func002C())then
call DestroyEffect(AddSpecialEffectTarget(udg_LDH_ImpactPickedUnitEffect,udg_LDH_ImpactUnit,"origin"))
call UnitDamageTargetBJ(udg_LDH_Caster,udg_LDH_ImpactUnit,udg_LDH_ImpactDamage[udg_LDH_Level],udg_LDH_AttackType,udg_LDH_DamageType)
else
endif
endfunction
function Trig_LDH_Loop_Func001Func010Func033001 takes nothing returns boolean
return(CountUnitsInGroup(udg_LDH_GroupLoop)==0)
endfunction
function Trig_LDH_Loop_Func001Func010C takes nothing returns boolean
if(not(udg_LDH_CurrentDistanceRange<=udg_LDH_DistanceRange))then
return false
endif
return true
endfunction
function Trig_LDH_Loop_Func001A takes nothing returns nothing
set udg_LDH_Target=GetEnumUnit()
set udg_LDH_ID=GetHandleId(udg_LDH_Target)
set udg_LDH_Angle2=LoadRealBJ(1,udg_LDH_ID,udg_LDH_Hash)
set udg_LDH_DistanceRange=LoadRealBJ(2,udg_LDH_ID,udg_LDH_Hash)
set udg_LDH_CurrentDistanceRange=LoadRealBJ(3,udg_LDH_ID,udg_LDH_Hash)
set udg_LDH_Caster=LoadUnitHandleBJ(7,udg_LDH_ID,udg_LDH_Hash)
set udg_LDH_Level=LoadIntegerBJ(11,udg_LDH_ID,udg_LDH_Hash)
set udg_LDH_PW=LoadRealBJ(12,udg_LDH_ID,udg_LDH_Hash)
set udg_LDH_FinalParabola=(4.00*(udg_LDH_MaxHeight[udg_LDH_Level]/udg_LDH_DistanceRange))*(udg_LDH_DistanceRange-udg_LDH_CurrentDistanceRange)*(udg_LDH_CurrentDistanceRange/udg_LDH_DistanceRange)
if(Trig_LDH_Loop_Func001Func010C())then
set udg_LDH_X=GetUnitX(udg_LDH_Target)
set udg_LDH_Y=GetUnitY(udg_LDH_Target)
set udg_LDH_Cos=Cos(udg_LDH_Angle2*bj_DEGTORAD)
set udg_LDH_Sin=Sin(udg_LDH_Angle2*bj_DEGTORAD)
set udg_LDH_MX=udg_LDH_X+udg_LDH_Speed[udg_LDH_Level]*udg_LDH_Cos
set udg_LDH_MY=udg_LDH_Y+udg_LDH_Speed[udg_LDH_Level]*udg_LDH_Sin
call SetUnitX(udg_LDH_Target,udg_LDH_MX)
call SetUnitY(udg_LDH_Target,udg_LDH_MY)
call SetUnitPropWindow(udg_LDH_Target,0.)
call SaveRealBJ((udg_LDH_CurrentDistanceRange+udg_LDH_Speed[udg_LDH_Level]),3,udg_LDH_ID,udg_LDH_Hash)
call SetUnitFlyHeight(udg_LDH_Target,udg_LDH_FinalParabola,0)
if(GetRandomReal(0.00,1.00)<=udg_LDH_AirDamageChance[udg_LDH_Level])then
call DestroyEffect(AddSpecialEffectTarget(udg_LDH_AirEffects,udg_LDH_Target,udg_LDH_AirEffectPoint))
call UnitDamageTargetBJ(udg_LDH_Caster,udg_LDH_Target,udg_LDH_AirDamage[udg_LDH_Level],udg_LDH_AttackType,udg_LDH_DamageType)
endif
else
set udg_LDH_TargetLoopPosition=GetUnitLoc(udg_LDH_Target)
call EnumDestructablesInCircleBJ(udg_LDH_DestroyTreesAreaLoop[udg_LDH_Level],udg_LDH_TargetLoopPosition,function Trig_LDH_Loop_Func001Func010Func002A)
call DestroyEffect(AddSpecialEffectLoc(udg_LDH_ImpactEffect,udg_LDH_TargetLoopPosition))
set udg_LDG_ImpactGroup=GetUnitsInRangeOfLocAll(udg_LDH_ImpactArea[udg_LDH_Level],udg_LDH_TargetLoopPosition)
set bj_wantDestroyGroup=true
call ForGroupBJ(udg_LDG_ImpactGroup,function Trig_LDH_Loop_Func001Func010Func021A)
call SetUnitPropWindow(udg_LDH_Target,udg_LDH_PW)
call SetUnitFlyHeight(udg_LDH_Target,LoadReal(udg_LDH_Hash,udg_LDH_ID,10),0.)
call IssueImmediateOrderBJ(udg_LDH_Target,"stop")
call CreateNUnitsAtLoc(1,udg_LDH_DummyType,GetOwningPlayer(udg_LDH_Caster),udg_LDH_TargetLoopPosition,bj_UNIT_FACING)
set udg_LDH_Dummy2=GetLastCreatedUnit()
call UnitAddAbilityBJ(udg_LDH_DummyAbility2,udg_LDH_Dummy2)
call SetUnitAbilityLevelSwapped(udg_LDH_DummyAbility2,udg_LDH_Dummy2,udg_LDH_Level)
call IssueTargetOrderBJ(udg_LDH_Dummy2,"thunderbolt",udg_LDH_Target)
call UnitApplyTimedLifeBJ(1.00,0x42544C46,udg_LDH_Dummy2)
call GroupRemoveUnitSimple(udg_LDH_Target,udg_LDH_GroupLoop)
call FlushChildHashtable(udg_LDH_Hash,udg_LDH_ID)
if(Trig_LDH_Loop_Func001Func010Func033001())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
call RemoveLocation(udg_LDH_TargetLoopPosition)
endif
endfunction
function Trig_LDH_Loop_Actions takes nothing returns nothing
call ForGroupBJ(udg_LDH_GroupLoop,function Trig_LDH_Loop_Func001A)
endfunction
function InitTrig_LDH_Loop takes nothing returns nothing
set gg_trg_LDH_Loop=CreateTrigger()
call DisableTrigger(gg_trg_LDH_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_LDH_Loop,0.03)
call TriggerAddAction(gg_trg_LDH_Loop,function Trig_LDH_Loop_Actions)
endfunction
function Trig_Rapid_Firebolt_Setting_Actions takes nothing returns nothing
set udg_RF_Ability=0x41303330
set udg_RF_OrderId=String2OrderIdBJ("flamestrike")
set udg_RF_FireboltMissile=0x75303032
set udg_RF_AoE[1]=200.00
set udg_RF_AoE[2]=200.00
set udg_RF_AoE[3]=200.00
set udg_RF_AoE[4]=200.00
set udg_RF_AoE[5]=200.00
set udg_RF_FireboltNumber[1]=6
set udg_RF_FireboltNumber[2]=7
set udg_RF_FireboltNumber[3]=8
set udg_RF_FireboltNumber[4]=9
set udg_RF_FireboltNumber[5]=10
set udg_RF_FireboltSpawnInterval[1]=0.12
set udg_RF_FireboltSpawnInterval[2]=0.12
set udg_RF_FireboltSpawnInterval[3]=0.12
set udg_RF_FireboltSpawnInterval[4]=0.12
set udg_RF_FireboltSpawnInterval[5]=0.12
set udg_RF_FireboltSpawnHeight[1]=100.00
set udg_RF_FireboltSpawnHeight[2]=100.00
set udg_RF_FireboltSpawnHeight[3]=100.00
set udg_RF_FireboltSpawnHeight[4]=100.00
set udg_RF_FireboltSpawnHeight[5]=100.00
set udg_RF_TravelBySpeed=false
set udg_RF_FireboltTravelSpeed[1]=0.00
set udg_RF_FireboltTravelSpeed[2]=0.00
set udg_RF_FireboltTravelSpeed[3]=0.00
set udg_RF_FireboltTravelSpeed[4]=0.00
set udg_RF_FireboltTravelSpeed[5]=0.00
set udg_RF_FireboltTravelTime[1]=0.50
set udg_RF_FireboltTravelTime[2]=0.50
set udg_RF_FireboltTravelTime[3]=0.50
set udg_RF_FireboltTravelTime[4]=0.50
set udg_RF_FireboltTravelTime[5]=0.50
set udg_RF_ExplosionEffect[1]="Abilities\\Spells\\Other\\Doom\\DoomDeath.mdl"
set udg_RF_ExplosionEffect[2]="Abilities\\Spells\\Other\\Incinerate\\FireLordDeathExplode.mdl"
set udg_RF_ExplosionEffect[3]="Abilities\\Spells\\Other\\Volcano\\VolcanoDeath.mdl"
set udg_RF_ExplosionEffectNumber=3
set udg_RF_Damage[1]=60.00
set udg_RF_Damage[2]=80.00
set udg_RF_Damage[3]=100.00
set udg_RF_Damage[4]=120.00
set udg_RF_Damage[5]=140.00
set udg_RF_DamageRadius[1]=150.00
set udg_RF_DamageRadius[2]=150.00
set udg_RF_DamageRadius[3]=150.00
set udg_RF_DamageRadius[4]=150.00
set udg_RF_DamageRadius[5]=150.00
set udg_RF_AttackType=ATTACK_TYPE_SIEGE
set udg_RF_DamageType=DAMAGE_TYPE_FIRE
set udg_RF_DestroyTrees=true
set udg_RF_TempLoc=Location(0,0)
call CreateNUnitsAtLoc(1,0x75303032,Player(PLAYER_NEUTRAL_PASSIVE),udg_RF_TempLoc,0.00)
set udg_RF_Harvester=GetLastCreatedUnit()
call UnitAddAbility(udg_RF_Harvester,0x416C6F63)
call ShowUnitHide(udg_RF_Harvester)
call RemoveLocation(udg_RF_TempLoc)
set udg_RF_HarvestOrderId=String2OrderIdBJ("harvest")
endfunction
function InitTrig_Rapid_Firebolt_Setting takes nothing returns nothing
set gg_trg_Rapid_Firebolt_Setting=CreateTrigger()
call TriggerAddAction(gg_trg_Rapid_Firebolt_Setting,function Trig_Rapid_Firebolt_Setting_Actions)
endfunction
function Trig_Rapid_Firebolt_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==udg_RF_Ability))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Cast_Func001C takes nothing returns boolean
if(not(udg_RF_MaxIndex==0))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Cast_Actions takes nothing returns nothing
if(Trig_Rapid_Firebolt_Cast_Func001C())then
call EnableTrigger(gg_trg_Rapid_Firebolt_Loop)
else
endif
set udg_RF_MaxIndex=(udg_RF_MaxIndex+1)
set udg_RF_Caster[udg_RF_MaxIndex]=GetTriggerUnit()
set udg_RF_Level[udg_RF_MaxIndex]=GetUnitAbilityLevelSwapped(udg_RF_Ability,udg_RF_Caster[udg_RF_MaxIndex])
set udg_RF_FireboltCount[udg_RF_MaxIndex]=udg_RF_FireboltNumber[udg_RF_Level[udg_RF_MaxIndex]]
set udg_RF_CasterPosition[udg_RF_MaxIndex]=GetUnitLoc(udg_RF_Caster[udg_RF_MaxIndex])
set udg_RF_TargetPoint[udg_RF_MaxIndex]=GetSpellTargetLoc()
set udg_RF_rTimer[udg_RF_MaxIndex]=0.00
set udg_RF_StageId[udg_RF_MaxIndex]=2
endfunction
function InitTrig_Rapid_Firebolt_Cast takes nothing returns nothing
set gg_trg_Rapid_Firebolt_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Rapid_Firebolt_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Rapid_Firebolt_Cast,Condition(function Trig_Rapid_Firebolt_Cast_Conditions))
call TriggerAddAction(gg_trg_Rapid_Firebolt_Cast,function Trig_Rapid_Firebolt_Cast_Actions)
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func005Func002C takes nothing returns boolean
if(not(IsUnitType(udg_RF_PickedUnit,UNIT_TYPE_FLYING)==false))then
return false
endif
if(not(IsUnitAlly(udg_RF_PickedUnit,udg_RF_Owner)==false))then
return false
endif
if(not(IsUnitDeadBJ(udg_RF_PickedUnit)==false))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func005A takes nothing returns nothing
set udg_RF_PickedUnit=GetEnumUnit()
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func005Func002C())then
call UnitDamageTargetBJ(udg_RF_Caster[udg_RF_Index],udg_RF_PickedUnit,udg_RF_Damage[udg_RF_Level[udg_RF_Index]],udg_RF_AttackType,udg_RF_DamageType)
else
endif
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func007Func001Func003C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_RF_Harvester)==udg_RF_HarvestOrderId))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func007Func001A takes nothing returns nothing
set udg_RF_PickedDest=GetEnumDestructable()
call IssueTargetOrderById(udg_RF_Harvester,udg_RF_HarvestOrderId,udg_RF_PickedDest)
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func007Func001Func003C())then
call KillDestructable(udg_RF_PickedDest)
else
endif
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func007C takes nothing returns boolean
if(not(udg_RF_DestroyTrees==true))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func001C takes nothing returns boolean
if(not(udg_RF_Distance[udg_RF_Index]>0.00))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func001Func015C takes nothing returns boolean
if(not(udg_RF_MaxIndex==0))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func001C takes nothing returns boolean
if(not(udg_RF_StageId[udg_RF_Index]==3))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002Func002Func002Func011C takes nothing returns boolean
if(not(udg_RF_TravelBySpeed==true))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002Func002Func002C takes nothing returns boolean
if(not(udg_RF_FireboltCount[udg_RF_Index]>0))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002Func002C takes nothing returns boolean
if(not(udg_RF_rTimer[udg_RF_Index]<=0.00))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002C takes nothing returns boolean
if(not(IsUnitDeadBJ(udg_RF_Caster[udg_RF_Index])==false))then
return false
endif
if(not(GetUnitCurrentOrder(udg_RF_Caster[udg_RF_Index])==udg_RF_OrderId))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001Func002C takes nothing returns boolean
if(not(udg_RF_StageId[udg_RF_Index]==2))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Func001Func001C takes nothing returns boolean
if(not(udg_RF_StageId[udg_RF_Index]==1))then
return false
endif
return true
endfunction
function Trig_Rapid_Firebolt_Loop_Actions takes nothing returns nothing
set udg_RF_Index=1
loop
exitwhen udg_RF_Index>udg_RF_MaxIndex
if(Trig_Rapid_Firebolt_Loop_Func001Func001C())then
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func001C())then
set udg_RF_X=GetUnitX(udg_RF_Firebolt[udg_RF_Index])+udg_RF_HSpeed[udg_RF_Index]*Cos(udg_RF_Angle[udg_RF_Index])
set udg_RF_Y=GetUnitY(udg_RF_Firebolt[udg_RF_Index])+udg_RF_HSpeed[udg_RF_Index]*Sin(udg_RF_Angle[udg_RF_Index])
call SetUnitX(udg_RF_Firebolt[udg_RF_Index],udg_RF_X)
call SetUnitY(udg_RF_Firebolt[udg_RF_Index],udg_RF_Y)
call SetUnitFlyHeightBJ(udg_RF_Firebolt[udg_RF_Index],(GetUnitFlyHeight(udg_RF_Firebolt[udg_RF_Index])-udg_RF_VSpeed[udg_RF_Index]),0.00)
set udg_RF_Distance[udg_RF_Index]=(udg_RF_Distance[udg_RF_Index]-udg_RF_HSpeed[udg_RF_Index])
else
set udg_RF_TempLoc=GetUnitLoc(udg_RF_Firebolt[udg_RF_Index])
set udg_RF_Loop=1
loop
exitwhen udg_RF_Loop>udg_RF_ExplosionEffectNumber
call AddSpecialEffectLocBJ(udg_RF_TempLoc,udg_RF_ExplosionEffect[udg_RF_Loop])
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set udg_RF_Loop=udg_RF_Loop+1
endloop
set udg_RF_Owner=GetOwningPlayer(udg_RF_Caster[udg_RF_Index])
set udg_RF_TempGroup=GetUnitsInRangeOfLocAll(udg_RF_DamageRadius[udg_RF_Level[udg_RF_Index]],udg_RF_TempLoc)
call ForGroupBJ(udg_RF_TempGroup,function Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func005A)
call DestroyGroup(udg_RF_TempGroup)
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func007C())then
call EnumDestructablesInCircleBJ(udg_RF_DamageRadius[udg_RF_Level[udg_RF_Index]],udg_RF_TempLoc,function Trig_Rapid_Firebolt_Loop_Func001Func001Func001Func007Func001A)
call IssueImmediateOrderBJ(udg_RF_Harvester,"stop")
else
endif
call RemoveLocation(udg_RF_TempLoc)
call KillUnit(udg_RF_Firebolt[udg_RF_Index])
set udg_RF_StageId[udg_RF_Index]=3
endif
else
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func002C())then
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002C())then
set udg_RF_rTimer[udg_RF_Index]=(udg_RF_rTimer[udg_RF_Index]-0.03)
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002Func002C())then
set udg_RF_rTimer[udg_RF_Index]=udg_RF_FireboltSpawnInterval[udg_RF_Level[udg_RF_Index]]
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002Func002Func002C())then
set udg_RF_TempLoc=PolarProjectionBJ(udg_RF_TargetPoint[udg_RF_Index],GetRandomReal(0,udg_RF_AoE[udg_RF_Level[udg_RF_Index]]),GetRandomDirectionDeg())
set udg_RF_MaxIndex=(udg_RF_MaxIndex+1)
set udg_RF_Angle[udg_RF_MaxIndex]=AngleBetweenPoints(udg_RF_CasterPosition[udg_RF_Index],udg_RF_TempLoc)
set udg_RF_Distance[udg_RF_MaxIndex]=DistanceBetweenPoints(udg_RF_CasterPosition[udg_RF_Index],udg_RF_TempLoc)
call CreateNUnitsAtLoc(1,udg_RF_FireboltMissile,GetOwningPlayer(udg_RF_Caster[udg_RF_Index]),udg_RF_CasterPosition[udg_RF_Index],udg_RF_Angle[udg_RF_MaxIndex])
set udg_RF_Firebolt[udg_RF_MaxIndex]=GetLastCreatedUnit()
call SetUnitFlyHeightBJ(udg_RF_Firebolt[udg_RF_MaxIndex],udg_RF_FireboltSpawnHeight[udg_RF_Level[udg_RF_Index]],0.00)
set udg_RF_Caster[udg_RF_MaxIndex]=udg_RF_Caster[udg_RF_Index]
set udg_RF_Level[udg_RF_MaxIndex]=udg_RF_Level[udg_RF_Index]
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func002Func002Func002Func011C())then
set udg_RF_HSpeed[udg_RF_MaxIndex]=udg_RF_FireboltTravelSpeed[udg_RF_Level[udg_RF_Index]]
set udg_RF_FireboltTravelTime[0]=((udg_RF_Distance[udg_RF_MaxIndex]*0.03)/udg_RF_HSpeed[udg_RF_MaxIndex])
else
set udg_RF_HSpeed[udg_RF_MaxIndex]=(udg_RF_Distance[udg_RF_MaxIndex]/(udg_RF_FireboltTravelTime[udg_RF_Level[udg_RF_Index]]/0.03))
set udg_RF_FireboltTravelTime[0]=udg_RF_FireboltTravelTime[udg_RF_Level[udg_RF_Index]]
endif
set udg_RF_VSpeed[udg_RF_MaxIndex]=(udg_RF_FireboltSpawnHeight[udg_RF_Level[udg_RF_Index]]/(udg_RF_FireboltTravelTime[0]/0.03))
set udg_RF_Angle[udg_RF_MaxIndex]=udg_RF_Angle[udg_RF_MaxIndex]*bj_DEGTORAD
set udg_RF_StageId[udg_RF_MaxIndex]=1
set udg_RF_FireboltCount[udg_RF_Index]=(udg_RF_FireboltCount[udg_RF_Index]-1)
call RemoveLocation(udg_RF_TempLoc)
else
call IssueImmediateOrderBJ(udg_RF_Caster[udg_RF_Index],"stop")
endif
else
endif
else
call RemoveLocation(udg_RF_CasterPosition[udg_RF_Index])
call RemoveLocation(udg_RF_TargetPoint[udg_RF_Index])
set udg_RF_StageId[udg_RF_Index]=3
endif
else
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func001C())then
set udg_RF_Angle[udg_RF_Index]=udg_RF_Angle[udg_RF_MaxIndex]
set udg_RF_Caster[udg_RF_Index]=udg_RF_Caster[udg_RF_MaxIndex]
set udg_RF_CasterPosition[udg_RF_Index]=udg_RF_CasterPosition[udg_RF_MaxIndex]
set udg_RF_Distance[udg_RF_Index]=udg_RF_Distance[udg_RF_MaxIndex]
set udg_RF_Firebolt[udg_RF_Index]=udg_RF_Firebolt[udg_RF_MaxIndex]
set udg_RF_FireboltCount[udg_RF_Index]=udg_RF_FireboltCount[udg_RF_MaxIndex]
set udg_RF_HSpeed[udg_RF_Index]=udg_RF_HSpeed[udg_RF_MaxIndex]
set udg_RF_Level[udg_RF_Index]=udg_RF_Level[udg_RF_MaxIndex]
set udg_RF_StageId[udg_RF_Index]=udg_RF_StageId[udg_RF_MaxIndex]
set udg_RF_TargetPoint[udg_RF_Index]=udg_RF_TargetPoint[udg_RF_MaxIndex]
set udg_RF_VSpeed[udg_RF_Index]=udg_RF_VSpeed[udg_RF_MaxIndex]
set udg_RF_rTimer[udg_RF_Index]=udg_RF_rTimer[udg_RF_MaxIndex]
set udg_RF_Index=(udg_RF_Index-1)
set udg_RF_MaxIndex=(udg_RF_MaxIndex-1)
if(Trig_Rapid_Firebolt_Loop_Func001Func001Func002Func001Func015C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
else
endif
endif
endif
set udg_RF_Index=udg_RF_Index+1
endloop
endfunction
function InitTrig_Rapid_Firebolt_Loop takes nothing returns nothing
set gg_trg_Rapid_Firebolt_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Rapid_Firebolt_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Rapid_Firebolt_Loop,0.03)
call TriggerAddAction(gg_trg_Rapid_Firebolt_Loop,function Trig_Rapid_Firebolt_Loop_Actions)
endfunction
function Trig_Counter_Helix_Setup_Func069C takes nothing returns boolean
if(not(udg_CH_Allow_Tree==true))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Setup_Actions takes nothing returns nothing
set udg_CH_Hash=InitHashtable()
set udg_CH_Ability_Spin=0x41303259
set udg_CH_Allow_Text=true
set udg_CH_Allow_Tree=true
set udg_CH_Buff=0x42303030
set udg_CH_AoE[1]=300.00
set udg_CH_AoE[2]=300.00
set udg_CH_AoE[3]=300.00
set udg_CH_AoE[4]=300.00
set udg_CH_AoE[5]=300.00
set udg_CH_Chance[1]=17
set udg_CH_Chance[2]=17
set udg_CH_Chance[3]=17
set udg_CH_Chance[4]=17
set udg_CH_Chance[5]=17
set udg_CH_Damage[1]=100.00
set udg_CH_Damage[2]=135.00
set udg_CH_Damage[3]=170.00
set udg_CH_Damage[4]=205.00
set udg_CH_Damage[5]=205.00
set udg_CH_Spin_Max=0.65
set udg_CH_Model="Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl"
set udg_CH_Text_Angle=90.00
set udg_CH_Text_FadingAge=1.50
set udg_CH_Text_LifeSpan=2.00
set udg_CH_Text_Size=11.50
set udg_CH_Type_Attack=ATTACK_TYPE_HERO
set udg_CH_Type_Damage=DAMAGE_TYPE_UNIVERSAL
set udg_CH_Type_Dummy=0x6F303031
if(Trig_Counter_Helix_Setup_Func069C())then
set udg_CH_Point=GetRectCenter(GetPlayableMapRect())
call CreateNUnitsAtLoc(1,udg_CH_Type_Dummy,Player(PLAYER_NEUTRAL_PASSIVE),udg_CH_Point,bj_UNIT_FACING)
set udg_CH_Dummy=GetLastCreatedUnit()
call RemoveLocation(udg_CH_Point)
else
endif
call DestroyTrigger(GetTriggeringTrigger())
endfunction
function InitTrig_Counter_Helix_Setup takes nothing returns nothing
set gg_trg_Counter_Helix_Setup=CreateTrigger()
call TriggerAddAction(gg_trg_Counter_Helix_Setup,function Trig_Counter_Helix_Setup_Actions)
endfunction
function Trig_Counter_Helix_Loop_Func001Func011Func001C takes nothing returns boolean
if((udg_CH_Spin_Current>=udg_CH_Spin_Max))then
return true
endif
if((UnitHasBuffBJ(udg_CH_Caster,0x42505345)==true))then
return true
endif
if((UnitHasBuffBJ(udg_CH_Caster,0x4253544E)==true))then
return true
endif
if((IsUnitType(udg_CH_Caster,UNIT_TYPE_STUNNED)==true))then
return true
endif
if((IsUnitPausedBJ(udg_CH_Caster)==true))then
return true
endif
if((IsUnitDeadBJ(udg_CH_Caster)==true))then
return true
endif
return false
endfunction
function Trig_Counter_Helix_Loop_Func001Func011Func010Func004Func001Func005C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_CH_Dummy)==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Loop_Func001Func011Func010Func004Func001C takes nothing returns boolean
if(not(IsDestructableAliveBJ(GetEnumDestructable())==true))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Loop_Func001Func011Func010Func004A takes nothing returns nothing
if(Trig_Counter_Helix_Loop_Func001Func011Func010Func004Func001C())then
call IssueTargetDestructableOrder(udg_CH_Dummy,"harvest",GetEnumDestructable())
if(Trig_Counter_Helix_Loop_Func001Func011Func010Func004Func001Func005C())then
call KillDestructable(GetEnumDestructable())
else
endif
call IssueImmediateOrderBJ(udg_CH_Dummy,"stop")
else
endif
endfunction
function Trig_Counter_Helix_Loop_Func001Func011Func010C takes nothing returns boolean
if(not(udg_CH_Allow_Tree==true))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Loop_Func001Func011Func020C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_CH_Group[1])==true))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Loop_Func001Func011C takes nothing returns boolean
if(not Trig_Counter_Helix_Loop_Func001Func011Func001C())then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Loop_Func001A takes nothing returns nothing
set udg_CH_Caster=GetEnumUnit()
set udg_CH_Handle=GetEnumUnit()
set udg_CH_Spin_Current=LoadRealBJ(1,GetHandleIdBJ(udg_CH_Handle),udg_CH_Hash)
if(Trig_Counter_Helix_Loop_Func001Func011C())then
call UnitRemoveAbilityBJ(udg_CH_Ability_Spin,udg_CH_Caster)
call FlushChildHashtableBJ(GetHandleIdBJ(udg_CH_Handle),udg_CH_Hash)
call GroupRemoveUnitSimple(udg_CH_Caster,udg_CH_Group[1])
if(Trig_Counter_Helix_Loop_Func001Func011Func020C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
else
call SaveRealBJ((udg_CH_Spin_Current+0.05),1,GetHandleIdBJ(udg_CH_Handle),udg_CH_Hash)
set udg_CH_Level=GetUnitAbilityLevelSwapped(udg_CH_Ability,udg_CH_Caster)
if(Trig_Counter_Helix_Loop_Func001Func011Func010C())then
set udg_CH_Point=GetUnitLoc(udg_CH_Caster)
call EnumDestructablesInCircleBJ(udg_CH_AoE[udg_CH_Level],udg_CH_Point,function Trig_Counter_Helix_Loop_Func001Func011Func010Func004A)
call RemoveLocation(udg_CH_Point)
else
endif
endif
endfunction
function Trig_Counter_Helix_Loop_Actions takes nothing returns nothing
call ForGroupBJ(udg_CH_Group[1],function Trig_Counter_Helix_Loop_Func001A)
endfunction
function InitTrig_Counter_Helix_Loop takes nothing returns nothing
set gg_trg_Counter_Helix_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Counter_Helix_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Counter_Helix_Loop,0.05)
call TriggerAddAction(gg_trg_Counter_Helix_Loop,function Trig_Counter_Helix_Loop_Actions)
endfunction
function Trig_Counter_Helix_Conditions takes nothing returns boolean
if(not(UnitHasBuffBJ(GetTriggerUnit(),0x42505345)==false))then
return false
endif
if(not(GetUnitAbilityLevelSwapped(udg_CH_Ability,GetTriggerUnit())>0))then
return false
endif
if(not(UnitHasBuffBJ(GetTriggerUnit(),0x4253544E)==false))then
return false
endif
if(not(UnitHasBuffBJ(GetTriggerUnit(),udg_CH_Buff)==true))then
return false
endif
if(not(IsUnitType(GetTriggerUnit(),UNIT_TYPE_STUNNED)==false))then
return false
endif
if(not(IsUnitPausedBJ(GetTriggerUnit())==false))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Func014Func008Func015C takes nothing returns boolean
if(not(IsTriggerEnabled(gg_trg_Counter_Helix_Loop)==true))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Func014Func008C takes nothing returns boolean
if(not(IsUnitInGroup(udg_CH_Caster,udg_CH_Group[1])==true))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Func014Func021Func001Func015C takes nothing returns boolean
if(not(udg_CH_Allow_Text==true))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Func014Func021Func001C takes nothing returns boolean
if(not(IsUnitEnemy(GetEnumUnit(),GetOwningPlayer(udg_CH_Caster))==true))then
return false
endif
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_TOWNHALL)==false))then
return false
endif
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_MECHANICAL)==false))then
return false
endif
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_STRUCTURE)==false))then
return false
endif
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_ETHEREAL)==false))then
return false
endif
if(not(IsUnitHiddenBJ(GetEnumUnit())==false))then
return false
endif
if(not(IsUnitDeadBJ(GetEnumUnit())==false))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Func014Func021A takes nothing returns nothing
if(Trig_Counter_Helix_Func014Func021Func001C())then
set udg_CH_Target=GetEnumUnit()
call AddSpecialEffectTargetUnitBJ("origin",udg_CH_Target,udg_CH_Model)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call UnitDamageTargetBJ(udg_CH_Caster,udg_CH_Target,udg_CH_Damage[udg_CH_Level],udg_CH_Type_Attack,udg_CH_Type_Damage)
if(Trig_Counter_Helix_Func014Func021Func001Func015C())then
set udg_CH_Text_Player=GetForceOfPlayer(GetOwningPlayer(udg_CH_Caster))
call CreateTextTagUnitBJ(("|cffFF2B2B- "+I2S(R2I(udg_CH_Damage[udg_CH_Level]))),GetEnumUnit(),0,10,100,100,100,0)
call ShowTextTagForceBJ(false,GetLastCreatedTextTag(),GetPlayersAll())
call ShowTextTagForceBJ(true,GetLastCreatedTextTag(),udg_CH_Text_Player)
call SetTextTagPermanentBJ(GetLastCreatedTextTag(),false)
call SetTextTagLifespanBJ(GetLastCreatedTextTag(),udg_CH_Text_LifeSpan)
call SetTextTagFadepointBJ(GetLastCreatedTextTag(),udg_CH_Text_FadingAge)
call SetTextTagVelocityBJ(GetLastCreatedTextTag(),100.00,udg_CH_Text_Angle)
call DestroyForce(udg_CH_Text_Player)
set udg_CH_Text_Player=null
else
endif
else
endif
endfunction
function Trig_Counter_Helix_Func014C takes nothing returns boolean
if(not(udg_CH_Chance[0]<=udg_CH_Chance[udg_CH_Level]))then
return false
endif
return true
endfunction
function Trig_Counter_Helix_Actions takes nothing returns nothing
set udg_CH_Level=GetUnitAbilityLevelSwapped(udg_CH_Ability,udg_CH_Caster)
set udg_CH_Chance[0]=GetRandomInt(1,100)
if(Trig_Counter_Helix_Func014C())then
set udg_CH_Caster=GetTriggerUnit()
set udg_CH_Handle=GetTriggerUnit()
if(Trig_Counter_Helix_Func014Func008C())then
set udg_CH_Spin_Current=LoadRealBJ(1,GetHandleIdBJ(udg_CH_Handle),udg_CH_Hash)
call SaveRealBJ((udg_CH_Spin_Current-0.05),1,GetHandleIdBJ(udg_CH_Handle),udg_CH_Hash)
else
call SaveRealBJ(0.00,1,GetHandleIdBJ(udg_CH_Handle),udg_CH_Hash)
call UnitAddAbilityBJ(udg_CH_Ability_Spin,udg_CH_Caster)
call IssueImmediateOrderBJ(udg_CH_Caster,"whirlwind")
call GroupAddUnitSimple(udg_CH_Caster,udg_CH_Group[1])
if(Trig_Counter_Helix_Func014Func008Func015C())then
else
call EnableTrigger(gg_trg_Counter_Helix_Loop)
endif
endif
set udg_CH_Point=GetUnitLoc(udg_CH_Caster)
set udg_CH_Group[2]=GetUnitsInRangeOfLocAll(udg_CH_AoE[udg_CH_Level],udg_CH_Point)
call RemoveLocation(udg_CH_Point)
set bj_wantDestroyGroup=true
call ForGroupBJ(udg_CH_Group[2],function Trig_Counter_Helix_Func014Func021A)
else
endif
endfunction
function InitTrig_Counter_Helix takes nothing returns nothing
set gg_trg_Counter_Helix=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Counter_Helix,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddCondition(gg_trg_Counter_Helix,Condition(function Trig_Counter_Helix_Conditions))
call TriggerAddAction(gg_trg_Counter_Helix,function Trig_Counter_Helix_Actions)
endfunction
function Trig_Electrify_Settings_Actions takes nothing returns nothing
set udg_E0_AttackType=ATTACK_TYPE_NORMAL
set udg_E0_DamageType=DAMAGE_TYPE_MAGIC
set udg_E0_DestroyTree=false
set udg_E0_AoE_Base=200.00
set udg_E0_AoE_Increment=50.00
set udg_E0_DamageAmount_Base=25.00
set udg_E0_DamageAmount_Increment=50.00
set udg_E0_DamageDelay=0.51
set udg_E0_Dummy_Size=1.15
set udg_E0_Duration_Base=0.50
set udg_E0_Duration_Increment=0.50
set udg_E0_Travel_Time=0.10
set udg_E0_Speed_Enemy=1.50
set udg_E0_ProjectileMaximumZ=750.00
set udg_E0_ProjectileLaunchZ=60.00
set udg_E0_ProjectileImpactZ=60.00
set udg_E0_MaxTargets_Base=2
set udg_E0_MaxTargets_Increment=2
set udg_E0_LightningType="FORK"
set udg_E0_S_Chest_Primary="ZapMissile.mdx"
set udg_E0_S_Chest_Alternative="LightningSphere_FX.mdx"
set udg_E0_S_Chest_Enemy="Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl"
set udg_E0_S_DamageUnit="Abilities\\Weapons\\Bolt\\BoltImpact.mdl"
set udg_E0_S_Impact="EMPBomb.mdx"
set udg_E0_S_Origin="Abilities\\Spells\\Orc\\LightningShield\\LightningShieldTarget.mdl"
set udg_Point1=GetRectCenter(GetPlayableMapRect())
call CreateNUnitsAtLoc(1,0x68303052,Player(PLAYER_NEUTRAL_PASSIVE),udg_Point1,bj_UNIT_FACING)
set udg_E0_TreeChecker=GetLastCreatedUnit()
call SetUnitInvulnerable(udg_E0_TreeChecker,true)
call ShowUnitHide(udg_E0_TreeChecker)
call RemoveLocation(udg_Point1)
call Preload(udg_E0_S_Chest_Alternative)
call Preload(udg_E0_S_Chest_Primary)
call Preload(udg_E0_S_Chest_Enemy)
call Preload(udg_E0_S_DamageUnit)
call Preload(udg_E0_S_Impact)
call Preload(udg_E0_S_Origin)
endfunction
function InitTrig_Electrify_Settings takes nothing returns nothing
set gg_trg_Electrify_Settings=CreateTrigger()
call TriggerAddAction(gg_trg_Electrify_Settings,function Trig_Electrify_Settings_Actions)
endfunction
function Trig_Electrify_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303255))then
return false
endif
return true
endfunction
function Trig_Electrify_Cast_Func001C takes nothing returns boolean
if(not(udg_E1_Index_Size==0))then
return false
endif
return true
endfunction
function Trig_Electrify_Cast_Func003C takes nothing returns boolean
if(not(udg_E1_Index_Size>udg_E1_Index_Max))then
return false
endif
return true
endfunction
function Trig_Electrify_Cast_Actions takes nothing returns nothing
if(Trig_Electrify_Cast_Func001C())then
call EnableTrigger(gg_trg_Electrify_Loop)
else
endif
set udg_E1_Index_Size=(udg_E1_Index_Size+1)
if(Trig_Electrify_Cast_Func003C())then
set udg_E1_Index_Itself[udg_E1_Index_Size]=udg_E1_Index_Size
set udg_E1_Index_Max=udg_E1_Index_Size
else
endif
set udg_E1_Current=udg_E1_Index_Itself[udg_E1_Index_Size]
set udg_E1_Caster[udg_E1_Current]=GetTriggerUnit()
set udg_E1_Level[udg_E1_Current]=GetUnitAbilityLevelSwapped(0x41303255,udg_E1_Caster[udg_E1_Current])
set udg_Point1=GetUnitLoc(udg_E1_Caster[udg_E1_Current])
set udg_Point2=GetSpellTargetLoc()
set udg_E2_x1=GetLocationX(udg_Point2)-GetUnitX(udg_E1_Caster[udg_E1_Current])
set udg_E2_y1=GetLocationY(udg_Point2)-GetUnitY(udg_E1_Caster[udg_E1_Current])
set udg_E1_Angle[udg_E1_Current]=Atan2(udg_E2_y1,udg_E2_x1)
set udg_E1_Splash[udg_E1_Current]=false
set udg_E1_Boom[udg_E1_Current]=false
set udg_E1_ZDuration[udg_E1_Current]=0.00
set udg_E1_ZInterval[udg_E1_Current]=((0.90/udg_E0_Travel_Time)*3.00)
set udg_E1_ZMaxHeight[udg_E1_Current]=udg_E0_ProjectileMaximumZ
set udg_E1_AoE[udg_E1_Current]=(udg_E0_AoE_Base+(udg_E0_AoE_Increment*I2R(udg_E1_Level[udg_E1_Current])))
set udg_E1_Duration[udg_E1_Current]=(udg_E0_Duration_Base+(udg_E0_Duration_Increment*I2R(udg_E1_Level[udg_E1_Current])))
set udg_E1_Speed[udg_E1_Current]=(SquareRoot(udg_E2_x1*udg_E2_x1+udg_E2_y1*udg_E2_y1)/udg_E0_Travel_Time)*0.03
set udg_E1_MaxTarget[udg_E1_Current]=(udg_E0_MaxTargets_Base+(udg_E0_MaxTargets_Increment*udg_E1_Level[udg_E1_Current]))
set udg_E1_Damage[udg_E1_Current]=(udg_E0_DamageAmount_Base+(udg_E0_DamageAmount_Increment*I2R(udg_E1_Level[udg_E1_Current])))
call CreateNUnitsAtLoc(1,0x68303052,Player(PLAYER_NEUTRAL_PASSIVE),udg_Point1,((180.00/3.14)*udg_E1_Angle[udg_E1_Current]))
set udg_E1_Dummy[udg_E1_Current]=GetLastCreatedUnit()
call SetUnitFlyHeightBJ(udg_E1_Dummy[udg_E1_Current],udg_E0_ProjectileLaunchZ,0.00)
call SetUnitScalePercent(udg_E1_Dummy[udg_E1_Current],(udg_E0_Dummy_Size*100.00),(udg_E0_Dummy_Size*100.00),(udg_E0_Dummy_Size*100.00))
call AddSpecialEffectTargetUnitBJ("origin",udg_E1_Dummy[udg_E1_Current],udg_E0_S_Chest_Primary)
set udg_E1_SFX_Chest[udg_E1_Current]=GetLastCreatedEffectBJ()
call RemoveLocation(udg_Point1)
call RemoveLocation(udg_Point2)
endfunction
function InitTrig_Electrify_Cast takes nothing returns nothing
set gg_trg_Electrify_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Electrify_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Electrify_Cast,Condition(function Trig_Electrify_Cast_Conditions))
call TriggerAddAction(gg_trg_Electrify_Cast,function Trig_Electrify_Cast_Actions)
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func001Func008C takes nothing returns boolean
if(not(udg_E1_Index_Size==0))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func001C takes nothing returns boolean
if(not(udg_E1_Duration[udg_E1_Current]>0.00))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false)
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002001 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false)
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002002001 takes nothing returns boolean
return(IsUnitDeadBJ(GetFilterUnit())==false)
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002002002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_E1_Caster[udg_E1_Current]))==true)
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002002 takes nothing returns boolean
return GetBooleanAnd(Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002002001(),Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002002002())
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002001(),Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002002())
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003 takes nothing returns boolean
return GetBooleanAnd(Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003001(),Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003002())
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004Func001Func002C takes nothing returns boolean
if(not(udg_E2_Index_Size==0))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004Func001Func004C takes nothing returns boolean
if(not(udg_E2_Index_Size>udg_E2_Index_Max))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004Func001C takes nothing returns boolean
if(not(udg_E1_MaxTarget[udg_E1_Current]>0))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func004A takes nothing returns nothing
if(Trig_Electrify_Loop_Func001Func002Func001Func003Func004Func001C())then
set udg_E1_MaxTarget[udg_E1_Current]=(udg_E1_MaxTarget[udg_E1_Current]-1)
if(Trig_Electrify_Loop_Func001Func002Func001Func003Func004Func001Func002C())then
set udg_E2_Allow=true
else
endif
set udg_E2_Index_Size=(udg_E2_Index_Size+1)
if(Trig_Electrify_Loop_Func001Func002Func001Func003Func004Func001Func004C())then
set udg_E2_Index_Itself[udg_E2_Index_Size]=udg_E2_Index_Size
set udg_E2_Index_Max=udg_E2_Index_Size
else
endif
set udg_E2_Current=udg_E2_Index_Itself[udg_E2_Index_Size]
set udg_E2_Enemy[udg_E2_Current]=GetEnumUnit()
set udg_E2_Source[udg_E2_Current]=udg_E1_Dummy[udg_E1_Current]
set udg_E2_Duration[udg_E2_Current]=udg_E1_Duration[udg_E1_Current]
call UnitDamageTarget(udg_E1_Caster[udg_E1_Current],udg_E2_Enemy[udg_E2_Current],udg_E1_Damage[udg_E1_Current],true,true,udg_E0_AttackType,udg_E0_DamageType,null)
call AddSpecialEffectTargetUnitBJ("origin",udg_E2_Enemy[udg_E2_Current],udg_E0_S_Chest_Enemy)
set udg_E2_SFX_Enemy[udg_E2_Current]=GetLastCreatedEffectBJ()
call AddSpecialEffectTargetUnitBJ("origin",udg_E2_Enemy[udg_E2_Current],udg_E0_S_DamageUnit)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
set udg_E2_x1=GetUnitX(udg_E2_Source[udg_E2_Current])
set udg_E2_y1=GetUnitY(udg_E2_Source[udg_E2_Current])
set udg_E2_x2=GetUnitX(udg_E2_Enemy[udg_E2_Current])
set udg_E2_y2=GetUnitY(udg_E2_Enemy[udg_E2_Current])
set udg_Point2=GetUnitLoc(udg_E2_Enemy[udg_E2_Current])
call AddLightningLoc(udg_E0_LightningType,udg_Point1,udg_Point2)
set udg_E2_Lightning[udg_E2_Current]=GetLastCreatedLightningBJ()
call MoveLightningEx(udg_E2_Lightning[udg_E2_Current],true,udg_E2_x1,udg_E2_y1,GetLocationZ(udg_Point1)+udg_E0_ProjectileImpactZ,udg_E2_x2,udg_E2_y2,GetLocationZ(udg_Point2)+GetUnitFlyHeight(udg_E2_Enemy[udg_E2_Current])+45.)
call RemoveLocation(udg_Point2)
else
endif
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func005Func002Func003C takes nothing returns boolean
if(not(GetUnitCurrentOrder(udg_E0_TreeChecker)==String2OrderIdBJ("harvest")))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func005Func002A takes nothing returns nothing
if GetWidgetLife(GetEnumDestructable())>0.405 then
call IssueTargetDestructableOrder(udg_E0_TreeChecker,"harvest",GetEnumDestructable())
if(Trig_Electrify_Loop_Func001Func002Func001Func003Func005Func002Func003C())then
call KillDestructable(GetEnumDestructable())
else
endif
call IssueImmediateOrderBJ(udg_E0_TreeChecker,"stop")
endif
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003Func005C takes nothing returns boolean
if(not(udg_E0_DestroyTree==true))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001Func003C takes nothing returns boolean
if(not(udg_E1_ZDuration[udg_E1_Current]<90.00))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func001C takes nothing returns boolean
if(not(udg_E1_Boom[udg_E1_Current]==false))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002Func002C takes nothing returns boolean
if(not(udg_E1_ZDuration[udg_E1_Current]<90.00))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func001Func002C takes nothing returns boolean
if(not(udg_E1_Splash[udg_E1_Current]==false))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func002Func001Func002Func007C takes nothing returns boolean
if(not(udg_E2_Index_Size==0))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func002Func001Func002Func024C takes nothing returns boolean
if(not(IsUnitDeadBJ(udg_E2_Enemy[udg_E2_Current])==true))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func002Func001Func002C takes nothing returns boolean
if(not(udg_E2_Duration[udg_E2_Current]>0.00))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Func002C takes nothing returns boolean
if(not(udg_E2_Allow==true))then
return false
endif
return true
endfunction
function Trig_Electrify_Loop_Actions takes nothing returns nothing
set udg_E1_Loop=1
loop
exitwhen udg_E1_Loop>udg_E1_Index_Size
set udg_E1_Current=udg_E1_Index_Itself[udg_E1_Loop]
if(Trig_Electrify_Loop_Func001Func002C())then
if(Trig_Electrify_Loop_Func001Func002Func002C())then
set udg_E2_x1=GetUnitX(udg_E1_Dummy[udg_E1_Current])
set udg_E2_y1=GetUnitY(udg_E1_Dummy[udg_E1_Current])
set udg_E2_x2=udg_E2_x1+udg_E1_Speed[udg_E1_Current]*Cos(udg_E1_Angle[udg_E1_Current])
set udg_E2_y2=udg_E2_y1+udg_E1_Speed[udg_E1_Current]*Sin(udg_E1_Angle[udg_E1_Current])
call SetUnitX(udg_E1_Dummy[udg_E1_Current],udg_E2_x2)
call SetUnitY(udg_E1_Dummy[udg_E1_Current],udg_E2_y2)
set udg_E1_ZDuration[udg_E1_Current]=(udg_E1_ZDuration[udg_E1_Current]+udg_E1_ZInterval[udg_E1_Current])
call SetUnitFlyHeightBJ(udg_E1_Dummy[udg_E1_Current],((SinBJ(udg_E1_ZDuration[udg_E1_Current])*udg_E1_ZMaxHeight[udg_E1_Current])+udg_E0_ProjectileLaunchZ),0.00)
else
set udg_E1_Splash[udg_E1_Current]=true
set udg_E1_ZDuration[udg_E1_Current]=0.00
set udg_E1_ZInterval[udg_E1_Current]=((0.90/udg_E0_DamageDelay)*3.00)
set udg_E1_ZMaxHeight[udg_E1_Current]=udg_E0_ProjectileMaximumZ
set udg_Point1=GetUnitLoc(udg_E1_Dummy[udg_E1_Current])
call AddSpecialEffectLocBJ(udg_Point1,udg_E0_S_Origin)
set udg_E1_SFX_Origin[udg_E1_Current]=GetLastCreatedEffectBJ()
call RemoveLocation(udg_Point1)
endif
else
if(Trig_Electrify_Loop_Func001Func002Func001C())then
if(Trig_Electrify_Loop_Func001Func002Func001Func003C())then
set udg_E1_ZDuration[udg_E1_Current]=(udg_E1_ZDuration[udg_E1_Current]+udg_E1_ZInterval[udg_E1_Current])
call SetUnitFlyHeightBJ(udg_E1_Dummy[udg_E1_Current],((CosBJ(udg_E1_ZDuration[udg_E1_Current])*udg_E1_ZMaxHeight[udg_E1_Current])+udg_E0_ProjectileImpactZ),0.00)
else
set udg_Point1=GetUnitLoc(udg_E1_Dummy[udg_E1_Current])
set udg_E1_Boom[udg_E1_Current]=true
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocMatching(udg_E1_AoE[udg_E1_Current],udg_Point1,Condition(function Trig_Electrify_Loop_Func001Func002Func001Func003Func004001003)),function Trig_Electrify_Loop_Func001Func002Func001Func003Func004A)
if(Trig_Electrify_Loop_Func001Func002Func001Func003Func005C())then
call EnumDestructablesInCircleBJ(udg_E1_AoE[udg_E1_Current],udg_Point1,function Trig_Electrify_Loop_Func001Func002Func001Func003Func005Func002A)
else
endif
call DestroyEffectBJ(udg_E1_SFX_Chest[udg_E1_Current])
call AddSpecialEffectTargetUnitBJ("origin",udg_E1_Dummy[udg_E1_Current],udg_E0_S_Chest_Alternative)
set udg_E1_SFX_Chest[udg_E1_Current]=GetLastCreatedEffectBJ()
call SetUnitFlyHeightBJ(udg_E1_Dummy[udg_E1_Current],udg_E0_ProjectileImpactZ,0.00)
call AddSpecialEffectTargetUnitBJ("origin",udg_E1_Dummy[udg_E1_Current],udg_E0_S_Impact)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call RemoveLocation(udg_Point1)
endif
else
if(Trig_Electrify_Loop_Func001Func002Func001Func001C())then
set udg_E1_Duration[udg_E1_Current]=(udg_E1_Duration[udg_E1_Current]-0.03)
else
call DestroyEffectBJ(udg_E1_SFX_Chest[udg_E1_Current])
call DestroyEffectBJ(udg_E1_SFX_Origin[udg_E1_Current])
call UnitApplyTimedLifeBJ(2.00,0x42544C46,udg_E1_Dummy[udg_E1_Current])
set udg_E1_Index_Itself[udg_E1_Loop]=udg_E1_Index_Itself[udg_E1_Index_Size]
set udg_E1_Index_Itself[udg_E1_Index_Size]=udg_E1_Current
set udg_E1_Index_Size=(udg_E1_Index_Size-1)
set udg_E1_Loop=(udg_E1_Loop-1)
if(Trig_Electrify_Loop_Func001Func002Func001Func001Func008C())then
call DisableTrigger(GetTriggeringTrigger())
return
else
endif
endif
endif
endif
set udg_E1_Loop=udg_E1_Loop+1
endloop
if(Trig_Electrify_Loop_Func002C())then
set udg_E2_Loop=1
loop
exitwhen udg_E2_Loop>udg_E2_Index_Size
set udg_E2_Current=udg_E2_Index_Itself[udg_E2_Loop]
if(Trig_Electrify_Loop_Func002Func001Func002C())then
set udg_E2_Duration[udg_E2_Current]=(udg_E2_Duration[udg_E2_Current]-0.03)
set udg_E2_Angle=Atan2(GetUnitY(udg_E2_Source[udg_E2_Current])-GetUnitY(udg_E2_Enemy[udg_E2_Current]),GetUnitX(udg_E2_Source[udg_E2_Current])-GetUnitX(udg_E2_Enemy[udg_E2_Current]))
set udg_E2_x1=GetUnitX(udg_E2_Enemy[udg_E2_Current])
set udg_E2_y1=GetUnitY(udg_E2_Enemy[udg_E2_Current])
set udg_E2_x2=udg_E2_x1+udg_E0_Speed_Enemy*Cos(udg_E2_Angle)
set udg_E2_y2=udg_E2_y1+udg_E0_Speed_Enemy*Sin(udg_E2_Angle)
call SetUnitX(udg_E2_Enemy[udg_E2_Current],udg_E2_x2)
call SetUnitY(udg_E2_Enemy[udg_E2_Current],udg_E2_y2)
call IssueImmediateOrderBJ(udg_E2_Enemy[udg_E2_Current],"stop")
set udg_E2_x1=GetUnitX(udg_E2_Source[udg_E2_Current])
set udg_E2_y1=GetUnitY(udg_E2_Source[udg_E2_Current])
set udg_Point1=GetUnitLoc(udg_E2_Source[udg_E2_Current])
set udg_Point2=GetUnitLoc(udg_E2_Enemy[udg_E2_Current])
call MoveLightningEx(udg_E2_Lightning[udg_E2_Current],true,udg_E2_x1,udg_E2_y1,GetLocationZ(udg_Point1)+udg_E0_ProjectileImpactZ,udg_E2_x2,udg_E2_y2,GetLocationZ(udg_Point2)+GetUnitFlyHeight(udg_E2_Enemy[udg_E2_Current])+45.)
call RemoveLocation(udg_Point1)
call RemoveLocation(udg_Point2)
if(Trig_Electrify_Loop_Func002Func001Func002Func024C())then
set udg_E2_Duration[udg_E2_Current]=0.00
else
endif
else
call DestroyEffectBJ(udg_E2_SFX_Enemy[udg_E2_Current])
call DestroyLightningBJ(udg_E2_Lightning[udg_E2_Current])
set udg_E2_Index_Itself[udg_E2_Loop]=udg_E2_Index_Itself[udg_E2_Index_Size]
set udg_E2_Index_Itself[udg_E2_Index_Size]=udg_E2_Current
set udg_E2_Index_Size=(udg_E2_Index_Size-1)
set udg_E2_Loop=(udg_E2_Loop-1)
if(Trig_Electrify_Loop_Func002Func001Func002Func007C())then
set udg_E2_Allow=false
return
else
endif
endif
set udg_E2_Loop=udg_E2_Loop+1
endloop
else
endif
endfunction
function InitTrig_Electrify_Loop takes nothing returns nothing
set gg_trg_Electrify_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Electrify_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Electrify_Loop,0.03)
call TriggerAddAction(gg_trg_Electrify_Loop,function Trig_Electrify_Loop_Actions)
endfunction
function Trig_death_special_effect_Func001Func002002003001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_death_special_effect_Func001Func002002003002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit()))==true)
endfunction
function Trig_death_special_effect_Func001Func002002003 takes nothing returns boolean
return GetBooleanAnd(Trig_death_special_effect_Func001Func002002003001(),Trig_death_special_effect_Func001Func002002003002())
endfunction
function Trig_death_special_effect_Func001Func003A takes nothing returns nothing
call UnitDamageTargetBJ(GetTriggerUnit(),GetEnumUnit(),150.00,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
endfunction
function Trig_death_special_effect_Func001Func005002003001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_death_special_effect_Func001Func005002003002 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(GetTriggerUnit()))==true)
endfunction
function Trig_death_special_effect_Func001Func005002003 takes nothing returns boolean
return GetBooleanAnd(Trig_death_special_effect_Func001Func005002003001(),Trig_death_special_effect_Func001Func005002003002())
endfunction
function Trig_death_special_effect_Func001Func006A takes nothing returns nothing
call UnitDamageTargetBJ(GetTriggerUnit(),GetEnumUnit(),50.00,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
endfunction
function Trig_death_special_effect_Func001C takes nothing returns boolean
if(not(GetUnitTypeId(GetTriggerUnit())==0x68303050))then
return false
endif
return true
endfunction
function Trig_death_special_effect_Actions takes nothing returns nothing
if(Trig_death_special_effect_Func001C())then
set udg_TempPoint1=GetUnitLoc(GetTriggerUnit())
set udg_TempGroup1=GetUnitsInRangeOfLocMatching(400.00,udg_TempPoint1,Condition(function Trig_death_special_effect_Func001Func002002003))
call ForGroupBJ(udg_TempGroup1,function Trig_death_special_effect_Func001Func003A)
call DestroyGroup(udg_TempGroup1)
set udg_TempGroup1=GetUnitsInRangeOfLocMatching(200.00,udg_TempPoint1,Condition(function Trig_death_special_effect_Func001Func005002003))
call ForGroupBJ(udg_TempGroup1,function Trig_death_special_effect_Func001Func006A)
call DestroyGroup(udg_TempGroup1)
call AddSpecialEffectLocBJ(udg_TempPoint1,"Objects\\Spawnmodels\\Other\\NeutralBuildingExplosion\\NeutralBuildingExplosion.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call RemoveUnit(GetTriggerUnit())
call RemoveLocation(udg_TempPoint1)
else
endif
endfunction
function InitTrig_death_special_effect takes nothing returns nothing
set gg_trg_death_special_effect=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_death_special_effect,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddAction(gg_trg_death_special_effect,function Trig_death_special_effect_Actions)
endfunction
function Trig_crab_bomb_path_Func001C takes nothing returns boolean
if(not(GetSpellAbilityId()==0x4130324E))then
return false
endif
return true
endfunction
function Trig_crab_bomb_path_Actions takes nothing returns nothing
if(Trig_crab_bomb_path_Func001C())then
call GroupAddUnitSimple(GetTriggerUnit(),udg_crab_bomb_path)
call EnableTrigger(gg_trg_crab_bomb_path_loop)
else
endif
endfunction
function InitTrig_crab_bomb_path takes nothing returns nothing
set gg_trg_crab_bomb_path=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_crab_bomb_path,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddAction(gg_trg_crab_bomb_path,function Trig_crab_bomb_path_Actions)
endfunction
function Trig_crab_bomb_path_loop_Func001Func001Func001Func005C takes nothing returns boolean
if(not(UnitHasBuffBJ(GetEnumUnit(),0x42303039)==true))then
return false
endif
if(not(IsUnitAliveBJ(GetEnumUnit())==true))then
return false
endif
return true
endfunction
function Trig_crab_bomb_path_loop_Func001Func001Func001C takes nothing returns boolean
if(not Trig_crab_bomb_path_loop_Func001Func001Func001Func005C())then
return false
endif
return true
endfunction
function Trig_crab_bomb_path_loop_Func001Func001A takes nothing returns nothing
if(Trig_crab_bomb_path_loop_Func001Func001Func001C())then
set udg_TempPoint1=GetUnitLoc(GetEnumUnit())
call CreateNUnitsAtLoc(1,0x68303050,GetOwningPlayer(GetEnumUnit()),udg_TempPoint1,GetUnitFacing(GetEnumUnit()))
call UnitApplyTimedLifeBJ(0.03,0x42544C46,GetLastCreatedUnit())
call RemoveLocation(udg_TempPoint1)
else
call GroupRemoveUnitSimple(GetEnumUnit(),udg_crab_bomb_path)
endif
endfunction
function Trig_crab_bomb_path_loop_Func001C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_crab_bomb_path)>=1))then
return false
endif
return true
endfunction
function Trig_crab_bomb_path_loop_Actions takes nothing returns nothing
if(Trig_crab_bomb_path_loop_Func001C())then
call ForGroupBJ(udg_crab_bomb_path,function Trig_crab_bomb_path_loop_Func001Func001A)
else
call DisableTrigger(GetTriggeringTrigger())
endif
endfunction
function InitTrig_crab_bomb_path_loop takes nothing returns nothing
set gg_trg_crab_bomb_path_loop=CreateTrigger()
call DisableTrigger(gg_trg_crab_bomb_path_loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_crab_bomb_path_loop,1.00)
call TriggerAddAction(gg_trg_crab_bomb_path_loop,function Trig_crab_bomb_path_loop_Actions)
endfunction
function Trig_PD_Configuration_Conditions takes nothing returns boolean
if(not(IsTriggerEnabled(GetTriggeringTrigger())==true))then
return false
endif
return true
endfunction
function Trig_PD_Configuration_Actions takes nothing returns nothing
set udg_PD_Hashtable=InitHashtable()
set udg_PD_Ability=0x41303256
set udg_PD_Lightning_Type="DRAL"
set udg_PD_Orbs_Type=0x68303136
set udg_PD_Big_Orb_Type=0x68303137
set udg_PD_Handle_Type=0x68303138
set udg_PD_Starting_Height=0.00
set udg_PD_Max_Height_Base=200.00
set udg_PD_Max_Height_Level=200.00
set udg_PD_Height_Decrease_Base=10.00
set udg_PD_Height_Decrease_Level=5.00
set udg_PD_Rotation_Base=1.00
set udg_PD_Rotation_Level=1.00
set udg_PD_Orb_Grow_Base=1.00
set udg_PD_Orb_Grow_Level=0.50
set udg_PD_Distance_Base=500.00
set udg_PD_Distance_Level=250.00
set udg_PD_Grow_Effect="Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl"
set udg_PD_Speed_Base=2.00
set udg_PD_Speed_Level=2.00
set udg_PD_Orbs_Amount_Base=4
set udg_PD_Orbs_Amount_Level=4
set udg_PD_Damage_Base=150.00
set udg_PD_Damage_Level=100.00
set udg_PD_Area_of_Effect_Base=300.00
set udg_PD_Area_of_Effect_Level=100.00
set udg_PD_Attack_Type=ATTACK_TYPE_NORMAL
set udg_PD_Damage_Type=DAMAGE_TYPE_ACID
set udg_PD_Damage_Effect="Abilities\\Spells\\Other\\AcidBomb\\BottleMissile.mdl"
set udg_PD_Damage_Attachement="overhead"
set udg_PD_End_Effect="Model\\EarthNova.mdx"
set udg_PD_Grow_Timer=0.09
set udg_PD_Grow_Attachement="chest"
endfunction
function InitTrig_PD_Configuration takes nothing returns nothing
set gg_trg_PD_Configuration=CreateTrigger()
call TriggerRegisterTimerEventSingle(gg_trg_PD_Configuration,0.00)
call TriggerAddCondition(gg_trg_PD_Configuration,Condition(function Trig_PD_Configuration_Conditions))
call TriggerAddAction(gg_trg_PD_Configuration,function Trig_PD_Configuration_Actions)
endfunction
function Trig_PD_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==udg_PD_Ability))then
return false
endif
return true
endfunction
function Trig_PD_Cast_Func031C takes nothing returns boolean
if(not(LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)>0.00))then
return false
endif
return true
endfunction
function Trig_PD_Cast_Func046C takes nothing returns boolean
if(not(IsTriggerEnabled(gg_trg_PD_Loop)==false))then
return false
endif
return true
endfunction
function Trig_PD_Cast_Actions takes nothing returns nothing
set udg_PD_TmpCaster=GetTriggerUnit()
set udg_PD_TmpPlayer=GetTriggerPlayer()
set udg_PD_TmpInteger=GetUnitAbilityLevelSwapped(udg_PD_Ability,udg_PD_TmpCaster)
set udg_PD_TmpPoint=GetUnitLoc(udg_PD_TmpCaster)
call CreateNUnitsAtLoc(1,udg_PD_Handle_Type,udg_PD_TmpPlayer,udg_PD_TmpPoint,bj_UNIT_FACING)
set udg_PD_TmpHandle=GetLastCreatedUnit()
call GroupAddUnitSimple(GetLastCreatedUnit(),udg_PD_Group)
call PlaySoundOnUnitBJ(gg_snd_CrippleTarget,100,GetLastCreatedUnit())
call SaveUnitHandleBJ(udg_PD_TmpCaster,StringHashBJ("Caster"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SavePlayerHandleBJ(udg_PD_TmpPlayer,StringHashBJ("Owner"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SaveIntegerBJ(udg_PD_TmpInteger,StringHashBJ("Level"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call RemoveLocation(udg_PD_TmpPoint)
set udg_PD_TmpPoint=GetSpellTargetLoc()
call CreateNUnitsAtLoc(1,udg_PD_Big_Orb_Type,udg_PD_TmpPlayer,udg_PD_TmpPoint,bj_UNIT_FACING)
call SaveUnitHandleBJ(GetLastCreatedUnit(),StringHashBJ("Big one"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_TmpReal=(udg_PD_Max_Height_Base+(udg_PD_Max_Height_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SetUnitFlyHeightBJ(GetLastCreatedUnit(),udg_PD_TmpReal,0.00)
set udg_PD_TmpReal=(udg_PD_Distance_Base+(udg_PD_Distance_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Distance"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_TmpInteger2=(udg_PD_Orbs_Amount_Base+(udg_PD_Orbs_Amount_Level*udg_PD_TmpInteger))
call SaveIntegerBJ(udg_PD_TmpInteger2,StringHashBJ("Amount"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_TmpReal=(360.00/I2R(udg_PD_TmpInteger2))
set udg_PD_TmpX=GetLocationX(udg_PD_TmpPoint)
set udg_PD_TmpY=GetLocationY(udg_PD_TmpPoint)
set udg_PD_TmpReal2=LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_Loop=1
loop
exitwhen udg_PD_Loop>udg_PD_TmpInteger2
set udg_PD_TmpPoint2=PolarProjectionBJ(udg_PD_TmpPoint,LoadRealBJ(StringHashBJ("Distance"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable),udg_PD_TmpReal)
set udg_PD_TmpX2=GetLocationX(udg_PD_TmpPoint2)
set udg_PD_TmpY2=GetLocationY(udg_PD_TmpPoint2)
call SaveMyLightning(udg_PD_TmpX2,udg_PD_TmpY2,udg_PD_Starting_Height,udg_PD_TmpX,udg_PD_TmpY,udg_PD_TmpReal2)
call SaveRealBJ(udg_PD_TmpReal,udg_PD_Loop,GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call CreateNUnitsAtLoc(1,udg_PD_Orbs_Type,udg_PD_TmpPlayer,udg_PD_TmpPoint2,bj_UNIT_FACING)
call SaveUnitHandleBJ(GetLastCreatedUnit(),((udg_PD_Loop+udg_PD_TmpInteger2)+1),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call RemoveLocation(udg_PD_TmpPoint2)
set udg_PD_TmpReal=(udg_PD_TmpReal+(360.00/I2R(udg_PD_TmpInteger2)))
set udg_PD_Loop=udg_PD_Loop+1
endloop
call RemoveLocation(udg_PD_TmpPoint)
set udg_PD_TmpReal=(udg_PD_Damage_Base+(udg_PD_Damage_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Damage"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
if(Trig_PD_Cast_Func031C())then
set udg_PD_TmpReal=(LoadRealBJ(StringHashBJ("Distance"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)/LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Relation"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SaveBooleanBJ(true,StringHashBJ("Rise"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
else
call SaveRealBJ(1.00,StringHashBJ("Relation"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SaveBooleanBJ(false,StringHashBJ("Rise"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
endif
set udg_PD_TmpReal=(udg_PD_Height_Decrease_Base+(udg_PD_Height_Decrease_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Decrease"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_TmpReal=(udg_PD_Orb_Grow_Base+(udg_PD_Orb_Grow_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Grow"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_TmpReal=(udg_PD_Speed_Base+(udg_PD_Speed_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Speed"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_TmpReal=(udg_PD_Rotation_Base+(udg_PD_Rotation_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Rotation"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SaveRealBJ(100.00,StringHashBJ("Size"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SaveRealBJ(udg_PD_Starting_Height,StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SaveBooleanBJ(false,StringHashBJ("Destroy"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
call SaveRealBJ(udg_PD_Grow_Timer,StringHashBJ("Timer"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
set udg_PD_TmpReal=(udg_PD_Area_of_Effect_Base+(udg_PD_Area_of_Effect_Level*I2R(udg_PD_TmpInteger)))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Area of effect"),GetHandleIdBJ(udg_PD_TmpHandle),udg_PD_Hashtable)
if(Trig_PD_Cast_Func046C())then
call EnableTrigger(gg_trg_PD_Loop)
else
endif
endfunction
function InitTrig_PD_Cast takes nothing returns nothing
set gg_trg_PD_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_PD_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_PD_Cast,Condition(function Trig_PD_Cast_Conditions))
call TriggerAddAction(gg_trg_PD_Cast,function Trig_PD_Cast_Actions)
endfunction
function Trig_PD_Loop_Func001Func002Func001C takes nothing returns boolean
if(not(LoadBooleanBJ(StringHashBJ("Destroy"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)==false))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002Func002Func003Func001C takes nothing returns boolean
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_GROUND)==true))then
return false
endif
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false))then
return false
endif
if(not(IsUnitType(GetEnumUnit(),UNIT_TYPE_STRUCTURE)==false))then
return false
endif
if(not(IsUnitEnemy(GetEnumUnit(),LoadPlayerHandleBJ(StringHashBJ("Owner"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))==true))then
return false
endif
if(not(IsUnitAliveBJ(GetEnumUnit())==true))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002Func002Func003A takes nothing returns nothing
if(Trig_PD_Loop_Func001Func002Func002Func003Func001C())then
call AddSpecialEffectTargetUnitBJ(udg_PD_Damage_Attachement,GetEnumUnit(),udg_PD_Damage_Effect)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call UnitDamageTargetBJ(LoadUnitHandleBJ(StringHashBJ("Caster"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable),GetEnumUnit(),LoadRealBJ(StringHashBJ("Damage"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable),udg_PD_Attack_Type,udg_PD_Damage_Type)
else
endif
endfunction
function Trig_PD_Loop_Func001Func002Func002Func013C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_PD_Group)==0))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002Func002C takes nothing returns boolean
if(not(LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)>20.00))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002Func005Func001C takes nothing returns boolean
if(not(LoadRealBJ(StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)>LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002Func005C takes nothing returns boolean
if(not(LoadRealBJ(StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)<LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002Func011Func012C takes nothing returns boolean
if(not(LoadBooleanBJ(StringHashBJ("Rise"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)==true))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002Func016C takes nothing returns boolean
if(not(LoadRealBJ(StringHashBJ("Timer"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)>0.00))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001Func002C takes nothing returns boolean
if(not(LoadRealBJ(StringHashBJ("Distance"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)>0.00))then
return false
endif
return true
endfunction
function Trig_PD_Loop_Func001A takes nothing returns nothing
set udg_PD_TmpHandle2=GetEnumUnit()
if(Trig_PD_Loop_Func001Func002C())then
set udg_PD_TmpReal=(LoadRealBJ(StringHashBJ("Distance"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)-LoadRealBJ(StringHashBJ("Speed"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Distance"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
if(Trig_PD_Loop_Func001Func002Func005C())then
set udg_PD_TmpReal=(LoadRealBJ(StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)+(LoadRealBJ(StringHashBJ("Speed"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)/LoadRealBJ(StringHashBJ("Relation"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)))
else
if(Trig_PD_Loop_Func001Func002Func005Func001C())then
set udg_PD_TmpReal=(LoadRealBJ(StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)-(LoadRealBJ(StringHashBJ("Speed"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)/LoadRealBJ(StringHashBJ("Relation"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)))
else
endif
endif
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_TmpPoint=GetUnitLoc(LoadUnitHandleBJ(StringHashBJ("Big one"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
set udg_PD_TmpX2=GetLocationX(udg_PD_TmpPoint)
set udg_PD_TmpY2=GetLocationY(udg_PD_TmpPoint)
set udg_PD_TmpInteger=LoadIntegerBJ(StringHashBJ("Amount"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_Loop=1
loop
exitwhen udg_PD_Loop>udg_PD_TmpInteger
set udg_PD_TmpReal=(LoadRealBJ(udg_PD_Loop,GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)+LoadRealBJ(StringHashBJ("Rotation"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
call SaveRealBJ(udg_PD_TmpReal,udg_PD_Loop,GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_TmpPoint2=PolarProjectionBJ(udg_PD_TmpPoint,LoadRealBJ(StringHashBJ("Distance"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable),udg_PD_TmpReal)
set udg_PD_TmpX=GetLocationX(udg_PD_TmpPoint2)
set udg_PD_TmpY=GetLocationY(udg_PD_TmpPoint2)
set udg_PD_TmpReal2=LoadRealBJ(StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_TmpReal=LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_TmpUnit=LoadUnitHandleBJ(((udg_PD_Loop+udg_PD_TmpInteger)+1),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
call MoveMyLightning(udg_PD_TmpX,udg_PD_TmpY,udg_PD_TmpReal2,udg_PD_TmpX2,udg_PD_TmpY2,udg_PD_TmpReal)
call SetUnitX(udg_PD_TmpUnit,udg_PD_TmpX)
call SetUnitY(udg_PD_TmpUnit,udg_PD_TmpY)
if(Trig_PD_Loop_Func001Func002Func011Func012C())then
call SetUnitFlyHeightBJ(udg_PD_TmpUnit,LoadRealBJ(StringHashBJ("Height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable),0.00)
else
endif
set udg_PD_Loop=udg_PD_Loop+1
endloop
set udg_PD_TmpReal=(LoadRealBJ(StringHashBJ("Size"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)+LoadRealBJ(StringHashBJ("Grow"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Size"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_TmpUnit=LoadUnitHandleBJ(StringHashBJ("Big one"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
call SetUnitScalePercent(udg_PD_TmpUnit,udg_PD_TmpReal,udg_PD_TmpReal,udg_PD_TmpReal)
if(Trig_PD_Loop_Func001Func002Func016C())then
call SaveRealBJ((LoadRealBJ(StringHashBJ("Timer"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)-0.03),StringHashBJ("Timer"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
else
call SaveRealBJ(udg_PD_Grow_Timer,StringHashBJ("Timer"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
call AddSpecialEffectTargetUnitBJ(udg_PD_Grow_Attachement,udg_PD_TmpUnit,udg_PD_Grow_Effect)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
endif
else
if(Trig_PD_Loop_Func001Func002Func001C())then
call SaveBooleanBJ(true,StringHashBJ("Destroy"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_TmpInteger2=LoadIntegerBJ(StringHashBJ("Amount"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_Loop=1
loop
exitwhen udg_PD_Loop>udg_PD_TmpInteger2
call RemoveUnit(LoadUnitHandleBJ(((udg_PD_Loop+udg_PD_TmpInteger2)+1),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
call DestroyLightning(LoadLightningHandle(udg_PD_Hashtable,GetHandleId(udg_PD_TmpHandle2),((udg_PD_Loop+udg_PD_TmpInteger)*2)))
set udg_PD_Loop=udg_PD_Loop+1
endloop
else
endif
if(Trig_PD_Loop_Func001Func002Func002C())then
set udg_PD_TmpReal=(LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)-LoadRealBJ(StringHashBJ("Decrease"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
call SaveRealBJ(udg_PD_TmpReal,StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
set udg_PD_TmpUnit=LoadUnitHandleBJ(StringHashBJ("Big one"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
call SetUnitFlyHeightBJ(udg_PD_TmpUnit,LoadRealBJ(StringHashBJ("Big one height"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable),0.00)
else
set udg_PD_TmpPoint=GetUnitLoc(LoadUnitHandleBJ(StringHashBJ("Big one"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocAll(LoadRealBJ(StringHashBJ("Area of effect"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable),udg_PD_TmpPoint),function Trig_PD_Loop_Func001Func002Func002Func003A)
set udg_PD_TmpX=GetLocationX(udg_PD_TmpPoint)
set udg_PD_TmpY=GetLocationY(udg_PD_TmpPoint)
call DestroyEffect(AddSpecialEffect(udg_PD_End_Effect,udg_PD_TmpX,udg_PD_TmpY))
call RemoveLocation(udg_PD_TmpPoint)
call RemoveUnit(LoadUnitHandleBJ(StringHashBJ("Big one"),GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable))
set udg_PD_TmpUnit=GetEnumUnit()
call GroupRemoveUnitSimple(udg_PD_TmpUnit,udg_PD_Group)
call FlushChildHashtableBJ(GetHandleIdBJ(udg_PD_TmpHandle2),udg_PD_Hashtable)
call RemoveUnit(udg_PD_TmpUnit)
if(Trig_PD_Loop_Func001Func002Func002Func013C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endif
endif
endfunction
function Trig_PD_Loop_Actions takes nothing returns nothing
call ForGroupBJ(udg_PD_Group,function Trig_PD_Loop_Func001A)
endfunction
function InitTrig_PD_Loop takes nothing returns nothing
set gg_trg_PD_Loop=CreateTrigger()
call DisableTrigger(gg_trg_PD_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_PD_Loop,0.03)
call TriggerAddAction(gg_trg_PD_Loop,function Trig_PD_Loop_Actions)
endfunction
function Trig_Chaos_Singularity_Configuration_Actions takes nothing returns nothing
set udg_CS_AoeBase=400.00
set udg_CS_AoePerLevel=75.00
set udg_CS_StartDelay=50
set udg_CS_ParalyseDamageBase=0.20
set udg_CS_ParalyseDamagePerLevel=0.20
set udg_CS_ParalyseCounterSpeedBase=1
set udg_CS_ParalyseCounterSpeedPerLvl=1
set udg_CS_ParalyseCounterMax=250
set udg_CS_RotatingOrbCount=5
set udg_CS_ParalysingOrbCountBase=6
set udg_CS_ParalysingOrbCountPerLevel=2
set udg_CS_SegmentSpreadOutSpeed=3.00
set udg_CS_SegmentScaling=100.00
set udg_CS_LightningRed=0.80
set udg_CS_LightningGreen=0.00
set udg_CS_LightningBlue=1.00
set udg_CS_SingularitySpawnSize=2.00
set udg_CS_SingularityGrowthSpeed=1.00
set udg_CS_SingularityFinalSize=100.00
set udg_CS_SingularitySrinkSpeed=10.00
set udg_CS_SingularityDamageBase=200.00
set udg_CS_SingularityDamagePerLevel=20.00
set udg_CS_StrikeTotal=20
set udg_CS_RevolvingSpeed=2.00
set udg_CS_ChaosGenerationRateMin=10
set udg_CS_ChaosGenerationRateMax=50
set udg_CS_HeightIncrement=225.00
set udg_CS_EffectScalingSpawn=200.00
set udg_CS_LightningZ=100.00
set udg_CS_SingularityModel="war3mapImported\\BlackHoleSpell.mdl"
set udg_CS_ObelixModel="Doodads\\Underground\\Props\\UndergroundObilisk\\UndergroundObilisk.mdl"
set udg_CS_SegmentsModel="Abilities\\Spells\\Undead\\Possession\\PossessionTarget.mdl"
set udg_CS_RotatingOrbsModel="Abilities\\Spells\\Undead\\Possession\\PossessionTarget.mdl"
set udg_CS_SpawnSFX="Abilities\\Spells\\Undead\\DarkRitual\\DarkRitualTarget.mdl"
set udg_CS_DissappearenceSFX="Abilities\\Spells\\Undead\\DarkRitual\\DarkRitualTarget.mdl"
set udg_CS_LightningEffect="CLPB"
set udg_CS_Spell=0x41303258
set udg_CS_DummyType=0x75303037
endfunction
function InitTrig_Chaos_Singularity_Configuration takes nothing returns nothing
set gg_trg_Chaos_Singularity_Configuration=CreateTrigger()
call TriggerAddAction(gg_trg_Chaos_Singularity_Configuration,function Trig_Chaos_Singularity_Configuration_Actions)
endfunction
function Trig_Chaos_Singularity_Activation_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==udg_CS_Spell))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Activation_Func034C takes nothing returns boolean
if(not(udg_CS_MaxIndex==1))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Activation_Actions takes nothing returns nothing
set udg_CS_TempPoint=GetSpellTargetLoc()
call CreateNUnitsAtLoc(1,udg_CS_DummyType,Player(PLAYER_NEUTRAL_PASSIVE),udg_CS_TempPoint,bj_UNIT_FACING)
set udg_CS_TempUnit=GetLastCreatedUnit()
call AddSpecialEffectTargetUnitBJ("origin",udg_CS_TempUnit,udg_CS_SpawnSFX)
call SetUnitScalePercent(udg_CS_TempUnit,udg_CS_EffectScalingSpawn,0.00,0.00)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call UnitApplyTimedLifeBJ(1.00,0x42544C46,udg_CS_TempUnit)
call CreateNUnitsAtLoc(1,udg_CS_DummyType,Player(PLAYER_NEUTRAL_PASSIVE),udg_CS_TempPoint,bj_UNIT_FACING)
set udg_CS_TempUnit=GetLastCreatedUnit()
call AddSpecialEffectTargetUnitBJ("origin",udg_CS_TempUnit,udg_CS_ObelixModel)
set udg_CS_MaxIndex=(udg_CS_MaxIndex+1)
set udg_CS_OriginalCaster[udg_CS_MaxIndex]=GetTriggerUnit()
set udg_CS_TempInteger=GetUnitAbilityLevelSwapped(udg_CS_Spell,udg_CS_OriginalCaster[udg_CS_MaxIndex])
set udg_CS_TempReal=I2R(udg_CS_TempInteger)
set udg_CS_ActiveLightning[udg_CS_MaxIndex]=false
set udg_CS_SpecialEffect[udg_CS_MaxIndex]=GetLastCreatedEffectBJ()
set udg_CS_Core[udg_CS_MaxIndex]=udg_CS_TempUnit
set udg_CS_Aoe[udg_CS_MaxIndex]=(udg_CS_AoeBase+(udg_CS_AoePerLevel*udg_CS_TempReal))
set udg_CS_ParalyseDamage[udg_CS_MaxIndex]=(udg_CS_ParalyseDamageBase+(udg_CS_ParalyseDamagePerLevel*udg_CS_TempReal))
set udg_CS_SingularityDamage[udg_CS_MaxIndex]=(udg_CS_SingularityDamageBase+(udg_CS_SingularityDamagePerLevel*udg_CS_TempReal))
set udg_CS_SingularityLimiter[udg_CS_MaxIndex]=false
set udg_CS_SingularityCurrentSize[udg_CS_MaxIndex]=0.00
set udg_CS_ParalyseCounterSpeed[udg_CS_MaxIndex]=(udg_CS_ParalyseCounterSpeedBase+(udg_CS_ParalyseCounterSpeedPerLvl*udg_CS_TempInteger))
set udg_CS_ParalyseCounterCurrent[udg_CS_MaxIndex]=0
set udg_CS_ChaosGenerationRateCurrent[udg_CS_MaxIndex]=0
set udg_CS_ChaosGenerationRateSetting[udg_CS_MaxIndex]=0
set udg_CS_ParalysingOrbCount[udg_CS_MaxIndex]=(udg_CS_ParalysingOrbCountBase+(udg_CS_ParalysingOrbCountPerLevel*udg_CS_TempInteger))
set udg_CS_StrikeTotalCurrent[udg_CS_MaxIndex]=0
set udg_CS_StasisFieldActive[udg_CS_MaxIndex]=false
set udg_CS_CurrentDistance[udg_CS_MaxIndex]=0.00
set udg_CS_UnitIndex[udg_CS_MaxIndex]=udg_CS_TempUnit
set udg_CS_CurrentDelay[udg_CS_MaxIndex]=0
set udg_CS_StageID[udg_CS_MaxIndex]=1
if(Trig_Chaos_Singularity_Activation_Func034C())then
call EnableTrigger(gg_trg_Chaos_Singularity_Loop)
else
endif
call RemoveLocation(udg_CS_TempPoint)
endfunction
function InitTrig_Chaos_Singularity_Activation takes nothing returns nothing
set gg_trg_Chaos_Singularity_Activation=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Chaos_Singularity_Activation,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Chaos_Singularity_Activation,Condition(function Trig_Chaos_Singularity_Activation_Conditions))
call TriggerAddAction(gg_trg_Chaos_Singularity_Activation,function Trig_Chaos_Singularity_Activation_Actions)
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func004Func002C takes nothing returns boolean
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_STRUCTURE)==false))then
return false
endif
if(not(IsUnitAliveBJ(udg_CS_TempUnit)==true))then
return false
endif
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_GROUND)==true))then
return false
endif
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_MAGIC_IMMUNE)==false))then
return false
endif
if(not(IsUnitEnemy(udg_CS_TempUnit,GetOwningPlayer(udg_CS_OriginalCaster[udg_CS_Index]))==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func004A takes nothing returns nothing
set udg_CS_TempUnit=GetEnumUnit()
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func004Func002C())then
call PauseUnitBJ(false,udg_CS_TempUnit)
call SetUnitTimeScalePercent(udg_CS_TempUnit,100.00)
else
endif
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func008Func001Func001C takes nothing returns boolean
if(not(udg_CS_ActiveLightning[udg_CS_SecondaryIndex]==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func008Func001Func029C takes nothing returns boolean
if(not(udg_CS_MaxIndex==0))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func008Func001C takes nothing returns boolean
if(not(udg_CS_Core[udg_CS_SecondaryIndex]==udg_CS_UnitIDStorage))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003C takes nothing returns boolean
if(not(udg_CS_SingularityCurrentSize[udg_CS_Index]>udg_CS_SingularitySpawnSize))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func002C takes nothing returns boolean
if(not(udg_CS_ActiveLightning[udg_CS_Index]==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func008Func002C takes nothing returns boolean
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_STRUCTURE)==false))then
return false
endif
if(not(IsUnitAliveBJ(udg_CS_TempUnit)==true))then
return false
endif
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_GROUND)==true))then
return false
endif
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_MAGIC_IMMUNE)==false))then
return false
endif
if(not(IsUnitEnemy(udg_CS_TempUnit,GetOwningPlayer(udg_CS_OriginalCaster[udg_CS_Index]))==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func008A takes nothing returns nothing
set udg_CS_TempUnit=GetEnumUnit()
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func008Func002C())then
call GroupAddUnitSimple(udg_CS_TempUnit,udg_CS_Targets)
else
endif
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func009Func014C takes nothing returns boolean
if(not(IsUnitDeadBJ(udg_CS_TempUnit)==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func009C takes nothing returns boolean
if(not(CountUnitsInGroup(udg_CS_Targets)>0))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001C takes nothing returns boolean
if(not(udg_CS_ChaosGenerationRateCurrent[udg_CS_Index]>=udg_CS_ChaosGenerationRateSetting[udg_CS_Index]))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004C takes nothing returns boolean
if(not(udg_CS_SingularityCurrentSize[udg_CS_Index]<udg_CS_SingularityFinalSize))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001C takes nothing returns boolean
if(not(udg_CS_StrikeTotalCurrent[udg_CS_Index]<udg_CS_StrikeTotal))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002C takes nothing returns boolean
if(not(udg_CS_StageID[udg_CS_Index]==6))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func016C takes nothing returns boolean
if(not(udg_CS_ActiveLightning[udg_CS_Index]==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002C takes nothing returns boolean
if(not(udg_CS_StageID[udg_CS_Index]==5))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func012Func001C takes nothing returns boolean
if(not(udg_CS_SingularityLimiter[udg_CS_Index]==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func012C takes nothing returns boolean
if(not(GetUnitFlyHeight(udg_CS_UnitIndex[udg_CS_Index])>=udg_CS_HeightIncrement))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003C takes nothing returns boolean
if(not(udg_CS_StageID[udg_CS_Index]==4))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func004Func014C takes nothing returns boolean
if(not(udg_CS_ActiveLightning[udg_CS_Index]==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func004C takes nothing returns boolean
if(not(udg_CS_CurrentDistance[udg_CS_Index]<udg_CS_Aoe[udg_CS_Index]))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001C takes nothing returns boolean
if(not(udg_CS_StageID[udg_CS_Index]==3))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func002Func003Func029C takes nothing returns boolean
if(not(udg_CS_SecondaryIndex==udg_CS_RotatingOrbCount))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func002C takes nothing returns boolean
if(not(udg_CS_CurrentDistance[udg_CS_Index]<udg_CS_Aoe[udg_CS_Index]))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func001C takes nothing returns boolean
if(not(udg_CS_StageID[udg_CS_Index]==2))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003Func004C takes nothing returns boolean
if(not(udg_CS_CurrentDelay[udg_CS_Index]>=udg_CS_StartDelay))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func003C takes nothing returns boolean
if(not(udg_CS_StageID[udg_CS_Index]==1))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func005Func003Func002Func002C takes nothing returns boolean
if(not(udg_CS_ParalyseCounterCurrent[udg_CS_Index]>=udg_CS_ParalyseCounterMax))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func005Func003Func002Func003C takes nothing returns boolean
if(not(IsUnitDeadBJ(udg_CS_TempUnit)==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func005Func003Func002C takes nothing returns boolean
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_STRUCTURE)==false))then
return false
endif
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_MAGIC_IMMUNE)==false))then
return false
endif
if(not(IsUnitAliveBJ(udg_CS_TempUnit)==true))then
return false
endif
if(not(IsUnitType(udg_CS_TempUnit,UNIT_TYPE_GROUND)==true))then
return false
endif
if(not(IsUnitEnemy(udg_CS_TempUnit,GetOwningPlayer(udg_CS_OriginalCaster[udg_CS_Index]))==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func005Func003A takes nothing returns nothing
set udg_CS_TempUnit=GetEnumUnit()
if(Trig_Chaos_Singularity_Loop_Func001Func005Func003Func002C())then
call UnitDamageTargetBJ(udg_CS_OriginalCaster[udg_CS_Index],udg_CS_TempUnit,udg_CS_ParalyseDamage[udg_CS_Index],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
if(Trig_Chaos_Singularity_Loop_Func001Func005Func003Func002Func002C())then
call SetUnitTimeScalePercent(udg_CS_TempUnit,0.00)
call PauseUnitBJ(true,udg_CS_TempUnit)
set udg_CS_ParalyseCounterCurrent[udg_CS_Index]=0
else
set udg_CS_ParalyseCounterCurrent[udg_CS_Index]=(udg_CS_ParalyseCounterCurrent[udg_CS_Index]+udg_CS_ParalyseCounterSpeed[udg_CS_Index])
endif
if(Trig_Chaos_Singularity_Loop_Func001Func005Func003Func002Func003C())then
call SetUnitTimeScalePercent(udg_CS_TempUnit,100.00)
call PauseUnitBJ(false,udg_CS_TempUnit)
else
endif
else
endif
endfunction
function Trig_Chaos_Singularity_Loop_Func001Func005C takes nothing returns boolean
if(not(udg_CS_StasisFieldActive[udg_CS_Index]==true))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Loop_Actions takes nothing returns nothing
set udg_CS_Index=1
loop
exitwhen udg_CS_Index>udg_CS_MaxIndex
set udg_CS_Angle=0.00
if(Trig_Chaos_Singularity_Loop_Func001Func003C())then
set udg_CS_CurrentDelay[udg_CS_Index]=(udg_CS_CurrentDelay[udg_CS_Index]+1)
if(Trig_Chaos_Singularity_Loop_Func001Func003Func004C())then
set udg_CS_SecondaryIndex=1
loop
exitwhen udg_CS_SecondaryIndex>udg_CS_ParalysingOrbCount[udg_CS_Index]
set udg_CS_Angle=(udg_CS_Angle+(360.00/I2R(udg_CS_ParalysingOrbCount[udg_CS_Index])))
set udg_CS_TempPoint=GetUnitLoc(udg_CS_UnitIndex[udg_CS_Index])
call CreateNUnitsAtLoc(1,udg_CS_DummyType,Player(PLAYER_NEUTRAL_PASSIVE),udg_CS_TempPoint,udg_CS_Angle)
set udg_CS_TempUnit=GetLastCreatedUnit()
call SetUnitScalePercent(udg_CS_TempUnit,udg_CS_SegmentScaling,0.00,0.00)
call AddSpecialEffectTargetUnitBJ("chest",udg_CS_TempUnit,udg_CS_SegmentsModel)
set udg_CS_MaxIndex=(udg_CS_MaxIndex+1)
set udg_CS_UnitIndex[udg_CS_MaxIndex]=udg_CS_TempUnit
set udg_CS_OriginalCaster[udg_CS_MaxIndex]=udg_CS_OriginalCaster[udg_CS_Index]
set udg_CS_Aoe[udg_CS_MaxIndex]=udg_CS_Aoe[udg_CS_Index]
set udg_CS_SpecialEffect[udg_CS_MaxIndex]=GetLastCreatedEffectBJ()
set udg_CS_SingularityDamage[udg_CS_MaxIndex]=udg_CS_SingularityDamage[udg_CS_Index]
set udg_CS_Core[udg_CS_MaxIndex]=udg_CS_UnitIndex[udg_CS_Index]
set udg_CS_ActiveLightning[udg_CS_MaxIndex]=false
set udg_CS_StageID[udg_CS_MaxIndex]=3
set udg_CS_CurrentDistance[udg_CS_MaxIndex]=0.00
set udg_CS_ParalyseDamage[udg_CS_MaxIndex]=0.00
set udg_CS_SingularityCurrentSize[udg_CS_MaxIndex]=0.00
set udg_CS_ParalyseCounterSpeed[udg_CS_MaxIndex]=0
set udg_CS_ParalyseCounterCurrent[udg_CS_MaxIndex]=0
set udg_CS_ChaosGenerationRateCurrent[udg_CS_MaxIndex]=0
set udg_CS_ChaosGenerationRateSetting[udg_CS_MaxIndex]=0
set udg_CS_ParalysingOrbCount[udg_CS_MaxIndex]=0
set udg_CS_StrikeTotalCurrent[udg_CS_MaxIndex]=0
set udg_CS_StasisFieldActive[udg_CS_MaxIndex]=false
set udg_CS_SingularityLimiter[udg_CS_MaxIndex]=false
set udg_CS_CurrentDelay[udg_CS_MaxIndex]=0
call RemoveLocation(udg_CS_TempPoint)
set udg_CS_SecondaryIndex=udg_CS_SecondaryIndex+1
endloop
set udg_CS_StageID[udg_CS_Index]=2
set udg_CS_StasisFieldActive[udg_CS_Index]=true
else
endif
else
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001C())then
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func002C())then
set udg_CS_CurrentDistance[udg_CS_Index]=(udg_CS_CurrentDistance[udg_CS_Index]+udg_CS_SegmentSpreadOutSpeed)
else
set udg_CS_StageID[udg_CS_Index]=0
set udg_CS_SecondaryIndex=1
loop
exitwhen udg_CS_SecondaryIndex>udg_CS_RotatingOrbCount
set udg_CS_Angle=(udg_CS_Angle+(360.00/I2R(udg_CS_RotatingOrbCount)))
set udg_CS_TempPoint=GetUnitLoc(udg_CS_UnitIndex[udg_CS_Index])
call CreateNUnitsAtLoc(1,udg_CS_DummyType,Player(PLAYER_NEUTRAL_PASSIVE),udg_CS_TempPoint,udg_CS_Angle)
set udg_CS_TempUnit=GetLastCreatedUnit()
call AddSpecialEffectTargetUnitBJ("chest",udg_CS_TempUnit,udg_CS_RotatingOrbsModel)
call UnitAddAbilityBJ(0x41726176,udg_CS_TempUnit)
call UnitRemoveAbilityBJ(0x41726176,udg_CS_TempUnit)
set udg_CS_MaxIndex=(udg_CS_MaxIndex+1)
set udg_CS_UnitIndex[udg_CS_MaxIndex]=udg_CS_TempUnit
set udg_CS_Aoe[udg_CS_MaxIndex]=udg_CS_Aoe[udg_CS_Index]
set udg_CS_SpecialEffect[udg_CS_MaxIndex]=GetLastCreatedEffectBJ()
set udg_CS_OriginalCaster[udg_CS_MaxIndex]=udg_CS_OriginalCaster[udg_CS_Index]
set udg_CS_ActiveLightning[udg_CS_MaxIndex]=false
set udg_CS_SingularityDamage[udg_CS_MaxIndex]=udg_CS_SingularityDamage[udg_CS_Index]
set udg_CS_Core[udg_CS_MaxIndex]=udg_CS_UnitIndex[udg_CS_Index]
set udg_CS_StageID[udg_CS_MaxIndex]=4
set udg_CS_CurrentDistance[udg_CS_MaxIndex]=0.00
set udg_CS_ParalyseDamage[udg_CS_MaxIndex]=0.00
set udg_CS_SingularityCurrentSize[udg_CS_MaxIndex]=0.00
set udg_CS_ParalyseCounterSpeed[udg_CS_MaxIndex]=0
set udg_CS_ParalyseCounterCurrent[udg_CS_MaxIndex]=0
set udg_CS_ChaosGenerationRateCurrent[udg_CS_MaxIndex]=0
set udg_CS_ChaosGenerationRateSetting[udg_CS_MaxIndex]=0
set udg_CS_ParalysingOrbCount[udg_CS_MaxIndex]=0
set udg_CS_StrikeTotalCurrent[udg_CS_MaxIndex]=0
set udg_CS_StasisFieldActive[udg_CS_MaxIndex]=false
set udg_CS_SingularityLimiter[udg_CS_MaxIndex]=false
set udg_CS_CurrentDelay[udg_CS_MaxIndex]=0
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func002Func003Func029C())then
set udg_CS_SingularityLimiter[udg_CS_MaxIndex]=true
else
endif
call RemoveLocation(udg_CS_TempPoint)
set udg_CS_SecondaryIndex=udg_CS_SecondaryIndex+1
endloop
endif
else
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001C())then
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func004C())then
set udg_CS_TempUnit=udg_CS_UnitIndex[udg_CS_Index]
set udg_CS_TempPoint=GetUnitLoc(udg_CS_TempUnit)
set udg_CS_TempPoint2=GetUnitLoc(udg_CS_Core[udg_CS_Index])
set udg_CS_Angle=(GetUnitFacing(udg_CS_TempUnit)*bj_DEGTORAD)
set udg_CS_TempX=(GetUnitX(udg_CS_TempUnit))
set udg_CS_TempY=(GetUnitY(udg_CS_TempUnit))
set udg_CS_TempX2=(GetUnitX(udg_CS_Core[udg_CS_Index]))
set udg_CS_TempY2=(GetUnitY(udg_CS_Core[udg_CS_Index]))
set udg_CS_TempZ=(GetLocationZ(udg_CS_TempPoint)+udg_CS_LightningZ)
set udg_CS_TempZ2=(GetLocationZ(udg_CS_TempPoint2)+udg_CS_LightningZ)
call SetUnitX(udg_CS_TempUnit,udg_CS_TempX+udg_CS_SegmentSpreadOutSpeed*Cos(udg_CS_Angle))
call SetUnitY(udg_CS_TempUnit,udg_CS_TempY+udg_CS_SegmentSpreadOutSpeed*Sin(udg_CS_Angle))
set udg_CS_CurrentDistance[udg_CS_Index]=(udg_CS_CurrentDistance[udg_CS_Index]+udg_CS_SegmentSpreadOutSpeed)
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func004Func014C())then
call DestroyLightningBJ(udg_CS_CurrentLightningEffect[udg_CS_Index])
set udg_CS_ActiveLightning[udg_CS_Index]=false
else
endif
set udg_CS_CurrentLightningEffect[udg_CS_Index]=AddLightningEx(udg_CS_LightningEffect,true,udg_CS_TempX,udg_CS_TempY,udg_CS_TempZ,udg_CS_TempX2,udg_CS_TempY2,udg_CS_TempZ2)
call SetLightningColorBJ(udg_CS_CurrentLightningEffect[udg_CS_Index],udg_CS_LightningRed,udg_CS_LightningGreen,udg_CS_LightningBlue,1)
set udg_CS_ActiveLightning[udg_CS_Index]=true
call RemoveLocation(udg_CS_TempPoint2)
call RemoveLocation(udg_CS_TempPoint)
else
endif
else
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003C())then
set udg_CS_TempUnit=udg_CS_UnitIndex[udg_CS_Index]
set udg_CS_Angle=(GetUnitFacing(udg_CS_TempUnit)*bj_DEGTORAD)
set udg_CS_TempX=(GetUnitX(udg_CS_TempUnit))
set udg_CS_TempY=(GetUnitY(udg_CS_TempUnit))
call SetUnitX(udg_CS_TempUnit,udg_CS_TempX+udg_CS_SegmentSpreadOutSpeed*Cos(udg_CS_Angle))
call SetUnitY(udg_CS_TempUnit,udg_CS_TempY+udg_CS_SegmentSpreadOutSpeed*Sin(udg_CS_Angle))
set udg_CS_CurrentDistance[udg_CS_Index]=(udg_CS_CurrentDistance[udg_CS_Index]+udg_CS_SegmentSpreadOutSpeed)
call SetUnitFlyHeightBJ(udg_CS_UnitIndex[udg_CS_Index],(GetUnitFlyHeight(udg_CS_UnitIndex[udg_CS_Index])+((udg_CS_CurrentDistance[udg_CS_Index]/udg_CS_SegmentSpreadOutSpeed)/7.50)),0.00)
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func012C())then
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func012Func001C())then
set udg_CS_TempPoint=GetUnitLoc(udg_CS_Core[udg_CS_Index])
call CreateNUnitsAtLoc(1,udg_CS_DummyType,Player(PLAYER_NEUTRAL_PASSIVE),udg_CS_TempPoint,udg_CS_Angle)
set udg_CS_TempUnit=GetLastCreatedUnit()
call AddSpecialEffectTargetUnitBJ("chest",udg_CS_TempUnit,udg_CS_SingularityModel)
call SetUnitScalePercent(udg_CS_TempUnit,udg_CS_SingularitySpawnSize,0.00,0.00)
set udg_CS_MaxIndex=(udg_CS_MaxIndex+1)
set udg_CS_UnitIndex[udg_CS_MaxIndex]=udg_CS_TempUnit
set udg_CS_Aoe[udg_CS_MaxIndex]=udg_CS_Aoe[udg_CS_Index]
set udg_CS_ActiveLightning[udg_CS_MaxIndex]=false
set udg_CS_SpecialEffect[udg_CS_MaxIndex]=GetLastCreatedEffectBJ()
set udg_CS_SingularityDamage[udg_CS_MaxIndex]=udg_CS_SingularityDamage[udg_CS_Index]
set udg_CS_OriginalCaster[udg_CS_MaxIndex]=udg_CS_OriginalCaster[udg_CS_Index]
set udg_CS_Core[udg_CS_MaxIndex]=udg_CS_Core[udg_CS_Index]
set udg_CS_SingularityCurrentSize[udg_CS_MaxIndex]=udg_CS_SingularitySpawnSize
set udg_CS_StrikeTotalCurrent[udg_CS_MaxIndex]=0
set udg_CS_StageID[udg_CS_MaxIndex]=6
set udg_CS_ChaosGenerationRateCurrent[udg_CS_MaxIndex]=0
set udg_CS_ChaosGenerationRateSetting[udg_CS_MaxIndex]=GetRandomInt(udg_CS_ChaosGenerationRateMin,udg_CS_ChaosGenerationRateMax)
set udg_CS_ParalyseDamage[udg_CS_MaxIndex]=0.00
set udg_CS_ParalyseCounterSpeed[udg_CS_MaxIndex]=0
set udg_CS_ParalyseCounterCurrent[udg_CS_MaxIndex]=0
set udg_CS_ParalysingOrbCount[udg_CS_MaxIndex]=0
set udg_CS_StasisFieldActive[udg_CS_MaxIndex]=false
set udg_CS_SingularityLimiter[udg_CS_MaxIndex]=false
set udg_CS_CurrentDistance[udg_CS_MaxIndex]=0.00
set udg_CS_CurrentDelay[udg_CS_MaxIndex]=0
call RemoveLocation(udg_CS_TempPoint)
set udg_CS_SingularityLimiter[udg_CS_Index]=false
else
endif
set udg_CS_StageID[udg_CS_Index]=5
else
endif
else
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002C())then
set udg_CS_TempUnit=udg_CS_UnitIndex[udg_CS_Index]
set udg_CS_TempPoint=GetUnitLoc(udg_CS_Core[udg_CS_Index])
set udg_CS_TempPoint2=GetUnitLoc(udg_CS_TempUnit)
set udg_CS_TempX=(GetUnitX(udg_CS_Core[udg_CS_Index]))
set udg_CS_TempY=(GetUnitY(udg_CS_Core[udg_CS_Index]))
set udg_CS_TempX2=(GetUnitX(udg_CS_TempUnit))
set udg_CS_TempY2=(GetUnitY(udg_CS_TempUnit))
set udg_CS_TempZ=(GetLocationZ(udg_CS_TempPoint)+udg_CS_HeightIncrement*2)
set udg_CS_TempZ2=(GetLocationZ(udg_CS_TempPoint2)+GetUnitFlyHeight(udg_CS_TempUnit)+udg_CS_LightningZ)
set udg_CS_Angle=(GetUnitFacing(udg_CS_TempUnit)*bj_DEGTORAD)
call SetUnitFacing(udg_CS_TempUnit,GetUnitFacing(udg_CS_TempUnit)+udg_CS_RevolvingSpeed)
call SetUnitX(udg_CS_TempUnit,udg_CS_TempX+udg_CS_CurrentDistance[udg_CS_Index]*Cos(udg_CS_Angle))
call SetUnitY(udg_CS_TempUnit,udg_CS_TempY+udg_CS_CurrentDistance[udg_CS_Index]*Sin(udg_CS_Angle))
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func016C())then
call DestroyLightningBJ(udg_CS_CurrentLightningEffect[udg_CS_Index])
set udg_CS_ActiveLightning[udg_CS_Index]=false
else
endif
set udg_CS_CurrentLightningEffect[udg_CS_Index]=AddLightningEx(udg_CS_LightningEffect,true,udg_CS_TempX,udg_CS_TempY,udg_CS_TempZ,udg_CS_TempX2,udg_CS_TempY2,udg_CS_TempZ2)
call SetLightningColorBJ(udg_CS_CurrentLightningEffect[udg_CS_Index],udg_CS_LightningRed,udg_CS_LightningGreen,udg_CS_LightningBlue,1)
set udg_CS_ActiveLightning[udg_CS_Index]=true
call RemoveLocation(udg_CS_TempPoint2)
call RemoveLocation(udg_CS_TempPoint)
else
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002C())then
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001C())then
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004C())then
set udg_CS_SingularityCurrentSize[udg_CS_Index]=(udg_CS_SingularityCurrentSize[udg_CS_Index]+udg_CS_SingularityGrowthSpeed)
call SetUnitScalePercent(udg_CS_UnitIndex[udg_CS_Index],udg_CS_SingularityCurrentSize[udg_CS_Index],0.00,0.00)
else
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001C())then
set udg_CS_StrikeTotalCurrent[udg_CS_Index]=(udg_CS_StrikeTotalCurrent[udg_CS_Index]+1)
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func002C())then
call DestroyLightningBJ(udg_CS_CurrentLightningEffect[udg_CS_Index])
set udg_CS_ActiveLightning[udg_CS_Index]=false
else
endif
set udg_CS_ChaosGenerationRateCurrent[udg_CS_Index]=0
set udg_CS_ChaosGenerationRateSetting[udg_CS_Index]=GetRandomInt(udg_CS_ChaosGenerationRateMin,udg_CS_ChaosGenerationRateMax)
set udg_CS_TempPoint=GetUnitLoc(udg_CS_Core[udg_CS_Index])
set udg_CS_TempGroup=GetUnitsInRangeOfLocAll(udg_CS_Aoe[udg_CS_Index],udg_CS_TempPoint)
call ForGroupBJ(udg_CS_TempGroup,function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func008A)
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func009C())then
set udg_CS_TempUnit=GroupPickRandomUnit(udg_CS_Targets)
set udg_CS_TempPoint=GetUnitLoc(udg_CS_Core[udg_CS_Index])
set udg_CS_TempPoint2=GetUnitLoc(udg_CS_TempUnit)
call UnitDamageTargetBJ(udg_CS_OriginalCaster[udg_CS_Index],udg_CS_TempUnit,udg_CS_SingularityDamage[udg_CS_Index],ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
set udg_CS_TempX=(GetUnitX(udg_CS_Core[udg_CS_Index]))
set udg_CS_TempY=(GetUnitY(udg_CS_Core[udg_CS_Index]))
set udg_CS_TempX2=(GetUnitX(udg_CS_TempUnit))
set udg_CS_TempY2=(GetUnitY(udg_CS_TempUnit))
set udg_CS_TempZ=(GetLocationZ(udg_CS_TempPoint)+udg_CS_HeightIncrement*2)
set udg_CS_TempZ2=(GetLocationZ(udg_CS_TempPoint2)+udg_CS_LightningZ)
set udg_CS_CurrentLightningEffect[udg_CS_Index]=AddLightningEx(udg_CS_LightningEffect,true,udg_CS_TempX2,udg_CS_TempY2,udg_CS_TempZ2,udg_CS_TempX,udg_CS_TempY,udg_CS_TempZ)
call SetLightningColorBJ(udg_CS_CurrentLightningEffect[udg_CS_Index],udg_CS_LightningRed,udg_CS_LightningGreen,udg_CS_LightningBlue,1)
set udg_CS_ActiveLightning[udg_CS_Index]=true
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func004Func001Func009Func014C())then
call SetUnitTimeScalePercent(udg_CS_TempUnit,100.00)
call PauseUnitBJ(false,udg_CS_TempUnit)
else
endif
call RemoveLocation(udg_CS_TempPoint2)
call RemoveLocation(udg_CS_TempPoint)
else
endif
call GroupClear(udg_CS_Targets)
call DestroyGroup(udg_CS_TempGroup)
call RemoveLocation(udg_CS_TempPoint)
else
set udg_CS_ChaosGenerationRateCurrent[udg_CS_Index]=(udg_CS_ChaosGenerationRateCurrent[udg_CS_Index]+1)
endif
endif
else
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003C())then
set udg_CS_SingularityCurrentSize[udg_CS_Index]=(udg_CS_SingularityCurrentSize[udg_CS_Index]-udg_CS_SingularitySrinkSpeed)
call SetUnitScalePercent(udg_CS_UnitIndex[udg_CS_Index],udg_CS_SingularityCurrentSize[udg_CS_Index],0.00,0.00)
else
set udg_CS_TempPoint=GetUnitLoc(udg_CS_Core[udg_CS_Index])
set udg_CS_TempGroup=GetUnitsInRangeOfLocAll((udg_CS_Aoe[udg_CS_Index]+100.00),udg_CS_TempPoint)
call ForGroupBJ(udg_CS_TempGroup,function Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func004A)
call DestroyGroup(udg_CS_TempGroup)
call RemoveLocation(udg_CS_TempPoint)
set udg_CS_UnitIDStorage=udg_CS_Core[udg_CS_Index]
set udg_CS_SecondaryIndex=1
loop
exitwhen udg_CS_SecondaryIndex>udg_CS_MaxIndex
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func008Func001C())then
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func008Func001Func001C())then
call DestroyLightningBJ(udg_CS_CurrentLightningEffect[udg_CS_SecondaryIndex])
set udg_CS_ActiveLightning[udg_CS_SecondaryIndex]=false
else
endif
call DestroyEffectBJ(udg_CS_SpecialEffect[udg_CS_SecondaryIndex])
call AddSpecialEffectTargetUnitBJ("chest",udg_CS_UnitIndex[udg_CS_SecondaryIndex],udg_CS_DissappearenceSFX)
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call UnitApplyTimedLifeBJ(0.80,0x42544C46,udg_CS_UnitIndex[udg_CS_SecondaryIndex])
set udg_CS_Aoe[udg_CS_SecondaryIndex]=udg_CS_Aoe[udg_CS_MaxIndex]
set udg_CS_ActiveLightning[udg_CS_SecondaryIndex]=udg_CS_ActiveLightning[udg_CS_MaxIndex]
set udg_CS_OriginalCaster[udg_CS_SecondaryIndex]=udg_CS_OriginalCaster[udg_CS_MaxIndex]
set udg_CS_StageID[udg_CS_SecondaryIndex]=udg_CS_StageID[udg_CS_MaxIndex]
set udg_CS_SingularityCurrentSize[udg_CS_SecondaryIndex]=udg_CS_SingularityCurrentSize[udg_CS_MaxIndex]
set udg_CS_SingularityDamage[udg_CS_SecondaryIndex]=udg_CS_SingularityDamage[udg_CS_MaxIndex]
set udg_CS_SpecialEffect[udg_CS_SecondaryIndex]=udg_CS_SpecialEffect[udg_CS_MaxIndex]
set udg_CS_SingularityLimiter[udg_CS_SecondaryIndex]=udg_CS_SingularityLimiter[udg_CS_MaxIndex]
set udg_CS_StrikeTotalCurrent[udg_CS_SecondaryIndex]=udg_CS_StrikeTotalCurrent[udg_CS_MaxIndex]
set udg_CS_StasisFieldActive[udg_CS_SecondaryIndex]=udg_CS_StasisFieldActive[udg_CS_MaxIndex]
set udg_CS_ParalyseCounterCurrent[udg_CS_SecondaryIndex]=udg_CS_ParalyseCounterCurrent[udg_CS_MaxIndex]
set udg_CS_ParalyseDamage[udg_CS_SecondaryIndex]=udg_CS_ParalyseDamage[udg_CS_MaxIndex]
set udg_CS_ParalyseCounterSpeed[udg_CS_SecondaryIndex]=udg_CS_ParalyseCounterSpeed[udg_CS_MaxIndex]
set udg_CS_ParalysingOrbCount[udg_CS_SecondaryIndex]=udg_CS_ParalysingOrbCount[udg_CS_MaxIndex]
set udg_CS_ChaosGenerationRateCurrent[udg_CS_SecondaryIndex]=udg_CS_ChaosGenerationRateCurrent[udg_CS_MaxIndex]
set udg_CS_ChaosGenerationRateSetting[udg_CS_SecondaryIndex]=udg_CS_ChaosGenerationRateSetting[udg_CS_MaxIndex]
set udg_CS_CurrentDistance[udg_CS_SecondaryIndex]=udg_CS_CurrentDistance[udg_CS_MaxIndex]
set udg_CS_CurrentLightningEffect[udg_CS_SecondaryIndex]=udg_CS_CurrentLightningEffect[udg_CS_MaxIndex]
set udg_CS_CurrentDelay[udg_CS_SecondaryIndex]=udg_CS_CurrentDelay[udg_CS_MaxIndex]
set udg_CS_Core[udg_CS_SecondaryIndex]=udg_CS_Core[udg_CS_MaxIndex]
set udg_CS_UnitIndex[udg_CS_SecondaryIndex]=udg_CS_UnitIndex[udg_CS_MaxIndex]
set udg_CS_MaxIndex=(udg_CS_MaxIndex-1)
set udg_CS_SecondaryIndex=(udg_CS_SecondaryIndex-1)
if(Trig_Chaos_Singularity_Loop_Func001Func003Func001Func001Func003Func002Func002Func001Func003Func008Func001Func029C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
else
endif
set udg_CS_SecondaryIndex=udg_CS_SecondaryIndex+1
endloop
endif
endif
else
endif
endif
endif
endif
endif
endif
if(Trig_Chaos_Singularity_Loop_Func001Func005C())then
set udg_CS_TempPoint=GetUnitLoc(udg_CS_UnitIndex[udg_CS_Index])
set udg_CS_TempGroup=GetUnitsInRangeOfLocAll(udg_CS_CurrentDistance[udg_CS_Index],udg_CS_TempPoint)
call ForGroupBJ(udg_CS_TempGroup,function Trig_Chaos_Singularity_Loop_Func001Func005Func003A)
call DestroyGroup(udg_CS_TempGroup)
call RemoveLocation(udg_CS_TempPoint)
else
endif
set udg_CS_Index=udg_CS_Index+1
endloop
endfunction
function InitTrig_Chaos_Singularity_Loop takes nothing returns nothing
set gg_trg_Chaos_Singularity_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Chaos_Singularity_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Chaos_Singularity_Loop,0.03)
call TriggerAddAction(gg_trg_Chaos_Singularity_Loop,function Trig_Chaos_Singularity_Loop_Actions)
endfunction
function Trig_Chaos_Singularity_Cleanup_Func002C takes nothing returns boolean
if(not(GetUnitTypeId(udg_CS_TempUnit)==udg_CS_DummyType))then
return false
endif
return true
endfunction
function Trig_Chaos_Singularity_Cleanup_Actions takes nothing returns nothing
set udg_CS_TempUnit=GetTriggerUnit()
if(Trig_Chaos_Singularity_Cleanup_Func002C())then
call RemoveUnit(udg_CS_TempUnit)
else
endif
endfunction
function InitTrig_Chaos_Singularity_Cleanup takes nothing returns nothing
set gg_trg_Chaos_Singularity_Cleanup=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Chaos_Singularity_Cleanup,EVENT_PLAYER_UNIT_DEATH)
call TriggerAddAction(gg_trg_Chaos_Singularity_Cleanup,function Trig_Chaos_Singularity_Cleanup_Actions)
endfunction
function Trig_Doom_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303332))then
return false
endif
return true
endfunction
function Trig_Doom_Cast_Func001C takes nothing returns boolean
if(not(udg_D_Skip==0))then
return false
endif
return true
endfunction
function Trig_Doom_Cast_Actions takes nothing returns nothing
if(Trig_Doom_Cast_Func001C())then
call EnableTrigger(gg_trg_Doom_Loop)
else
endif
set udg_D_Times=(udg_D_Times+1)
set udg_D_Skip=(udg_D_Skip+1)
set udg_D_Off[udg_D_Times]=true
set udg_D_Caster[udg_D_Times]=GetSpellAbilityUnit()
set udg_D_Point[0]=GetSpellTargetLoc()
set udg_D_Level[udg_D_Times]=GetUnitAbilityLevelSwapped(0x41303332,udg_D_Caster[udg_D_Times])
set udg_D_Damage[udg_D_Times]=(udg_D_Level[udg_D_Times]*60)
set udg_D_Aoe[udg_D_Times]=500.00
set udg_D_Duration[udg_D_Times]=10.00
set udg_D_Minus[udg_D_Times]=1.00
call CreateNUnitsAtLoc(1,0x68303141,GetOwningPlayer(udg_D_Caster[udg_D_Times]),udg_D_Point[0],bj_UNIT_FACING)
set udg_D_Dummy[udg_D_Times]=GetLastCreatedUnit()
call CreateNUnitsAtLoc(1,0x68303139,GetOwningPlayer(udg_D_Caster[udg_D_Times]),udg_D_Point[0],bj_UNIT_FACING)
set udg_D_CasterDummy[udg_D_Times]=GetLastCreatedUnit()
call SetUnitAbilityLevelSwapped(0x41303245,udg_D_CasterDummy[udg_D_Times],udg_D_Level[udg_D_Times])
call RemoveLocation(udg_D_Point[0])
endfunction
function InitTrig_Doom_Cast takes nothing returns nothing
set gg_trg_Doom_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Doom_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Doom_Cast,Condition(function Trig_Doom_Cast_Conditions))
call TriggerAddAction(gg_trg_Doom_Cast,function Trig_Doom_Cast_Actions)
endfunction
function Trig_Doom_Loop_Func001Func002Func001Func002002003001 takes nothing returns boolean
return(IsUnitAlly(GetFilterUnit(),GetOwningPlayer(udg_D_Caster[udg_D]))==false)
endfunction
function Trig_Doom_Loop_Func001Func002Func001Func002002003002001 takes nothing returns boolean
return(IsUnitDeadBJ(GetFilterUnit())==false)
endfunction
function Trig_Doom_Loop_Func001Func002Func001Func002002003002002 takes nothing returns boolean
return(IsUnitType(GetFilterUnit(),UNIT_TYPE_MAGIC_IMMUNE)==false)
endfunction
function Trig_Doom_Loop_Func001Func002Func001Func002002003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Doom_Loop_Func001Func002Func001Func002002003002001(),Trig_Doom_Loop_Func001Func002Func001Func002002003002002())
endfunction
function Trig_Doom_Loop_Func001Func002Func001Func002002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Doom_Loop_Func001Func002Func001Func002002003001(),Trig_Doom_Loop_Func001Func002Func001Func002002003002())
endfunction
function Trig_Doom_Loop_Func001Func002Func001Func004A takes nothing returns nothing
set udg_D_Point[1]=GetUnitLoc(GetEnumUnit())
call AddSpecialEffectLocBJ(udg_D_Point[1],"Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call IssueTargetOrderBJ(udg_D_Dummy[udg_D],"forkedlightning",GetEnumUnit())
call UnitDamageTargetBJ(udg_D_Caster[udg_D],GetEnumUnit(),I2R(udg_D_Damage[udg_D]),ATTACK_TYPE_HERO,DAMAGE_TYPE_POISON)
call RemoveLocation(udg_D_Point[1])
endfunction
function Trig_Doom_Loop_Func001Func002Func001Func014C takes nothing returns boolean
if(not(udg_D_Skip==0))then
return false
endif
return true
endfunction
function Trig_Doom_Loop_Func001Func002Func001C takes nothing returns boolean
if(not(udg_D_Duration[udg_D]<=0.00))then
return false
endif
return true
endfunction
function Trig_Doom_Loop_Func001Func002C takes nothing returns boolean
if(not(udg_D_Off[udg_D]==true))then
return false
endif
return true
endfunction
function Trig_Doom_Loop_Actions takes nothing returns nothing
set udg_D=1
loop
exitwhen udg_D>udg_D_Times
set udg_D_Duration[udg_D]=(udg_D_Duration[udg_D]-udg_D_Minus[udg_D])
if(Trig_Doom_Loop_Func001Func002C())then
if(Trig_Doom_Loop_Func001Func002Func001C())then
call RemoveUnit(udg_D_Dummy[udg_D])
call RemoveUnit(udg_D_CasterDummy[udg_D])
set udg_D_Off[udg_D]=false
set udg_D_Skip=(udg_D_Skip-1)
if(Trig_Doom_Loop_Func001Func002Func001Func014C())then
set udg_D_Times=0
call DisableTrigger(gg_trg_Doom_Loop)
else
endif
else
set udg_D_Point[2]=GetUnitLoc(udg_D_Dummy[udg_D])
set udg_D_Group[udg_D]=GetUnitsInRangeOfLocMatching(udg_D_Aoe[udg_D],udg_D_Point[2],Condition(function Trig_Doom_Loop_Func001Func002Func001Func002002003))
call IssueImmediateOrderBJ(udg_D_CasterDummy[udg_D],"animatedead")
call ForGroupBJ(udg_D_Group[udg_D],function Trig_Doom_Loop_Func001Func002Func001Func004A)
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=10
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
set udg_D_Point[3]=PolarProjectionBJ(udg_D_Point[2],udg_D_Aoe[udg_D],(36.00*I2R(GetForLoopIndexA())))
call AddSpecialEffectLocBJ(udg_D_Point[3],"Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call RemoveLocation(udg_D_Point[3])
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
call AddSpecialEffectLocBJ(udg_D_Point[2],"Abilities\\Spells\\Undead\\RaiseSkeletonWarrior\\RaiseSkeleton.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
call DestroyGroup(udg_D_Group[udg_D])
call RemoveLocation(udg_D_Point[2])
endif
else
endif
set udg_D=udg_D+1
endloop
endfunction
function InitTrig_Doom_Loop takes nothing returns nothing
set gg_trg_Doom_Loop=CreateTrigger()
call DisableTrigger(gg_trg_Doom_Loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Doom_Loop,1.00)
call TriggerAddAction(gg_trg_Doom_Loop,function Trig_Doom_Loop_Actions)
endfunction
function Trig_Stop_cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303335))then
return false
endif
return true
endfunction
function Trig_Stop_cast_Func002C takes nothing returns boolean
if(not(udg_S_index_size==0))then
return false
endif
return true
endfunction
function Trig_Stop_cast_Func004C takes nothing returns boolean
if(not(udg_S_index_size>udg_S_index_max))then
return false
endif
return true
endfunction
function Trig_Stop_cast_Actions takes nothing returns nothing
if(Trig_Stop_cast_Func002C())then
call EnableTrigger(gg_trg_Stop_loop)
else
endif
set udg_S_index_size=(udg_S_index_size+1)
if(Trig_Stop_cast_Func004C())then
set udg_S_index1[udg_S_index_size]=udg_S_index_size
set udg_S_index_max=udg_S_index_size
else
endif
set udg_S_index2=udg_S_index1[udg_S_index_size]
set udg_S_pause[udg_S_index2]=false
set udg_S_stopduration[udg_S_index2]=0.00
set udg_S_speed[udg_S_index2]=100.00
set udg_S_caster[udg_S_index2]=GetTriggerUnit()
set udg_S_stopduration[udg_S_index2]=6.00
set udg_S_targetpoint=GetSpellTargetLoc()
call CreateNUnitsAtLoc(1,0x68303144,GetTriggerPlayer(),udg_S_targetpoint,bj_UNIT_FACING)
set udg_S_dummy[udg_S_index2]=GetLastCreatedUnit()
set udg_S_stopgroup[udg_S_index2]=CreateGroup()
call RemoveLocation(udg_S_targetpoint)
endfunction
function InitTrig_Stop_cast takes nothing returns nothing
set gg_trg_Stop_cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Stop_cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Stop_cast,Condition(function Trig_Stop_cast_Conditions))
call TriggerAddAction(gg_trg_Stop_cast,function Trig_Stop_cast_Actions)
endfunction
function Trig_Stop_loop_Func001Func002Func003C takes nothing returns boolean
if(not(udg_S_pause[udg_S_index2]==false))then
return false
endif
return true
endfunction
function Trig_Stop_loop_Func001Func002Func007Func004A takes nothing returns nothing
call SetUnitTimeScalePercent(GetEnumUnit(),100.00)
call PauseUnitBJ(false,GetEnumUnit())
call GroupRemoveUnitSimple(GetEnumUnit(),udg_S_stopgroup[udg_S_index2])
endfunction
function Trig_Stop_loop_Func001Func002Func007Func012C takes nothing returns boolean
if(not(udg_S_index_size==0))then
return false
endif
return true
endfunction
function Trig_Stop_loop_Func001Func002Func007Func017001003001 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Stop_loop_Func001Func002Func007Func017001003002001 takes nothing returns boolean
return(IsUnitPausedBJ(GetFilterUnit())==false)
endfunction
function Trig_Stop_loop_Func001Func002Func007Func017001003002002 takes nothing returns boolean
return(GetFilterUnit()!=udg_S_caster[udg_S_index2])
endfunction
function Trig_Stop_loop_Func001Func002Func007Func017001003002 takes nothing returns boolean
return GetBooleanAnd(Trig_Stop_loop_Func001Func002Func007Func017001003002001(),Trig_Stop_loop_Func001Func002Func007Func017001003002002())
endfunction
function Trig_Stop_loop_Func001Func002Func007Func017001003 takes nothing returns boolean
return GetBooleanAnd(Trig_Stop_loop_Func001Func002Func007Func017001003001(),Trig_Stop_loop_Func001Func002Func007Func017001003002())
endfunction
function Trig_Stop_loop_Func001Func002Func007Func017A takes nothing returns nothing
call GroupAddUnitSimple(GetEnumUnit(),udg_S_stopgroup[udg_S_index2])
call SetUnitTimeScalePercent(GetEnumUnit(),0.00)
call PauseUnitBJ(true,GetEnumUnit())
endfunction
function Trig_Stop_loop_Func001Func002Func007C takes nothing returns boolean
if(not(udg_S_stopduration[udg_S_index2]>0.00))then
return false
endif
return true
endfunction
function Trig_Stop_loop_Func001Func002C takes nothing returns boolean
if(not(udg_S_speed[udg_S_index2]>0.00))then
return false
endif
return true
endfunction
function Trig_Stop_loop_Actions takes nothing returns nothing
set udg_S_index3=1
loop
exitwhen udg_S_index3>udg_S_index_size
set udg_S_index2=udg_S_index1[udg_S_index3]
if(Trig_Stop_loop_Func001Func002C())then
set udg_S_speed[udg_S_index2]=(udg_S_speed[udg_S_index2]-1.50)
call SetUnitTimeScalePercent(udg_S_dummy[udg_S_index2],udg_S_speed[udg_S_index2])
else
if(Trig_Stop_loop_Func001Func002Func003C())then
set udg_S_pause[udg_S_index2]=true
call PauseUnitBJ(true,udg_S_dummy[udg_S_index2])
call SetUnitVertexColorBJ(udg_S_dummy[udg_S_index2],100,0.00,0.00,0)
else
endif
set udg_S_dummypoint=GetUnitLoc(udg_S_dummy[udg_S_index2])
if(Trig_Stop_loop_Func001Func002Func007C())then
set udg_S_stopduration[udg_S_index2]=(udg_S_stopduration[udg_S_index2]-0.03)
set bj_wantDestroyGroup=true
call ForGroupBJ(GetUnitsInRangeOfLocMatching(400.00,udg_S_dummypoint,Condition(function Trig_Stop_loop_Func001Func002Func007Func017001003)),function Trig_Stop_loop_Func001Func002Func007Func017A)
else
call ExplodeUnitBJ(udg_S_dummy[udg_S_index2])
call ForGroupBJ(udg_S_stopgroup[udg_S_index2],function Trig_Stop_loop_Func001Func002Func007Func004A)
call DestroyGroup(udg_S_stopgroup[udg_S_index2])
set udg_S_index1[udg_S_index3]=udg_S_index1[udg_S_index_size]
set udg_S_index1[udg_S_index_size]=udg_S_index2
set udg_S_index_size=(udg_S_index_size-1)
set udg_S_index3=(udg_S_index3-1)
if(Trig_Stop_loop_Func001Func002Func007Func012C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endif
call RemoveLocation(udg_S_dummypoint)
endif
set udg_S_index3=udg_S_index3+1
endloop
endfunction
function InitTrig_Stop_loop takes nothing returns nothing
set gg_trg_Stop_loop=CreateTrigger()
call DisableTrigger(gg_trg_Stop_loop)
call TriggerRegisterTimerEventPeriodic(gg_trg_Stop_loop,0.03)
call TriggerAddAction(gg_trg_Stop_loop,function Trig_Stop_loop_Actions)
endfunction
function Trig_Geyser_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303333))then
return false
endif
return true
endfunction
function Trig_Geyser_Func003C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_GeyserCasters)==true))then
return false
endif
return true
endfunction
function Trig_Geyser_Func023Func001Func003C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_GeyserCasters)==true))then
return false
endif
return true
endfunction
function Trig_Geyser_Func023Func001C takes nothing returns boolean
if(not(udg_arrayfilled[GetForLoopIndexA()]==true))then
return false
endif
if(not(IsUnitInGroup(udg_CastingUnit[GetForLoopIndexA()],udg_GeyserCasters)==false))then
return false
endif
return true
endfunction
function Trig_Geyser_Actions takes nothing returns nothing
call GroupAddUnitSimple(GetTriggerUnit(),udg_GeyserCasters)
if(Trig_Geyser_Func003C())then
set udg_CasterNumber=1
else
set udg_CasterNumber=(udg_CasterNumber+1)
endif
set udg_arrayfilled[udg_CasterNumber]=true
set udg_GeyserPoint[udg_CasterNumber]=GetSpellTargetLoc()
set udg_CastingUnit[udg_CasterNumber]=GetSpellAbilityUnit()
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=3
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
call CreateNUnitsAtLocFacingLocBJ(1,0x68303142,GetOwningPlayer(GetTriggerUnit()),udg_GeyserPoint[udg_CasterNumber],udg_GeyserPoint[udg_CasterNumber])
call UnitApplyTimedLifeBJ(4.00,0x42544C46,GetLastCreatedUnit())
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
call CreateNUnitsAtLoc(1,0x68303143,GetOwningPlayer(GetTriggerUnit()),udg_GeyserPoint[udg_CasterNumber],GetRandomDirectionDeg())
call SetUnitColor(GetLastCreatedUnit(),PLAYER_COLOR_LIGHT_GRAY)
call SetUnitScalePercent(GetLastCreatedUnit(),400.00,400.00,400.00)
call SetUnitVertexColorBJ(GetLastCreatedUnit(),100,100,100,40.00)
call SetUnitAnimation(GetLastCreatedUnit(),"death")
call UnitApplyTimedLifeBJ(3.00,0x42544C46,GetLastCreatedUnit())
call EnableTrigger(gg_trg_FlyingShades)
call TriggerSleepAction((3.00*I2R(GetUnitAbilityLevelSwapped(0x41303333,GetTriggerUnit()))))
call GroupRemoveUnitSimple(GetTriggerUnit(),udg_GeyserCasters)
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=udg_CasterNumber
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
if(Trig_Geyser_Func023Func001C())then
set udg_arrayfilled[GetForLoopIndexA()]=false
call RemoveLocation(udg_GeyserPoint[GetForLoopIndexA()])
if(Trig_Geyser_Func023Func001Func003C())then
call DisableTrigger(gg_trg_FlyingShades)
else
endif
else
endif
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
endfunction
function InitTrig_Geyser takes nothing returns nothing
set gg_trg_Geyser=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Geyser,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Geyser,Condition(function Trig_Geyser_Conditions))
call TriggerAddAction(gg_trg_Geyser,function Trig_Geyser_Actions)
endfunction
function Trig_FlyingShades_Func001Func001Func010002003 takes nothing returns boolean
return(IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(udg_CastingUnit[GetForLoopIndexA()]))==true)
endfunction
function Trig_FlyingShades_Func001Func001Func011A takes nothing returns nothing
call UnitDamageTargetBJ(udg_CastingUnit[GetForLoopIndexA()],GetEnumUnit(),3.00,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
endfunction
function Trig_FlyingShades_Func001Func001C takes nothing returns boolean
if(not(udg_arrayfilled[GetForLoopIndexA()]==true))then
return false
endif
return true
endfunction
function Trig_FlyingShades_Actions takes nothing returns nothing
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=udg_CasterNumber
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
if(Trig_FlyingShades_Func001Func001C())then
set udg_TempPoint=PolarProjectionBJ(udg_GeyserPoint[GetForLoopIndexA()],GetRandomReal(100.00,400.00),GetRandomDirectionDeg())
call CreateNUnitsAtLoc(1,0x68303143,GetOwningPlayer(udg_CastingUnit[GetForLoopIndexA()]),udg_TempPoint,GetRandomDirectionDeg())
call RemoveLocation(udg_TempPoint)
call SetUnitColor(GetLastCreatedUnit(),PLAYER_COLOR_LIGHT_GRAY)
call SetUnitVertexColorBJ(GetLastCreatedUnit(),100,100,100,40.00)
call SetUnitFlyHeightBJ(GetLastCreatedUnit(),2000.00,GetRandomReal(500.00,1500.00))
call UnitApplyTimedLifeBJ(1.00,0x42544C46,GetLastCreatedUnit())
set udg_DamagedGroup=GetUnitsInRangeOfLocMatching(400.00,udg_GeyserPoint[GetForLoopIndexA()],Condition(function Trig_FlyingShades_Func001Func001Func010002003))
call ForGroupBJ(udg_DamagedGroup,function Trig_FlyingShades_Func001Func001Func011A)
call DestroyGroup(udg_DamagedGroup)
else
endif
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
endfunction
function InitTrig_FlyingShades takes nothing returns nothing
set gg_trg_FlyingShades=CreateTrigger()
call DisableTrigger(gg_trg_FlyingShades)
call TriggerRegisterTimerEventPeriodic(gg_trg_FlyingShades,0.04)
call TriggerAddAction(gg_trg_FlyingShades,function Trig_FlyingShades_Actions)
endfunction
function Trig_Taste_of_Death_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==0x41303334))then
return false
endif
return true
endfunction
function Trig_Taste_of_Death_Func029002003001 takes nothing returns boolean
return(IsPlayerEnemy(GetOwningPlayer(GetFilterUnit()),udg_ToD_Owner)==true)
endfunction
function Trig_Taste_of_Death_Func029002003002 takes nothing returns boolean
return(IsUnitAliveBJ(GetFilterUnit())==true)
endfunction
function Trig_Taste_of_Death_Func029002003 takes nothing returns boolean
return GetBooleanAnd(Trig_Taste_of_Death_Func029002003001(),Trig_Taste_of_Death_Func029002003002())
endfunction
function Trig_Taste_of_Death_Func032A takes nothing returns nothing
set udg_ToD_Unit_Counter=CountUnitsInGroup(udg_ToD_Heal_Group)
endfunction
function Trig_Taste_of_Death_Func033C takes nothing returns boolean
if(not(udg_ToD_Unit_Counter>0))then
return false
endif
return true
endfunction
function Trig_Taste_of_Death_Func041C takes nothing returns boolean
if(not(GetRandomInt(1,100)<=(udg_ToD_Base_Chance*udg_ToD_Ability)))then
return false
endif
return true
endfunction
function Trig_Taste_of_Death_Actions takes nothing returns nothing
set udg_ToD_Caster=GetTriggerUnit()
set udg_ToD_Owner=GetOwningPlayer(udg_ToD_Caster)
set udg_ToD_Position=GetUnitLoc(udg_ToD_Caster)
set udg_ToD_Base_Heal=15.00
set udg_ToD_Ability=GetUnitAbilityLevelSwapped(GetSpellAbilityId(),udg_ToD_Caster)
set udg_ToD_Base_Chance=0
set udg_ToD_Area_of_Effect=600.00
set udg_ToD_Dummy_Ability=0x41303337
set udg_ToD_Dummy_Ability_Frenzy=0x41303338
set bj_forLoopAIndex=1
set bj_forLoopAIndexEnd=36
loop
exitwhen bj_forLoopAIndex>bj_forLoopAIndexEnd
set udg_ToD_Target_Location=PolarProjectionBJ(udg_ToD_Position,50.00,(10.00*I2R(GetForLoopIndexA())))
call CreateNUnitsAtLoc(1,0x68303145,udg_ToD_Owner,udg_ToD_Position,bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(1.50,0x42544C46,GetLastCreatedUnit())
call UnitAddAbilityBJ(udg_ToD_Dummy_Ability,GetLastCreatedUnit())
call IssuePointOrderLocBJ(GetLastCreatedUnit(),"carrionswarm",udg_ToD_Target_Location)
call RemoveLocation(udg_ToD_Target_Location)
set bj_forLoopAIndex=bj_forLoopAIndex+1
endloop
set udg_ToD_Heal_Group=GetUnitsInRangeOfLocMatching(udg_ToD_Area_of_Effect,udg_ToD_Position,Condition(function Trig_Taste_of_Death_Func029002003))
call ForGroupBJ(udg_ToD_Heal_Group,function Trig_Taste_of_Death_Func032A)
if(Trig_Taste_of_Death_Func033C())then
call SetUnitLifeBJ(udg_ToD_Caster,(GetUnitStateSwap(UNIT_STATE_LIFE,udg_ToD_Caster)+((udg_ToD_Base_Heal*I2R(udg_ToD_Ability))*I2R(udg_ToD_Unit_Counter))))
call AddSpecialEffectTargetUnitBJ("origin",udg_ToD_Caster,"Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl")
call DestroyEffectBJ(GetLastCreatedEffectBJ())
else
endif
set udg_ToD_Unit_Counter=0
call DestroyGroup(udg_ToD_Heal_Group)
if(Trig_Taste_of_Death_Func041C())then
call CreateNUnitsAtLoc(1,0x68303145,udg_ToD_Owner,udg_ToD_Position,bj_UNIT_FACING)
call UnitApplyTimedLifeBJ(1.50,0x42544C46,GetLastCreatedUnit())
call UnitAddAbilityBJ(udg_ToD_Dummy_Ability_Frenzy,GetLastCreatedUnit())
call SetUnitAbilityLevelSwapped(udg_ToD_Dummy_Ability_Frenzy,GetLastCreatedUnit(),udg_ToD_Ability)
call IssueTargetOrderBJ(GetLastCreatedUnit(),"unholyfrenzy",udg_ToD_Caster)
else
endif
call RemoveLocation(udg_ToD_Position)
endfunction
function InitTrig_Taste_of_Death takes nothing returns nothing
set gg_trg_Taste_of_Death=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Taste_of_Death,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Taste_of_Death,Condition(function Trig_Taste_of_Death_Conditions))
call TriggerAddAction(gg_trg_Taste_of_Death,function Trig_Taste_of_Death_Actions)
endfunction
function Trig_DW_Config_Actions takes nothing returns nothing
call InitHashtableBJ()
set udg_Dark_Wave_Hash=GetLastCreatedHashtableBJ()
set udg_Dark_Wave_Ability=0x41303339
set udg_Dark_Wave_Speed[1]=45.00
set udg_Dark_Wave_Speed[2]=45.00
set udg_Dark_Wave_Speed[3]=45.00
set udg_Dark_Wave_Speed[4]=45.00
set udg_Dark_Wave_Radius_Detect[1]=150.00
set udg_Dark_Wave_Radius_Detect[2]=150.00
set udg_Dark_Wave_Radius_Detect[3]=150.00
set udg_Dark_Wave_Radius_Detect[4]=150.00
set udg_Dark_Wave_Effect="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl"
set udg_Dark_Wave_DestroyTrees=false
set udg_Dark_Wave_Alive=true
set udg_Dark_Wave_Ally=false
set udg_Dark_Wave_Structure=false
set udg_Dark_Wave_Mechanical=false
set udg_Dark_Wave_MagicImmune=false
set udg_Dark_Wave_Time_Event=0.03
call TriggerRegisterTimerEventPeriodic(gg_trg_DW_Loop,udg_Dark_Wave_Time_Event)
set udg_DWKB_Speed[1]=12.00
set udg_DWKB_Speed[2]=12.00
set udg_DWKB_Speed[3]=12.00
set udg_DWKB_Speed[4]=12.00
set udg_DWKB_Distance[1]=200.00
set udg_DWKB_Distance[2]=200.00
set udg_DWKB_Distance[3]=200.00
set udg_DWKB_Distance[4]=200.00
set udg_DWKB_Damage[1]=90.00
set udg_DWKB_Damage[2]=180.00
set udg_DWKB_Damage[3]=270.00
set udg_DWKB_Damage[4]=360.00
set udg_Knockback_Attack_Type=ATTACK_TYPE_NORMAL
set udg_Knockback_Damage_Type=DAMAGE_TYPE_NORMAL
set udg_Knockback_Effect="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl"
call InitHashtableBJ()
set udg_Knockback_Hash=GetLastCreatedHashtableBJ()
set udg_Knockback_Time_Event=0.03
call TriggerRegisterTimerEventPeriodic(gg_trg_DW_KB,udg_Knockback_Time_Event)
set udg_IsDestructableHarvester=CreateUnit(Player(15),0x68706561,0,0,0)
call UnitAddAbility(udg_IsDestructableHarvester,0x416C6F63)
call UnitAddAbility(udg_IsDestructableHarvester,0x4168726C)
call ShowUnitHide(udg_IsDestructableHarvester)
endfunction
function InitTrig_DW_Config takes nothing returns nothing
set gg_trg_DW_Config=CreateTrigger()
call TriggerAddAction(gg_trg_DW_Config,function Trig_DW_Config_Actions)
endfunction
function Trig_DW_Cast_Conditions takes nothing returns boolean
if(not(GetSpellAbilityId()==udg_Dark_Wave_Ability))then
return false
endif
return true
endfunction
function Trig_DW_Cast_Func018C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_Dark_Wave_CasterG)==true))then
return false
endif
return true
endfunction
function Trig_DW_Cast_Actions takes nothing returns nothing
local integer h
set udg_Dark_Wave_Caster=GetTriggerUnit()
set udg_Dark_Wave_TempLoc1=GetUnitLoc(udg_Dark_Wave_Caster)
set udg_Dark_Wave_TempLoc2=GetSpellTargetLoc()
set udg_Dark_Wave_Ability_Level=GetUnitAbilityLevelSwapped(udg_Dark_Wave_Ability,udg_Dark_Wave_Caster)
set udg_Dark_Wave_Angle=AngleBetweenPoints(udg_Dark_Wave_TempLoc1,udg_Dark_Wave_TempLoc2)
set udg_Dark_Wave_Distance=DistanceBetweenPoints(udg_Dark_Wave_TempLoc1,udg_Dark_Wave_TempLoc2)
call RemoveLocation(udg_Dark_Wave_TempLoc1)
call RemoveLocation(udg_Dark_Wave_TempLoc2)
set h=GetHandleId(udg_Dark_Wave_Caster)
call SaveReal(udg_Dark_Wave_Hash,h,0,udg_Dark_Wave_Angle)
call SaveReal(udg_Dark_Wave_Hash,h,1,udg_Dark_Wave_Distance)
call SaveReal(udg_Dark_Wave_Hash,h,2,udg_Dark_Wave_Speed[udg_Dark_Wave_Ability_Level])
call SaveReal(udg_Dark_Wave_Hash,h,3,udg_Dark_Wave_Radius_Detect[udg_Dark_Wave_Ability_Level])
if(Trig_DW_Cast_Func018C())then
call EnableTrigger(gg_trg_DW_Loop)
else
endif
call SetUnitPathing(udg_Dark_Wave_Caster,false)
call GroupAddUnitSimple(udg_Dark_Wave_Caster,udg_Dark_Wave_CasterG)
endfunction
function InitTrig_DW_Cast takes nothing returns nothing
set gg_trg_DW_Cast=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_DW_Cast,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_DW_Cast,Condition(function Trig_DW_Cast_Conditions))
call TriggerAddAction(gg_trg_DW_Cast,function Trig_DW_Cast_Actions)
endfunction
function Trig_DW_Loop_Func001Func017Func011C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_Dark_Wave_CasterG)==true))then
return false
endif
return true
endfunction
function Trig_DW_Loop_Func001Func017Func018A takes nothing returns nothing
set udg_IsDestructableTree=GetEnumDestructable()
if IssueTargetOrderById(udg_IsDestructableHarvester,852018,udg_IsDestructableTree)and IssueImmediateOrderById(udg_IsDestructableHarvester,851972)and GetWidgetLife(udg_IsDestructableTree)>0.405 then
call KillDestructable(udg_IsDestructableTree)
else
endif
endfunction
function Trig_DW_Loop_Func001Func017Func022Func003Func021C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_Knockback_Group)==true))then
return false
endif
return true
endfunction
function Trig_DW_Loop_Func001Func017Func022Func003C takes nothing returns boolean
if(not(IsUnitAliveBJ(udg_Dark_Wave_Knockback_Unit)==udg_Dark_Wave_Alive))then
return false
endif
if(not(IsUnitType(udg_Dark_Wave_Knockback_Unit,UNIT_TYPE_STRUCTURE)==udg_Dark_Wave_Structure))then
return false
endif
if(not(IsUnitType(udg_Dark_Wave_Knockback_Unit,UNIT_TYPE_MECHANICAL)==udg_Dark_Wave_Mechanical))then
return false
endif
if(not(IsUnitType(udg_Dark_Wave_Knockback_Unit,UNIT_TYPE_MAGIC_IMMUNE)==udg_Dark_Wave_MagicImmune))then
return false
endif
if(not(IsUnitAlly(udg_Dark_Wave_Knockback_Unit,GetOwningPlayer(udg_Dark_Wave_Caster))==udg_Dark_Wave_Ally))then
return false
endif
if(not(IsUnitInGroup(udg_Dark_Wave_Knockback_Unit,udg_Knockback_Group)==false))then
return false
endif
if(not(udg_Dark_Wave_Knockback_Unit!=udg_Dark_Wave_Caster))then
return false
endif
return true
endfunction
function Trig_DW_Loop_Func001Func017Func022A takes nothing returns nothing
set udg_Dark_Wave_Knockback_Unit=GetEnumUnit()
if(Trig_DW_Loop_Func001Func017Func022Func003C())then
set udg_Dark_Wave_TempLoc3=GetUnitLoc(udg_Dark_Wave_Knockback_Unit)
set udg_Dark_Wave_Ability_Level=GetUnitAbilityLevelSwapped(udg_Dark_Wave_Ability,udg_Dark_Wave_Caster)
set udg_Knockback_HandleId=GetHandleId(udg_Dark_Wave_Knockback_Unit)
call SaveRealBJ(udg_DWKB_Damage[udg_Dark_Wave_Ability_Level],0,udg_Knockback_HandleId,udg_Knockback_Hash)
call SaveRealBJ(udg_DWKB_Distance[udg_Dark_Wave_Ability_Level],1,udg_Knockback_HandleId,udg_Knockback_Hash)
call SaveRealBJ(udg_DWKB_Speed[udg_Dark_Wave_Ability_Level],2,udg_Knockback_HandleId,udg_Knockback_Hash)
call SaveRealBJ(AngleBetweenPoints(udg_Dark_Wave_TempLoc1,udg_Dark_Wave_TempLoc3),3,udg_Knockback_HandleId,udg_Knockback_Hash)
call SaveUnitHandleBJ(udg_Dark_Wave_Caster,4,udg_Knockback_HandleId,udg_Knockback_Hash)
if(Trig_DW_Loop_Func001Func017Func022Func003Func021C())then
call EnableTrigger(gg_trg_DW_KB)
else
endif
call SetUnitPathing(udg_Dark_Wave_Knockback_Unit,false)
call GroupAddUnitSimple(udg_Dark_Wave_Knockback_Unit,udg_Knockback_Group)
call RemoveLocation(udg_Dark_Wave_TempLoc3)
else
endif
endfunction
function Trig_DW_Loop_Func001Func017C takes nothing returns boolean
if(not(LoadRealBJ(1,udg_Dark_Wave_HandleID,udg_Dark_Wave_Hash)>0.00))then
return false
endif
if(not(IsTerrainPathableBJ(udg_Dark_Wave_TempLoc1,PATHING_TYPE_WALKABILITY)==false))then
return false
endif
return true
endfunction
function Trig_DW_Loop_Func001A takes nothing returns nothing
local real x
local real y
set udg_Dark_Wave_Caster=GetEnumUnit()
set udg_Dark_Wave_HandleID=GetHandleId(udg_Dark_Wave_Caster)
call SaveRealBJ((LoadRealBJ(1,udg_Dark_Wave_HandleID,udg_Dark_Wave_Hash)-LoadRealBJ(2,udg_Dark_Wave_HandleID,udg_Dark_Wave_Hash)),1,udg_Dark_Wave_HandleID,udg_Dark_Wave_Hash)
set udg_Dark_Wave_TempLoc1=GetUnitLoc(udg_Dark_Wave_Caster)
set x=GetUnitX(udg_Dark_Wave_Caster)
set y=GetUnitY(udg_Dark_Wave_Caster)
if(Trig_DW_Loop_Func001Func017C())then
call SetUnitX(udg_Dark_Wave_Caster,x+LoadReal(udg_Dark_Wave_Hash,udg_Dark_Wave_HandleID,2)*Cos(LoadReal(udg_Dark_Wave_Hash,udg_Dark_Wave_HandleID,0)*bj_DEGTORAD))
call SetUnitY(udg_Dark_Wave_Caster,y+LoadReal(udg_Dark_Wave_Hash,udg_Dark_Wave_HandleID,2)*Sin(LoadReal(udg_Dark_Wave_Hash,udg_Dark_Wave_HandleID,0)*bj_DEGTORAD))
call DestroyEffect(AddSpecialEffect(udg_Dark_Wave_Effect,x,y))
call EnumDestructablesInCircleBJ(LoadRealBJ(3,udg_Dark_Wave_HandleID,udg_Dark_Wave_Hash),udg_Dark_Wave_TempLoc1,function Trig_DW_Loop_Func001Func017Func018A)
set udg_Dark_Wave_Search_Target=GetUnitsInRangeOfLocAll(LoadRealBJ(3,udg_Dark_Wave_HandleID,udg_Dark_Wave_Hash),udg_Dark_Wave_TempLoc1)
call ForGroupBJ(udg_Dark_Wave_Search_Target,function Trig_DW_Loop_Func001Func017Func022A)
call RemoveLocation(udg_Dark_Wave_TempLoc1)
else
call RemoveLocation(udg_Dark_Wave_TempLoc1)
call SetUnitPathing(udg_Dark_Wave_Caster,true)
call GroupRemoveUnitSimple(udg_Dark_Wave_Caster,udg_Dark_Wave_CasterG)
call FlushChildHashtableBJ(udg_Dark_Wave_HandleID,udg_Dark_Wave_Hash)
if(Trig_DW_Loop_Func001Func017Func011C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endif
endfunction
function Trig_DW_Loop_Actions takes nothing returns nothing
call ForGroupBJ(udg_Dark_Wave_CasterG,function Trig_DW_Loop_Func001A)
endfunction
function InitTrig_DW_Loop takes nothing returns nothing
set gg_trg_DW_Loop=CreateTrigger()
call DisableTrigger(gg_trg_DW_Loop)
call TriggerAddAction(gg_trg_DW_Loop,function Trig_DW_Loop_Actions)
endfunction
function Trig_DW_KB_Func001Func016Func016C takes nothing returns boolean
if(not(IsUnitGroupEmptyBJ(udg_Knockback_Group)==true))then
return false
endif
return true
endfunction
function Trig_DW_KB_Func001Func016C takes nothing returns boolean
if(not(LoadRealBJ(1,udg_Knockback_HandleId,udg_Knockback_Hash)>0.00))then
return false
endif
if(not(IsTerrainPathableBJ(udg_Knockback_TempLoc1,PATHING_TYPE_WALKABILITY)==false))then
return false
endif
return true
endfunction
function Trig_DW_KB_Func001A takes nothing returns nothing
local real kbx
local real kby
set udg_Knockback_Unit=GetEnumUnit()
set kbx=GetUnitX(udg_Knockback_Unit)
set kby=GetUnitY(udg_Knockback_Unit)
set udg_Knockback_TempLoc1=GetUnitLoc(udg_Knockback_Unit)
set udg_Knockback_HandleId=GetHandleId(udg_Knockback_Unit)
call SaveRealBJ((LoadRealBJ(1,udg_Knockback_HandleId,udg_Knockback_Hash)-LoadRealBJ(2,udg_Knockback_HandleId,udg_Knockback_Hash)),1,udg_Knockback_HandleId,udg_Knockback_Hash)
if(Trig_DW_KB_Func001Func016C())then
call SetUnitX(udg_Knockback_Unit,kbx+LoadReal(udg_Knockback_Hash,udg_Knockback_HandleId,2)*Cos(LoadReal(udg_Knockback_Hash,udg_Knockback_HandleId,3)*bj_DEGTORAD))
call SetUnitY(udg_Knockback_Unit,kby+LoadReal(udg_Knockback_Hash,udg_Knockback_HandleId,2)*Sin(LoadReal(udg_Knockback_Hash,udg_Knockback_HandleId,3)*bj_DEGTORAD))
call DestroyEffect(AddSpecialEffect(udg_Knockback_Effect,kbx,kby))
else
call RemoveLocation(udg_Knockback_TempLoc1)
call UnitDamageTargetBJ(LoadUnitHandleBJ(4,udg_Knockback_HandleId,udg_Knockback_Hash),udg_Knockback_Unit,LoadRealBJ(0,udg_Knockback_HandleId,udg_Knockback_Hash),udg_Knockback_Attack_Type,udg_Knockback_Damage_Type)
call SetUnitPathing(udg_Knockback_Unit,true)
call GroupRemoveUnitSimple(udg_Knockback_Unit,udg_Knockback_Group)
call FlushChildHashtableBJ(udg_Knockback_HandleId,udg_Knockback_Hash)
if(Trig_DW_KB_Func001Func016Func016C())then
call DisableTrigger(GetTriggeringTrigger())
else
endif
endif
call RemoveLocation(udg_Knockback_TempLoc1)
endfunction
function Trig_DW_KB_Actions takes nothing returns nothing
call ForGroupBJ(udg_Knockback_Group,function Trig_DW_KB_Func001A)
endfunction
function InitTrig_DW_KB takes nothing returns nothing
set gg_trg_DW_KB=CreateTrigger()
call DisableTrigger(gg_trg_DW_KB)
call TriggerAddAction(gg_trg_DW_KB,function Trig_DW_KB_Actions)
endfunction
function InitCustomTriggers takes nothing returns nothing
call InitTrig_GameSTART()
call InitTrig_MapINFO()
call InitTrig_No_Player_1()
call InitTrig_No_Player_2()
call InitTrig_No_Player_3()
call InitTrig_No_Player_4()
call InitTrig_No_Player_5()
call InitTrig_ProbeDroid_770()
call InitTrig_MID_Unblock()
call InitTrig_MID_DestroyeD()
call InitTrig_CreepsRemove_1850()
call InitTrig_GeneratorDestroyed()
call InitTrig_GeneratorTEXT()
call InitTrig_POWER_3300_Ready()
call InitTrig_GeneratorWeapon()
call InitTrig_Seconds_150()
call InitTrig_Seconds_700()
call InitTrig_MID_See()
call InitTrig_MID_Block_01()
call InitTrig_MID_Block_02()
call InitTrig_MID_Secure()
call InitTrig_Sniper_Sound()
call InitTrig_AAgun_Sound()
call InitTrig_Annihilation_Gun_Sound()
call InitTrig_BETA_MapSee()
call InitTrig_Player_1_Leave()
call InitTrig_Player_2_Leave()
call InitTrig_Player_3_Leave()
call InitTrig_Player_4_Leave()
call InitTrig_Player_5_Leave()
call InitTrig_No_Generator_Kill_01()
call InitTrig_No_Generator_Kill_02()
call InitTrig_No_Generator_Kill_03()
call InitTrig_No_Generator_Kill_04()
call InitTrig_No_Generator_Kill_05()
call InitTrig_No_Team_Kill_01()
call InitTrig_No_Team_Kill_02()
call InitTrig_No_Team_Kill_03()
call InitTrig_No_Team_Kill_04()
call InitTrig_No_Team_Kill_05()
call InitTrig_No_Team_Kill_06()
call InitTrig_No_Team_Kill_07()
call InitTrig_PlayerLeave01()
call InitTrig_PlayerLeave02()
call InitTrig_PlayerLeave03()
call InitTrig_PlayerLeave04()
call InitTrig_PlayerLeave05()
call InitTrig_PlayerLeave06()
call InitTrig_UndeadHOLD01()
call InitTrig_StopHOLD01()
call InitTrig_UndeadHOLD02()
call InitTrig_StopHOLD02()
call InitTrig_UndeadDragon01()
call InitTrig_UndeadDragon02()
call InitTrig_UndeadDragon03()
call InitTrig_UndeadHOLD03()
call InitTrig_StopHOLD03()
call InitTrig_UndeadDragon04()
call InitTrig_UndeadDragon05()
call InitTrig_UndeadHOLD04()
call InitTrig_StopHOLD04()
call InitTrig_UndeadDragon06()
call InitTrig_UndeadDragon07()
call InitTrig_UndeadDragon08()
call InitTrig_Meat1()
call InitTrig_Meat2()
call InitTrig_Meat3()
call InitTrig_Meat4()
call InitTrig_Meat5()
call InitTrig_Meat6()
call InitTrig_Meat7()
call InitTrig_Player_6_Gold()
call InitTrig_Undead_Players_Gold()
call InitTrig_Undead_10_Gold()
call InitTrig_Undead_7()
call InitTrig_Undead_8()
call InitTrig_Undead_9()
call InitTrig_Undead_11()
call InitTrig_Undead_12()
call InitTrig_UndeadWood01()
call InitTrig_UndeadWood02()
call InitTrig_UndeadWood03()
call InitTrig_UndeadWood04()
call InitTrig_UndeadWood05()
call InitTrig_UndeadWood06()
call InitTrig_Seconds_1550()
call InitTrig_Seconds_4000()
call InitTrig_Seconds_4400()
call InitTrig_Seconds_4800()
call InitTrig_Seconds_5300()
call InitTrig_UndeadDragon10()
call InitTrig_UndeadDragon11()
call InitTrig_UndeadDragon12()
call InitTrig_UndeadDragon13()
call InitTrig_UndeadDragon14()
call InitTrig_UndeadDragon15()
call InitTrig_Start_AI_Attacks()
call InitTrig_AI_Res_01()
call InitTrig_AI_Res_02()
call InitTrig_AI_Res_03()
call InitTrig_AI_Res_04()
call InitTrig_AI_Res_05()
call InitTrig_AI_Res_STOP()
call InitTrig_AI_Start_Item_01()
call InitTrig_AI_Start_Item_02()
call InitTrig_AI_Start_Item_03()
call InitTrig_AI_Start_Item_04()
call InitTrig_AI_Start_Item_05()
call InitTrig_AI_item_01()
call InitTrig_AI_item_02()
call InitTrig_AI_item_03()
call InitTrig_AI_item_04()
call InitTrig_AI_item_05()
call InitTrig_AI_item_01_II()
call InitTrig_AI_item_02_II()
call InitTrig_AI_item_03_II()
call InitTrig_AI_item_04_II()
call InitTrig_AI_item_05_II()
call InitTrig_AI_item_01_III()
call InitTrig_AI_item_02_III()
call InitTrig_AI_item_03_III()
call InitTrig_AI_item_04_III()
call InitTrig_AI_item_05_III()
call InitTrig_Random()
call InitTrig_SetRandom()
call InitTrig_Big_Explosion_1()
call InitTrig_Big_Explosion_2()
call InitTrig_Big_Explosion_3()
call InitTrig_Big_Explosion_4()
call InitTrig_Big_Explosion_5()
call InitTrig_Big_Explosion_6()
call InitTrig_Big_Explosion_7()
call InitTrig_Mine_Explosion()
call InitTrig_Explosion_1()
call InitTrig_Explosion_2()
call InitTrig_Explosion_3()
call InitTrig_Explosion_4()
call InitTrig_Explosion_5()
call InitTrig_EMPIRE_WIN()
call InitTrig_Standart_Camera()
call InitTrig_Medium_Camera()
call InitTrig_Far_Camera()
call InitTrig_SithMask()
call InitTrig_LightSaber()
call InitTrig_Rog_of_power()
call InitTrig_Ring_of_Fire()
call InitTrig_Ring_of_Water()
call InitTrig_Magic_Reload()
call InitTrig_Heal()
call InitTrig_Black_Hole_Init()
call InitTrig_Black_Hole_Helpful_Files()
call InitTrig_Black_Hole_Config()
call InitTrig_Black_Hole_Execution()
call InitTrig_Black_Hole_Loop_Pull()
call InitTrig_Bonebreaker()
call InitTrig_Knockback_Index()
call InitTrig_Knockback_Move()
call InitTrig_Initial_Telekinesis_GUI()
call InitTrig_Telekinesis_GUI()
call InitTrig_Shadowstep()
call InitTrig_VO_Start()
call InitTrig_VO_Loop()
call InitTrig_Fire_Ball_Setings()
call InitTrig_Fire_Ball_Loop()
call InitTrig_Psychic_Rape()
call InitTrig_Wound_Poison()
call InitTrig_Initialization_Fan_of_Knives()
call InitTrig_Fan_of_Knives()
call InitTrig_Fan_of_Knives_Execution()
call InitTrig_Telekinetic_Seizure_Setings()
call InitTrig_Telekinetic_Seizure_Loop()
call InitTrig_CE_Initialization()
call InitTrig_Cutting_Edge()
call InitTrig_Cutting_Edge_Knock()
call InitTrig_Remove_Dummies()
call InitTrig_Shade_Sheild_On()
call InitTrig_Shade_Sheild_Loop()
call InitTrig_BA_Initialization()
call InitTrig_Beast_Attack()
call InitTrig_Beast_Attack_Knock()
call InitTrig_Sinister_Strike()
call InitTrig_SInitialization()
call InitTrig_Shockwave_Cast()
call InitTrig_Shockwave_Slide()
call InitTrig_Ion_Canon()
call InitTrig_Magic_Leash()
call InitTrig_Magic_Leash_Move()
call InitTrig_Hook_Table()
call InitTrig_Hook()
call InitTrig_Hook_Loop()
call InitTrig_Elune_Arrow()
call InitTrig_Elune_Arrow_Move()
call InitTrig_Lightning_Ball_Begin()
call InitTrig_Lightning_Ball_Move()
call InitTrig_Heat_Ripple()
call InitTrig_Heat_Ripple_Loop()
call InitTrig_Tornado()
call InitTrig_Tornado_Damage()
call InitTrig_Heroic_Leap_vAoE_Cast()
call InitTrig_Heroic_Leap_vAoE_Slide()
call InitTrig_Mana_Leak_Cast()
call InitTrig_Mana_Leak_Loop()
call InitTrig_HookIni()
call InitTrig_HookCast()
call InitTrig_HookLoop()
call InitTrig_HookRemoveDummys()
call InitTrig_Bouncer_Main()
call InitTrig_Bouncer_Loop()
call InitTrig_LDH_Helpful_Files()
call InitTrig_Lightning_Down_Hatred_Configuration()
call InitTrig_LDH_Execute()
call InitTrig_LDH_Loop()
call InitTrig_Rapid_Firebolt_Setting()
call InitTrig_Rapid_Firebolt_Cast()
call InitTrig_Rapid_Firebolt_Loop()
call InitTrig_Counter_Helix_Setup()
call InitTrig_Counter_Helix_Loop()
call InitTrig_Counter_Helix()
call InitTrig_Electrify_Settings()
call InitTrig_Electrify_Cast()
call InitTrig_Electrify_Loop()
call InitTrig_death_special_effect()
call InitTrig_crab_bomb_path()
call InitTrig_crab_bomb_path_loop()
call InitTrig_PD_Configuration()
call InitTrig_PD_Cast()
call InitTrig_PD_Loop()
call InitTrig_Chaos_Singularity_Configuration()
call InitTrig_Chaos_Singularity_Activation()
call InitTrig_Chaos_Singularity_Loop()
call InitTrig_Chaos_Singularity_Cleanup()
call InitTrig_Doom_Cast()
call InitTrig_Doom_Loop()
call InitTrig_Stop_cast()
call InitTrig_Stop_loop()
call InitTrig_Geyser()
call InitTrig_FlyingShades()
call InitTrig_Taste_of_Death()
call InitTrig_DW_Config()
call InitTrig_DW_Cast()
call InitTrig_DW_Loop()
call InitTrig_DW_KB()
endfunction
function RunInitializationTriggers takes nothing returns nothing
call ConditionalTriggerExecute(gg_trg_GameSTART)
call ConditionalTriggerExecute(gg_trg_MapINFO)
call ConditionalTriggerExecute(gg_trg_No_Player_1)
call ConditionalTriggerExecute(gg_trg_No_Player_2)
call ConditionalTriggerExecute(gg_trg_No_Player_3)
call ConditionalTriggerExecute(gg_trg_No_Player_4)
call ConditionalTriggerExecute(gg_trg_No_Player_5)
call ConditionalTriggerExecute(gg_trg_GeneratorTEXT)
call ConditionalTriggerExecute(gg_trg_AI_Start_Item_01)
call ConditionalTriggerExecute(gg_trg_AI_Start_Item_02)
call ConditionalTriggerExecute(gg_trg_AI_Start_Item_03)
call ConditionalTriggerExecute(gg_trg_AI_Start_Item_04)
call ConditionalTriggerExecute(gg_trg_AI_Start_Item_05)
call ConditionalTriggerExecute(gg_trg_SetRandom)
call ConditionalTriggerExecute(gg_trg_Black_Hole_Init)
call ConditionalTriggerExecute(gg_trg_Black_Hole_Config)
call ConditionalTriggerExecute(gg_trg_Initialization_Fan_of_Knives)
call ConditionalTriggerExecute(gg_trg_CE_Initialization)
call ConditionalTriggerExecute(gg_trg_BA_Initialization)
call ConditionalTriggerExecute(gg_trg_SInitialization)
call ConditionalTriggerExecute(gg_trg_Hook_Table)
call ConditionalTriggerExecute(gg_trg_HookIni)
call ConditionalTriggerExecute(gg_trg_Lightning_Down_Hatred_Configuration)
call ConditionalTriggerExecute(gg_trg_Rapid_Firebolt_Setting)
call ConditionalTriggerExecute(gg_trg_Counter_Helix_Setup)
call ConditionalTriggerExecute(gg_trg_Electrify_Settings)
call ConditionalTriggerExecute(gg_trg_Chaos_Singularity_Configuration)
call ConditionalTriggerExecute(gg_trg_DW_Config)
endfunction
function InitUpgrades_Player5 takes nothing returns nothing
call SetPlayerTechResearched(Player(5),0x52757762,1)
endfunction
function InitUpgrades_Player6 takes nothing returns nothing
call SetPlayerTechResearched(Player(6),0x52757762,1)
endfunction
function InitUpgrades_Player7 takes nothing returns nothing
call SetPlayerTechResearched(Player(7),0x52757762,1)
endfunction
function InitUpgrades_Player8 takes nothing returns nothing
call SetPlayerTechResearched(Player(8),0x52757762,1)
endfunction
function InitUpgrades_Player9 takes nothing returns nothing
call SetPlayerTechResearched(Player(9),0x52757762,1)
endfunction
function InitUpgrades_Player10 takes nothing returns nothing
call SetPlayerTechResearched(Player(10),0x52757762,1)
endfunction
function InitUpgrades_Player11 takes nothing returns nothing
call SetPlayerTechResearched(Player(11),0x52757762,1)
endfunction
function InitUpgrades takes nothing returns nothing
call InitUpgrades_Player5()
call InitUpgrades_Player6()
call InitUpgrades_Player7()
call InitUpgrades_Player8()
call InitUpgrades_Player9()
call InitUpgrades_Player10()
call InitUpgrades_Player11()
endfunction
function InitTechTree_Player5 takes nothing returns nothing
call SetPlayerAbilityAvailable(Player(5),0x41303157,false)
endfunction
function InitTechTree_Player6 takes nothing returns nothing
call SetPlayerAbilityAvailable(Player(6),0x41303157,false)
endfunction
function InitTechTree_Player7 takes nothing returns nothing
call SetPlayerAbilityAvailable(Player(7),0x41303157,false)
endfunction
function InitTechTree_Player8 takes nothing returns nothing
call SetPlayerAbilityAvailable(Player(8),0x41303157,false)
endfunction
function InitTechTree_Player9 takes nothing returns nothing
call SetPlayerAbilityAvailable(Player(9),0x41303157,false)
endfunction
function InitTechTree_Player10 takes nothing returns nothing
call SetPlayerAbilityAvailable(Player(10),0x41303157,false)
endfunction
function InitTechTree_Player11 takes nothing returns nothing
call SetPlayerAbilityAvailable(Player(11),0x41303157,false)
endfunction
function InitTechTree takes nothing returns nothing
call InitTechTree_Player5()
call InitTechTree_Player6()
call InitTechTree_Player7()
call InitTechTree_Player8()
call InitTechTree_Player9()
call InitTechTree_Player10()
call InitTechTree_Player11()
endfunction
function InitCustomPlayerSlots takes nothing returns nothing
call SetPlayerStartLocation(Player(0),0)
call ForcePlayerStartLocation(Player(0),0)
call SetPlayerColor(Player(0),ConvertPlayerColor(0))
call SetPlayerRacePreference(Player(0),RACE_PREF_HUMAN)
call SetPlayerRaceSelectable(Player(0),false)
call SetPlayerController(Player(0),MAP_CONTROL_USER)
call SetPlayerStartLocation(Player(1),1)
call ForcePlayerStartLocation(Player(1),1)
call SetPlayerColor(Player(1),ConvertPlayerColor(1))
call SetPlayerRacePreference(Player(1),RACE_PREF_HUMAN)
call SetPlayerRaceSelectable(Player(1),false)
call SetPlayerController(Player(1),MAP_CONTROL_USER)
call SetPlayerStartLocation(Player(2),2)
call ForcePlayerStartLocation(Player(2),2)
call SetPlayerColor(Player(2),ConvertPlayerColor(2))
call SetPlayerRacePreference(Player(2),RACE_PREF_HUMAN)
call SetPlayerRaceSelectable(Player(2),false)
call SetPlayerController(Player(2),MAP_CONTROL_USER)
call SetPlayerStartLocation(Player(3),3)
call ForcePlayerStartLocation(Player(3),3)
call SetPlayerColor(Player(3),ConvertPlayerColor(3))
call SetPlayerRacePreference(Player(3),RACE_PREF_HUMAN)
call SetPlayerRaceSelectable(Player(3),false)
call SetPlayerController(Player(3),MAP_CONTROL_USER)
call SetPlayerStartLocation(Player(4),4)
call ForcePlayerStartLocation(Player(4),4)
call SetPlayerColor(Player(4),ConvertPlayerColor(4))
call SetPlayerRacePreference(Player(4),RACE_PREF_HUMAN)
call SetPlayerRaceSelectable(Player(4),false)
call SetPlayerController(Player(4),MAP_CONTROL_USER)
call SetPlayerStartLocation(Player(5),5)
call ForcePlayerStartLocation(Player(5),5)
call SetPlayerColor(Player(5),ConvertPlayerColor(5))
call SetPlayerRacePreference(Player(5),RACE_PREF_UNDEAD)
call SetPlayerRaceSelectable(Player(5),false)
call SetPlayerController(Player(5),MAP_CONTROL_USER)
call SetPlayerStartLocation(Player(6),6)
call ForcePlayerStartLocation(Player(6),6)
call SetPlayerColor(Player(6),ConvertPlayerColor(6))
call SetPlayerRacePreference(Player(6),RACE_PREF_UNDEAD)
call SetPlayerRaceSelectable(Player(6),false)
call SetPlayerController(Player(6),MAP_CONTROL_COMPUTER)
call SetPlayerStartLocation(Player(7),7)
call ForcePlayerStartLocation(Player(7),7)
call SetPlayerColor(Player(7),ConvertPlayerColor(7))
call SetPlayerRacePreference(Player(7),RACE_PREF_UNDEAD)
call SetPlayerRaceSelectable(Player(7),false)
call SetPlayerController(Player(7),MAP_CONTROL_COMPUTER)
call SetPlayerStartLocation(Player(8),8)
call ForcePlayerStartLocation(Player(8),8)
call SetPlayerColor(Player(8),ConvertPlayerColor(8))
call SetPlayerRacePreference(Player(8),RACE_PREF_UNDEAD)
call SetPlayerRaceSelectable(Player(8),false)
call SetPlayerController(Player(8),MAP_CONTROL_COMPUTER)
call SetPlayerStartLocation(Player(9),9)
call ForcePlayerStartLocation(Player(9),9)
call SetPlayerColor(Player(9),ConvertPlayerColor(9))
call SetPlayerRacePreference(Player(9),RACE_PREF_UNDEAD)
call SetPlayerRaceSelectable(Player(9),false)
call SetPlayerController(Player(9),MAP_CONTROL_COMPUTER)
call SetPlayerStartLocation(Player(10),10)
call ForcePlayerStartLocation(Player(10),10)
call SetPlayerColor(Player(10),ConvertPlayerColor(10))
call SetPlayerRacePreference(Player(10),RACE_PREF_UNDEAD)
call SetPlayerRaceSelectable(Player(10),false)
call SetPlayerController(Player(10),MAP_CONTROL_COMPUTER)
call SetPlayerStartLocation(Player(11),11)
call ForcePlayerStartLocation(Player(11),11)
call SetPlayerColor(Player(11),ConvertPlayerColor(11))
call SetPlayerRacePreference(Player(11),RACE_PREF_UNDEAD)
call SetPlayerRaceSelectable(Player(11),false)
call SetPlayerController(Player(11),MAP_CONTROL_COMPUTER)
endfunction
function InitCustomTeams takes nothing returns nothing
call SetPlayerTeam(Player(0),0)
call SetPlayerState(Player(0),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(1),0)
call SetPlayerState(Player(1),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(2),0)
call SetPlayerState(Player(2),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(3),0)
call SetPlayerState(Player(3),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(4),0)
call SetPlayerState(Player(4),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerAllianceStateAllyBJ(Player(0),Player(1),true)
call SetPlayerAllianceStateAllyBJ(Player(0),Player(2),true)
call SetPlayerAllianceStateAllyBJ(Player(0),Player(3),true)
call SetPlayerAllianceStateAllyBJ(Player(0),Player(4),true)
call SetPlayerAllianceStateAllyBJ(Player(1),Player(0),true)
call SetPlayerAllianceStateAllyBJ(Player(1),Player(2),true)
call SetPlayerAllianceStateAllyBJ(Player(1),Player(3),true)
call SetPlayerAllianceStateAllyBJ(Player(1),Player(4),true)
call SetPlayerAllianceStateAllyBJ(Player(2),Player(0),true)
call SetPlayerAllianceStateAllyBJ(Player(2),Player(1),true)
call SetPlayerAllianceStateAllyBJ(Player(2),Player(3),true)
call SetPlayerAllianceStateAllyBJ(Player(2),Player(4),true)
call SetPlayerAllianceStateAllyBJ(Player(3),Player(0),true)
call SetPlayerAllianceStateAllyBJ(Player(3),Player(1),true)
call SetPlayerAllianceStateAllyBJ(Player(3),Player(2),true)
call SetPlayerAllianceStateAllyBJ(Player(3),Player(4),true)
call SetPlayerAllianceStateAllyBJ(Player(4),Player(0),true)
call SetPlayerAllianceStateAllyBJ(Player(4),Player(1),true)
call SetPlayerAllianceStateAllyBJ(Player(4),Player(2),true)
call SetPlayerAllianceStateAllyBJ(Player(4),Player(3),true)
call SetPlayerAllianceStateVisionBJ(Player(0),Player(1),true)
call SetPlayerAllianceStateVisionBJ(Player(0),Player(2),true)
call SetPlayerAllianceStateVisionBJ(Player(0),Player(3),true)
call SetPlayerAllianceStateVisionBJ(Player(0),Player(4),true)
call SetPlayerAllianceStateVisionBJ(Player(1),Player(0),true)
call SetPlayerAllianceStateVisionBJ(Player(1),Player(2),true)
call SetPlayerAllianceStateVisionBJ(Player(1),Player(3),true)
call SetPlayerAllianceStateVisionBJ(Player(1),Player(4),true)
call SetPlayerAllianceStateVisionBJ(Player(2),Player(0),true)
call SetPlayerAllianceStateVisionBJ(Player(2),Player(1),true)
call SetPlayerAllianceStateVisionBJ(Player(2),Player(3),true)
call SetPlayerAllianceStateVisionBJ(Player(2),Player(4),true)
call SetPlayerAllianceStateVisionBJ(Player(3),Player(0),true)
call SetPlayerAllianceStateVisionBJ(Player(3),Player(1),true)
call SetPlayerAllianceStateVisionBJ(Player(3),Player(2),true)
call SetPlayerAllianceStateVisionBJ(Player(3),Player(4),true)
call SetPlayerAllianceStateVisionBJ(Player(4),Player(0),true)
call SetPlayerAllianceStateVisionBJ(Player(4),Player(1),true)
call SetPlayerAllianceStateVisionBJ(Player(4),Player(2),true)
call SetPlayerAllianceStateVisionBJ(Player(4),Player(3),true)
call SetPlayerTeam(Player(5),1)
call SetPlayerState(Player(5),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(6),1)
call SetPlayerState(Player(6),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(7),1)
call SetPlayerState(Player(7),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(8),1)
call SetPlayerState(Player(8),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(9),1)
call SetPlayerState(Player(9),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(10),1)
call SetPlayerState(Player(10),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerTeam(Player(11),1)
call SetPlayerState(Player(11),PLAYER_STATE_ALLIED_VICTORY,1)
call SetPlayerAllianceStateAllyBJ(Player(5),Player(6),true)
call SetPlayerAllianceStateAllyBJ(Player(5),Player(7),true)
call SetPlayerAllianceStateAllyBJ(Player(5),Player(8),true)
call SetPlayerAllianceStateAllyBJ(Player(5),Player(9),true)
call SetPlayerAllianceStateAllyBJ(Player(5),Player(10),true)
call SetPlayerAllianceStateAllyBJ(Player(5),Player(11),true)
call SetPlayerAllianceStateAllyBJ(Player(6),Player(5),true)
call SetPlayerAllianceStateAllyBJ(Player(6),Player(7),true)
call SetPlayerAllianceStateAllyBJ(Player(6),Player(8),true)
call SetPlayerAllianceStateAllyBJ(Player(6),Player(9),true)
call SetPlayerAllianceStateAllyBJ(Player(6),Player(10),true)
call SetPlayerAllianceStateAllyBJ(Player(6),Player(11),true)
call SetPlayerAllianceStateAllyBJ(Player(7),Player(5),true)
call SetPlayerAllianceStateAllyBJ(Player(7),Player(6),true)
call SetPlayerAllianceStateAllyBJ(Player(7),Player(8),true)
call SetPlayerAllianceStateAllyBJ(Player(7),Player(9),true)
call SetPlayerAllianceStateAllyBJ(Player(7),Player(10),true)
call SetPlayerAllianceStateAllyBJ(Player(7),Player(11),true)
call SetPlayerAllianceStateAllyBJ(Player(8),Player(5),true)
call SetPlayerAllianceStateAllyBJ(Player(8),Player(6),true)
call SetPlayerAllianceStateAllyBJ(Player(8),Player(7),true)
call SetPlayerAllianceStateAllyBJ(Player(8),Player(9),true)
call SetPlayerAllianceStateAllyBJ(Player(8),Player(10),true)
call SetPlayerAllianceStateAllyBJ(Player(8),Player(11),true)
call SetPlayerAllianceStateAllyBJ(Player(9),Player(5),true)
call SetPlayerAllianceStateAllyBJ(Player(9),Player(6),true)
call SetPlayerAllianceStateAllyBJ(Player(9),Player(7),true)
call SetPlayerAllianceStateAllyBJ(Player(9),Player(8),true)
call SetPlayerAllianceStateAllyBJ(Player(9),Player(10),true)
call SetPlayerAllianceStateAllyBJ(Player(9),Player(11),true)
call SetPlayerAllianceStateAllyBJ(Player(10),Player(5),true)
call SetPlayerAllianceStateAllyBJ(Player(10),Player(6),true)
call SetPlayerAllianceStateAllyBJ(Player(10),Player(7),true)
call SetPlayerAllianceStateAllyBJ(Player(10),Player(8),true)
call SetPlayerAllianceStateAllyBJ(Player(10),Player(9),true)
call SetPlayerAllianceStateAllyBJ(Player(10),Player(11),true)
call SetPlayerAllianceStateAllyBJ(Player(11),Player(5),true)
call SetPlayerAllianceStateAllyBJ(Player(11),Player(6),true)
call SetPlayerAllianceStateAllyBJ(Player(11),Player(7),true)
call SetPlayerAllianceStateAllyBJ(Player(11),Player(8),true)
call SetPlayerAllianceStateAllyBJ(Player(11),Player(9),true)
call SetPlayerAllianceStateAllyBJ(Player(11),Player(10),true)
call SetPlayerAllianceStateVisionBJ(Player(5),Player(6),true)
call SetPlayerAllianceStateVisionBJ(Player(5),Player(7),true)
call SetPlayerAllianceStateVisionBJ(Player(5),Player(8),true)
call SetPlayerAllianceStateVisionBJ(Player(5),Player(9),true)
call SetPlayerAllianceStateVisionBJ(Player(5),Player(10),true)
call SetPlayerAllianceStateVisionBJ(Player(5),Player(11),true)
call SetPlayerAllianceStateVisionBJ(Player(6),Player(5),true)
call SetPlayerAllianceStateVisionBJ(Player(6),Player(7),true)
call SetPlayerAllianceStateVisionBJ(Player(6),Player(8),true)
call SetPlayerAllianceStateVisionBJ(Player(6),Player(9),true)
call SetPlayerAllianceStateVisionBJ(Player(6),Player(10),true)
call SetPlayerAllianceStateVisionBJ(Player(6),Player(11),true)
call SetPlayerAllianceStateVisionBJ(Player(7),Player(5),true)
call SetPlayerAllianceStateVisionBJ(Player(7),Player(6),true)
call SetPlayerAllianceStateVisionBJ(Player(7),Player(8),true)
call SetPlayerAllianceStateVisionBJ(Player(7),Player(9),true)
call SetPlayerAllianceStateVisionBJ(Player(7),Player(10),true)
call SetPlayerAllianceStateVisionBJ(Player(7),Player(11),true)
call SetPlayerAllianceStateVisionBJ(Player(8),Player(5),true)
call SetPlayerAllianceStateVisionBJ(Player(8),Player(6),true)
call SetPlayerAllianceStateVisionBJ(Player(8),Player(7),true)
call SetPlayerAllianceStateVisionBJ(Player(8),Player(9),true)
call SetPlayerAllianceStateVisionBJ(Player(8),Player(10),true)
call SetPlayerAllianceStateVisionBJ(Player(8),Player(11),true)
call SetPlayerAllianceStateVisionBJ(Player(9),Player(5),true)
call SetPlayerAllianceStateVisionBJ(Player(9),Player(6),true)
call SetPlayerAllianceStateVisionBJ(Player(9),Player(7),true)
call SetPlayerAllianceStateVisionBJ(Player(9),Player(8),true)
call SetPlayerAllianceStateVisionBJ(Player(9),Player(10),true)
call SetPlayerAllianceStateVisionBJ(Player(9),Player(11),true)
call SetPlayerAllianceStateVisionBJ(Player(10),Player(5),true)
call SetPlayerAllianceStateVisionBJ(Player(10),Player(6),true)
call SetPlayerAllianceStateVisionBJ(Player(10),Player(7),true)
call SetPlayerAllianceStateVisionBJ(Player(10),Player(8),true)
call SetPlayerAllianceStateVisionBJ(Player(10),Player(9),true)
call SetPlayerAllianceStateVisionBJ(Player(10),Player(11),true)
call SetPlayerAllianceStateVisionBJ(Player(11),Player(5),true)
call SetPlayerAllianceStateVisionBJ(Player(11),Player(6),true)
call SetPlayerAllianceStateVisionBJ(Player(11),Player(7),true)
call SetPlayerAllianceStateVisionBJ(Player(11),Player(8),true)
call SetPlayerAllianceStateVisionBJ(Player(11),Player(9),true)
call SetPlayerAllianceStateVisionBJ(Player(11),Player(10),true)
endfunction
function InitAllyPriorities takes nothing returns nothing
call SetStartLocPrioCount(0,1)
call SetStartLocPrio(0,0,3,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(1,1)
call SetStartLocPrio(1,0,2,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(2,3)
call SetStartLocPrio(2,0,1,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(2,1,3,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(2,2,4,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(3,3)
call SetStartLocPrio(3,0,0,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(3,1,2,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(3,2,4,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(4,2)
call SetStartLocPrio(4,0,2,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(4,1,3,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(5,5)
call SetStartLocPrio(5,0,0,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(5,1,1,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(5,2,2,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(5,3,3,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(5,4,4,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(6,2)
call SetStartLocPrio(6,0,5,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(6,1,7,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(7,3)
call SetStartLocPrio(7,0,4,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(7,1,5,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(7,2,6,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(8,2)
call SetStartLocPrio(8,0,5,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(8,1,6,MAP_LOC_PRIO_HIGH)
call SetStartLocPrioCount(11,5)
call SetStartLocPrio(11,0,0,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(11,1,1,MAP_LOC_PRIO_LOW)
call SetStartLocPrio(11,2,2,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(11,3,3,MAP_LOC_PRIO_HIGH)
call SetStartLocPrio(11,4,4,MAP_LOC_PRIO_HIGH)
endfunction
function main takes nothing returns nothing
call SetCameraBounds(-30976.0+GetCameraMargin(CAMERA_MARGIN_LEFT),1024.0+GetCameraMargin(CAMERA_MARGIN_BOTTOM),1280.0-GetCameraMargin(CAMERA_MARGIN_RIGHT),17408.0-GetCameraMargin(CAMERA_MARGIN_TOP),-30976.0+GetCameraMargin(CAMERA_MARGIN_LEFT),17408.0-GetCameraMargin(CAMERA_MARGIN_TOP),1280.0-GetCameraMargin(CAMERA_MARGIN_RIGHT),1024.0+GetCameraMargin(CAMERA_MARGIN_BOTTOM))
call SetDayNightModels("Environment\\DNC\\DNCAshenvale\\DNCAshenvaleTerrain\\DNCAshenvaleTerrain.mdl","Environment\\DNC\\DNCAshenvale\\DNCAshenvaleUnit\\DNCAshenvaleUnit.mdl")
call SetWaterBaseColor(0,0,0,255)
call NewSoundEnvironment("Default")
call SetAmbientDaySound("AshenvaleDay")
call SetAmbientNightSound("AshenvaleNight")
call SetMapMusic("Music",true,0)
call InitSounds()
call CreateRegions()
call CreateCameras()
call InitUpgrades()
call InitTechTree()
call CreateAllDestructables()
call CreateAllItems()
call CreateAllUnits()
call InitBlizzard()
call InitGlobals()
call InitCustomTriggers()
call RunInitializationTriggers()
endfunction
function config takes nothing returns nothing
call SetMapName("TRIGSTR_003")
call SetMapDescription("")
call SetPlayers(12)
call SetTeams(12)
call SetGamePlacement(MAP_PLACEMENT_TEAMS_TOGETHER)
call DefineStartLocation(0,-28224.0,4224.0)
call DefineStartLocation(1,-28224.0,13568.0)
call DefineStartLocation(2,-25728.0,11200.0)
call DefineStartLocation(3,-25600.0,7040.0)
call DefineStartLocation(4,-22912.0,9344.0)
call DefineStartLocation(5,192.0,9216.0)
call DefineStartLocation(6,-7488.0,11648.0)
call DefineStartLocation(7,-7488.0,6784.0)
call DefineStartLocation(8,-2944.0,11648.0)
call DefineStartLocation(9,-4672.0,8960.0)
call DefineStartLocation(10,-9920.0,9152.0)
call DefineStartLocation(11,-2944.0,6720.0)
call InitCustomPlayerSlots()
call InitCustomTeams()
call InitAllyPriorities()
endfunction