//TESH.scrollpos=0
//TESH.alwaysfold=0
Name | Type | is_array | initial_value |
A1 | location | No | |
A2 | location | No | |
AbilityName | abilcode | No | |
Alarm1 | location | No | |
Alarm2 | location | No | |
AllyGroup | group | No | |
Ap1 | location | No | |
Ap2 | location | No | |
AspawnP1 | location | No | |
AT_AddDistanceLoop | real | Yes | |
AT_AllowBuildings | boolean | Yes | |
AT_AllowBuildingsLoop | boolean | Yes | |
AT_AllowCliffs | boolean | Yes | |
AT_AllowCliffsLoop | boolean | Yes | |
AT_AllowWater | boolean | Yes | |
AT_AllowWaterLoop | boolean | Yes | |
AT_AngleMove | real | Yes | |
AT_AngleMoveLoop | real | Yes | |
AT_AoE1Axe | real | Yes | |
AT_AoE1AxeLoop | real | Yes | |
AT_AoE2Axe | real | Yes | |
AT_AoE2AxeLoop | real | Yes | |
AT_AoE3Axe | real | Yes | |
AT_AoE3AxeLoop | real | Yes | |
AT_AxeLoop | unit | Yes | |
AT_AxePointLoop | unit | Yes | |
AT_AxeSpeedCurrent | real | Yes | |
AT_AxeSpeedCurrentLoop | real | Yes | |
AT_AxeSpeedDecreasement | real | Yes | |
AT_AxeSpeedDecreasementLoop | real | Yes | |
AT_AxeSpeedDefault | real | Yes | |
AT_AxeSpeedDefaultLoop | real | Yes | |
AT_BloodEffect | string | Yes | |
AT_BloodEffectLoop | string | Yes | |
AT_BumpEffect | string | Yes | |
AT_BumpEffectLoop | string | Yes | |
AT_Caster | unit | Yes | |
AT_CasterLoop | unit | Yes | |
AT_Damages | real | Yes | |
AT_DamagesLoop | real | Yes | |
AT_DestroyTrees | boolean | Yes | |
AT_DestroyTreesLoop | boolean | Yes | |
AT_DistanceAxe | real | Yes | |
AT_DistanceAxeLoop | real | Yes | |
AT_Group | group | No | |
AT_GroupAxeLoop | group | No | |
AT_GroupLoop | group | Yes | |
AT_IntegerCasting1 | integer | No | |
AT_IntegerCasting2 | integer | No | |
AT_IntegerCasting3 | integervar | No | |
AT_IntegerThrowingLoop1 | integer | No | |
AT_IntegerThrowingLoop2 | integer | No | |
AT_IntegerThrowingLoop3 | integervar | No | |
AT_IntegerThrowingLoop4 | integer | No | |
AT_Level | integer | Yes | |
AT_NumberAxesRemaining | integer | Yes | |
AT_NumberAxesThrown | integer | Yes | |
AT_RandomIntegerForBlood | integer | No | |
AT_Return | boolean | Yes | |
AT_TempGroupLoop | group | No | |
AT_TempPoint | location | No | |
AT_TempPoint2 | location | No | |
AT_TempPoint3 | location | No | |
AT_TimerCasting | real | Yes | |
AT_TimerElapsedCasting | real | Yes | |
AtargetP1 | location | No | |
Atemppoint | location | No | |
Atemppoint2 | location | No | |
atemppoint2 | location | No | |
atemppoint3 | location | No | |
BaseDamage | real | No | |
BlinkLight | boolean | No | |
Blood | effect | No | |
Bloodcloudint | integer | No | |
bloodeffect | effect | No | |
Bloodpush | group | No | |
blueboolean | boolean | No | |
blueflagcheck | boolean | No | |
BluehasThrownFlagTree | boolean | No | |
blueittemeffect | effect | No | |
BluePoint | location | No | |
BlueScrollPush | group | No | |
BodyGroup | group | No | |
BodyGroup2 | group | No | |
BodyGroup3 | group | No | |
BodyP | location | No | |
Boolean_Dead | boolean | Yes | |
Buffdes2 | group | No | |
Buffdest1 | group | No | |
Buffgroup | group | No | |
BUMPED | group | No | |
Button_difficulty | button | Yes | |
Button_exp_rate | button | Yes | |
Button_hero | button | Yes | |
Button_Main | button | Yes | |
C1 | location | No | |
C2 | location | No | |
Cam | boolean | No | |
Caps_To_Win | integer | No | |
capteamblue | boolean | No | |
capteamred | boolean | No | |
Captures | integer | Yes | |
CasterDK | unit | No | |
castingunit | unit | Yes | |
Casttemp | location | No | |
centerscroll | location | No | |
centerspawnblue | location | No | |
ChainHookCheck | boolean | Yes | |
ChainHookDistance | real | Yes | |
ChainHookDummyCount | integer | Yes | |
ChainHookDummyGroup | group | No | |
ChainHookDummys | unit | Yes | |
ChainHookItemdummygroup | group | No | |
ChainHookTargetGroup | group | No | |
Clash | group | No | |
CleanArena | group | No | |
CleanHook | group | No | |
cneterscroll2 | location | No | |
Color_StarsEmpty | string | No | |
Color_StarsFull | string | No | |
Cpoint | location | No | |
Croweffect | effect | Yes | |
CTeam1Flag | location | No | |
CTeam2Flag | location | No | |
Cutting_Slam | effect | No | |
dagger | unit | No | |
dagger1 | unit | No | |
dagger2 | unit | No | |
DaggerArena | rect | No | |
DaggerGroup | group | No | |
daggergroup1 | group | No | |
daggergroup2 | group | No | |
daggerposi | location | No | |
Darkgroup | group | No | |
Dashcaster | unit | Yes | |
Dasheffectfire | effect | Yes | |
DashInt | integer | No | |
Death | integer | Yes | |
Deatheffect | location | No | |
DeathP | location | No | |
Deaths | integer | Yes | |
DeathW | location | No | |
deselectgroup | group | No | |
destroybuff1 | group | No | |
Dialog | dialog | No | |
Dialog_mode_integer | integer | Yes | |
Dialogs_selections | dialog | Yes | |
dieLoc | location | No | |
dieLoc2 | location | No | |
DistanceDamageMultiplier | real | No | |
dragoneffect | effect | Yes | |
Duel1Group | group | No | |
Duel2Group | group | No | |
DummyGroup | group | No | |
Duration | real | No | |
DurationScrollhook | real | No | |
Dust_ActiveInstance | integer | No | |
Dust_DefaultOwner | player | No | |
Dust_Dummy | unit | Yes | |
Dust_DummyType | unitcode | No | |
Dust_Duration | real | Yes | |
Dust_Index | integer | No | |
Dust_InstanceCount | integer | No | |
Dust_Interval | real | No | |
Dust_NewDuration | real | No | |
Dust_NewExpand | boolean | No | |
Dust_NewFadeOut | boolean | No | |
Dust_NewHeight | real | No | |
Dust_NewIndex | integer | No | |
Dust_NewScale | real | No | |
Dust_NewScaleSpeed | real | No | |
Dust_NewTransparency | real | No | |
Dust_NewTransSpeed | real | No | |
Dust_NewX | real | No | |
Dust_NewY | real | No | |
Dust_Next | integer | Yes | |
Dust_Prev | integer | Yes | |
Dust_Recycle | integer | Yes | |
Dust_Scale | real | Yes | |
Dust_ScaleSpeed | real | Yes | |
Dust_Timer | timer | No | |
Dust_Transparency | real | Yes | |
Dust_TransSpeed | real | Yes | |
earthdash | location | No | |
Earthdummy | unit | No | |
Earthfurrbuffeffect | effect | No | |
EGG | location | No | |
Eggcarrier | unit | No | |
EkstaseReachStorm | boolean | No | |
EkstaseStorm | unit | Yes | |
electriceffect | effect | Yes | |
extratime | boolean | No | |
F_Integers | integer | Yes | |
F_ReachedFading | real | Yes | |
F_RFS_Caster | unit | Yes | |
F_RFS_MaxDamage | real | Yes | |
F_SetFadeValue | boolean | Yes | |
F_Time | real | Yes | |
F_Unit | unit | Yes | |
facingfire | location | No | |
fatalposi | location | No | |
Fataltext | group | No | |
Fatalwoundgroup | group | No | |
fireballeffect | effect | No | |
firecaster | unit | No | |
FireDamage | real | No | |
firedash | location | No | |
FireMainCaster | unit | No | |
Fireswordgroup | group | No | |
fireswordposi | location | No | |
First_Blood | boolean | No | |
firststrike | unit | Yes | |
FixPoint | location | No | |
flame | unit | No | |
FlamestrikeGroup | group | No | |
Force_SkyTitan | force | No | |
Force_UndergroundTitan | force | No | |
freeze | group | No | |
frostdamage | real | No | |
Frostend | unit | No | |
frozen | location | No | |
fw_CV1 | integer | No | |
fw_CV2 | integer | No | |
GDD__Integers | integer | Yes | |
GDD__LeftMapGroup | group | No | |
GDD__TriggerArray | trigger | Yes | |
GDD__UnitArray | unit | Yes | |
GDD_Damage | real | No | |
GDD_DamagedUnit | unit | No | |
GDD_DamageSource | unit | No | |
GDD_Event | real | No | |
Goresound | location | No | |
goreunit | unit | No | |
GroundDash | boolean | No | |
Groundpoint | location | No | |
GroupCanon | group | No | |
GroupLife | group | No | |
GroupPoison | group | No | |
HammerInit | integer | No | |
HammerInt | integer | No | |
HammerP | location | No | |
HammerP10 | location | No | |
HammerP2 | location | No | |
HammerP3 | location | No | |
HammerP4 | location | No | |
HammerP5 | location | No | |
HammerP6 | location | No | |
HammerP7 | location | No | |
HammerP8 | location | No | |
HammerP9 | location | No | |
Hammerpoint | location | Yes | |
HeightCaster | real | No | |
heromanipulatingitem | location | No | |
heromanipulatingitem2 | location | No | |
HH_Ability | abilcode | No | |
HH_Buff | buffcode | No | |
HH_Chaser | unit | No | |
HH_ChaserTwo | unit | No | |
HH_ChaserType | unitcode | No | |
HH_Checking_Terrain | boolean | No | |
HH_Damage_Base | real | No | |
HH_Damage_Level | real | No | |
HH_Destroying_Trees | boolean | No | |
HH_DistanceBetweenEffects | real | No | |
HH_EffectModel | modelfile | No | |
HH_Group | group | No | |
HH_Group2 | group | No | |
HH_Manacost | real | No | |
HH_MaxRange_Base | real | No | |
HH_MaxRange_Level | real | No | |
HH_RangeofDamage | real | No | |
HH_TmpInt | integervar | No | |
HH_TmpPoint | location | No | |
HH_TmpPoint2 | location | No | |
HH_TmpPoint2Two | location | No | |
HH_TmpPoint3 | location | No | |
HH_TmpPoint3_two | location | No | |
HH_TmpPoint4 | location | No | |
HH_TmpPoint4_two | location | No | |
HH_TmpPointTwo | location | No | |
HH_TmpReal | real | No | |
HH_TmpRealTwo | real | No | |
HH_TotalDamage | real | No | |
HH_TotalRange | real | No | |
HH_TreeRemover | unit | No | |
Home_Alliance | boolean | No | |
Home_Horde | boolean | No | |
Hook | boolean | No | |
hookedblueflag | boolean | No | |
hookedredflag | boolean | No | |
HT | hashtable | No | |
i | integer | No | |
IceGroup | group | No | |
IceSlow | group | No | |
Init10 | integer | No | |
Init2 | integer | No | |
Init3 | integer | No | |
Init4 | integer | No | |
Init5 | integer | No | |
Init6 | integer | No | |
Init7 | integer | No | |
Init8 | integer | No | |
Init9 | integer | No | |
InitRed | integer | No | |
Integer_A | integer | No | |
Integer_B | integer | No | |
Integer_MultiboardPosition | integer | Yes | |
Integer_RevivalTime | integer | Yes | |
IntegerStorm | integer | No | |
itempickgroup | group | No | |
itempickgroup2 | group | No | |
K3_Angle | real | No | |
K3_BounceCoefficient | real | No | |
K3_Dest | destructable | No | |
K3_DestRadius | real | No | |
K3_DestroyDestMomentumConserve | real | No | |
K3_Dummy | unit | No | |
K3_Effect | string | No | |
K3_Fidelity | real | No | |
K3_Friction | real | No | |
K3_Gravity | real | No | |
K3_Group | group | No | |
K3_Hash | hashtable | No | |
K3_HitDest | boolean | No | |
K3_InstVel | real | No | |
K3_Key | integer | No | |
K3_MaxX | real | No | |
K3_MaxY | real | No | |
K3_MaxZDestroyDest | real | No | |
K3_MaxZVel2Bounce | real | No | |
K3_Min4KB | real | No | |
K3_MinFriction4FX | real | No | |
K3_MinimumZVel2Airborne | real | No | |
K3_MinVel2DestroyDest | real | No | |
K3_MinX | real | No | |
K3_MinY | real | No | |
K3_MinZ | real | No | |
K3_NewX | real | No | |
K3_NewY | real | No | |
K3_PathSize | integer | No | |
K3_Rect | rect | No | |
K3_Register | trigger | No | |
K3_TempKey | integer | No | |
K3_TempU | unit | No | |
K3_U | unit | No | |
K3_UseMoveSpeedMod | boolean | No | |
K3_UX | real | No | |
K3_UY | real | No | |
K3_Vel2D | real | No | |
K3_Velocity | real | No | |
K3_XOffs | real | No | |
K3_YOffs | real | No | |
K3_Z | real | No | |
K3_ZAngle | real | No | |
K3_ZDif | real | No | |
K3_ZLoc | location | No | |
K3_ZOffs | real | No | |
Kill_Points | integer | Yes | |
Killing_Spree | integer | Yes | |
Kills | integer | Yes | |
koli1 | location | No | |
koli2 | location | No | |
koli3 | location | No | |
LandPoint | location | No | |
LastManStanding | boolean | No | |
Lastthrowner | unit | No | |
Lastthrowner2 | unit | No | |
LCaster | unit | No | |
LCaster10 | unit | No | |
LCaster2 | unit | No | |
LCaster3 | unit | No | |
LCaster4 | unit | No | |
LCaster5 | unit | No | |
LCaster6 | unit | No | |
LCaster7 | unit | No | |
LCaster8 | unit | No | |
LCaster9 | unit | No | |
lifespawn | real | Yes | 0.00 |
lightdash | location | No | |
lightdummy | unit | Yes | |
LightInt | integer | No | |
lightning_HandleID | integer | No | |
LightningMUI | integer | No | |
lightningposi | location | No | |
Lightningroup | group | No | |
lightningultdummy | unit | Yes | |
LightningUltEffect | effect | Yes | |
LightningUltEffect2 | effect | Yes | |
LightningUltimatespells | real | No | |
lightpoint | integer | No | |
lightpos | location | No | |
Lightreal | real | No | |
lightremain | real | No | |
Loc1 | location | No | |
Loc2 | location | No | |
Lose | integer | Yes | |
Make_Kill | boolean | No | |
MapChoice | integer | No | |
mapnumber | integer | No | |
MS_Angle | real | Yes | |
MS_AoE | real | Yes | |
MS_Attack_Type | attacktype | Yes | |
MS_Collision | real | Yes | |
MS_Current_Distance | real | Yes | |
MS_Current_Height | real | Yes | |
MS_Current_Height2 | real | Yes | |
MS_Current_Index | integer | No | |
MS_Damage | real | Yes | |
MS_Damage_Type | damagetype | Yes | |
MS_Distance | real | Yes | |
MS_Fly_Speed | real | Yes | |
MS_Index | integer | Yes | |
MS_Index_Size | integer | No | |
MS_Loop | integervar | No | |
MS_Max_Distance | real | Yes | |
MS_Max_Height | real | Yes | |
MS_Max_Index | integer | No | |
MS_Missile | unit | Yes | |
MS_Move_Speed | real | Yes | |
MS_Player | player | Yes | |
MS_Start_Height | real | Yes | |
MS_Start_Location_Z | real | Yes | |
MS_Unit | unit | Yes | |
MSC_Angle | real | No | |
MSC_AoE | real | No | |
MSC_Attack_Type | attacktype | No | |
MSC_Collision | real | No | |
MSC_Damage | real | No | |
MSC_Damage_Type | damagetype | No | |
MSC_Distance | real | No | |
MSC_Max_Distance | real | No | |
MSC_Max_Height | real | No | |
MSC_Move_Speed | real | No | |
MSC_Player | player | No | |
MSC_Start_Height | real | No | |
MSC_Strike_Ground | boolean | No | |
MSC_Unit | unit | No | |
MUI | integer | No | |
MUIAngle | real | Yes | |
MUICaster | unit | Yes | |
MUISlide | real | Yes | |
MUITarget | unit | Yes | |
Multiboard | multiboard | No | |
MultiboardName | string | No | |
natureeffect | effect | Yes | |
NearbyUnit | unit | No | |
ninja | unit | No | |
Ninjagroup | group | No | |
ninjaposi | location | No | |
Observer | force | No | |
Observer1 | force | No | |
Offset | real | No | |
P1 | location | No | |
P2 | location | No | |
P3 | location | No | |
P4 | location | No | |
P5 | location | No | |
P6 | location | No | |
P7 | location | No | |
P8 | location | No | |
Patrol | location | No | |
Patrol1 | location | No | |
Patrol2 | location | No | |
Patrol3 | location | No | |
Patrol4 | location | No | |
PB | integervar | No | |
PB_Damage | real | Yes | |
PB_DebugGroup | group | Yes | |
PB_Group | group | Yes | |
PB_Hero | unit | Yes | |
PB_Level | integer | Yes | |
PB_Point | location | Yes | |
PB_Skip | integer | No | |
PB_Times | integer | No | |
Pbody | location | No | |
pf | location | No | |
PH_Cast_Point | location | No | |
PH_Caster | unit | Yes | |
PH_Counter | integer | Yes | |
PH_Damage | integer | No | |
PH_Distance | integer | No | |
PH_Dummy | unit | Yes | |
PH_Dummy_Point | location | Yes | |
PH_Effect | unit | No | |
PH_Hook_Angle | real | Yes | |
PH_Hook_Point | location | Yes | |
PH_Hooked_Is | boolean | Yes | |
PH_Hooked_Unit | unit | Yes | |
PH_Index | integer | Yes | |
PH_Near_Point | location | No | |
PH_Table | hashtable | No | |
PH_Target_Point | location | No | |
PickedBlue | boolean | No | |
PickedRed | boolean | No | |
Pikeunit | unit | No | |
Placed1 | boolean | No | |
Placed2 | boolean | No | |
PlayerColors | string | Yes | |
Playername | string | Yes | |
PlayerNinjaGroup | group | No | |
playmaparea | location | No | |
Point1 | location | No | |
Point11 | location | No | |
Point111 | location | No | |
Point2 | location | No | |
Point22 | location | No | |
Point222 | location | No | |
pointcast | location | No | |
Points | integer | Yes | |
pointwind | location | No | |
posdie | location | No | |
posdie2 | location | No | |
posdie3 | location | No | |
posicast | location | Yes | |
posicloud | location | No | |
posicrush | location | No | |
posidagger | location | No | |
posidie | location | No | |
posidie2 | location | No | |
Posiflame | location | No | |
posigore | location | No | |
posihandlelight | location | No | |
posiheroitem | location | No | |
PosiKU | location | No | |
posimainlight | location | Yes | |
posipick | location | No | |
posirock | location | No | |
posismoke | location | No | |
Positemp | location | No | |
posiThrow1 | location | No | |
posiThrow2 | location | No | |
Position_FlagAlliance | location | No | |
Position_FlagHorde | location | No | |
Position_RevivalAlliance | location | No | |
Position_RevivalHorde | location | No | |
poswind | location | No | |
PosWood | location | No | |
PotionPush | group | No | |
PullGroup | group | No | |
PullsTheTarget | boolean | No | |
randomninja | integer | No | |
range | location | No | |
RCSS_AddedShakiness | real | No | |
RCSS_EventLocation | location | No | |
RCSS_EventMagnitude | real | No | |
RCSS_EventMaxRange | real | No | |
RCSS_EventPlayer | player | No | |
RCSS_LoopPeriod | real | No | |
RCSS_MagnitudeReduceFlat | real | No | |
RCSS_MagnitudeReducePercent | real | No | |
RCSS_PlayerCameraLocation | location | No | |
RCSS_PlayerCurrentShake | real | Yes | |
RCSS_ShakingPlayers | force | No | |
RCSS_StopShakeThreshold | real | No | |
RCSS_tempDistance | real | No | |
RCSS_tempId | integer | No | |
RCSS_tempPlayer | player | No | |
RCSS_tempX | real | No | |
RCSS_tempY | real | No | |
Reach | real | No | |
redboolean | boolean | No | |
redflagcheck | boolean | No | |
RedhasThrownFlagTree | boolean | No | |
reditemeffect | effect | No | |
RedScroll | item | No | |
RedScrollPush | group | No | |
Removebuff1 | group | No | |
Removebuff2 | group | No | |
RemovePoint | location | No | |
RespawnPoint | location | No | |
RespawnPoint2 | location | No | |
RespawnTime | real | No | |
Return1 | group | No | |
Return2 | group | No | |
returncheckblue | boolean | No | |
returncheckred | boolean | No | |
returngroup | group | No | |
Returngroup2 | group | No | |
returngrouphook | group | No | |
returngrouphook2 | group | No | |
Returns | integer | Yes | |
returnscrollteam1 | boolean | No | |
returnscrollteam2 | boolean | No | |
Returnspeed | integer | Yes | 0 |
Reverse | boolean | Yes | |
Revive1 | location | No | |
Revive2 | location | No | |
RF_AoE | real | No | |
RF_DamagePoint | location | No | |
RF_DamageTrees | boolean | No | |
RF_FallingTime | real | No | |
RF_MaxDamagePerRock | real | No | |
RF_MinDamagePerRock | real | No | |
RF_RockfallSequenceTimer | real | No | |
RF_RocksPerLevel | integer | No | |
RF_SineReals | real | Yes | |
RF_UnitGroup | group | No | |
RFA_Angle | real | Yes | |
RFA_Caster | unit | Yes | |
RFA_Distances | real | Yes | |
RFA_Group | group | No | |
RFA_HighSettings | real | Yes | |
RFA_Integers | integer | Yes | |
RFA_JumpHigh | real | Yes | |
RFA_MaxDmg | real | Yes | |
RFA_ReachedDistance | real | Yes | |
RFA_RealTimer | real | Yes | |
RFA_SpeedUnits | real | Yes | |
RFA_TempPoint | location | Yes | |
RFA_Unit | unit | Yes | |
RFAA_JumpHigh_Distance | real | No | |
RFAA_Speed | real | No | |
RFAA_TargetPoint | location | No | |
RFAA_Unit | unit | No | |
RFS_Caster | unit | Yes | |
RFS_Conjuring | boolean | Yes | |
RFS_ConjurPoint | location | No | |
RFS_DummyIntegers | integer | Yes | |
RFS_MaxDamage | real | Yes | |
RFS_NumberConjured | integer | Yes | |
RFS_NumberOfRocks | integer | Yes | |
RFS_Reals | real | Yes | |
RFS_TempPoint | location | Yes | |
RFS_Timer | real | Yes | |
RFSine_Caster | unit | Yes | |
RFSine_Integers | integer | Yes | |
RFSine_MaxDamage | real | Yes | |
RFSine_Unit | unit | Yes | |
root | effect | No | |
RTaken | boolean | No | |
Rune1 | item | No | |
Rune1effect | effect | No | |
Rune1on | boolean | No | |
Rune2 | item | No | |
Rune2effect | effect | No | |
RuneTeam1Taken | boolean | No | |
RuneTeam2Taken | boolean | No | |
RuneTimer | real | No | |
savepoint | location | Yes | |
savepointX | location | No | |
savescroll | location | No | |
savescroll2 | location | No | |
Score_Alliance | integer | No | |
Score_Caps | integer | Yes | |
Score_Deaths | integer | Yes | |
Score_Horde | integer | No | |
Score_Kills | integer | Yes | |
Score_Returns | integer | Yes | |
ScrollBlue | item | No | |
scrollcenter | location | No | |
Scrolleffect1 | effect | No | |
scrollLoc | location | No | |
scrollLoc2 | location | No | |
scrollowner | unit | No | |
scrollowner2 | unit | No | |
Scrollteam1stolen | boolean | No | |
Scrollteam2stolen | boolean | No | |
ScrollWall | location | No | |
SelectGroup | group | No | |
SelectGroup2 | group | No | |
sgroupA | group | No | |
shakeposi | location | No | |
Shark | effect | Yes | |
sheep | unit | No | |
shockeffect | effect | No | |
Shoot1 | location | No | |
Shoot2 | location | No | |
Shoot3 | location | No | |
Shoot4 | location | No | |
shoptimer | timer | No | |
ShuCaster | unit | No | |
Slashgroup | group | No | |
SlashPoint | location | No | |
SoundCapture | sound | Yes | |
SpawnBLUE | location | No | |
spawndummy | location | No | |
spawnpointTest | location | No | |
SpawnRED | location | No | |
Speardummy | unit | No | |
Speed | real | No | |
SPREE_INTEGER | integer | Yes | |
SPREE_NEXT_KILL | integer | Yes | |
SPREE_NEXT_KILL_MAXIMUM_TIMER | integer | No | |
SPREE_NEXT_KILL_SOUND | sound | Yes | |
SPREE_SOUND | sound | Yes | |
SPREE_TIMER | integer | Yes | |
startlightID | location | No | |
StartTemp | location | No | |
stormeffect1 | effect | Yes | |
stormeffect2 | effect | Yes | |
Stormgroup | group | No | |
Storminteger | integer | No | |
String_B | string | No | |
T1Aalarm | boolean | No | |
T1Points | integer | No | |
T2Points | integer | No | |
targetpointearth | location | No | |
TDS | integervar | No | |
TDS2 | integer | No | |
TDS_Damage | real | Yes | |
TDS_Hero | unit | Yes | |
TDS_On | boolean | Yes | |
TDS_Skip | integer | No | |
TDS_Target | unit | Yes | |
TDS_Time | real | Yes | |
TDS_Times | integer | No | |
Team1 | group | No | |
Team1Points | integer | Yes | |
Team1Win | integer | No | |
Team2 | group | No | |
Team2Points | integer | Yes | |
Team2Win | integer | No | |
TeamDeathmatch | boolean | No | |
TeamName_1 | string | No | |
TeamName_2 | string | No | |
tele | location | No | |
Temp_Group | group | No | |
Temp_Point | location | No | |
Temp_Point2 | location | No | |
Temp_Point3 | location | No | |
Temp_Real | real | Yes | |
tempGroup | group | No | |
TempGroup | group | No | |
TempgroupB | group | No | |
TempgroupC | group | No | |
TempgroupF | group | No | |
TempgroupG | group | No | |
TempgroupH | group | No | |
TempgroupJ | group | No | |
TempgroupW | group | No | |
TempInteger | integer | No | |
TempInteger2 | integer | No | |
TemporaryPoint | location | No | |
TemporaryPoint2 | location | No | |
TempPoint | location | No | |
TempPointArray | location | Yes | |
TempUnit | unit | No | |
Test | real | No | |
Text_Difficulty | string | Yes | |
Text_Duration | real | No | |
Text_exp_rate | string | Yes | |
Text_hero | string | Yes | |
TextSize_dmg | real | No | |
TextSize_spells | real | No | |
throwpoint | location | No | |
throwred | boolean | No | |
throwred2 | boolean | No | |
tht | hashtable | No | |
thudnercaster | unit | No | |
Time_Per_Level_Revive | integer | No | |
Timer_Revival | timer | Yes | |
TimerLightning | timer | No | |
TKGroup | group | No | |
TKInt | integer | No | |
TKintChecker | integer | No | |
TKLoopInt2 | integervar | No | |
TKoffset | real | No | |
TKUnit | unit | No | |
tornadpos | location | No | |
touchdown | location | No | |
touchdown2 | location | No | |
ttt | terraintype | No | |
u | unit | No | |
UgW_AbilityTypeA | abilcode | Yes | |
UgW_AbilityTypeB | abilcode | Yes | |
UgW_AlreadyTouched | group | Yes | |
UgW_AngleA | real | Yes | |
UgW_AngleB | real | Yes | |
UgW_AoE | real | Yes | |
UgW_AoEExplosion | real | Yes | |
UgW_BumpedUnit | unit | Yes | |
UgW_CasterA | unit | Yes | |
UgW_CasterB | unit | Yes | |
UgW_DamagesFinal | real | Yes | |
UgW_DamagesUnderground | real | Yes | |
UgW_DestroyTrees | boolean | Yes | |
UgW_Distance | real | Yes | |
UgW_DistanceA | real | Yes | |
UgW_DistanceB | real | Yes | |
UgW_DistanceEffects | real | Yes | |
UgW_DistanceReachedA | real | Yes | |
UgW_DistanceReachedB | real | Yes | |
UgW_DummyGroup | unit | Yes | |
UgW_DummyPoint | unit | Yes | |
UgW_Effect | string | Yes | |
UgW_EffectExplosion1 | string | Yes | |
UgW_EffectExplosion2 | string | Yes | |
UgW_FinalDestination | unit | Yes | |
UgW_GroupA | group | No | |
UgW_GroupB | group | No | |
UgW_HighBump | real | Yes | |
UgW_HighSettings | real | Yes | |
UgW_Integer | integer | Yes | |
UgW_LandingEffectA | string | Yes | |
UgW_LandingEffectB | string | Yes | |
UgW_LevelA | integer | Yes | |
UgW_LevelB | integer | Yes | |
UgW_RealTimer | real | Yes | |
UgW_Speed | real | Yes | |
UgW_SpeedBumpA | real | Yes | |
UgW_SpeedBumpB | real | Yes | |
UgW_StunTypeA | unitcode | Yes | |
UgW_StunTypeB | unitcode | Yes | |
UgW_TempGroup | group | No | |
UgW_TempPoint | location | No | |
UgW_TempPoint2 | location | No | |
UgW_TempPoint3 | location | No | |
UgW_TempPoint4 | location | No | |
Ultimatestormcaster | unit | Yes | |
Unit1 | unit | No | |
Unit_Reviving | unit | Yes | |
water | boolean | No | |
water2 | boolean | No | |
watereffect | effect | Yes | |
WB_MaxX | real | No | |
WB_MaxY | real | No | |
WB_MinX | real | No | |
WB_MinY | real | No | |
WB_World | rect | No | |
WBlue | location | No | |
Win | integer | Yes | |
Windcharge | boolean | No | |
windscarangle | real | No | |
Windweapon | effect | No | |
Wins_Symbol | string | No | |
Wrathofrostmourne_Damage | integer | No | |
WRed | location | No |
//TESH.scrollpos=292
//TESH.alwaysfold=0
function Trig_Ulimate_spell_JASS_Conditions takes nothing returns boolean
if ( not ( GetSpellAbilityId() == 'A01P' ) ) then
return false
endif
return true
endfunction
function Trig1 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE) == false )
endfunction
function Trig2 takes nothing returns boolean
return ( GetFilterUnit() != udg_HH_Chaser )
endfunction
function Trig2b takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_FLYING) == false )
endfunction
function Trig3 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_MAGIC_IMMUNE) == false )
endfunction
function Trig4 takes nothing returns nothing
if ( IsPlayerEnemy(GetOwningPlayer(GetEnumUnit()),GetOwningPlayer(udg_HH_Chaser)) == true) then
call UnitDamageTarget(udg_HH_Chaser,GetEnumUnit(),50.00,false,false,ATTACK_TYPE_CHAOS,DAMAGE_TYPE_DIVINE,WEAPON_TYPE_AXE_MEDIUM_CHOP)
endif
// call UnitDamageTargetBJ( udg_HH_Chaser, GetEnumUnit(), 50.00, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_DIVINE )
endfunction
function Trig5 takes nothing returns nothing
if ( IsPlayerEnemy(GetOwningPlayer(GetEnumUnit()),GetOwningPlayer(udg_HH_Chaser)) == false ) then
call SetUnitLifeBJ( GetEnumUnit(), ( GetUnitStateSwap(UNIT_STATE_LIFE, GetEnumUnit()) + 50.00 ) )
endif
endfunction
function Trig6 takes nothing returns nothing
if ( IsPlayerEnemy(GetOwningPlayer(GetEnumUnit()),GetOwningPlayer(udg_HH_Chaser)) == true ) then
call UnitDamageTarget(udg_HH_Chaser,GetEnumUnit(),80.00,false,false,ATTACK_TYPE_CHAOS,DAMAGE_TYPE_DIVINE,WEAPON_TYPE_AXE_MEDIUM_CHOP)
endif
// call UnitDamageTargetBJ( udg_HH_Chaser, GetEnumUnit(), 170.00, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_DIVINE )
endfunction
function Trig7 takes nothing returns nothing
if ( IsPlayerEnemy(GetOwningPlayer(GetEnumUnit()),GetOwningPlayer(udg_HH_Chaser)) == false ) then
call SetUnitLifeBJ( GetEnumUnit(), ( GetUnitStateSwap(UNIT_STATE_LIFE, GetEnumUnit()) + 100.00 ) )
endif
endfunction
function Trig8 takes nothing returns nothing
call SetUnitLifeBJ( GetEnumUnit(), ( GetUnitStateSwap(UNIT_STATE_LIFE, GetEnumUnit()) + 100.00 ) )
endfunction
function Trig9 takes nothing returns nothing
if ( IsPlayerEnemy(GetOwningPlayer(GetEnumUnit()),GetOwningPlayer(udg_HH_Chaser)) == false ) then
if ( UnitHasItemOfTypeBJ(udg_HH_Chaser, 'I002') == true ) then
call CreateTextTagUnitBJ( "100", GetEnumUnit(), 0.00, 12.00, 0.00, 100.00, 0.00, 0 )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 90.00, GetRandomReal(80.00, 90.00) )
call SetTextTagPermanentBJ( GetLastCreatedTextTag(), false )
call SetTextTagLifespanBJ( GetLastCreatedTextTag(), 2.00 )
call SetTextTagFadepointBJ( GetLastCreatedTextTag(), 1.50 )
call AddSpecialEffectTargetUnitBJ( "chest", GetEnumUnit(), "Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl" )
else
call CreateTextTagUnitBJ( "50", GetEnumUnit(), 0.00, 12.00, 0.00, 100.00, 0.00, 0 )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 90.00, GetRandomReal(80.00, 90.00) )
call SetTextTagPermanentBJ( GetLastCreatedTextTag(), false )
call SetTextTagLifespanBJ( GetLastCreatedTextTag(), 2.00 )
call SetTextTagFadepointBJ( GetLastCreatedTextTag(), 1.50 )
call AddSpecialEffectTargetUnitBJ( "chest", GetEnumUnit(), "Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl" )
endif
endif
endfunction
function Trig_Ulimate_spell_JASS_Actions takes nothing returns nothing
local unit HH_Chaser = GetSpellAbilityUnit()
local location HH_TmpPoint = GetUnitLoc(HH_Chaser)
local player pl = GetOwningPlayer(HH_Chaser)
local location HH_TmpPoint2 = GetSpellTargetLoc()
local real TmpReal = DistanceBetweenPoints(HH_TmpPoint,HH_TmpPoint2)
local real direction = AngleBetweenPoints(HH_TmpPoint,HH_TmpPoint2)
local location HH_TmpPoint4 = PolarProjectionBJ(HH_TmpPoint,udg_HH_TotalRange,direction)
local real HH_TmpReal = ( udg_HH_TotalRange / udg_HH_DistanceBetweenEffects )
local integer i = 1
local location HH_TmpPoint3
local unit u2
local unit u
local group HH_Group
local group HH_Group2
local effect fx
set udg_HH_Chaser = GetSpellAbilityUnit()
if ( GetUnitFlyHeight(HH_Chaser) < 50.00 ) then
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!!!!! Setting every values which are used in the spell!!!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
set u = CreateUnitAtLoc(pl,'h01Z',HH_TmpPoint,0)
call UnitApplyTimedLife(u,'BTLF',1.50)
call SetUnitTimeScalePercent( u, 220.00 )
call SetUnitFacingTimed( HH_Chaser, AngleBetweenPoints(HH_TmpPoint, HH_TmpPoint2), 0 )
set udg_HH_TotalRange = 1200.00
set udg_HH_TotalDamage = 200.00
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!!!!!!!!!!!! Checking if OrderRange > TotalRange!!!!!!!!!!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
set udg_HH_TmpPoint4 = PolarProjectionBJ(udg_HH_TmpPoint, udg_HH_TotalRange, direction)
loop
exitwhen i > R2I(HH_TmpReal)
set HH_TmpPoint3 = PolarProjectionBJ(HH_TmpPoint, ( udg_HH_DistanceBetweenEffects * I2R(i) ), direction)
set u2 = CreateUnitAtLoc(pl,'h023',HH_TmpPoint3,0)
call UnitApplyTimedLife(u2,'BTLF',1.50)
call SetUnitTimeScalePercent( u2, 80.00 )
call RemoveLocation(HH_TmpPoint3)
call TriggerSleepAction( 0.01 )
set i = i + 1
endloop
call RemoveLocation(HH_TmpPoint4)
set HH_TmpPoint4 = PolarProjectionBJ(HH_TmpPoint, udg_HH_TotalRange, direction)
set HH_TmpReal = ( udg_HH_TotalRange / udg_HH_DistanceBetweenEffects )
set i = 1
loop
exitwhen i > R2I(HH_TmpReal)
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!!!!!!!!!!!!!!! Creating the specials effects and applying damage!!!!!!!!!!!!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
set HH_TmpPoint3 = PolarProjectionBJ(HH_TmpPoint, ( udg_HH_DistanceBetweenEffects * I2R(i) ), direction)
set HH_Group = GetUnitsInRangeOfLocMatching(udg_HH_RangeofDamage, HH_TmpPoint3, Condition(function Trig1))
set HH_Group2 = GetUnitsInRangeOfLocMatching(udg_HH_RangeofDamage, HH_TmpPoint3, Condition(function Trig2))
if ( UnitHasItemOfTypeBJ(HH_Chaser,'I002') == true ) then
call ForGroup( HH_Group, function Trig6 )
call ForGroup( HH_Group2, function Trig7 )
else
call ForGroup( HH_Group, function Trig4 )
call ForGroup( HH_Group2, function Trig5 )
endif
// call ForGroup( HH_Group2, function Trig8 )
call ForGroup( HH_Group2, function Trig9 )
call DestroyGroup(HH_Group)
set u = CreateUnitAtLoc(pl,'h020',HH_TmpPoint3,0)
call UnitApplyTimedLife(u,'BTLF',1.50)
call SetUnitTimeScalePercent( u, 150.00 )
set u2 = CreateUnitAtLoc(pl,'h01Y',HH_TmpPoint3,0)
call IssueImmediateOrder(u2,"roar")
call SetUnitTimeScalePercent( u2, 420.00 )
call SetUnitAnimation( u2, "birth" )
call UnitApplyTimedLife(u2,'BTLF',2.00)
set fx = AddSpecialEffectLoc("Objects\\Spawnmodels\\Other\\NeutralBuildingExplosion\\NeutralBuildingExplosion.mdl",HH_TmpPoint3)
call DestroyEffect(fx)
call RemoveLocation(HH_TmpPoint3)
call TriggerSleepAction( 0.04 )
set i = i + 1
endloop
call RemoveLocation(HH_TmpPoint4)
set udg_centerscroll = GetRectCenter(gg_rct_itemscrollarea)
call SetItemPositionLoc( GetItemOfTypeFromUnitBJ(HH_Chaser, 'I002'), udg_centerscroll )
call RemoveLocation(udg_centerscroll)
call RemoveLocation(HH_TmpPoint)
call RemoveLocation(HH_TmpPoint2)
else
set udg_BlinkLight = true
call TriggerSleepAction( 0.05 )
set fx = AddSpecialEffectLoc("DivineRage.mdx",HH_TmpPoint)
call DestroyEffect(fx)
call SetUnitPositionLoc( HH_Chaser, HH_TmpPoint2 )
call RemoveLocation(HH_TmpPoint2)
endif
endfunction
//===========================================================================
function InitTrig_Ulimate_spell_JASS takes nothing returns nothing
set gg_trg_Ulimate_spell_JASS = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Ulimate_spell_JASS, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( gg_trg_Ulimate_spell_JASS, Condition( function Trig_Ulimate_spell_JASS_Conditions ) )
call TriggerAddAction( gg_trg_Ulimate_spell_JASS, function Trig_Ulimate_spell_JASS_Actions )
endfunction
//TESH.scrollpos=113
//TESH.alwaysfold=0
function Trig_Ultimate_spell_Kopieren_Conditions takes nothing returns boolean
if ( not ( GetSpellAbilityId() == 'A01P' ) ) then
return false
endif
return true
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func027C takes nothing returns boolean
return true
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_STRUCTURE) == false )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_FLYING) == false )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002002001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_MAGIC_IMMUNE) == false )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002002002 takes nothing returns boolean
return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_HH_Chaser)) == true )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002002 takes nothing returns boolean
return GetBooleanAnd( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002002001(), Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002002002() )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002 takes nothing returns boolean
return GetBooleanAnd( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002001(), Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002002() )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003 takes nothing returns boolean
return GetBooleanAnd( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003001(), Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003002() )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003001 takes nothing returns boolean
return ( GetFilterUnit() != udg_HH_Chaser )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_FLYING) == false )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002002001 takes nothing returns boolean
return ( IsUnitType(GetFilterUnit(), UNIT_TYPE_MAGIC_IMMUNE) == false )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002002002 takes nothing returns boolean
return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_HH_Chaser)) == false )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002002 takes nothing returns boolean
return GetBooleanAnd( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002002001(), Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002002002() )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002 takes nothing returns boolean
return GetBooleanAnd( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002001(), Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002002() )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003 takes nothing returns boolean
return GetBooleanAnd( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003001(), Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003002() )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func001002 takes nothing returns nothing
call UnitDamageTargetBJ( udg_HH_Chaser, GetEnumUnit(), 50.00, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_DIVINE )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func002002 takes nothing returns nothing
call SetUnitLifeBJ( GetEnumUnit(), ( GetUnitStateSwap(UNIT_STATE_LIFE, GetEnumUnit()) + 40.00 ) )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func004002 takes nothing returns nothing
call UnitDamageTargetBJ( udg_HH_Chaser, GetEnumUnit(), 85.00, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_DIVINE )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func005002 takes nothing returns nothing
call SetUnitLifeBJ( GetEnumUnit(), ( GetUnitStateSwap(UNIT_STATE_LIFE, GetEnumUnit()) + 80.00 ) )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007C takes nothing returns boolean
if ( not ( UnitHasItemOfTypeBJ(udg_HH_Chaser, 'I002') == true ) ) then
return false
endif
return true
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func008002 takes nothing returns nothing
call SetUnitLifeBJ( GetEnumUnit(), ( GetUnitStateSwap(UNIT_STATE_LIFE, GetEnumUnit()) + 40.00 ) )
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func009Func001C takes nothing returns boolean
if ( not ( UnitHasItemOfTypeBJ(udg_HH_Chaser, 'I002') == true ) ) then
return false
endif
return true
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func009A takes nothing returns nothing
if ( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func009Func001C() ) then
call CreateTextTagUnitBJ( "TRIGSTR_1019", GetEnumUnit(), 0.00, 12.00, 0.00, 100.00, 0.00, 0 )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 90.00, GetRandomReal(80.00, 90.00) )
call SetTextTagPermanentBJ( GetLastCreatedTextTag(), false )
call SetTextTagLifespanBJ( GetLastCreatedTextTag(), 2.00 )
call SetTextTagFadepointBJ( GetLastCreatedTextTag(), 1.50 )
call AddSpecialEffectTargetUnitBJ( "chest", GetEnumUnit(), "Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl" )
else
call CreateTextTagUnitBJ( "TRIGSTR_1018", GetEnumUnit(), 0.00, 12.00, 0.00, 100.00, 0.00, 0 )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 90.00, GetRandomReal(80.00, 90.00) )
call SetTextTagPermanentBJ( GetLastCreatedTextTag(), false )
call SetTextTagLifespanBJ( GetLastCreatedTextTag(), 2.00 )
call SetTextTagFadepointBJ( GetLastCreatedTextTag(), 1.50 )
call AddSpecialEffectTargetUnitBJ( "chest", GetEnumUnit(), "Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl" )
endif
endfunction
function Trig_Ultimate_spell_Kopieren_Func003Func028C takes nothing returns boolean
return true
endfunction
function Trig_Ultimate_spell_Kopieren_Func003C takes nothing returns boolean
if ( not ( GetUnitFlyHeight(GetSpellAbilityUnit()) < 50.00 ) ) then
return false
endif
return true
endfunction
function Trig_Ultimate_spell_Kopieren_Actions takes nothing returns nothing
if ( Trig_Ultimate_spell_Kopieren_Func003C() ) then
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!!!!! Setting every values which are used in the spell!!!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
set udg_HH_Chaser = GetSpellAbilityUnit()
set udg_HH_TmpPoint = GetUnitLoc(udg_HH_Chaser)
call CreateNUnitsAtLoc( 1, 'h01Z', GetOwningPlayer(GetSpellAbilityUnit()), udg_HH_TmpPoint, GetUnitFacing(GetSpellAbilityUnit()) )
call UnitApplyTimedLifeBJ( 1.50, 'BTLF', GetLastCreatedUnit() )
call SetUnitTimeScalePercent( GetLastCreatedUnit(), 220.00 )
set udg_HH_TmpPoint2 = GetSpellTargetLoc()
call SetUnitFacingTimed( udg_HH_Chaser, AngleBetweenPoints(udg_HH_TmpPoint, udg_HH_TmpPoint2), 0 )
set udg_HH_TmpReal = DistanceBetweenPoints(udg_HH_TmpPoint, udg_HH_TmpPoint2)
set udg_HH_TotalRange = 1200.00
set udg_HH_TotalDamage = 60.00
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!!!!!!!!!!!! Checking if OrderRange > TotalRange!!!!!!!!!!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
if ( Trig_Ultimate_spell_Kopieren_Func003Func027C() ) then
set udg_HH_TmpPoint4 = PolarProjectionBJ(udg_HH_TmpPoint, udg_HH_TotalRange, AngleBetweenPoints(udg_HH_TmpPoint, udg_HH_TmpPoint2))
set udg_HH_TmpReal = ( udg_HH_TotalRange / udg_HH_DistanceBetweenEffects )
set udg_HH_TmpInt = 1
loop
exitwhen udg_HH_TmpInt > R2I(udg_HH_TmpReal)
set udg_HH_TmpPoint3 = PolarProjectionBJ(udg_HH_TmpPoint, ( udg_HH_DistanceBetweenEffects * I2R(udg_HH_TmpInt) ), AngleBetweenPoints(udg_HH_TmpPoint, udg_HH_TmpPoint2))
call CreateNUnitsAtLoc( 1, 'h023', GetOwningPlayer(udg_HH_Chaser), udg_HH_TmpPoint3, bj_UNIT_FACING )
call UnitApplyTimedLifeBJ( 1.50, 'BTLF', GetLastCreatedUnit() )
call SetUnitTimeScalePercent( GetLastCreatedUnit(), 80.00 )
call RemoveLocation(udg_HH_TmpPoint3)
call TriggerSleepAction( 0.01 )
set udg_HH_TmpInt = udg_HH_TmpInt + 1
endloop
call RemoveLocation(udg_HH_TmpPoint4)
else
endif
if ( Trig_Ultimate_spell_Kopieren_Func003Func028C() ) then
set udg_HH_TmpPoint4 = PolarProjectionBJ(udg_HH_TmpPointTwo, udg_HH_TotalRange, AngleBetweenPoints(udg_HH_TmpPoint, udg_HH_TmpPoint2))
set udg_HH_TmpReal = ( udg_HH_TotalRange / udg_HH_DistanceBetweenEffects )
set udg_HH_TmpInt = 1
loop
exitwhen udg_HH_TmpInt > R2I(udg_HH_TmpReal)
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// !!!!!!!!!!!!!!!! Creating the specials effects and applying damage!!!!!!!!!!!!!!!
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
set udg_HH_TmpPoint3 = PolarProjectionBJ(udg_HH_TmpPoint, ( udg_HH_DistanceBetweenEffects * I2R(udg_HH_TmpInt) ), AngleBetweenPoints(udg_HH_TmpPoint, udg_HH_TmpPoint2))
set udg_HH_Group = GetUnitsInRangeOfLocMatching(udg_HH_RangeofDamage, udg_HH_TmpPoint3, Condition(function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func005002003))
set udg_HH_Group2 = GetUnitsInRangeOfLocMatching(udg_HH_RangeofDamage, udg_HH_TmpPoint3, Condition(function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func006002003))
if ( Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007C() ) then
call ForGroupBJ( udg_HH_Group, function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func004002 )
call ForGroupBJ( udg_HH_Group2, function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func005002 )
else
call ForGroupBJ( udg_HH_Group, function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func001002 )
call ForGroupBJ( udg_HH_Group2, function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func007Func002002 )
endif
call ForGroupBJ( udg_HH_Group2, function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func008002 )
call ForGroupBJ( udg_HH_Group2, function Trig_Ultimate_spell_Kopieren_Func003Func028Func003Func009A )
call DestroyGroup(udg_HH_Group)
call CreateNUnitsAtLoc( 1, 'h020', GetOwningPlayer(udg_HH_Chaser), udg_HH_TmpPoint3, bj_UNIT_FACING )
call UnitApplyTimedLifeBJ( 1.50, 'BTLF', GetLastCreatedUnit() )
call SetUnitTimeScalePercent( GetLastCreatedUnit(), 150.00 )
call CreateNUnitsAtLoc( 1, 'h01Y', GetOwningPlayer(udg_HH_Chaser), udg_HH_TmpPoint3, bj_UNIT_FACING )
call IssueImmediateOrderBJ( GetLastCreatedUnit(), "roar" )
call SetUnitTimeScalePercent( GetLastCreatedUnit(), 420.00 )
call SetUnitAnimation( GetLastCreatedUnit(), "birth" )
call UnitApplyTimedLifeBJ( 2.00, 'BTLF', GetLastCreatedUnit() )
call AddSpecialEffectLocBJ( udg_HH_TmpPoint3, "Objects\\Spawnmodels\\Other\\NeutralBuildingExplosion\\NeutralBuildingExplosion.mdl" )
call DestroyEffectBJ( GetLastCreatedEffectBJ() )
call RemoveLocation(udg_HH_TmpPoint3)
call TriggerSleepAction( 0.04 )
set udg_HH_TmpInt = udg_HH_TmpInt + 1
endloop
call RemoveLocation(udg_HH_TmpPoint4)
set udg_centerscroll = GetRectCenter(gg_rct_itemscrollarea)
call SetItemPositionLoc( GetItemOfTypeFromUnitBJ(udg_HH_Chaser, 'I002'), udg_centerscroll )
call RemoveLocation(udg_centerscroll)
else
endif
call RemoveLocation(udg_HH_TmpPoint)
call RemoveLocation(udg_HH_TmpPoint2)
else
set udg_HH_Chaser = GetSpellAbilityUnit()
set udg_HH_TmpPoint = GetUnitLoc(udg_HH_Chaser)
set udg_HH_TmpPoint2 = GetSpellTargetLoc()
set udg_BlinkLight = true
call TriggerSleepAction( 0.05 )
call AddSpecialEffectLocBJ( udg_HH_TmpPointTwo, "DivineRage.mdx" )
call DestroyEffectBJ( GetLastCreatedEffectBJ() )
call SetUnitPositionLoc( udg_HH_Chaser, udg_HH_TmpPoint2 )
call RemoveLocation(udg_HH_TmpPoint2)
endif
endfunction
//===========================================================================
function InitTrig_Ultimate_spell_Kopieren takes nothing returns nothing
set gg_trg_Ultimate_spell_Kopieren = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Ultimate_spell_Kopieren, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( gg_trg_Ultimate_spell_Kopieren, Condition( function Trig_Ultimate_spell_Kopieren_Conditions ) )
call TriggerAddAction( gg_trg_Ultimate_spell_Kopieren, function Trig_Ultimate_spell_Kopieren_Actions )
endfunction
// Enable "Automatically create unknown variables while pasting trigger data" on File --> Preferences.
// Import DustWave.blp file from Import Manager.
// Import DustWaveVersion2.mdx file from Import Manager.
// Copy Dustwave dummy.
// Copy Dustwave GUI trigger and create or copy the init example.
// Configure the init trigger.
// Set the Full Path of DustWave.blp to "DustWave.blp" only.
// NOTE: You can also change the dustwave model in Object Editor if you have another version of the it.
//TESH.scrollpos=0
//TESH.alwaysfold=0
Rockfall
by Paladon
This spell is created for the Spells & Systems Mini-Contest #17 [S&SMC#17].
Enjoy testing ;)
How to import?
You only need the "Rockfall" Spell and the "Dummy" Unit from the Object Editor as well as the "Rockfall [Paladon]" category from the Trigger Editor.
Don´t forget to make use of the automatical creation of unknown variables while pasting the trigger data. You can find this option under File->Presettings->General.
Simply copy the named things into your map and apply the settings in the "Rockfall INI" trigger to your wishes.
Done ;)
To change the model of the rock, simply change the model of the "dummy" unit.
If you have any questions, feedback, further suggestions, whatever,
please register at http://www.hiveworkshop.com
and post your message in the spell´s thread
or send Paladon a PM (Personal Mail).
//Special thanks to Palaslayer for creating this great testmap\\
//TESH.scrollpos=0
//TESH.alwaysfold=0
ADDITIONAL INFORMATIONS
SPECIALS OF THIS SPELL
The following systems are created for this spell only, just in time of the contests duration.
This spell uses a modified version of my Projectile System.
This spell uses a modified version of my Apply Transparency System.
The crushing down of the rocks uses a growing acceleration.
The spell is completely MUI.
The "Rock Creation", "Sine Fall" and "callFadeEffect" triggers turn off themselves as soon as they are not needed anymore.
They additionally reset every variable data used for the trigger if they turn off by overwriting them upon reactivating.
These both functions are improving the efficiency a lot.
I recommend you to play around with the settings and to test again.
I especially liked to set the "RF_RocksPerLevel" to 20 and the "RF_FallingTime" to 5.00 seconds.
However, best wishes,
Paladon
//TESH.scrollpos=30
//TESH.alwaysfold=0
globals
real array CameraHeight
endglobals
function CameraPeriodic takes nothing returns nothing
local integer i = 0
local integer o
local string cmd = GetEventPlayerChatString()
loop
exitwhen i > 11
if GetLocalPlayer() == Player(i) then
call SetCameraField(CAMERA_FIELD_ZOFFSET,CameraHeight[i],1)
endif
set i = i+1
endloop
endfunction
function CameraSet takes nothing returns nothing
set CameraHeight[GetPlayerId(GetTriggerPlayer())] = S2I(SubString(GetEventPlayerChatString(),4,9))
endfunction
function InitTrig_Camera takes nothing returns nothing
local timer t = CreateTimer()
local trigger tt = CreateTrigger()
local integer i = 0
//periodic camera setter
call TimerStart(t,1,true,function CameraPeriodic)
loop
exitwhen i > 11
call TriggerRegisterPlayerChatEvent(tt,Player(i) ,"-cam",false)
set i = i+1
endloop
call TriggerAddAction(tt, function CameraSet)
set t = null
endfunction
//TESH.scrollpos=176
//TESH.alwaysfold=0
// GUI-Friendly Damage Detection -- v1.2.1 -- by Weep
// http:// www.thehelper.net/forums/showthread.php?t=137957
//
// Requires: only this trigger and its variables.
//
// -- What? --
// This snippet provides a leak-free, GUI-friendly implementation of an "any unit takes
// damage" event. It requires no JASS knowledge to use.
//
// It uses the Game - Value Of Real Variable event as its method of activating other
// triggers, and passes the event responses through a few globals.
//
// -- Why? --
// The traditional GUI method of setting up a trigger than runs when any unit is damaged
// leaks trigger events. This snippet is easy to implement and removes the need to do
// you own GUI damage detection setup.
//
// -- How To Implement --
// 0. Before you copy triggers that use GDD into a new map, you need to copy over GDD
// with its GDD Variable Creator trigger, or there will be a problem: the variables
// won't be automatically created correctly.
//
// 1. Be sure "Automatically create unknown variables while pasting trigger data" is
// enabled in the World Editor general preferences.
// 2. Copy this trigger category ("GDD") and paste it into your map.
// (Alternately: create the variables listed in the globals block below, create a
// trigger named "GUI Friendly Damage Detection", and paste in this entire text.)
// 3. Create your damage triggers using Game - Value Of Real Variable as the event,
// select GDD_Event as the variable, and leave the rest of the settings to the default
// "becomes Equal to 0.00".
// The event responses are the following variables:
// GDD_Damage is the amount of damage, replacing Event Response - Damage Taken.
// GDD_DamagedUnit is the damaged unit, replacing Event Response - Triggering Unit.
// Triggering Unit can still be used, if you need to use waits.
// Read the -- Notes -- section below for more info.
// GDD_DamageSource is the damaging unit, replacing Event Response - Damage Source.
//
// -- Notes --
// GDD's event response variables are not wait-safe; you can't use them after a wait in
// a trigger. If you need to use waits, Triggering Unit (a.k.a. GetTriggerUnit()) can
// be used in place of GDD_DamageSource. There is no usable wait-safe equivalent to
// Event Damage or Damage Source; you'll need to save the values yourself.
//
// Don't write any values to the variables used as the event responses, or it will mess
// up any other triggers using this snippet for their triggering. Only use their values.
//
// This uses arrays, so can detect damage for a maximum of 8190 units at a time, and
// cleans up data at a rate of 33.33 per second, by default. This should be enough for
// most maps, but if you want to change the rate, change the value returned in the
// GDD_RecycleRate function at the top of the code, below.
//
// By default, GDD will not register units that have Locust at the moment of their
// entering the game, and will not recognize when they take damage (which can only
// happen if the Locust ability is later removed from the unit.) To allow a unit to have
// Locust yet still cause GDD damage events if Locust is removed, you can either design
// the unit to not have Locust by default and add it via triggers after creation, or
// edit the GDD_Filter function at the top of the code, below.
//
// -- Credits --
// Captain Griffin on wc3c.net for the research and concept of GroupRefresh.
//
// Credit in your map not needed, but please include this README.
//
// -- Version History --
// 1.2.1: Minor code cleaning. Added configuration functions. Updated documentation.
// 1.2.0: Made this snippet work properly with recursive damage.
// 1.1.1: Added a check in order to not index units with the Locust ability (dummy units).
// If you wish to check for damage taken by a unit that is unselectable, do not
// give the unit-type Locust in the object editor; instead, add the Locust ability
// 'Aloc' via a trigger after its creation, then remove it.
// 1.1.0: Added a check in case a unit gets moved out of the map and back.
// 1.0.0: First release.
//===================================================================
// Configurables.
function GDD_RecycleRate takes nothing returns real //The rate at which the system checks units to see if they've been removed from the game
return 0.03
endfunction
function GDD_Filter takes unit u returns boolean //The condition a unit has to pass to have it registered for damage detection
return GetUnitAbilityLevel(u, 'Aloc') == 0 //By default, the system ignores Locust units, because they normally can't take damage anyway
endfunction
//===================================================================
// This is just for reference.
// If you use JassHelper, you could uncomment this section instead of creating the variables in the trigger editor.
// globals
// real udg_GDD_Event = 0.
// real udg_GDD_Damage = 0.
// unit udg_GDD_DamagedUnit
// unit udg_GDD_DamageSource
// trigger array udg_GDD__TriggerArray
// integer array udg_GDD__Integers
// unit array udg_GDD__UnitArray
// group udg_GDD__LeftMapGroup = CreateGroup()
// endglobals
//===================================================================
// System code follows. Don't touch!
function GDD_Event takes nothing returns boolean
local unit damagedcache = udg_GDD_DamagedUnit
local unit damagingcache = udg_GDD_DamageSource
local real damagecache = udg_GDD_Damage
set udg_GDD_DamagedUnit = GetTriggerUnit()
set udg_GDD_DamageSource = GetEventDamageSource()
set udg_GDD_Damage = GetEventDamage()
set udg_GDD_Event = 1.
set udg_GDD_Event = 0.
set udg_GDD_DamagedUnit = damagedcache
set udg_GDD_DamageSource = damagingcache
set udg_GDD_Damage = damagecache
set damagedcache = null
set damagingcache = null
return false
endfunction
function GDD_AddDetection takes nothing returns boolean
// if(udg_GDD__Integers[0] > 8190) then
// call BJDebugMsg("GDD: Too many damage events! Decrease number of units present in the map or increase recycle rate.")
// ***Recycle rate is specified in the GDD_RecycleRate function at the top of the code. Smaller is faster.***
// return
// endif
if(IsUnitInGroup(GetFilterUnit(), udg_GDD__LeftMapGroup)) then
call GroupRemoveUnit(udg_GDD__LeftMapGroup, GetFilterUnit())
elseif(GDD_Filter(GetFilterUnit())) then
set udg_GDD__Integers[0] = udg_GDD__Integers[0]+1
set udg_GDD__UnitArray[udg_GDD__Integers[0]] = GetFilterUnit()
set udg_GDD__TriggerArray[udg_GDD__Integers[0]] = CreateTrigger()
call TriggerRegisterUnitEvent(udg_GDD__TriggerArray[udg_GDD__Integers[0]], udg_GDD__UnitArray[udg_GDD__Integers[0]], EVENT_UNIT_DAMAGED)
call TriggerAddCondition(udg_GDD__TriggerArray[udg_GDD__Integers[0]], Condition(function GDD_Event))
endif
return false
endfunction
function GDD_PreplacedDetection takes nothing returns nothing
local group g = CreateGroup()
local integer i = 0
loop
call GroupEnumUnitsOfPlayer(g, Player(i), Condition(function GDD_AddDetection))
set i = i+1
exitwhen i == bj_MAX_PLAYER_SLOTS
endloop
call DestroyGroup(g)
set g = null
endfunction
function GDD_GroupRefresh takes nothing returns nothing
// Based on GroupRefresh by Captain Griffen on wc3c.net
if (bj_slotControlUsed[5063] == true) then
call GroupClear(udg_GDD__LeftMapGroup)
set bj_slotControlUsed[5063] = false
endif
call GroupAddUnit(udg_GDD__LeftMapGroup, GetEnumUnit())
endfunction
function GDD_Recycle takes nothing returns nothing
if(udg_GDD__Integers[0] <= 0) then
return
elseif(udg_GDD__Integers[1] <= 0) then
set udg_GDD__Integers[1] = udg_GDD__Integers[0]
endif
if(GetUnitTypeId(udg_GDD__UnitArray[udg_GDD__Integers[1]]) == 0) then
call DestroyTrigger(udg_GDD__TriggerArray[udg_GDD__Integers[1]])
set udg_GDD__TriggerArray[udg_GDD__Integers[1]] = null
set udg_GDD__TriggerArray[udg_GDD__Integers[1]] = udg_GDD__TriggerArray[udg_GDD__Integers[0]]
set udg_GDD__UnitArray[udg_GDD__Integers[1]] = udg_GDD__UnitArray[udg_GDD__Integers[0]]
set udg_GDD__UnitArray[udg_GDD__Integers[0]] = null
set udg_GDD__Integers[0] = udg_GDD__Integers[0]-1
endif
set udg_GDD__Integers[1] = udg_GDD__Integers[1]-1
endfunction
function GDD_LeaveMap takes nothing returns boolean
local boolean cached = bj_slotControlUsed[5063]
if(udg_GDD__Integers[2] < 64) then
set udg_GDD__Integers[2] = udg_GDD__Integers[2]+1
else
set bj_slotControlUsed[5063] = true
call ForGroup(udg_GDD__LeftMapGroup, function GDD_GroupRefresh)
set udg_GDD__Integers[2] = 0
endif
call GroupAddUnit(udg_GDD__LeftMapGroup, GetFilterUnit())
set bj_slotControlUsed[5063] = cached
return false
endfunction
// ===========================================================================
function InitTrig_GUI_Friendly_Damage_Detection takes nothing returns nothing
local region r = CreateRegion()
call RegionAddRect(r, GetWorldBounds())
call TriggerRegisterEnterRegion(CreateTrigger(), r, Condition(function GDD_AddDetection))
call TriggerRegisterLeaveRegion(CreateTrigger(), r, Condition(function GDD_LeaveMap))
call GDD_PreplacedDetection()
call TimerStart(CreateTimer(), GDD_RecycleRate(), true, function GDD_Recycle)
set r = null
endfunction