Basically, this lets you summon units in abilities very simply and very easily. Your probably saying to yourself ROFL, this is a riot I could just use Summon Water Elemental. That is true, for simple spells, but here are some things you couldn't do with any object editor summon spell.
-Randomness: You could give the units random ability's summon random units etc.
-Upgrades: If you have researchable upgrades to make your abilities stronger, or an ability that makes all your other abilities stronger.
-Buffs: You could make it so once the units are summoned they have Bloodlust or some other buff, cast upon them for some time.
This list can go on and on...
This is:
-MUI
-Leakless
-Easy to Import
Now for the code:
Because I used Integer A you can do anything, even making specific units different.
To wrap it all up, this is basically better then feral spirit or whatever because of it's flexibility.
-Randomness: You could give the units random ability's summon random units etc.
-Upgrades: If you have researchable upgrades to make your abilities stronger, or an ability that makes all your other abilities stronger.
-Buffs: You could make it so once the units are summoned they have Bloodlust or some other buff, cast upon them for some time.
This list can go on and on...
This is:
-MUI
-Leakless
-Easy to Import
Now for the code:
Code:
Summon Template
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Summon
Actions
Set Unit_Type = Footman
-------- The type of unit you want to summon --------
Set Unit_Number = (Level of Summon for (Triggering unit))
-------- The number of units your spell summons --------
Set Unit_Time = 15.00
-------- How long the units last --------
Set Summon_Point = (Position of (Triggering unit))
For each (Integer A) from 1 to Unit_Number, do (Actions)
Loop - Actions
Unit - Create 1 Unit_Type for (Owner of (Triggering unit)) at Summon_Point facing (Facing of (Triggering unit)) degrees
-------- Add anything special here such as unit bonuses, damage bonuses ability add-ons, etc. --------
Unit - Add a Unit_Time second Generic expiration timer to (Last created unit)
Custom script: call RemoveLocation(udg_Summon_Point)
Because I used Integer A you can do anything, even making specific units different.
To wrap it all up, this is basically better then feral spirit or whatever because of it's flexibility.