Moderator
M
How to import Go to "File->Preferences" and turn "Automatically create unknown variables when pasting trigger data" on. Open the trigger editor and copy the "Flame Missile" folder. Open the object editor and copy the unit "Dummy", the spell "Flame Missile" and the other spell "Flame Missile (Dummy)". // Note that you only can copy one spell at a time Close the map and open your own map. Paste all the copied data into your own map. You are done! Spell description The hero locks its target with dark magic and when the target is locked he begins calling fire explosions around the target, dealing 50/100/150 damage to all nearby units. The targeted unit will break all his bones, taking 100/150/200 damage. When the targets' bones are broken, there wil be sent magical fire missiles out of his body, exploding on all nearby enemy units. Each of the 10 missiles will deal 10/15/20 damage. About this spell The spell "Flame Missile" contains nomore than one trigger and is easily understandable and configureable, making the spell fun for everyone. It contains a long description in the trigger editor, making everybody understand the spell, its features and how to import it into their own map. Its a kinda simple spell, but with the high amount of details and eyecandy it should be fine. The coding is nice and clean and might be a good look'n'learn spell. The triggered spell is fully GUI, MUI, leakless, laggless and should not contain any bugs. If you find a bug, please contact me. Copyright Please respect my time spent on this, and you do that by following the mentoded things below: Give credits if used in your map. Do not distribute this spell to any other sites. If you find any bugs, please contact me. |
Flame Missile

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Flame Missile

Actions


-------- --------


-------- X-OMG-X's --------


-------- Flame Missile --------


-------- --------


-------- --------


-------- Setting the variables --------


Set FM_Caster = (Triggering unit)


Set FM_Position = (Position of FM_Caster)


Set FM_Target = (Target unit of ability being cast)


Set FM_TargetPos = (Position of FM_Target)


Set FM_Level = (Level of (Ability being cast) for FM_Caster)


-------- (For each Integer) means that the following lines will run X times (in this case 4) --------


For each (Integer FM_Integer) from 1 to 4, do (Actions)



Loop - Actions




-------- Setting the offset --------




Set FM_TargetOffset = (FM_TargetPos offset by 200.00 towards ((Real(FM_Integer)) x 90.00) degrees)




-------- Creating a dummy and forcing it to cast the abillity --------




Unit - Create 1 Dummy for (Owner of FM_Caster) at FM_Position facing Default building facing degrees




Unit - Add a 1.50 second Generic expiration timer to (Last created unit)




Unit - Add Flame Missile (Dummy) to (Last created unit)




Custom script: call RemoveLocation(udg_FM_Position)




Set FM_Position = (Position of FM_Caster)




Unit - Order (Last created unit) to Neutral Tinker - Cluster Rockets FM_TargetOffset




-------- Creating the special effects --------




Special Effect - Create a special effect at FM_TargetOffset using Abilities\Spells\Other\Incinerate\FireLordDeathExplode.mdl




Special Effect - Destroy (Last created special effect)




-------- Setting the group --------




Set FM_Group = (Units within 250.00 of FM_TargetOffset matching (((((Matching unit) is alive) Equal to True) and (((Matching unit) is Magic Immune) Equal to False)) and ((((Matching unit) belongs to an enemy of (Owner of FM_Caster)) Equal to True) and ((Matching unit) Not e




-------- Picking the group --------




Unit Group - Pick every unit in FM_Group and do (Actions)





Loop - Actions






-------- Damaging all units within the group --------






Unit - Cause FM_Caster to damage (Picked unit), dealing ((Real(FM_Level)) x 50.00) damage of attack type Spells and damage type Normal




Custom script: call RemoveLocation(udg_FM_TargetOffset)




Custom script: call DestroyGroup(udg_FM_Group)


-------- Damaging the targeted unit --------


Unit - Cause FM_Caster to damage FM_Target, dealing (100.00 + (50.00 x (Real(FM_Level)))) damage of attack type Spells and damage type Normal


-------- Clearing all memory leaks in the spell --------


Custom script: call RemoveLocation(udg_FM_Position)


Custom script: call RemoveLocation(udg_FM_TargetPos)