Name | Type | is_array | initial_value |
A_AoE | real | No | |
A_Damage | real | No | |
A_Int | integer | No | |
A_UType | unitcode | No | |
Alpha_Strike_Base_Pos | location | Yes | |
Alpha_Strike_Base_Target | unit | Yes | |
Alpha_Strike_Base_Target_Pos | location | No | |
Alpha_Strike_Blade | effect | Yes | |
Alpha_Strike_Group | group | No | |
Alpha_Strike_Mui_Integer | integer | No | |
Alpha_Strike_Mui_Loop | integervar | No | |
Alpha_Strike_Mui_Turnoff | integer | No | |
Alpha_Strike_Off | boolean | Yes | |
Alpha_Strike_Pos | location | No | |
Alpha_Strike_Pos_Off | location | No | |
Alpha_Strike_Striker | unit | Yes | |
Alpha_Strike_Target | unit | Yes | |
Alpha_Strike_Target_Pos | location | No | |
Alpha_Strike_Targeted_Group | group | Yes | |
Amount | real | No | |
angle | real | No | |
Aqua_Burst_Ability_Level | integer | No | |
Aqua_Burst_Area_of_Effect | real | No | |
Aqua_Burst_Base_Damage | real | No | |
Aqua_Burst_Caster | unit | No | |
Aqua_Burst_Damage_Group | group | No | |
Aqua_Burst_Location | location | No | |
Aqua_Burst_Total_Damage | real | No | |
AR_Point | location | No | |
Arcane_Disruption_Base_Mana | real | No | |
Arcane_Disruption_Bonus_Mana | real | No | |
Arcane_Disruption_Caster | unit | No | |
Arcane_Disruption_Damage | real | No | |
Arcane_Disruption_Level | integer | No | |
Arcane_Disruption_Target | unit | No | |
Arcane_Disruption_Total_Mana | real | No | |
Assa_Ability | abilcode | No | |
Assa_Area | real | Yes | |
Assa_Attacks | integer | Yes | |
Assa_Caster | unit | Yes | |
Assa_DamageE | real | Yes | |
Assa_DamageS | real | Yes | |
Assa_GroupDMG | group | No | |
Assa_Loop | integervar | No | |
Assa_Lvl | integer | Yes | |
Assa_Max | integer | No | |
Assa_PointR | location | No | |
Assa_PointT | location | No | |
Assa_Random | real | No | |
Assa_Target | unit | Yes | |
Beast_Attack_Ability_Level | integer | No | |
Beast_Attack_Atribute | integer | No | |
Beast_Attack_Atribute_Damage | real | No | |
Beast_Attack_Caster | unit | No | |
Beast_Attack_Damage_Splitter | integer | No | |
Beast_Attack_Life_Damage | real | No | |
Beast_Attack_Location | location | No | |
Beast_Attack_Location2 | location | No | |
Beast_Attack_Max_Life | real | No | |
Beast_Attack_Target | unit | No | |
Beast_Attack_Total_Damage | real | No | |
Borrowed_Time_Cast_Integer | integer | No | |
Borrowed_Time_Cast_Off | boolean | Yes | |
Borrowed_Time_Cast_Time | integer | Yes | |
Borrowed_Time_Cast_Turnoff | integer | No | |
Borrowed_Time_Checking_Loop | integervar | No | |
Borrowed_Time_Cooldown | boolean | Yes | |
Borrowed_Time_Damage_Loop | integervar | No | |
Borrowed_Time_Loop | integervar | No | |
Borrowed_Time_Mui_Integer | integer | No | |
Borrowed_Time_Mui_Turnoff | integer | No | |
Borrowed_Time_Off | boolean | Yes | |
Borrowed_Time_Sfx | effect | Yes | |
Borrowed_Time_Spell_Integer | integer | No | |
Borrowed_Time_Spell_Loop | integervar | No | |
Borrowed_Time_Spell_Time | integer | Yes | |
Borrowed_Time_Spell_Turnoff | integer | No | |
Borrowed_Time_Unit | unit | Yes | |
BT | integervar | No | |
BT_Closed | boolean | Yes | |
BT_Damage | real | Yes | |
BT_Duration | real | Yes | |
BT_Group | group | No | |
BT_Hero | unit | Yes | |
BT_Interval | real | Yes | |
BT_IntervalCheck | real | Yes | |
BT_Level | integer | Yes | |
BT_On | boolean | Yes | |
BT_Point | location | Yes | |
BT_Skip | integer | No | |
BT_Target | unit | Yes | |
BT_Times | integer | No | |
BT_Trap | unit | Yes | |
caster | unit | No | |
Caster | unit | No | |
CD_Ability | abilcode | No | |
CD_AoE | real | Yes | |
CD_Buff | buffcode | No | |
CD_Caster | unit | No | |
CD_CursedUnit | unit | Yes | |
CD_Debuff | abilcode | No | |
CD_Dummy | unit | No | |
CD_DummyType | unitcode | No | |
CD_Duration | real | Yes | |
CD_Index | integer | No | |
CD_Level | integer | No | |
CD_LoopVar | integervar | No | |
CD_Picked | unit | No | |
CD_Player | player | No | |
CD_Point | location | No | |
CD_SavedLife | real | Yes | |
CD_SfxArea | string | No | |
CD_SfxAttach | string | No | |
CD_SfxCenter | string | No | |
CD_SfxUnit | string | No | |
CD_TempGroup | group | No | |
CD_TempLife | real | No | |
CF_AoE | real | No | |
CF_Caster | unit | No | |
CF_CastLoc | location | No | |
CF_Effect | string | No | |
CF_Group | group | No | |
CF_Integer | integervar | No | |
CF_SwapLoc | location | Yes | |
CF_SwapUnit | unit | Yes | |
CH | boolean | Yes | |
chillingblastaoe | real | Yes | |
chillingblastdamage | real | Yes | |
chillingblastspeed | real | Yes | |
CL_AbilityLevel | integer | Yes | |
CL_AOE | real | Yes | |
CL_Caster | unit | Yes | |
CL_Count | integer | Yes | |
CL_Damage | integer | Yes | |
CL_FirstTarget | boolean | Yes | |
CL_Group | group | Yes | |
CL_Loc | location | Yes | |
CL_Player | player | Yes | |
CL_Slashes | integer | Yes | |
CL_Special | effect | Yes | |
CL_Target | unit | Yes | |
CL_Victim | unit | Yes | |
CLAnimation | string | No | |
CLAnimationIndex | integer | No | |
CLAnimationSpeed | real | No | |
CLAttach | string | No | |
CLAttachment | string | No | |
CLDamage | real | Yes | |
CLDuration | real | No | |
CLEffect | string | No | |
CLMaxSlashes | integer | Yes | |
CLMinimumDistance | real | No | |
CLSFX | string | No | |
CLSlashInterval | integer | No | |
CLSpeed | real | No | |
CLSpellLevel | integer | Yes | |
CLTransparency | real | No | |
Combine_Charged_Items | boolean | No | |
Combine_Charges_Max | integer | No | |
CP_HiddenItems | item | Yes | |
CP_HiddenItemsIndex | integer | No | |
CP_Item | item | No | |
CP_Point | location | No | |
CP_PointIsWalkable | boolean | No | |
CP_Rect | rect | No | |
Creep_Positions | location | Yes | |
Creep_Types | unitcode | Yes | |
CreepItems | itemcode | Yes | |
CreepItemsCount | integer | No | |
Dark_Wave_Ability | abilcode | No | |
Dark_Wave_Ability_Level | integer | No | |
Dark_Wave_Alive | boolean | No | |
Dark_Wave_Ally | boolean | No | |
Dark_Wave_Angle | real | No | |
Dark_Wave_Caster | unit | No | |
Dark_Wave_CasterG | group | No | |
Dark_Wave_DestroyTrees | boolean | No | |
Dark_Wave_Distance | real | No | |
Dark_Wave_Effect | string | No | |
Dark_Wave_HandleID | integer | No | |
Dark_Wave_Hash | hashtable | No | |
Dark_Wave_Knockback_Unit | unit | No | |
Dark_Wave_MagicImmune | boolean | No | |
Dark_Wave_Mechanical | boolean | No | |
Dark_Wave_Radius_Detect | real | Yes | |
Dark_Wave_Search_Target | group | No | |
Dark_Wave_Speed | real | Yes | |
Dark_Wave_Structure | boolean | No | |
Dark_Wave_TempLoc1 | location | No | |
Dark_Wave_TempLoc2 | location | No | |
Dark_Wave_TempLoc3 | location | No | |
Dark_Wave_Time_Event | real | No | |
Dash_Ability | abilcode | No | |
Dash_Ability_Level | integer | Yes | |
Dash_Angle | real | Yes | |
Dash_AttackType | attacktype | No | |
Dash_C_Index | integervar | No | |
Dash_Caster | unit | Yes | |
Dash_Damage | real | Yes | |
Dash_DamageType | damagetype | No | |
Dash_Distance | integer | Yes | |
Dash_Dummy | unit | No | |
Dash_DummyAbility | abilcode | No | |
Dash_DummyEffect | unitcode | No | |
Dash_DummyOffAttack | unitcode | No | |
Dash_Group | group | No | |
Dash_GroupCheck | group | No | |
Dash_Limit | integer | Yes | |
Dash_Limit_N | integer | No | |
Dash_M_Index | integer | No | |
Dash_Picked_Unit | unit | No | |
Dash_Point1 | location | Yes | |
Dash_Point2 | location | Yes | |
Dash_Point_Off_attack | location | Yes | |
Dash_Speed | real | Yes | |
DB_Ability | abilcode | No | |
DB_AbilityMaxLevel | integer | No | |
DB_AttackType | attacktype | No | |
DB_Caster | unit | Yes | |
DB_CasterPlayer | player | Yes | |
DB_CurrentDistance | real | Yes | |
DB_CurrentHeight | real | Yes | |
DB_CustomID | integer | No | |
DB_CustomInteger | integer | No | |
DB_CustomLocation | location | No | |
DB_CustomReal | real | Yes | |
DB_CustomReal2 | real | Yes | |
DB_CustomReal3 | real | Yes | |
DB_CustomReal4 | real | Yes | |
DB_CustomUnit | unit | No | |
DB_DamageType | damagetype | No | |
DB_DestroyTrees | boolean | No | |
DB_DistanceSeperation | real | No | |
DB_DivergeDistance | real | Yes | |
DB_DummyType | unitcode | No | |
DB_DummyUnit | unit | No | |
DB_Effect | string | Yes | |
DB_EffectAttach | string | Yes | |
DB_EffectCount | integer | No | |
DB_Fear | boolean | No | |
DB_FearAbility | abilcode | No | |
DB_FloorHeight | real | No | |
DB_Gravity | real | No | |
DB_Group | group | No | |
DB_HeadAngle | real | Yes | |
DB_HeadHeight | real | Yes | |
DB_HeadMaxHeight | real | Yes | |
DB_HeadModelHandler | effect | Yes | |
DB_HeadSize | real | Yes | |
DB_HeadSpeed | real | Yes | |
DB_ID | integer | No | |
DB_Instance | integer | No | |
DB_Level | integer | Yes | |
DB_LocationZ | location | No | |
DB_LoopInterval | real | No | |
DB_Map | real | Yes | |
DB_MaxDistance | real | Yes | |
DB_MiniAmount | integer | Yes | |
DB_MiniAngle | real | No | |
DB_MiniCollision | real | Yes | |
DB_MiniDamage | real | Yes | |
DB_MiniEnableArc | boolean | No | |
DB_MiniMaxHeight | real | Yes | |
DB_MiniRange | real | Yes | |
DB_MiniSize | real | Yes | |
DB_MiniSpeed | real | Yes | |
DB_Phase | integer | Yes | |
DB_PickedUnit | unit | No | |
DB_PitchVariation | real | Yes | |
DB_Radius | real | Yes | |
DB_ShardAmount | integer | Yes | |
DB_ShardCollision | real | Yes | |
DB_ShardCurrentDistance | real | Yes | |
DB_ShardCurrentHeight | real | Yes | |
DB_ShardDamage | real | Yes | |
DB_ShardFallTime | real | Yes | |
DB_ShardFallTimeCalculation | real | Yes | |
DB_ShardLandAngle | real | Yes | |
DB_ShardLandDistance | real | Yes | |
DB_ShardLandTimeCalculation | real | Yes | |
DB_ShardModelHandler | effect | Yes | |
DB_ShardScatter | boolean | No | |
DB_ShardSize | real | Yes | |
DB_SpawnOffset | real | No | |
DB_SpellX | real | Yes | |
DB_SpellY | real | Yes | |
DB_Tree | destructable | No | |
DB_TreeChecker | unit | No | |
DB_Unit | unit | No | |
DDS_Detect | group | No | |
DeathMatch | integer | Yes | |
Desecration_Ability_Level | integer | No | |
Desecration_Area_of_Effect | real | No | |
Desecration_Base_Damage | real | No | |
Desecration_Base_Heal | real | No | |
Desecration_Caster | unit | No | |
Desecration_Corpse_Counter | integer | No | |
Desecration_Corpse_Group | group | No | |
Desecration_Damage_Group | group | No | |
Desecration_Explosion_Location | location | No | |
Desecration_Level_Damage | real | No | |
Desecration_Level_Heal | real | No | |
Desecration_Location | location | No | |
Desecration_Total_Damage | real | No | |
Desecration_Total_Heal | real | No | |
DWKB_Damage | real | Yes | |
DWKB_Distance | real | Yes | |
DWKB_Speed | real | Yes | |
Earth_Fury_Ability_Level | integer | No | |
Earth_Fury_AoE_Bouns | real | No | |
Earth_Fury_Base_Area_of_Effect | real | No | |
Earth_Fury_Base_Damage | real | No | |
Earth_Fury_Bonus_Damage | real | No | |
Earth_Fury_Caster | unit | No | |
Earth_Fury_Chance | real | No | |
Earth_Fury_Damage_Group | group | No | |
Earth_Fury_Dummy_Ability | abilcode | No | |
Earth_Fury_Dummy_Ability_2 | abilcode | No | |
Earth_Fury_Location | location | No | |
Earth_Fury_Owner | player | No | |
Earth_Fury_Total_Area_of_Effec | real | No | |
Earth_Fury_Total_Damage | real | No | |
EF | integervar | No | |
EF_Angle | real | Yes | |
EF_Caster | unit | Yes | |
EF_CastNumber | integer | No | |
EF_Distance | real | Yes | |
EF_Group | group | Yes | |
EF_Off | boolean | Yes | |
EF_Point | location | Yes | |
EF_Spam | integer | Yes | |
EF_Speed | real | Yes | |
EF_Switch | integer | No | |
EF_Target | unit | Yes | |
End_Game_If_All_Gone | boolean | No | |
EP | integervar | No | |
EP_Angle | real | Yes | |
EP_Caster | unit | Yes | |
EP_CastNumber | integer | No | |
EP_ConstDistance | real | Yes | |
EP_Distance | real | Yes | |
EP_Height | real | Yes | |
EP_Integer | integervar | No | |
EP_Missile | unit | Yes | |
EP_Off | boolean | Yes | |
EP_Point | location | Yes | |
EP_Speed | real | Yes | |
EP_Switch | integer | No | |
ES_Caster | unit | No | |
ES_Group | group | No | |
ES_Integer | integervar | No | |
ES_Point | location | Yes | |
ES_Target | unit | No | |
FB | integervar | No | |
FB_Angle | real | Yes | |
FB_Angle2 | real | Yes | |
FB_Caster | unit | Yes | |
FB_CastNumber | integer | No | |
FB_Distance | real | Yes | |
FB_Group | group | No | |
FB_Missile | unit | Yes | |
FB_Off | boolean | Yes | |
FB_Point | location | Yes | |
FB_Spam | integer | Yes | |
FB_Speed | real | Yes | |
FB_Switch | integer | No | |
Fire_Wall_Ability_Level | integer | No | |
Fire_Wall_Caster | unit | No | |
Fire_Wall_Distance | real | No | |
Fire_Wall_Dummy_Ability | abilcode | No | |
Fire_Wall_Duration | real | No | |
Fire_Wall_Location | location | No | |
Fire_Wall_Loop_Location | location | No | |
Fire_Wall_Loop_Location_2 | location | No | |
Fire_Wall_Owner | player | No | |
Force_Pos | location | No | |
Force_Pos_Off | location | No | |
Force_Staff_Distance | real | Yes | |
Force_Staff_Facing | real | Yes | |
Force_Staff_Mui_Integer | integer | No | |
Force_Staff_Mui_Loop | integervar | No | |
Force_Staff_Mui_Turnoff | integer | No | |
Force_Staff_Off | boolean | Yes | |
Force_Staff_Unit | unit | Yes | |
FoV_Ability_Level | integer | No | |
FoV_Base_AoE | real | No | |
FoV_Base_Damage | real | No | |
FoV_Bonus_AoE | real | No | |
FoV_Caster | unit | No | |
FoV_Damage_Group | group | No | |
FoV_Location | location | No | |
FoV_Total_AoE | real | No | |
FoV_Total_Damage | real | No | |
FSCaster | unit | Yes | |
FSCasterPoint | location | Yes | |
FSCount | integer | No | |
FSDistance | real | Yes | |
FSDummy | unit | Yes | |
FSDummyGroup | group | Yes | |
FSFace | real | Yes | |
FSFade | real | Yes | |
FSFadeC | real | Yes | |
FSHas | boolean | Yes | |
FSIndex | integer | No | |
FSInteger | integervar | No | |
FSLastRecycled | integer | No | |
FSMax | integer | No | |
FSMaxDistance | real | Yes | |
FSMove | real | Yes | |
FSRecycledList | integer | Yes | |
FSTime | real | No | |
Game_Minutes | integer | No | |
Game_Seconds | integer | No | |
Game_Time | timer | No | |
GameMode | integer | No | |
glacialsurgeaoe | real | Yes | |
glacialsurgeintmultiplier | integer | Yes | |
glacialsurgespeed | real | Yes | |
handle | integer | No | |
hashtable | hashtable | No | |
Hashtable | hashtable | No | |
HDmgAOEMagicCaster | unit | No | |
HDmgAOEMagicPoint | location | No | |
HDmgAOEMagicRange | real | No | |
HDmgAOEMagicReal | real | No | |
HDmgAOEMagicTypeA | attacktype | No | |
HDmgAOEMagicTypeB | damagetype | No | |
Hero_Revive_Time_Factor | real | No | |
Heroes | unit | Yes | |
Heroes_All | unitcode | Yes | |
Heroes_Scourge | unitcode | Yes | |
Heroes_Sentinel | unitcode | Yes | |
HeroLevel | integer | Yes | |
HFloatingTextBlue | real | No | |
HFloatingTextGreen | real | No | |
HFloatingTextLoc | location | No | |
HFloatingTextReal | real | No | |
HFloatingTextRed | real | No | |
HFloatingTextString | string | No | |
HFlyingDownCaster | unit | No | |
HFlyingDownGroup | group | No | |
HFlyingDownHashtable | hashtable | No | |
HFlyingDownHight | real | No | |
HFlyingDownHightMax | real | No | |
HFlyingDownSpeed | real | No | |
HFlyingUpCaster | unit | No | |
HFlyingUpGroup | group | No | |
HFlyingUpHashtable | hashtable | No | |
HFlyingUpHight | real | No | |
HFlyingUpHightMax | real | No | |
HFlyingUpSpeed | real | No | |
HImmuneBuff | string | No | |
HImmuneGroup | group | No | |
HImmuneHashtable | hashtable | No | |
HImmuneReal | real | No | |
HImmuneUnit | unit | No | |
HK_Ability | abilcode | No | |
HK_Ability_Stun | abilcode | No | |
HK_Attribute_Agiity | integer | No | |
HK_Attribute_Force | integer | No | |
HK_Caster | unit | No | |
HK_Chance | integer | Yes | |
HK_Damage_Critical | real | Yes | |
HK_Damage_Max | real | Yes | |
HK_Damage_Min | real | Yes | |
HK_Damage_Total | real | No | |
HK_Dummy | unit | No | |
HK_Heal_Max | real | Yes | |
HK_Heal_Total | real | No | |
HK_Level | integer | No | |
HK_Loc | location | No | |
HK_Model_Name | string | Yes | |
HK_Model_Target | string | Yes | |
HK_Target | unit | No | |
HK_Text_Angle | real | No | |
HK_Text_Color | string | Yes | |
HK_Text_Display | string | Yes | |
HK_Text_FadingAge | real | No | |
HK_Text_LifeSpan | real | No | |
HK_Text_On | boolean | No | |
HK_Text_Player | force | No | |
HK_Text_Size | real | No | |
HK_Type_Attack | attacktype | No | |
HK_Type_Damage | damagetype | No | |
HK_Type_Dummy | unitcode | No | |
HMuiltriFunctionLoc | location | No | |
HMultriFunctionDamage | real | No | |
HMultriFunctionEffA | string | No | |
HMultriFunctionEffB | string | No | |
HMultriFunctionRange | real | No | |
HMultriFunctionReal | real | No | |
HMultriFunctionString | string | No | |
HMultriFunctionTarget | unit | No | |
HMultriFunctionUnit | unit | No | |
Hostile_Revive_Time | real | No | |
HPosionBuffEF | string | No | |
HPosionBuffStrike | string | No | |
HPosionGroup | group | No | |
HPosionHashtable | hashtable | No | |
HPosionPerInt | real | No | |
HPosionReal | real | No | |
HPosionTarget | unit | No | |
HPosionUnit | unit | No | |
HSlideSystemLocGroup | group | No | |
HSlideSystemLocHashtable | hashtable | No | |
HSlideSystemLocLocA | location | No | |
HSlideSystemLocLocAngle | real | No | |
HSlideSystemLocLocB | location | No | |
HSlideSystemLocLocEf | string | No | |
HSlideSystemLocReal | real | No | |
HSlideSystemLocSpeed | real | No | |
HSlideSystemLocUnit | unit | No | |
HSlideSystemTargetCaster | unit | No | |
HSlideSystemTargetEffectMoving | string | No | |
HSlideSystemTargetEffectStrike | string | No | |
HSlideSystemTargetGroup | group | No | |
HSlideSystemTargetHashtable | hashtable | No | |
HSlideSystemTargetReal | real | No | |
HSlideSystemTargetSpeed | real | No | |
HSlideSystemTargetTarget | unit | No | |
HSlideSystemTargetVale | real | No | |
HSlideUnitDummyTargeCaster | unit | No | |
HSlideUnitDummyTargEffectMovig | string | No | |
HSlideUnitDummyTargEffectStrik | string | No | |
HSlideUnitDummyTargetGroup | group | No | |
HSlideUnitDummyTargetHashtable | hashtable | No | |
HSlideUnitDummyTargetReal | real | No | |
HSlideUnitDummyTargetSpeed | real | No | |
HSlideUnitDummyTargetTarget | unit | No | |
HSlideUnitDummyTargetVale | real | No | |
HStuffSystemBlue | real | No | |
HStuffSystemGreen | real | No | |
HStuffSystemGroup | group | No | |
HStuffSystemHashtable | hashtable | No | |
HStuffSystemReal | real | No | |
HStuffSystemRed | real | No | |
HStuffSystemUnit | unit | No | |
HStunSystemGroup | group | No | |
HStunSystemHashtable | hashtable | No | |
HStunSystemReal | real | No | |
HStunSystemUnit | unit | No | |
I | integervar | No | |
I_Angle | real | Yes | |
I_Arc | real | Yes | |
I_Caster | unit | Yes | |
I_CastNumber | integer | No | |
I_ConstDistance | real | Yes | |
I_Damage | real | Yes | |
I_Distance | real | Yes | |
I_Dummie | unit | Yes | |
I_Group | group | No | |
I_Missile1 | unit | Yes | |
I_Missile2 | unit | Yes | |
I_Off | boolean | Yes | |
I_Offset | real | Yes | |
I_Point | location | Yes | |
I_Speed | real | Yes | |
I_Switch | integer | No | |
IAAngle | real | Yes | |
IAArrow | unit | Yes | |
IACaster | unit | Yes | |
IACasterPoint | location | Yes | |
IACount | integer | No | |
IADamage | real | Yes | |
IADistance | real | Yes | |
IADMGGroup | group | Yes | |
IAHas | boolean | Yes | |
IAIndex | integer | No | |
IAInteger | integervar | No | |
IALastRecycled | integer | No | |
IAMax | integer | No | |
IAMaxDistance | real | Yes | |
IARecycledList | integer | Yes | |
IATargetPoint | location | Yes | |
icetombdistance | real | Yes | |
icetombduration | real | Yes | |
IJ_Ability | abilcode | No | |
IJ_ActiveInstances | integer | No | |
IJ_Angle | real | No | |
IJ_AttackType | attacktype | No | |
IJ_Caster | unit | No | |
IJ_CasterPosition | location | No | |
IJ_Damage | real | Yes | |
IJ_DamageType | damagetype | No | |
IJ_DestroyEffectInt | integervar | No | |
IJ_DestroyTrees | boolean | No | |
IJ_DistanceCounter | real | No | |
IJ_Dummy | unit | No | |
IJ_DummyAbility | abilcode | No | |
IJ_DummyCaster | unit | No | |
IJ_DummyType | unitcode | No | |
IJ_EC_Amount | integer | Yes | |
IJ_EC_Angle | real | No | |
IJ_EC_Effect | string | No | |
IJ_EC_Int | integervar | No | |
IJ_EC_MX | real | No | |
IJ_EC_MY | real | No | |
IJ_FinalParabola | real | No | |
IJ_Group | group | No | |
IJ_Hashtable | hashtable | No | |
IJ_HitUnit | unit | No | |
IJ_HitUnitEffect | string | No | |
IJ_HitUnitEffectAttach | string | No | |
IJ_HitUnitPosition | location | No | |
IJ_HitX | real | No | |
IJ_HitY | real | No | |
IJ_ID | integer | No | |
IJ_ImpactEffect | string | No | |
IJ_JumpEffect | string | No | |
IJ_JumpEffectHandler | effect | Yes | |
IJ_KB_Damage | real | Yes | |
IJ_KB_DestroyTrees | boolean | No | |
IJ_KB_Effect | string | No | |
IJ_KB_EffectAttach | string | No | |
IJ_KB_Range | real | Yes | |
IJ_KB_Speed | real | Yes | |
IJ_Level | integer | No | |
IJ_MaxHeight | real | Yes | |
IJ_MX | real | No | |
IJ_MY | real | No | |
IJ_Parabola | real | No | |
IJ_Parabola2 | real | No | |
IJ_Parabola3 | real | No | |
IJ_Player | player | No | |
IJ_PropWindow | real | No | |
IJ_Radius | real | Yes | |
IJ_ScaleEffect | real | No | |
IJ_Speed | real | Yes | |
IJ_SpeedCounter | real | No | |
IJ_SpellError | string | No | |
IJ_SpellX | real | No | |
IJ_SpellY | real | No | |
IJ_TimeSpeed | real | No | |
IJ_Tree | destructable | No | |
IJ_TreeDestroyer | unit | No | |
IJ_X | real | No | |
IJ_Y | real | No | |
Impale_Angle | real | No | |
Impale_Caster | unit | No | |
Impale_Caster_Loc | location | No | |
Impale_Dummy_AbilityI | abilcode | No | |
Impale_Dummy_AbilityII | abilcode | No | |
Impale_Dummy_Face | real | No | |
Impale_Facing_Angle | real | No | |
Impale_Level | integer | No | |
Impale_LocI | location | No | |
Impale_LocII | location | No | |
Impale_LocIII | location | No | |
Impale_Owner | player | No | |
Impale_Target_Loc | location | No | |
ImpalingRoots | group | Yes | |
ImpalingRootsHit | group | Yes | |
InfiniteSlashesAngle | real | Yes | |
InfiniteSlashesBol1 | boolean | Yes | |
InfiniteSlashesBol2 | boolean | Yes | |
InfiniteSlashesCaster | unit | Yes | |
InfiniteSlashesCasterLoc | location | No | |
InfiniteSlashesCasterLoc2 | location | No | |
InfiniteSlashesCount1 | integer | Yes | |
InfiniteSlashesCount2 | integer | Yes | |
InfiniteSlashesDistance | real | Yes | |
InfiniteSlashesIndex | integer | No | |
InfiniteSlashesLoop | integervar | No | |
InfiniteSlashesMui | integer | No | |
InfiniteSlashesSFX | effect | Yes | |
InfiniteSlashesTarget | unit | Yes | |
InfiniteSlashesTargetLoc | location | No | |
Ion_Canon_Ability_Level | integer | No | |
Ion_Canon_AoE | real | No | |
Ion_Canon_Base_Damage | real | No | |
Ion_Canon_Base_Mana_Burn | real | No | |
Ion_Canon_Caster | unit | No | |
Ion_Canon_Damage_Group | group | No | |
Ion_Canon_Distance | real | No | |
Ion_Canon_Location | location | No | |
Ion_Canon_Loop_Location | location | No | |
Ion_Canon_Loop_Number | integer | No | |
Ion_Canon_Total_Damage | real | No | |
Ion_Canon_Total_Mana_Burn | real | No | |
IS_Amount_Kill | integer | Yes | |
IS_Angle | real | Yes | |
IS_Caster | unit | Yes | |
IS_DeathAoE | real | Yes | |
IS_DeathAoEDamage | real | Yes | |
IS_Durability | integer | Yes | |
IS_Group | group | Yes | |
IS_Group2 | group | Yes | |
IS_IdleTime | real | Yes | |
IS_IllusionSum | integer | Yes | |
IS_Init_AbilityCasterAdded | abilcode | No | |
IS_Init_AbilityDamage | abilcode | No | |
IS_Init_AbilityHero | abilcode | No | |
IS_Init_AbilityIllusionAdded | abilcode | No | |
IS_Init_AbilityIllusionMaker | abilcode | No | |
IS_Init_AbilityInvis | abilcode | No | |
IS_Init_AbilitySpellImmunity | abilcode | No | |
IS_Init_BuffHero | buffcode | No | |
IS_Init_Effect | string | Yes | |
IS_Init_UnitDummy | unitcode | No | |
IS_Init_UnitTimer | unitcode | No | |
IS_Level | integer | No | |
IS_Loc | location | Yes | |
IS_MUI_Count | integer | Yes | |
IS_MUI_Current | integer | No | |
IS_MUI_Free | integer | Yes | |
IS_MUI_Loop | integervar | Yes | |
IS_Temp_Angle | real | No | |
IS_TempUnit | unit | No | |
IS_Timer | unit | Yes | |
IsDestructableHarvester | unit | No | |
IsDestructableTree | destructable | No | |
ItemDrop | integer | Yes | |
ItemDropCount | integer | No | |
IX_Ability | abilcode | No | |
IX_Absolute | real | Yes | |
IX_Agility | real | Yes | |
IX_Angle | real | Yes | |
IX_AoE | real | Yes | |
IX_AttackType | attacktype | No | |
IX_Caster | unit | Yes | |
IX_CurrentDistance | real | Yes | |
IX_Damage | real | Yes | |
IX_DamagedGroup | group | Yes | |
IX_DamageType | damagetype | No | |
IX_Delay | real | Yes | |
IX_Gap | real | Yes | |
IX_Hit | string | No | |
IX_ImpactSfx | string | No | |
IX_Index | integer | No | |
IX_Intelligence | real | Yes | |
IX_IsValid | boolean | Yes | |
IX_Level | integer | Yes | |
IX_Looper | integervar | No | |
IX_MaxDistance | real | Yes | |
IX_Missle | unit | Yes | |
IX_MissleSfx | string | No | |
IX_Offset | real | No | |
IX_Picked | unit | No | |
IX_Player | player | Yes | |
IX_Point1 | location | No | |
IX_Point2 | location | No | |
IX_Speed | real | Yes | |
IX_StartAngle | real | No | |
IX_Strength | real | Yes | |
IX_TempAgi | real | No | |
IX_TempCaster | unit | No | |
IX_TempDamage | real | No | |
IX_TempGroup | group | No | |
IX_TempInt | real | No | |
IX_TempLevel | integer | No | |
IX_TempLooper | integervar | No | |
IX_TempPlayer | player | No | |
IX_TempSpeed | real | No | |
IX_TempStr | real | No | |
IX_WaveCount | integer | Yes | |
KB | integervar | No | |
KB3D_Accel | real | No | |
KB3D_AllowOutSiding | boolean | No | |
KB3D_Angle | real | No | |
KB3D_AoE | real | No | |
KB3D_AoEDamage | real | No | |
KB3D_AoEEndDamage | real | No | |
KB3D_AoEEndFx | string | No | |
KB3D_AoEKB | boolean | No | |
KB3D_AoEKB_Power | real | No | |
KB3D_Arc | real | No | |
KB3D_Attach | string | No | |
KB3D_AttackType | attacktype | No | |
KB3D_B | boolean | No | |
KB3D_Bounce_Fx | string | No | |
KB3D_Bounce_Power | real | No | |
KB3D_Bounce_Target | boolean | No | |
KB3D_Bounce_Unit | boolean | No | |
KB3D_Counter | integer | No | |
KB3D_D_ALLY | boolean | No | |
KB3D_D_ENEMY | boolean | No | |
KB3D_D_FLYING | boolean | No | |
KB3D_D_MAGIC_IMMINUE | boolean | No | |
KB3D_D_MECHANICAL | boolean | No | |
KB3D_D_RESISTANT | boolean | No | |
KB3D_D_STRUCTURE | boolean | No | |
KB3D_Damager | unit | No | |
KB3D_DamageType | damagetype | No | |
KB3D_DestroyDestructables | boolean | No | |
KB3D_DestroyTree | boolean | No | |
KB3D_DisableUnit | boolean | No | |
KB3D_EndFx | string | No | |
KB3D_EndOnObstacle | boolean | No | |
KB3D_EndOnTargetBounce | boolean | No | |
KB3D_EndTrigger | trigger | No | |
KB3D_EndwhenDead | boolean | No | |
KB3D_EndWhenHit | boolean | No | |
KB3D_FaceAngle | boolean | No | |
KB3D_Fx | string | No | |
KB3D_Fx_Attach | string | No | |
KB3D_g | group | No | |
KB3D_GroundDamage | boolean | No | |
KB3D_Group | group | No | |
KB3D_HA | hashtable | No | |
KB3D_Harvester | unit | No | |
KB3D_HomingMissile | boolean | No | |
KB3D_iKB | boolean | No | |
KB3D_ImpactDamage | real | No | |
KB3D_Instances | integer | No | |
KB3D_JumpOverCliff | boolean | No | |
KB3D_KBTarget | boolean | No | |
KB3D_KillatEnd | boolean | No | |
KB3D_KillatTime | real | No | |
KB3D_KillifOutSider | boolean | No | |
KB3D_KillWhenHit | boolean | No | |
KB3D_Line_Fx | string | No | |
KB3D_LineDamage | real | No | |
KB3D_LoopDamage | real | No | |
KB3D_Range | real | No | |
KB3D_Reals | real | Yes | |
KB3D_Registration | trigger | No | |
KB3D_Speed | real | No | |
KB3D_Speed_Changer | boolean | No | |
KB3D_StopTime | real | No | |
KB3D_TargetDamage | real | No | |
KB3D_Targeted_Unit | unit | No | |
KB3D_Time | real | No | |
KB3D_Timer | timer | No | |
KB3D_TrailFx | string | No | |
KB3D_Unit | unit | No | |
KB3D_UnpathableStop | boolean | No | |
KB3D_Zoffset | real | No | |
KB_Angle | real | Yes | |
KB_Distance | real | Yes | |
KB_Off | boolean | Yes | |
KB_Point | location | Yes | |
KB_Skip | integer | No | |
KB_Spam | integer | Yes | |
KB_Speed | real | Yes | |
KB_Target | unit | Yes | |
KB_Times | integer | No | |
Knockback_Attack_Type | attacktype | No | |
Knockback_Damage_Type | damagetype | No | |
Knockback_Effect | string | No | |
Knockback_Group | group | No | |
Knockback_HandleId | integer | No | |
Knockback_Hash | hashtable | No | |
Knockback_Loc1 | location | No | |
Knockback_Loc2 | location | No | |
Knockback_Target | unit | No | |
Knockback_TempLoc1 | location | No | |
Knockback_Time_Event | real | No | |
Knockback_Unit | unit | No | |
KnockbackAngle | real | No | |
KnockbackSpeed | real | No | |
KnockbackUnits | group | No | |
LastHeroStanding | force | No | |
LeaderboardScourge | leaderboard | No | |
LeaderboardSentinel | leaderboard | No | |
LoopCreep | integer | No | |
LoopRandom | integer | No | |
LoopSuper | integervar | No | |
Max_Index | integer | No | |
MF_AllowRepeatedCast | boolean | No | |
MF_Caster | unit | Yes | |
MF_Damage_Limit | real | No | |
MF_Damage_Limit_UP | real | No | |
MF_DamageCancelBoolean | boolean | No | |
MF_Duration | integer | No | |
MF_Duration_Up | integer | No | |
MF_EffectAdjustment | string | No | |
MF_FearAbility | abilcode | No | |
MF_Key | integer | No | |
MF_SpecialEffect | effect | Yes | |
MF_Target | unit | Yes | |
MF_Target_TempLoc | location | Yes | |
MF_TargetHPInit | real | Yes | |
MF_TargetMoveTo_TempLoc | location | Yes | |
MF_TargetsGroup | group | No | |
MF_Ticker | integer | Yes | |
MF_Ticking | integer | Yes | |
MODE_AllRandom_AllPick | integer | No | |
MODE_Normal | integer | No | |
MODE_Reverse | integer | No | |
MS_Caster | unit | No | |
MS_Loc | location | Yes | |
MS_Rect | rect | No | |
MUI_1 | integer | No | |
MUI_2 | integer | Yes | |
MUI_3 | integervar | No | |
Multi_Shot_Ability_Level | integer | No | |
Multi_Shot_Base_Arrow_Count | integer | No | |
Multi_Shot_Caster | unit | No | |
Multi_Shot_Dummy_Ability | abilcode | No | |
Multi_Shot_Facing | real | No | |
Multi_Shot_Location | location | No | |
Multi_Shot_Location_2 | location | No | |
Multi_Shot_Loop_Location | location | No | |
Multi_Shot_Loop_Location2 | location | No | |
Multi_Shot_Owner | player | No | |
Multi_Shot_Total_Arrow_Count | integer | No | |
Multiboard_Clock | integer | No | |
Multiboard_ShowDeaths | boolean | No | |
Multiboard_Spots | integer | Yes | |
Napalm_Strike_Ability_Level | integer | No | |
Napalm_Strike_Area_of_Effect | real | No | |
Napalm_Strike_Base_Damage | real | No | |
Napalm_Strike_Caster | unit | No | |
Napalm_Strike_Damage_Group | group | No | |
Napalm_Strike_Dummy_Ability | abilcode | No | |
Napalm_Strike_Location | location | No | |
Napalm_Strike_Owner | player | No | |
Napalm_Strike_Total_Damage | real | No | |
Odd_Man_Out | force | No | |
PH_Angle | real | Yes | |
PH_CastLoc | location | Yes | |
PH_Damage | real | Yes | |
PH_Distance | real | Yes | |
PH_DistancePerSec | real | No | |
PH_DistDam | real | No | |
PH_Dummy | unit | Yes | |
PH_DummyLoc | location | Yes | |
PH_Hero | unit | Yes | |
PH_Index | integer | Yes | |
PH_MoveLoc | location | Yes | |
PH_SFX | string | Yes | |
PH_Special | effect | Yes | |
PH_Target | unit | Yes | |
PH_TargUnitLoc | location | Yes | |
Player | player | No | |
Player_Already_Picked | integer | Yes | |
Player_Colors | string | Yes | |
Player_Starting_Gold | integer | No | |
PlayerNames | string | Yes | |
Players | force | No | |
PlayersCount | integer | No | |
PlayersScourge | force | No | |
PlayersScourgeCount | integer | No | |
PlayersScourgePlaying | force | No | |
PlayersScourgeReverse | force | No | |
PlayersSentinel | force | No | |
PlayersSentinelCount | integer | No | |
PlayersSentinelPlaying | force | No | |
PlayersSentinelReverse | force | No | |
Point | location | No | |
point1 | location | No | |
point2 | location | No | |
point3 | location | No | |
Power_Slam_Ability_Level | integer | No | |
Power_Slam_Base_Chance | real | No | |
Power_Slam_Caster | unit | No | |
Power_Slam_Damage | real | No | |
Power_Slam_Damage_Multiplier | real | No | |
Power_Slam_Dummy_Ability | abilcode | No | |
Power_Slam_Location | location | No | |
Power_Slam_Owner | player | No | |
Power_Slam_Strength | integer | No | |
Power_Slam_Target | unit | No | |
Power_Slam_Total_Chance | real | No | |
PR_Ability_Level | integer | No | |
PR_Atribute | integer | No | |
PR_Caster | unit | No | |
PR_Caster_Loc | location | No | |
PR_Damage | real | No | |
PR_Damage_Factor | real | No | |
PR_Dummy_Ability | abilcode | No | |
PR_Target | unit | No | |
PR_Target_Loc | location | No | |
PR_Target_Mana | real | No | |
Presence_Ability_Aura | abilcode | Yes | |
Presence_Ability_Change | abilcode | No | |
Presence_Buff | buffcode | Yes | |
Presence_Caster | unit | No | |
Presence_Handle | handle | No | |
Presence_Hash | hashtable | No | |
Presence_Index_Add | integer | No | |
Presence_Index_Remove | integer | No | |
Presence_Level | integer | No | |
Random_Hero | integer | No | |
RandomData_All | integer | Yes | |
RandomData_Scourge | integer | Yes | |
RandomData_Sentinel | integer | Yes | |
RandomHero | unitcode | Yes | |
RandomTotal_All | integer | No | |
RandomTotal_Scourge | integer | No | |
RandomTotal_Sentinel | integer | No | |
Razor_Edge_Ability_Level | integer | No | |
Razor_Edge_Area_of_Effect | real | No | |
Razor_Edge_Base_Damage | real | No | |
Razor_Edge_Caster | unit | No | |
Razor_Edge_Damage_Group | group | No | |
Razor_Edge_Location | location | No | |
Razor_Edge_Location2 | location | No | |
Razor_Edge_Total_Damage | real | No | |
RE_Knock_Angle | real | No | |
RE_Knock_Distance | real | No | |
RE_Knock_Group | group | No | |
RE_Knock_Loc1 | location | No | |
RE_Knock_Loc2 | location | No | |
RE_Knock_Speed | real | No | |
RE_Knocktable | hashtable | No | |
Repick_Cost_Ammount | integer | No | |
RevivableHeroes | group | No | |
RevivableTimersWindows | timerdialog | Yes | |
ReviveTimers | timer | Yes | |
RiverItems | itemcode | Yes | |
RiverItemsCount | integer | No | |
RiverItemsRegions | location | Yes | |
RiverItemsRegionsCount | integer | No | |
RiverItemsTaken | boolean | Yes | |
S_caster | unit | Yes | |
S_dummy | unit | Yes | |
S_dummypoint | location | No | |
S_index1 | integer | Yes | |
S_index2 | integer | No | |
S_index3 | integervar | No | |
S_index_max | integer | No | |
S_index_size | integer | No | |
S_pause | boolean | Yes | |
S_speed | real | Yes | |
S_stopduration | real | Yes | |
S_stopgroup | group | Yes | |
S_targetpoint | location | No | |
SB | integervar | No | |
SB_Angle | real | Yes | |
SB_Damage | real | Yes | |
SB_Distance | real | Yes | |
SB_Group | group | Yes | |
SB_Hero | unit | Yes | |
SB_Level | integer | Yes | |
SB_On | boolean | Yes | |
SB_Point | location | Yes | |
SB_Skip | integer | No | |
SB_Spam | integer | Yes | |
SB_Speed | real | Yes | |
SB_Times | integer | No | |
SClockUpGroup | group | No | |
SClockUpHash | hashtable | No | |
Score_Deaths | integer | Yes | |
Score_Kills | integer | Yes | |
Scream_Ability_Level | integer | No | |
Scream_Area_of_Effect | real | No | |
Scream_Base_Area_of_Effect | real | No | |
Scream_Base_Damage | real | No | |
Scream_Bounus_Area_of_Effect | real | No | |
Scream_Caster | unit | No | |
Scream_Damage_Group | group | No | |
Scream_Dummy_Ability | abilcode | No | |
Scream_Location | location | No | |
Scream_Owner | player | No | |
Scream_Sound | sound | No | |
Scream_Sound_Volume | real | No | |
Scream_Total_Damage | real | No | |
SD_Ability | abilcode | No | |
SD_Angle | real | Yes | |
SD_Animation | string | No | |
SD_AnimSpeed | real | No | |
SD_AttackType | attacktype | No | |
SD_Caster | unit | Yes | |
SD_Damage | real | Yes | |
SD_DamageType | damagetype | No | |
SD_Degrees | real | No | |
SD_Distance | real | No | |
SD_EvasionDummy | abilcode | No | |
SD_Index | integer | Yes | |
SD_IndexSize | integer | No | |
SD_LOA | integer | Yes | |
SD_Loc | location | Yes | |
SD_Looper | integervar | No | |
SD_MaxIndexSize | integer | No | |
SD_Offset | real | No | |
SD_SFX1 | string | No | |
SD_SFX2 | string | No | |
SD_Shadow | unitcode | No | |
SD_Shadows | unit | Yes | |
SD_Speed | real | No | |
SD_Target | unit | Yes | |
SD_TempInt | integer | No | |
SEarthGroup | group | No | |
SEarthHash | hashtable | No | |
SF | integervar | No | |
SF_CastNumber | integer | No | |
SF_Hero | unit | Yes | |
SF_Off | boolean | Yes | |
SF_Switch | integer | No | |
SF_Time | real | Yes | |
Shadowstep_Ability_Level | integer | No | |
Shadowstep_Base_Damage | real | No | |
Shadowstep_Calculation | real | No | |
Shadowstep_Caster | unit | No | |
Shadowstep_Damage_Multiplier | real | No | |
Shadowstep_Location | location | No | |
Shadowstep_Location_2 | location | No | |
Shadowstep_Loop_Location | location | No | |
Shadowstep_Loop_Number | integer | No | |
Shadowstep_Target | unit | No | |
Shadowstep_Total_Damage | real | No | |
ShortMode_On | boolean | No | |
Sinister_Strike_Ability_Level | integer | No | |
Sinister_Strike_Atribute | integer | No | |
Sinister_Strike_Base_Chance | real | No | |
Sinister_Strike_Bonus_Armor | integer | No | |
Sinister_Strike_Caster | unit | No | |
Sinister_Strike_Damage_Factor | real | No | |
Sinister_Strike_Dummy_Ability | abilcode | No | |
Sinister_Strike_Dummy_Ability2 | abilcode | No | |
Sinister_Strike_Location | location | No | |
Sinister_Strike_Normal_Armor | integer | No | |
Sinister_Strike_Owner | player | No | |
Sinister_Strike_Target | unit | No | |
Sinister_Strike_Total_Chance | real | No | |
Sinister_Strike_Total_Damage | real | No | |
snowballgroup | group | No | |
Sort_Board_By_Kills | boolean | No | |
SpellLevel | integer | No | |
SShadowSoulGroup | group | No | |
SShadowSoulGroupDmg | group | No | |
SShadowSoulHash | hashtable | No | |
STimeWalkHash | hashtable | No | |
Super_Chances | integer | Yes | |
Super_Creeps | unitcode | Yes | |
Super_Creeps_On | boolean | No | |
Super_Names | string | Yes | |
Super_Regions | rect | Yes | |
target | unit | No | |
target2 | unit | No | |
Temp | integer | No | |
Temp_Group | group | No | |
TempAngle | real | No | |
TempGroup | group | No | |
TempHandle | handle | No | |
TempInt | integer | No | |
TempInteger | integer | No | |
TempLoadUnit | unit | Yes | |
TempLoc | location | No | |
TempLoc2 | location | No | |
TempLoc3 | location | No | |
TempLV | integer | No | |
TempLvAB1 | integer | No | |
TempLvAB2 | integer | No | |
TempLvAB3 | integer | No | |
TempPoint | location | No | |
TempPoint2 | location | No | |
TempPoint3 | location | No | |
TempReal | real | No | |
TempString | modelfile | No | |
TempUnit | unit | No | |
TempUnit2 | unit | No | |
TempVale | real | No | |
Termal_Eruption_Ability_Level | integer | No | |
Termal_Eruption_Area_of_Effect | real | No | |
Termal_Eruption_Base_Damage | real | No | |
Termal_Eruption_Caster | unit | No | |
Termal_Eruption_Damage_Group | group | No | |
Termal_Eruption_Dummy_Ability | abilcode | No | |
Termal_Eruption_DummyAbility2 | abilcode | No | |
Termal_Eruption_Location | location | No | |
Termal_Eruption_Loop_Location | location | No | |
Termal_Eruption_Loop_Number | integer | No | |
Termal_Eruption_Owner | player | No | |
Termal_Eruption_Total_Damage | real | No | |
The_Sentinel | group | No | |
Thunder_Rage_Ability_Level | integer | No | |
Thunder_Rage_Area_of_Effect | real | No | |
Thunder_Rage_Base_Mini_Damage | real | No | |
Thunder_Rage_Base_Unit_HP | real | No | |
Thunder_Rage_Caster | unit | No | |
Thunder_Rage_Damage_Factor | real | No | |
Thunder_Rage_Damage_Group | group | No | |
Thunder_Rage_Location | location | No | |
Thunder_Rage_Location2 | location | No | |
Thunder_Rage_Loop_Location | location | No | |
Thunder_Rage_Mini_AoE | real | No | |
Thunder_Rage_Mini_Damage_Group | group | No | |
Thunder_Rage_Owner | player | No | |
Thunder_Rage_Total_Damage | real | No | |
Thunder_Rage_Total_Mini_Damage | real | No | |
Thunder_Rage_Unit_HP | real | No | |
Time_Minutes | real | No | |
Time_Seconds | real | No | |
UberMode_On | boolean | No | |
UDex | integer | No | |
UDexGen | integer | No | |
UDexNext | integer | Yes | |
UDexPrev | integer | Yes | |
UDexRecycle | integer | No | |
UDexUnits | unit | Yes | |
UDexWasted | integer | No | |
UltraShortMode_On | boolean | No | |
UnitGroup | group | No | |
UnitIndexerEnabled | boolean | No | |
UnitIndexEvent | real | No | |
VL_Ability | abilcode | No | |
VL_AbilityCurse | abilcode | No | |
VL_AbilityHeal | abilcode | No | |
VL_AbilityLvl | integer | Yes | |
VL_AoE | real | Yes | |
VL_Buff | buffcode | No | |
VL_C_Amount | integer | No | |
VL_C_Even | real | No | |
VL_C_GrowRate | real | Yes | |
VL_C_GrowTime | real | No | |
VL_C_MoveRate | real | Yes | |
VL_C_SFX | string | No | |
VL_C_Speed | real | No | |
VL_Caster | unit | Yes | |
VL_CounterDuration | real | Yes | |
VL_CurrentAoE | real | Yes | |
VL_Debuff | buffcode | No | |
VL_Degree | real | No | |
VL_Dummy | unitcode | No | |
VL_DummyCaster | unit | No | |
VL_Duration | real | Yes | |
VL_GroupEnemy | group | Yes | |
VL_L | lightning | Yes | |
VL_L_Amount | integer | No | |
VL_L_CheckSFX | boolean | Yes | |
VL_L_Counter | real | Yes | |
VL_L_Direction | real | No | |
VL_L_Distance | real | No | |
VL_L_Duration | real | No | |
VL_L_Height | real | No | |
VL_L_ID | integer | No | |
VL_L_SFX | lightningtype | No | |
VL_L_SFX_EndPoint | string | No | |
VL_LoopInt | integervar | No | |
VL_MaxIndex | integer | No | |
VL_MaxLevel | integer | No | |
VL_NodeNext | integer | Yes | |
VL_NodePrev | integer | Yes | |
VL_Owner | player | Yes | |
VL_PeriodicTimer | real | No | |
VL_RecycledSize | integer | No | |
VL_RecycledStack | integer | Yes | |
VL_SFX | string | No | |
VL_Spell_ID | integer | No | |
VL_SpellCount | integer | No | |
VL_TargetLoc | location | Yes | |
VL_TempInt | integervar | No | |
VL_TempLoc | location | No | |
VL_TempReal | real | No | |
VL_TempUnit | unit | No | |
WP_AoE | real | No | |
WP_Damage | real | No | |
WP_DamageGroup | group | No | |
WP_Point | location | No | |
WP_Rect | rect | No |
function Trig_Combine_Items_Conditions takes nothing returns boolean
if ( not ( GetItemCharges(GetManipulatedItem()) > 0 ) ) then
return false
endif
if ( not ( udg_Combine_Charged_Items == true ) ) then
return false
endif
return true
endfunction
function Trig_Combine_Items_Actions takes nothing returns nothing
local integer ITEMCOUNT
local integer ITEMLOOP
local integer CHARGES
local integer MAXIMUM
local item NEWITEM
local unit OURUNIT
set MAXIMUM = udg_Combine_Charges_Max
set ITEMCOUNT = 0
set ITEMLOOP = 0
set CHARGES = 0
set NEWITEM = GetManipulatedItem()
set OURUNIT = GetManipulatingUnit()
loop
exitwhen ITEMLOOP > 6
if ((GetItemTypeId(NEWITEM)) == (GetItemTypeId(UnitItemInSlotBJ(OURUNIT, ITEMLOOP)))) then
if ((GetItemCharges(UnitItemInSlotBJ(OURUNIT, ITEMLOOP)) + GetItemCharges(NEWITEM)) <= MAXIMUM) then
if not ( (UnitItemInSlotBJ(OURUNIT, ITEMLOOP)) == (NEWITEM)) then
set CHARGES = (GetItemCharges(UnitItemInSlotBJ(OURUNIT, ITEMLOOP))) + GetItemCharges(NEWITEM)
call SetItemCharges( UnitItemInSlotBJ(OURUNIT, ITEMLOOP), CHARGES )
call RemoveItem( NEWITEM )
set ITEMLOOP=7
endif
endif
endif
if ( ITEMLOOP < 7 ) then
set ITEMLOOP = ITEMLOOP + 1
endif
endloop
endfunction
//===========================================================================
function InitTrig_Combine_Charged_Items takes nothing returns nothing
set gg_trg_Combine_Charged_Items = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Combine_Charged_Items, EVENT_PLAYER_UNIT_PICKUP_ITEM )
call TriggerAddCondition( gg_trg_Combine_Charged_Items, Condition( function Trig_Combine_Items_Conditions ) )
call TriggerAddAction( gg_trg_Combine_Charged_Items, function Trig_Combine_Items_Actions )
endfunction
//TESH.scrollpos=0
//TESH.alwaysfold=0
function Configurations_Ex_JASS takes nothing returns nothing
// Ending Effect, an Effect created at the End of the KB on the KBed Unit
set udg_KB3D_EndFx = ""
// ------------------------
// AoE End Damage, Damage dealt to enemy units in the AoE at the End of the KB
set udg_KB3D_AoEEndDamage = 0.00
// ------------------------
// AoE KB, if true, KBs Enemy units within the AoE, Range, Speed, Angle, are automatic
set udg_KB3D_AoEKB = false
// ------------------------
// End when Dead, if true, the KB will end if the KBed unit is dead, TRUE by default
set udg_KB3D_EndwhenDead = true
// ------------------------
// KB the Target, When the Targeted Unit is hit, it will be KBed depending on the speed of the original KB
set udg_KB3D_KBTarget = false
// ------------------------
// Stop Time, Maximum Time the KB will last, Note that if the KBed unit is flying at this time, it will be stuck
set udg_KB3D_StopTime = 0.00
// ------------------------
// Kill at Time, When this time is reached, the KBed unit will be killed, if this number is higher than KB3D_StopTime, EndWhenDead will be automatically turned on no matter what
set udg_KB3D_KillatTime = 0.00
// ------------------------
// Acceleration, Speed Added/s to the KB speed
set udg_KB3D_Accel = 0.00
// ------------------------
// Allow going outside playable bounds, Allows the KBed unit to go out of the Playable Bounds, SAFETY notice: this will not crash the game
set udg_KB3D_AllowOutSiding = false
// ------------------------
// Angle, The KB's line angle, this will be useless if KB3D_Targeted_Unit is not null
set udg_KB3D_Angle = 0.00
// ------------------------
// Area of Effect, Range where the Line Damage is applied to units
set udg_KB3D_AoE = 0.00
// ------------------------
// Area of Effect Damage, Makes the KB3D_Damager, damage enemy units within KB3D_AoE by this value as a DPS
set udg_KB3D_AoEDamage = 0.00
// ------------------------
// Attack Type, Attack type of ALL damagings in the Instance
set udg_KB3D_AttackType = ATTACK_TYPE_MELEE
// ------------------------
// Damage Type, Damage type of ALL damagings in the Instance
set udg_KB3D_DamageType = DAMAGE_TYPE_MAGIC
// ------------------------
// Damager, Source of ALL damagings in the Instance
set udg_KB3D_Damager = null
// ------------------------
// Destroy Trees?, Destroy Trees around the KBed unit while he is KBed?
set udg_KB3D_DestroyTree = false
// ------------------------
// Disable Unit?, Disable the KBed Unit's Movement and Turning?
set udg_KB3D_DisableUnit = false
// ------------------------
// End When Hit?, Ends the KB if the KBed Unit hits the Targeted Unit
set udg_KB3D_EndWhenHit = false
// ------------------------
// Face KB Anlge, makes the KBed Unit Face the Anlge of the KB during the KB
set udg_KB3D_FaceAngle = false
// ------------------------
// Effect, Effect created on the Unit's Location if he is not flying, and applied on the Unit if he is flying on the Attach Point
set udg_KB3D_Fx = ""
// ------------------------
// Attachment Point, location on the KBed unit where Effects are attached
set udg_KB3D_Fx_Attach = ""
// ------------------------
// Impact Damage, Damaged dealt to the KBed Unit if he hits an obstacle
set udg_KB3D_ImpactDamage = 0.00
// ------------------------
// Kill When Hit?, Kills the KBed Unit if he hits the Targeted Unit, Automatically set EndWhenHit to true
set udg_KB3D_KillWhenHit = false
// ------------------------
// Kill if Out of Playable Bounds, Kills the KBed Unit if he gets out of Playable Bounds, this automatically sets KB3D_AllowOutSiding to TRUE
set udg_KB3D_KillifOutSider = false
// ------------------------
// Line Damage, Damage dealt to enemy units in the AoE around the KBed Unit
set udg_KB3D_LineDamage = 0.00
// ------------------------
// Loop Damage, DPS dealt to the KBed Unit
set udg_KB3D_LoopDamage = 0.00
// ------------------------
// Max Range, Maximum Range possible of the Knock-Back
set udg_KB3D_Range = 0.00
// ------------------------
// Base KB Speed, Base Speed when starting the Knock-Back
set udg_KB3D_Speed = 0.00
// ------------------------
// Target Damage, Damage dealt to the Targeted Unit when both KBed Unit and Targeted Unit hit each other, only happens once
set udg_KB3D_TargetDamage = 0.00
// ------------------------
// Targeted Unit, if not null, makes the KBed Unit act like a homing missile targeting this unit, it also used for other functions
set udg_KB3D_Targeted_Unit = null
// ------------------------
// Trail Effect, Effect Attached on the KBed Unit all along the Knock-Back and Destroyed at the end of the KB
set udg_KB3D_TrailFx = ""
// ------------------------
// Knock-Backed Unit, the Knock-Backed Unit who all actions orbit around
set udg_KB3D_Unit = null
// ------------------------
// Stop at Unpathable, Makes it impossible for the KBed Unit to path throught Unpathable Terrain
set udg_KB3D_UnpathableStop = true
// ------------------------
// Z Offset, Max Flying Height reached while Knockbacking
set udg_KB3D_Zoffset = 0.00
// ------------------------
// Registed All of the Settings
// Note that this function MUST check conditions of the trigger, or else, nothing will be registered
call ConditionalTriggerExecute( udg_KB3D_Registration )
// You can use the following to know how much the knock-back will last -- this can vary if the KB is homed on a moving unit
set udg_KB3D_Time = udg_KB3D_Time
//This ^ variable lets you know how much approximatively, the KB will last
endfunction
//===========================================================================
function InitTrig_Configurations_Ex_JASS takes nothing returns nothing
local trigger x = CreateTrigger( )
set x = null
endfunction
//TESH.scrollpos=0
//TESH.alwaysfold=0
/////////////////////////////////////////////////////////////////////////////
// //
// Knock-Back 3D v. 1.5.3 [JASS - GUI] //
// by JAD aka DotCa //
// //
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// //
// System Informations: //
// //
// The System is a well performing, ultra-purpose knockback (see uses //
// below ) Coded in JASS making it possible for all users to take //
// advantage of it, and GUI friendly to use, see Examples in the triggers //
// above //
// Configurations have default values: //
// //
// - KB3D_EndWhenDead ==> TRUE by default //
// - KB3D_UnpathaableStop ==> TRUE by default //
// - KB3D_AttackType ==> ATTACK_TYPE_NORMAL //
// - KB3D_DamageType ==> DAMAGE_TYPE_MAGIC //
// - Other Booleans are FALSE by default //
// //
// The System also uses Always positive values for some configurations //
// to not make the knockback go worng, those configurations are: //
// //
// "KB3D_Range" - "KB3D_Speed" - "KB3D_ZOffset" - "KB3D_AoE" //
// //
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// //
// System Requirements: Basic WE - (NONE) //
// //
// The System uses implemented CheckWalkability System by PurgeandFire //
// You "can" remove the initialization trigger of PnF's System since //
// it is directly implemented in the System, all will work fine with or //
// without removing your Initializer trigger //
// //
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// //
// Credits: //
// //
// *WEHZ & TS Helpers Group for helping in Script Fixes //
// *Barry the Moose for helping in main codes and fixes //
// *PurgeandFire for his CheckWalkability System //
// *Vexorian / Nestharus for the GetCollision function //
// //
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// //
// How to Import? //
// //
// 1. Check that Create Unknown Variables is ticked in your WE Settings //
// 2. Copy the Paste this Trigger //
// 3. Congratulations, the System is now implemented in your map //
// //
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// //
// How to Use? //
// //
// 1. There are 5 Examples of use in the KB3D Example Folder //
// 2. Documentations are there in each of the 5 examples to help you //
// 3. The KB3D System is an Ultra-Purpose System where you can use it for://
// -Projectiles, the system supports homing so a projectile is easy //
// -Jump, the System's smoothness in the fly is useful for a jump spell//
// -And of course, a 2D Knock-Back //
// -And More depending on your imagination //
// //
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// //
// Bug Reports - Feedbacks //
// //
// * We count on you to report bugs in the system, also telling the source//
// * Feedbacks about the system are much appreciated //
// * We mostly hope suggestions about enhancements for the System //
// //
/////////////////////////////////////////////////////////////////////////////
function SaveAttackTypeHandle takes hashtable hash, integer parentKey, integer childKey, attacktype at returns nothing
call SaveInteger(hash, parentKey, childKey, GetHandleId(at))
endfunction
function LoadAttackTypeHandle takes hashtable hash, integer parentKey, integer childKey returns attacktype
return ConvertAttackType(LoadInteger(hash, parentKey, childKey))
endfunction
function SaveDamageTypeHandle takes hashtable hash, integer parentKey, integer childKey, damagetype dt returns nothing
call SaveInteger(hash, parentKey, childKey, GetHandleId(dt))
endfunction
function LoadDamageTypeHandle takes hashtable hash, integer parentKey, integer childKey returns damagetype
return ConvertDamageType(LoadInteger(hash, parentKey, childKey))
endfunction
function KB3D_AlwaysNeg takes real R returns real//Used for redering some values always lower than 0
if R > 0 then
return R * -1
endif
return R
endfunction
function KB3D_AlwaysPos takes real R returns real//Used for redering some values always higher than 0
if R < 0 then
return R * -1
endif
return R
endfunction
function KB3D_InBetween takes real Min, real R, real Max returns real//Used to maintain values between 2 others
if R < Min then
return Min
elseif R > Max then
return Max
endif
return R
endfunction
function KB3D_IsInBetween takes real Min, real R, real Max returns boolean//Used to maintain values between 2 others
if R < Min then
return false
elseif R > Max then
return false
endif
return true
endfunction
function KB3D_RegisterUnitCollision takes unit u, real x, real y, integer i returns real //Somehow a library for UnitCollision function
local real l = 0
local real h = 300
local real m = 150
local real nm
loop
if (IsUnitInRangeXY(u, x+m, y, 0)) then
set l = m
else
set h = m
endif
set nm = (l+h)/2
exitwhen nm+.001 > m and nm-.001 < m
set m = nm
endloop
set m = R2I(m*10)/10.
call SaveReal( udg_KB3D_HA, 16, GetUnitTypeId(u), m )
return m
endfunction
function KB3D_GetUnitCollision takes unit u returns real//Used to know the collision of a unit //Credits to Netharus// converted by malhorne
local integer i = GetUnitTypeId(u)
if HaveSavedReal( udg_KB3D_HA, 16, i) then
return LoadReal(udg_KB3D_HA, 16, i)
endif
return KB3D_RegisterUnitCollision(u, GetUnitX(u), GetUnitY(u), i)
endfunction
function KB3D_Tree_Check takes destructable D returns boolean //Checks if a destructable is a tree
return (IssueTargetOrder( udg_KB3D_Harvester, "harvest", D ) and (IssueImmediateOrder(udg_KB3D_Harvester, "stop")) )
endfunction
function KB3D_KillEnumDest takes nothing returns nothing //Function used in Enumeration loop
local destructable D = GetEnumDestructable()
if ( KB3D_Tree_Check(D) ) and (GetUnitFlyHeight(LoadUnitHandle(udg_KB3D_HA, 0, R2I(udg_KB3D_Reals[0]))) < GetDestructableOccluderHeight(D)) then
call KillDestructable(D)
set D = null
endif
endfunction
function KB3D_CircleTreeKill takes real radius, real x, real y returns nothing//To destroy trees around the unit
local rect r = Rect(x-radius, y-radius, x+radius, y+radius)
call EnumDestructablesInRect(r, null, function KB3D_KillEnumDest)
call RemoveRect(r)
set r = null
endfunction
function KB3D_CW_Loop takes nothing returns nothing//function for item group loop for Check Walkability System
if IsItemVisible(GetEnumItem()) then
set udg_CP_HiddenItems[udg_CP_HiddenItemsIndex] = GetEnumItem()
call SetItemVisible(udg_CP_HiddenItems[udg_CP_HiddenItemsIndex], false)
set udg_CP_HiddenItemsIndex = ( udg_CP_HiddenItemsIndex + 1 )
endif
endfunction
function KB3D_CW takes real x, real y returns boolean//Check Walkability System by PnF
local real x2 = 0
local real y2 = 0
call MoveRectTo(udg_CP_Rect, x, y)
call EnumItemsInRect(udg_CP_Rect, null, function KB3D_CW_Loop )
call SetItemPosition(udg_CP_Item, x, y)
set x2 = GetItemX(udg_CP_Item)
set y2 = GetItemY(udg_CP_Item)
call SetItemVisible(udg_CP_Item, false)
loop
exitwhen udg_CP_HiddenItemsIndex <= 0
set udg_CP_HiddenItemsIndex = udg_CP_HiddenItemsIndex - 1
call SetItemVisible(udg_CP_HiddenItems[udg_CP_HiddenItemsIndex], true)
set udg_CP_HiddenItems[udg_CP_HiddenItemsIndex] = null
endloop
return (((x2-x)*(x2-x) + (y2-y)*(y2-y) <= 100) and (not IsTerrainPathable(x, y, PATHING_TYPE_WALKABILITY)))
endfunction
function KB3D_ClearInstance takes integer i returns nothing
local integer x = 0
call DestroyGroup(LoadGroupHandle(udg_KB3D_HA, 27, i))
loop
exitwhen x > 100
call RemoveSavedHandle(udg_KB3D_HA, x, i)
call SaveReal(udg_KB3D_HA, x, i, 0)
set x = x +1
endloop
endfunction
function MoveUnit_3D takes unit U, real x, real y, real z, real MaxZ, boolean P, boolean OS, boolean KiOS returns nothing
call SetUnitFlyHeight(U, KB3D_InBetween(GetUnitDefaultFlyHeight(U), z, 9999), 0)
if ( not(P) or ( KB3D_CW(x, y) ) or (OS) ) then
if (OS) then
call SetUnitX(U, KB3D_InBetween(udg_KB3D_Reals[6], x, udg_KB3D_Reals[5]))
call SetUnitY(U, KB3D_InBetween(udg_KB3D_Reals[8], y, udg_KB3D_Reals[7]))
if (KiOS) and (not(KB3D_IsInBetween(udg_KB3D_Reals[2], x, udg_KB3D_Reals[1])) or not(KB3D_IsInBetween(udg_KB3D_Reals[4], x, udg_KB3D_Reals[3]))) then
call KillUnit(U)
endif
else
call SetUnitX(U, KB3D_InBetween(udg_KB3D_Reals[2], x, udg_KB3D_Reals[1]))
call SetUnitY(U, KB3D_InBetween(udg_KB3D_Reals[4], y, udg_KB3D_Reals[3]))
endif
endif
endfunction
function KB3D_LineDamageLoop takes nothing returns boolean
local unit U = GetFilterUnit()
local integer Loop = R2I(udg_KB3D_Reals[0])
local unit Damager = LoadUnitHandle(udg_KB3D_HA, 22, Loop)
local attacktype AType = LoadAttackTypeHandle(udg_KB3D_HA, 20, Loop)
local damagetype DType = LoadDamageTypeHandle(udg_KB3D_HA, 21, Loop)
local real LineD = LoadReal(udg_KB3D_HA, 28, Loop)
local unit U1 = LoadUnitHandle(udg_KB3D_HA, 0, Loop)
local group G = LoadGroupHandle(udg_KB3D_HA, 27, Loop)
if ( not( IsUnitType(U, UNIT_TYPE_STRUCTURE) ) and not( IsUnitType(U, UNIT_TYPE_MECHANICAL) ) and( IsUnitEnemy(U, GetOwningPlayer(U1))) and not ( IsUnitInGroup(U, G) ) ) then
call GroupAddUnit(G, U)
call UnitDamageTarget(Damager, U, LineD, true, false, AType, DType, WEAPON_TYPE_WHOKNOWS)
endif
set G = null
set U = null
set U1 = null
set Damager = null
set AType = null
set DType = null
return false
endfunction
function KB3D_AoEDamageLoop takes nothing returns boolean
local unit U = GetFilterUnit()
local integer Loop = R2I(udg_KB3D_Reals[0])
local unit Damager = LoadUnitHandle(udg_KB3D_HA, 22, Loop)
local attacktype AType = LoadAttackTypeHandle(udg_KB3D_HA, 20, Loop)
local damagetype DType = LoadDamageTypeHandle(udg_KB3D_HA, 21, Loop)
local real AoED = LoadReal(udg_KB3D_HA, 32, Loop)
local unit U1 = LoadUnitHandle(udg_KB3D_HA, 0, Loop)
if ( not( IsUnitType(U, UNIT_TYPE_STRUCTURE) ) and not( IsUnitType(U, UNIT_TYPE_MECHANICAL) ) and( IsUnitEnemy(U, GetOwningPlayer(U1))) ) then
call UnitDamageTarget(Damager, U, AoED * 0.031250000, true, false, AType, DType, WEAPON_TYPE_WHOKNOWS)
endif
set U = null
set U1 = null
set Damager = null
set AType = null
set DType = null
return false
endfunction
function KB3D_AoEEndDamage takes nothing returns boolean
local unit U = GetFilterUnit()
local integer Loop = R2I(udg_KB3D_Reals[0])
local unit Damager = LoadUnitHandle(udg_KB3D_HA, 22, Loop)
local attacktype AType = LoadAttackTypeHandle(udg_KB3D_HA, 20, Loop)
local damagetype DType = LoadDamageTypeHandle(udg_KB3D_HA, 21, Loop)
local real D = LoadReal(udg_KB3D_HA, 38, Loop)
local unit U1 = LoadUnitHandle(udg_KB3D_HA, 0, Loop)
if ( not( IsUnitType(U, UNIT_TYPE_STRUCTURE) ) and not( IsUnitType(U, UNIT_TYPE_MECHANICAL) ) and( IsUnitEnemy(U, GetOwningPlayer(U1))) ) then
call UnitDamageTarget(Damager, U, D, true, false, AType, DType, WEAPON_TYPE_WHOKNOWS)
endif
set U = null
set U1 = null
set Damager = null
set AType = null
set DType = null
return false
endfunction
function KB3D_GiveKBto takes unit U1, unit U2, integer Loop returns nothing
set udg_KB3D_AoEEndDamage = LoadReal(udg_KB3D_HA, 38, Loop)
set udg_KB3D_EndwhenDead = LoadBoolean(udg_KB3D_HA, 35, Loop)
set udg_KB3D_Accel = -2000
set udg_KB3D_AllowOutSiding = LoadBoolean(udg_KB3D_HA, 34, Loop)
set udg_KB3D_Angle = (LoadReal(udg_KB3D_HA, 5, Loop)*180/3.14159)
set udg_KB3D_AoE = LoadReal(udg_KB3D_HA, 29, Loop)
set udg_KB3D_AoEDamage = LoadReal(udg_KB3D_HA, 32, Loop)
set udg_KB3D_AttackType = LoadAttackTypeHandle(udg_KB3D_HA, 20, Loop)
set udg_KB3D_DamageType = LoadDamageTypeHandle(udg_KB3D_HA, 21, Loop)
set udg_KB3D_Damager = LoadUnitHandle(udg_KB3D_HA, 22, Loop)
set udg_KB3D_DestroyTree = LoadBoolean(udg_KB3D_HA, 8, Loop)
set udg_KB3D_DisableUnit = LoadBoolean(udg_KB3D_HA, 6, Loop)
set udg_KB3D_FaceAngle = LoadBoolean(udg_KB3D_HA, 31, Loop)
set udg_KB3D_Fx = LoadStr(udg_KB3D_HA, 9, Loop)
set udg_KB3D_Fx_Attach = LoadStr(udg_KB3D_HA, 10, Loop)
set udg_KB3D_ImpactDamage = LoadReal(udg_KB3D_HA, 17, Loop)
set udg_KB3D_LineDamage = LoadReal(udg_KB3D_HA, 28, Loop)
set udg_KB3D_LoopDamage = LoadReal(udg_KB3D_HA, 18, Loop)/0.031250000
set udg_KB3D_Range = 99999
set udg_KB3D_Speed = LoadReal(udg_KB3D_HA, 2, Loop)/0.031250000
set udg_KB3D_Unit = U1
set udg_KB3D_Zoffset = LoadReal(udg_KB3D_HA, 3, Loop)-GetUnitDefaultFlyHeight(U2) / 1.85
call ConditionalTriggerExecute( udg_KB3D_Registration )
endfunction
function KB3D_AoEGiveKBto takes unit U1, unit U2, integer Loop returns nothing
local real x1 = GetUnitX(U1)
local real y1 = GetUnitY(U1)
local real x2 = GetUnitX(U2)
local real y2 = GetUnitY(U2)
set udg_KB3D_AoE = LoadReal(udg_KB3D_HA, 29, Loop)
set udg_KB3D_EndwhenDead = LoadBoolean(udg_KB3D_HA, 35, Loop)
set udg_KB3D_Accel = -550
set udg_KB3D_AllowOutSiding = LoadBoolean(udg_KB3D_HA, 34, Loop)
set udg_KB3D_Angle = Atan2(y1 - y2, x1 - x2)*180/3.14159
set udg_KB3D_AoEDamage = LoadReal(udg_KB3D_HA, 32, Loop)
set udg_KB3D_AttackType = LoadAttackTypeHandle(udg_KB3D_HA, 20, Loop)
set udg_KB3D_DamageType = LoadDamageTypeHandle(udg_KB3D_HA, 21, Loop)
set udg_KB3D_Damager = LoadUnitHandle(udg_KB3D_HA, 22, Loop)
set udg_KB3D_DestroyTree = LoadBoolean(udg_KB3D_HA, 8, Loop)
set udg_KB3D_DisableUnit = LoadBoolean(udg_KB3D_HA, 6, Loop)
set udg_KB3D_FaceAngle = LoadBoolean(udg_KB3D_HA, 31, Loop)
set udg_KB3D_Fx = LoadStr(udg_KB3D_HA, 9, Loop)
set udg_KB3D_Fx_Attach = LoadStr(udg_KB3D_HA, 10, Loop)
set udg_KB3D_ImpactDamage = LoadReal(udg_KB3D_HA, 17, Loop)
set udg_KB3D_LineDamage = LoadReal(udg_KB3D_HA, 28, Loop)
set udg_KB3D_LoopDamage = LoadReal(udg_KB3D_HA, 18, Loop)/0.031250000
set udg_KB3D_Range = 9999
set udg_KB3D_Speed = udg_KB3D_AoE*2
set udg_KB3D_Unit = U1
set udg_KB3D_Zoffset = 2*(udg_KB3D_AoE - SquareRoot(x2 * x1 + y2 * y1)*3.14159/180)
call ConditionalTriggerExecute( udg_KB3D_Registration )
endfunction
function KB3D_AoEKB takes nothing returns boolean
local unit U = GetFilterUnit()
local integer Loop = R2I(udg_KB3D_Reals[0])
local unit U1 = LoadUnitHandle(udg_KB3D_HA, 0, Loop)
if ( not( IsUnitType(U, UNIT_TYPE_STRUCTURE) ) and not( IsUnitType(U, UNIT_TYPE_MECHANICAL) ) and( IsUnitEnemy(U, GetOwningPlayer(U1))) ) then
call KB3D_AoEGiveKBto(U, U1, Loop)
endif
set U = null
set U1 = null
return false
endfunction
function KB3D_Loop takes integer Loop returns nothing//Main Trigger Loop
//Create all the nessesary locals
local unit U = LoadUnitHandle(udg_KB3D_HA, 0, Loop)
local real X = GetUnitX(U)
local real Y = GetUnitY(U)
local real Z = GetUnitFlyHeight(U)
local real x
local real y
local real z
local real Range = LoadReal(udg_KB3D_HA, 1, Loop)
local real Speed = LoadReal(udg_KB3D_HA, 2, Loop)
local real Zoffset = LoadReal(udg_KB3D_HA, 3, Loop)
local real Accel = LoadReal(udg_KB3D_HA, 4, Loop)
local real Angle
local real ZSpeed = LoadReal(udg_KB3D_HA, 12, Loop)
local real ZAccel = LoadReal(udg_KB3D_HA, 13, Loop)
local real ImpactD = LoadReal(udg_KB3D_HA, 17, Loop)
local real LoopD = LoadReal(udg_KB3D_HA, 18, Loop)
local real TargetD = LoadReal(udg_KB3D_HA, 19, Loop)
local real LineD = LoadReal(udg_KB3D_HA, 28, Loop)
local real AoE = LoadReal(udg_KB3D_HA, 29, Loop)
local real ZT = LoadReal(udg_KB3D_HA, 26, Loop)
local real AoED = LoadReal(udg_KB3D_HA, 32, Loop)
local real Time = LoadReal(udg_KB3D_HA, 41, Loop) + 0.031250000
local real KillatTime = LoadReal(udg_KB3D_HA, 36, Loop)
local real StopTime = LoadReal(udg_KB3D_HA, 37, Loop)
local real AoEEndDamage = LoadReal(udg_KB3D_HA, 38, Loop)
local unit Target = LoadUnitHandle(udg_KB3D_HA, 5, Loop)
local unit Damager = LoadUnitHandle(udg_KB3D_HA, 22, Loop)
local boolean DisableUnit = LoadBoolean(udg_KB3D_HA, 6, Loop)
local boolean UnpathableStop = LoadBoolean(udg_KB3D_HA, 7, Loop)
local boolean DestroyTree = LoadBoolean(udg_KB3D_HA, 8, Loop)
local boolean KillWhenHit = LoadBoolean(udg_KB3D_HA, 24, Loop)
local boolean EndWhenHit = LoadBoolean(udg_KB3D_HA, 25, Loop)
local boolean KiOS = LoadBoolean(udg_KB3D_HA, 33, Loop)
local boolean OS = LoadBoolean(udg_KB3D_HA, 34, Loop)
local boolean B = false
local boolean b = false
local boolean EndwhenDead = LoadBoolean(udg_KB3D_HA, 35, Loop)
local boolean KBTarget = LoadBoolean(udg_KB3D_HA, 39, Loop)
local boolean AoEKB = LoadBoolean(udg_KB3D_HA, 40, Loop)
local string Fx = LoadStr(udg_KB3D_HA, 9, Loop)
local string Attach = LoadStr(udg_KB3D_HA, 10, Loop)
local string EndFx = LoadStr(udg_KB3D_HA, 42, Loop)
local attacktype AType = LoadAttackTypeHandle(udg_KB3D_HA, 20, Loop)
local damagetype DType = LoadDamageTypeHandle(udg_KB3D_HA, 21, Loop)
local group g
//end of locals
//Loop Damage Execution
if not (LoopD == 0) and not (Damager == null ) then
call UnitDamageTarget(Damager, U, LoopD, true, false, AType, DType, WEAPON_TYPE_WHOKNOWS)
endif
//Calculate the Angle
if ( Target == null ) then
set Angle = LoadReal(udg_KB3D_HA, 5, Loop) + LoadReal(udg_KB3D_HA, 30, Loop)//if there is no unit target
else
set Angle = Atan2(GetUnitY(Target) - Y, GetUnitX(Target) - X)//if there is a unit target
endif
//Make Unit Face Angle
if LoadBoolean(udg_KB3D_HA, 31, Loop) then
call SetUnitFacing(U, Angle * (180 / 3.14159))
endif
//Calculate 3D coordinates
set Speed = Speed + ( Accel )//Increase the KB speed depending on the Acceleration
set Range = Range - ( Speed )//Decrease distance traveled
set ZSpeed = ZSpeed + ( ZAccel )//change the fly changing rate //Acceleration is for smoothness
set x = X + ( Speed * Cos(Angle) )//new X location of the KBed unit
set y = Y + ( Speed * Sin(Angle) )//new Y location of the KBed unit
set z = Z + ( ZSpeed * 0.031250000 )//new Z Offset of the KBed unit
set ZT = ZT + ( ZSpeed * 0.031250000 )//Total Height Changings
//Move the unit according to the X, Y, Z
call MoveUnit_3D(U, x, y, z, Zoffset, UnpathableStop, OS, KiOS)
//Destroy Trees around the Unit depending on the unit's Collision Size
if (DestroyTree) then
set udg_KB3D_Reals[0] = I2R(Loop)
call KB3D_CircleTreeKill( KB3D_InBetween(100, 4 * KB3D_GetUnitCollision(U), 500), x, y )
endif
//Create the Effect on the unit
if not (Fx == "") then
if ( z > 20 ) then
if not (Attach == "") then
call DestroyEffect(AddSpecialEffectTarget(Fx, U, Attach))//attach the effect on the unit if he is flying
endif
else
call DestroyEffect(AddSpecialEffect(Fx, x, y))//create the effect on his location if he is not flying
endif
endif
//Initiate Impact Damage
if ( (UnpathableStop) and not ( KB3D_CW(x, y) ) ) and (not (ImpactD == 0) and not (Damager == null ) ) then//if the terrain is unpathable or if unpathable stop is disabled then..
if ( KB3D_CW(x, y) ) then
call SaveBoolean(udg_KB3D_HA, 23, Loop, true)
endif
if ( LoadBoolean(udg_KB3D_HA, 23, Loop) ) then
call UnitDamageTarget(Damager, U, ImpactD, true, false, AType, DType, WEAPON_TYPE_WHOKNOWS)//Apply Impact Damage to the unit
call SaveBoolean(udg_KB3D_HA, 23, Loop, false)
endif
endif
//Initiate Line Damage
if not(LineD == 0) and not(Damager == null) and not(AoE == 0) then
set g = CreateGroup()
set udg_KB3D_Reals[0] = I2R(Loop)
call GroupEnumUnitsInRange(udg_KB3D_Group, x, y, KB3D_AlwaysPos(AoE), Filter(function KB3D_LineDamageLoop))
call DestroyGroup(g)
set g = null
endif
//Initiate AoE Damage
if not(AoED == 0) and not(Damager == null) and not(AoE == 0) then
set g = CreateGroup()
set udg_KB3D_Reals[0] = I2R(Loop)
call GroupEnumUnitsInRange(udg_KB3D_Group, x, y, KB3D_AlwaysPos(AoE), Filter(function KB3D_AoEDamageLoop))
call DestroyGroup(g)
set g = null
endif
//Disable the unit partially
if ( DisableUnit ) then
call SetUnitPropWindow(U, 0)
call SetUnitTurnSpeed(U, 0)
endif
//Initiate Target-Related Actions
if not(Target == null) then
if (SquareRoot ( ( GetUnitX(Target) - x ) * ( GetUnitX(Target) - x ) + ( GetUnitY(Target) - y ) * ( GetUnitY(Target) - y ) ) < Speed) then//when the target and the unit are close
if not (TargetD == 0) and not(Damager == null) then//Damage the Target
call UnitDamageTarget(Damager, Target, TargetD, true, false, AType, DType, WEAPON_TYPE_WHOKNOWS)
call SaveReal(udg_KB3D_HA, 19, Loop, 0)
endif
if KBTarget then//KB the Target
call KB3D_GiveKBto(Target, U, Loop)
call SaveBoolean( udg_KB3D_HA, 39, udg_KB3D_Counter, false )
endif
if (KillWhenHit) then//Kill the Unit
call KillUnit(U)
endif
if (EndWhenHit) then//End the KB
call SaveReal(udg_KB3D_HA, 4, Loop, KB3D_AlwaysNeg(Speed))
call SaveReal(udg_KB3D_HA, 3, Loop, GetUnitFlyHeight(U) - ZT)
endif
endif
endif
//Kill the Unit at the time
if not(KillatTime == 0) and ( Time > KillatTime ) then
call KillUnit(U)
endif
//Save Changes in the Hashtable
call SaveReal(udg_KB3D_HA, 1, Loop, Range)
call SaveReal(udg_KB3D_HA, 2, Loop, Speed)
call SaveReal(udg_KB3D_HA, 5, Loop, Angle)
call SaveReal(udg_KB3D_HA, 12, Loop, ZSpeed)
call SaveReal(udg_KB3D_HA, 26, Loop, ZT)
call SaveReal(udg_KB3D_HA, 41, Loop, Time)
//set B to if Stop time is exceeded
set B = ( not(StopTime == 0) and ( Time > StopTime ) )
//Inititate End of the KB
if ( (Speed <= 0) or ( Range <= 0 ) or ( B ) ) then
call SaveBoolean(udg_KB3D_HA, 100, Loop, false)
set udg_KB3D_Instances = udg_KB3D_Instances - 1
if ( GetWidgetLife(U) <= 0 ) then
call SetUnitFlyHeight(U, GetUnitDefaultFlyHeight(U), 750 )
endif
call SetUnitPropWindow(U, LoadReal(udg_KB3D_HA, 15, Loop)*3.14159/180)
call SetUnitTurnSpeed(U, GetUnitDefaultTurnSpeed(U))
if HaveSavedHandle(udg_KB3D_HA, 14, Loop) then
call DestroyEffect(LoadEffectHandle(udg_KB3D_HA, 14, Loop))
endif
set b = true
elseif ( GetWidgetLife(U) <= 0 ) and (EndwhenDead) then
call SaveBoolean(udg_KB3D_HA, 100, Loop, false)
set udg_KB3D_Instances = udg_KB3D_Instances - 1
if ( GetWidgetLife(U) <= 0 ) then
call SetUnitFlyHeight(U, GetUnitDefaultFlyHeight(U), 750 )
endif
call SetUnitPropWindow(U, LoadReal(udg_KB3D_HA, 15, Loop)*3.14159/180)
call SetUnitTurnSpeed(U, GetUnitDefaultTurnSpeed(U))
if HaveSavedHandle(udg_KB3D_HA, 14, Loop) then
call DestroyEffect(LoadEffectHandle(udg_KB3D_HA, 14, Loop))
endif
set b = true
endif
//variable b refers to if the KB has ended
//AoE damage at the end of the KB
if (b) and not(AoEEndDamage == 0) and not(Damager == null) and not(AoE == 0) then
set g = CreateGroup()
set udg_KB3D_Reals[0] = I2R(Loop)
call GroupEnumUnitsInRange(udg_KB3D_Group, x, y, KB3D_AlwaysPos(AoE), Filter(function KB3D_AoEEndDamage))
call DestroyGroup(g)
set g = null
endif
//AoE Knock-back at the end of the KB
if (b) and (AoEKB) and not(AoE == 0) then
set g = CreateGroup()
set udg_KB3D_Reals[0] = I2R(Loop)
call GroupEnumUnitsInRange(udg_KB3D_Group, x, y, KB3D_AlwaysPos(AoE), Filter(function KB3D_AoEKB))
call DestroyGroup(g)
set g = null
endif
//Create End Effect
if b and not(EndFx == "") then
if ( z > 20 ) and not (Attach == "") then
call DestroyEffect(AddSpecialEffectTarget(EndFx, U, Attach))//attach the effect on the unit if he is flying
else
call DestroyEffect(AddSpecialEffect(EndFx, x, y))//create the effect on his location if he is not flying
endif
endif
//Clear Instance
if b then
call KB3D_ClearInstance(Loop)
endif
//Clear locals
set U = null
set Target = null
set Damager = null
endfunction
function KB3D_Loop_Actions takes nothing returns nothing//loop triggerer
local integer x = 0
loop
exitwhen x >= udg_KB3D_Counter
set x = x + 1
if ( LoadBoolean(udg_KB3D_HA, 100, x) ) then
call KB3D_Loop(x)
endif
endloop
if ( udg_KB3D_Instances == 0 ) then
set udg_KB3D_Counter = 0
call PauseTimer(udg_KB3D_Timer)
endif
endfunction
function KB3D_Registration takes nothing returns boolean//register an instance in the System
local real Time
local real R
local real R1
set udg_KB3D_Arc = KB3D_InBetween(-10, udg_KB3D_Arc, 10)
set udg_KB3D_Range = KB3D_InBetween(0.01, KB3D_AlwaysPos(udg_KB3D_Range), KB3D_AlwaysPos(udg_KB3D_Range))
set udg_KB3D_Speed = KB3D_InBetween(0.01, KB3D_AlwaysPos(udg_KB3D_Speed), KB3D_AlwaysPos(udg_KB3D_Speed))
set udg_KB3D_Counter = udg_KB3D_Counter + 1
set udg_KB3D_Instances = udg_KB3D_Instances + 1
set udg_KB3D_Zoffset = (1.85 * KB3D_AlwaysPos(udg_KB3D_Zoffset)) + GetUnitDefaultFlyHeight(udg_KB3D_Unit)
set udg_KB3D_StopTime = KB3D_AlwaysPos(udg_KB3D_StopTime)
set udg_KB3D_KillatTime = KB3D_AlwaysPos(udg_KB3D_KillatTime)
set udg_KB3D_AoE = KB3D_AlwaysPos(udg_KB3D_AoE)
call SaveUnitHandle( udg_KB3D_HA, 0, udg_KB3D_Counter, udg_KB3D_Unit )
call SaveReal( udg_KB3D_HA, 1, udg_KB3D_Counter, udg_KB3D_Range )
call SaveReal( udg_KB3D_HA, 2, udg_KB3D_Counter, udg_KB3D_Speed * 0.031250000 )
call SaveReal( udg_KB3D_HA, 4, udg_KB3D_Counter, udg_KB3D_Accel * 0.031250000 * 0.031250000 )
if ( udg_KB3D_Targeted_Unit == null ) then
call SaveReal( udg_KB3D_HA, 5, udg_KB3D_Counter, udg_KB3D_Angle * 3.14159 / 180 )
else
call SaveUnitHandle( udg_KB3D_HA, 5, udg_KB3D_Counter, udg_KB3D_Targeted_Unit )
endif
call SaveBoolean( udg_KB3D_HA, 6, udg_KB3D_Counter, udg_KB3D_DisableUnit )
call SaveBoolean( udg_KB3D_HA, 7, udg_KB3D_Counter, udg_KB3D_UnpathableStop )
call SaveBoolean( udg_KB3D_HA, 8, udg_KB3D_Counter, udg_KB3D_DestroyTree )
call SaveStr( udg_KB3D_HA, 9, udg_KB3D_Counter, udg_KB3D_Fx )
call SaveStr( udg_KB3D_HA, 10, udg_KB3D_Counter, udg_KB3D_Fx_Attach )
if ( udg_KB3D_Accel == 0.00 ) then
set Time = udg_KB3D_Range / (udg_KB3D_Speed)//calculating time for the knockback if Acceleration = 0
else
if ( udg_KB3D_Accel > 0 ) then
set Time = (( -2*(udg_KB3D_Speed) + SquareRoot((4*udg_KB3D_Speed) + (8*udg_KB3D_Accel*udg_KB3D_Range ) ) / (2*udg_KB3D_Accel) ))//calculating time for the knockback if Acceleration > 0
endif
if ( udg_KB3D_Accel < 0 ) then
set R = ( - 1 * (udg_KB3D_Speed) / udg_KB3D_Accel )
set R1 = (0.5 * udg_KB3D_Accel * R * R) + ((udg_KB3D_Speed) * R)
if R1 < udg_KB3D_Range then
set Time = R//calculating time for the knockback if Acceleration < 0 and if the speed will be = 0 before reaching max range
else
set Time = KB3D_AlwaysPos(( -2*(udg_KB3D_Speed) + SquareRoot(KB3D_AlwaysPos((4*(udg_KB3D_Speed)*(udg_KB3D_Speed)) + (8*udg_KB3D_Accel*udg_KB3D_Range) )) ) / (2*udg_KB3D_Accel) )//calculating time for the knockback if Acceleration < 0 and if the speed will be > 0 before reaching max range
endif
endif
endif
call SaveReal( udg_KB3D_HA, 11, udg_KB3D_Counter, Time )
call SaveBoolean( udg_KB3D_HA, 100, udg_KB3D_Counter, true )
if UnitAddAbility(udg_KB3D_Unit, 'Amrf') then
call UnitRemoveAbility(udg_KB3D_Unit, 'Amrf')
endif
call SaveReal( udg_KB3D_HA, 3, udg_KB3D_Counter, udg_KB3D_Zoffset )
call SaveReal( udg_KB3D_HA, 12, udg_KB3D_Counter, (udg_KB3D_Zoffset / ( Time / 2)) )
call SaveReal( udg_KB3D_HA, 13, udg_KB3D_Counter, ( -1 * udg_KB3D_Zoffset / ( Time / 2) ) / ( Time / 2) * 0.031250000 )
if not (udg_KB3D_TrailFx == "") and not (udg_KB3D_Fx_Attach == "") then
call SaveEffectHandle(udg_KB3D_HA, 14, udg_KB3D_Counter, AddSpecialEffectTarget(udg_KB3D_TrailFx, udg_KB3D_Unit, udg_KB3D_Fx_Attach))
endif
call SaveReal( udg_KB3D_HA, 15, udg_KB3D_Counter, GetUnitDefaultPropWindow(udg_KB3D_Unit) )
call SaveReal( udg_KB3D_HA, 17, udg_KB3D_Counter, udg_KB3D_ImpactDamage )
call SaveReal( udg_KB3D_HA, 18, udg_KB3D_Counter, udg_KB3D_LoopDamage * 0.031250000 )
call SaveReal( udg_KB3D_HA, 19, udg_KB3D_Counter, udg_KB3D_TargetDamage )
call SaveAttackTypeHandle( udg_KB3D_HA, 20, udg_KB3D_Counter, udg_KB3D_AttackType )
call SaveDamageTypeHandle( udg_KB3D_HA, 21, udg_KB3D_Counter, udg_KB3D_DamageType )
call SaveUnitHandle( udg_KB3D_HA, 22, udg_KB3D_Counter, udg_KB3D_Damager )
call SaveBoolean( udg_KB3D_HA, 23, udg_KB3D_Counter, true )
call SaveBoolean( udg_KB3D_HA, 24, udg_KB3D_Counter, udg_KB3D_KillWhenHit )
if (udg_KB3D_KillWhenHit) then
set udg_KB3D_EndWhenHit = true
endif
call SaveBoolean( udg_KB3D_HA, 25, udg_KB3D_Counter, udg_KB3D_EndWhenHit )
call SaveGroupHandle(udg_KB3D_HA, 27, udg_KB3D_Counter, CreateGroup() )
call SaveReal( udg_KB3D_HA, 28, udg_KB3D_Counter, udg_KB3D_LineDamage )
call SaveReal( udg_KB3D_HA, 29, udg_KB3D_Counter, KB3D_AlwaysPos(udg_KB3D_AoE) )
call SaveReal( udg_KB3D_HA, 30, udg_KB3D_Counter, udg_KB3D_Arc * (3.14159/180) )
call SaveBoolean( udg_KB3D_HA, 31, udg_KB3D_Counter, udg_KB3D_FaceAngle )
call SaveReal( udg_KB3D_HA, 32, udg_KB3D_Counter, udg_KB3D_AoEDamage )
call SaveBoolean( udg_KB3D_HA, 33, udg_KB3D_Counter, udg_KB3D_KillifOutSider )
if (udg_KB3D_KillifOutSider) then
set udg_KB3D_AllowOutSiding = true
endif
call SaveBoolean( udg_KB3D_HA, 34, udg_KB3D_Counter, udg_KB3D_AllowOutSiding )
if udg_KB3D_KillatTime > udg_KB3D_StopTime then
set udg_KB3D_EndwhenDead = true
endif
call SaveBoolean( udg_KB3D_HA, 35, udg_KB3D_Counter, udg_KB3D_EndwhenDead )
call SaveReal( udg_KB3D_HA, 36, udg_KB3D_Counter, udg_KB3D_KillatTime )
call SaveReal( udg_KB3D_HA, 37, udg_KB3D_Counter, udg_KB3D_StopTime )
call SaveReal( udg_KB3D_HA, 38, udg_KB3D_Counter, udg_KB3D_AoEEndDamage )
call SaveBoolean( udg_KB3D_HA, 39, udg_KB3D_Counter, udg_KB3D_KBTarget )
call SaveBoolean( udg_KB3D_HA, 40, udg_KB3D_Counter, udg_KB3D_AoEKB )
call SaveStr(udg_KB3D_HA, 42, udg_KB3D_Counter, udg_KB3D_EndFx )
//Nulling
set udg_KB3D_Accel = 0.00
set udg_KB3D_AllowOutSiding = false
set udg_KB3D_Angle = 0.00
set udg_KB3D_AoE = 0.00
set udg_KB3D_Arc = 0.00
set udg_KB3D_AoEDamage = 0.00
set udg_KB3D_AttackType = ATTACK_TYPE_NORMAL
set udg_KB3D_DamageType = DAMAGE_TYPE_MAGIC
set udg_KB3D_Damager = null
set udg_KB3D_DestroyTree = false
set udg_KB3D_DisableUnit = false
set udg_KB3D_EndWhenHit = false
set udg_KB3D_Fx = ""
set udg_KB3D_EndFx = ""
set udg_KB3D_Fx_Attach = ""
set udg_KB3D_ImpactDamage = 0.00
set udg_KB3D_KillWhenHit = false
set udg_KB3D_FaceAngle = false
set udg_KB3D_KillifOutSider = false
set udg_KB3D_LineDamage = 0.00
set udg_KB3D_LoopDamage = 0.00
set udg_KB3D_Range = 0.00
set udg_KB3D_Speed = 0.00
set udg_KB3D_TargetDamage = 0.00
set udg_KB3D_Targeted_Unit = null
set udg_KB3D_TrailFx = ""
set udg_KB3D_Unit = null
set udg_KB3D_UnpathableStop = true
set udg_KB3D_Zoffset = 0.00
set udg_KB3D_AoEEndDamage = 0.00
set udg_KB3D_AoEKB = false
set udg_KB3D_EndwhenDead = true
set udg_KB3D_KBTarget = false
set udg_KB3D_StopTime = 0.00
set udg_KB3D_KillatTime = 0.00
if ( udg_KB3D_Counter == 1 ) then
call TimerStart(udg_KB3D_Timer, 0.031250000, true, function KB3D_Loop_Actions )
endif
set udg_KB3D_Time = Time
return false
endfunction
//===========================================================================
function InitTrig_KB3D takes nothing returns nothing
////////REGISTRATION
set udg_KB3D_Registration = CreateTrigger( )
call TriggerAddCondition( udg_KB3D_Registration, Condition(function KB3D_Registration) )
set udg_KB3D_Harvester = CreateUnit(Player(15), 'hpea', 0, 0, 0)
call ShowUnit(udg_KB3D_Harvester, false)
call UnitAddAbility(udg_KB3D_Harvester, 'Aloc')
set udg_KB3D_HA = InitHashtable()
////////Check Walkability System by PnF
set udg_CP_Rect = Rect(0, 0, 128.00, 128.00)
set udg_CP_Item = CreateItem('wtlg', 0, 0)
call SetItemVisible( udg_CP_Item, false )
////////InitReals
set udg_KB3D_Reals[1] = GetRectMaxX(bj_mapInitialPlayableArea)
set udg_KB3D_Reals[2] = GetRectMinX(bj_mapInitialPlayableArea)
set udg_KB3D_Reals[3] = GetRectMaxY(bj_mapInitialPlayableArea)
set udg_KB3D_Reals[4] = GetRectMinY(bj_mapInitialPlayableArea)
set udg_KB3D_Reals[5] = GetRectMaxX(GetWorldBounds())
set udg_KB3D_Reals[6] = GetRectMinX(GetWorldBounds())
set udg_KB3D_Reals[7] = GetRectMaxY(GetWorldBounds())
set udg_KB3D_Reals[8] = GetRectMinY(GetWorldBounds())
endfunction
//TESH.scrollpos=0
//TESH.alwaysfold=0
*Spell Name: Incredible Jump [ GUI MUI ] v1.3a = Added some stuffs
*Spell Author/Creator: by jakeZinc.
*Spell Version: v1.3a = * Added some variable creator in coordinates
*Spell Purpose: Useful in enabling the caster to chase or escape in the enemies or in the battles.
Can stun, knockback and damage enemies when the caster landed.
*Spell Idea: None
*Spell Requested: None
*Spell Features v1.3a = * Multi- Unit Instanceabilty ( MUI Spell )
* Lagless
* Leakless
* Configurable
How to Import/Install:
=Preparing for import=
Go to:
File
Preferences
General
Check the box labelled ''Automatically create unknown variables while pasting trigger data''
=Speeding up import of object data-
Go to:
Window
make sure the 'brush list' is unchecked.
You can swap between my map and your map.
=Main importing=
Difficuly in Importing:
"Easy" = 1 to 3 Copy - Paste Required
"Medium" = 4 to 6 Copy - Paste and Import Required
"Hard" = 7 above, Copy - Paste Required
Spell Importing Difficulty: 'Medium'
In order of importing: Copy --> Paste to your Map.
Object Data (OE) - Spell - Incredible Jump
Object Data (OE) - Spell - Incredible Jump ( DummyAbility )
Object Data (OE) - Unit - Incredible Jump ( Dummy ) ( Dummy Vexorian Model ).
Trigger Data (TE) - Folder - Incredible Jump [ GUI MUI ] v1.2.
Trigger Data (TE) - Folder - Check Walkability System. ( Not needed if you have already one )
Trigger Data (TE) - Folder - KB3D System v1.5.3. ( Not needed if you have already one )
Import: ( F12 )
Import the Dummy Model by Vexorian to your map.
Check the IJ Dummy if its model is: war3mapImported\dummy.mdl
* Notes:
Note #1: Make sure to Configure the " IJ Configuration " trigger in the IJ_Ability, IJ_DummyType, IJ_DummyAbility
Note #2: If your finish importing the spell in the map then you can delete now a variable files.
Note #3: If the impact model does not show, pls import the dummy by vexorian or configure it in the "IJ Configuration"
Note #4: If the knockback is now working then pls copy the Knockback 3D System v1.5.3
Note #5: If unpathable checking does not work then make sure that you copy the CheckWalkability
System made by PurgeandFire.
Note #6: ~~Enjoy!!!
=Modification=
All Modifications should be done in the Configuration Trigger, each configuration is explained and elaborated.
//==========================================================================================================================================
Pls Give credits if you use this spell in your map.
Credits: emjl3r ( For the Spell Map Template )
Credits: Vexorian ( For the Dummy )
Credits: PurgeandFire ( CheckWalkability System )
Credits: Jad ( KB3D System v1.5.3 )
Credits: Maker ( Reviewing Spell and telling mistakes =) )
Sincerely,
jakeZinc
//TESH.scrollpos=41
//TESH.alwaysfold=0
//Mage_Goo Illusion Split
//Made for The Hive Workshop Spell and System Mini Contest #17
//Give Credits if use in your map
//Feel free to edit it but give credit to me
//Due to limit of Learn tooltips,
//I didn't add AoE and Durability of Illusion on it.
All spells were made for the Hive Workshop
___________________________________________________________
Spell Requirements:
_____________________
Required IS_Timer for timer
Required Dummy Unit for casting dummy spell
No need for test illusion ability nor Illusion Split Testing Purpose and Init trigger.
Don't forget to enable this: (just to make copying variables easier)
Automatically create unknown variables while pasting trigger data.
You can Find it in File>Preferences>(See above)
or, copy all variables with IS_ suffix.
Implementation Instructions:
_____________________________
1. Go to the Object Editor, and copy + paste the following:
- Unit:
- IS_Timer
- Dummy Unit
- Ability:
- Dummy Damage
- Illusion Split
- Test Illusion (If you want)
- Illusion Split (Caster)
- Illusion Split (Illusion)
- Buff:
- Illusion Split
2. Copy the triggers :- Illusion Split Initialization
- Illusion Split Start
- Illusion Split Add
- Illusion Split Attacked
- Illusion Split End
- Illusion Split Testing Init (If you want this)
- Illusion Split Testing Purpose (If you want this)
then paste them into your map.
3. Just change some part of the trigger to fit your ability.
Set the Minimum Movement Speed in map you import this to zero
You can Find it in Advanced>Gameplay Constant>Movement - Minimum Unit Movement Speed.