Ok lots of things I mentionend already at your
Energy Grab and Throw
(again you have the if/then/else where you check if the integer is 0 and then set it to 0, it's still intEger not intIger, the duration again is not in seconds {no big point but not very user-friendly}, again you dont turn off/on collision, and that's why it gets stuck (it moves further towards, but then is set back, due to landing in a unit, the moveloc is set new and you have it always before the unit (I hope you understnad it, if not ask me), and you still use inefficient variable names)
New things:
-The floating text is kind of unneccesary, and why you use the color code instead of simply using:
-
Floating Text - Create Floating Text.........,using font size 10, color (0.00%, 0.00%, 0.00%).....
-When the spell ends, you could add
-
Selection - Select c_unit[intiger[2]] for (Owner of c_unit[intiger[2]])
-Now you always move the unit a certain distance, but you can always target a point up to 1000 range away. Now here I come up again with a little math. Here are the ranges you move at every level (assuming no unit is blocking you)
Code:
Level1: (40+1)*20 = 820
Level2: (40+2)*20 = 840
Level3: (40+3)*20 = 860
So you will always move to this distance, whether you have clicked 1000 range or 50 range. What is also very good visible, is that the level has nearly no influence on how far you move..... I suggest you either use a spell which has no target, or move the unit always to the target point (I can help you on this, if you don't know, how to do this), or at least set the cast range = max range.
-Now let's have another look at the run trigger: After every run you use
-
Custom Script: callRemoveLocation (udg_Point_B[udg_intiger[2]])
This is followed by:
-
If (All conditions are True) then do (Then Actions) else do (Else Actions)
-
'IF'-Conditions
-
Duration[intiger[2]] <= 0
-
'THEN'-Actions
-
(....)
-
If (All conditions are True) then do (Then Actions) else do (Else Actions)
-
'IF'-Conditions
-
intiger[0] = 0
-
'THEN'-Actions
-
(....)
-
Set intiger[1] = 0
-
Set intiger[0] = 0 (unnessecary)
-
Special Effect - Create a special Effect at Point_B[intiger[2]](....)
Let's have a look at the special effect:
Code:
Special Effect - Create a special Effect at Point_B[intiger[2]](....)
First you have already removed that variable above and second you have already reset the array values, so this won't do anything except cause laggs maybe...
-And finishingly I want to mention the confusing comments like: "This will change the damage to what ever level it is while casting." (Since this spell doesn't deal any damage, what the hell is this supposed to do there?), or "This creates the special effects on caster and target unit of ability." (Since when do we have a target unit, not a target point). You should at least have thrown out the old comments when using the same trigger everytime.
-And here comes one suggestion: Take channel as base ability, it has lots of possibilities (you can for example, that it targets points only, or targets nothing), and you don't have the problems of the blizzard spells
Again this is a nice spell, but the idea isn't very original. However I like it, and keep it up with the triggering, fix the points mentionend above and this won't only be 2/5 (what I'd currently give) but at least 4/5