• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Life Break v. 1.1 {Steel0RaZoR)

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
My First Spell

_Life Break_

Its like the one from DotA, Huskar's Last Skill.

Description:

The Hero reaches into the well of his own life force to heavily damage an enemy. The target takes damage equal to 50% of its hp. Slows target by 50% for 5 seconds. The Hero pays a certain percentage of his hp to cast this.

|cffffcc00Level 1|r - pay 35% of current HP.
|cffffcc00Level 2|r - pay 30% of current HP.
|cffffcc00Level 3|r - pay 25% of current HP.

|c007EBFF1Cooldown:|r 40/30/15
|c00FF0303Cannot be cast if current Hp is 50 below.|r


Please rate and comment...

Steel☼RaZoR






Keywords:
huskar,life break,dota,spell
Contents

Just another Warcraft III map (Map)

Reviews
13:21, 1st Jun 2011 Maker: The spell is too simple to be approved. Keep on practising :)

Moderator

M

Moderator

13:21, 1st Jun 2011
Maker: The spell is too simple to be approved. Keep on practising :)
 
Level 12
Joined
Aug 12, 2008
Messages
349
[trigger=Life Break]]Life Break
Events
Unit - A unit Begins casting an ability
Conditions
Life Break Equal to (Ability being cast)
Actions
Set LifeBreak[1] = (Target unit of ability being cast)
Set LifeBreak[2] = (Casting unit)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Life Break for LifeBreak[2]) Equal to 1
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Life of LifeBreak[2]) Greater than or equal to 50.00
Then - Actions
Unit - Set life of LifeBreak[1] to ((Life of LifeBreak[1]) x 0.50)
Unit - Set life of LifeBreak[2] to ((Life of LifeBreak[2]) x 0.35)
Unit - Create 1 Life Break Dummy for (Owner of LifeBreak[2]) at (Position of LifeBreak[2]) facing Default building facing degrees
Set LifeBreak[3] = (Last created unit)
Unit - Add a 5.00 second Generic expiration timer to LifeBreak[3]
Unit - Add Life Break Slow to LifeBreak[3]
Unit - Order LifeBreak[3] to Human Sorceress - Slow LifeBreak[1]
Special Effect - Create a special effect attached to the origin of LifeBreak[1] using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
Special Effect - Destroy (Last created special effect)
Unit - Explode LifeBreak[3]
Else - Actions
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Life Break for (Casting unit)) Equal to 2
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Life of (Casting unit)) Greater than or equal to 50.00
Then - Actions
Unit - Set life of LifeBreak[1] to ((Life of LifeBreak[1]) x 0.50)
Unit - Set life of LifeBreak[2] to ((Life of LifeBreak[2]) x 0.30)
Unit - Create 1 Life Break Dummy for (Owner of LifeBreak[2]) at (Position of LifeBreak[2]) facing Default building facing degrees
Set LifeBreak[3] = (Last created unit)
Unit - Add a 5.00 second Generic expiration timer to LifeBreak[3]
Unit - Add Life Break Slow to LifeBreak[3]
Unit - Order LifeBreak[3] to Human Sorceress - Slow LifeBreak[1]
Special Effect - Create a special effect attached to the origin of LifeBreak[1] using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
Special Effect - Destroy (Last created special effect)
Unit - Explode LifeBreak[3]
Else - Actions
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Level of Life Break Slow for (Casting unit)) Equal to 3
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Life of (Casting unit)) Greater than or equal to 50.00
Then - Actions
Unit - Set life of LifeBreak[1] to ((Life of LifeBreak[1]) x 0.50)
Unit - Set life of LifeBreak[2] to ((Life of LifeBreak[2]) x 0.25)
Unit - Create 1 Life Break Dummy for (Owner of LifeBreak[2]) at (Position of LifeBreak[2]) facing Default building facing degrees
Set LifeBreak[3] = (Last created unit)
Unit - Add a 5.00 second Generic expiration timer to LifeBreak[3]
Unit - Add Life Break Slow to LifeBreak[3]
Unit - Order LifeBreak[3] to Human Sorceress - Slow LifeBreak[1]
Special Effect - Create a special effect attached to the origin of LifeBreak[1] using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
Special Effect - Destroy (Last created special effect)
Unit - Explode LifeBreak[3]
Else - Actions
Else - Actions
[/trigger]
Next time please post your trigger instead.


  • Unit - A unit Begins casting an ability
I will prefer to use
  • Unit - A unit Starts the effect of an ability
Btw, you don't need to repeat the If/Then/Else condition just to differentiate the level of Life Break. You can make it like this instead
[trigger=Life Break]Life Break
Events
Unit - A unit Starts the effect of an ability
Conditions
Life Break Equal to (Ability being cast)
Actions
Set LifeBreak[1] = (Target unit of ability being cast)
Set LifeBreak[2] = (Casting unit)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Life of LifeBreak[2]) Greater than or equal to 50.00
Then - Actions
Unit - Set life of LifeBreak[1] to ((Life of LifeBreak[1]) x 0.50)
Unit - Set life of LifeBreak[2] to ((Life of LifeBreak[2]) x (0.35 - (0.05 x (Real((Level of Life Break for LifeBreak[2]))))))
Unit - Create 1 Life Break Dummy for (Owner of LifeBreak[2]) at (Position of LifeBreak[2]) facing Default building facing degrees
Set LifeBreak[3] = (Last created unit)
Unit - Add a 5.00 second Generic expiration timer to LifeBreak[3]
Unit - Add Life Break Slow to LifeBreak[3]
Unit - Order LifeBreak[3] to Human Sorceress - Slow LifeBreak[1]
Special Effect - Create a special effect attached to the origin of LifeBreak[1] using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
Special Effect - Destroy (Last created special effect)
Unit - Explode LifeBreak[3]
Custom script: set udg_LifeBreak[3] = null
Else - Actions
Custom script: set udg_LifeBreak[2] = null
Custom script: set udg_LifeBreak[1] = null
[/trigger]


At least, nice try =D
 
nice edit Jay, but I would say, just use three different unit variables rather than using an array where you only use three indexes... two different variables are faster and takes less space... and you leak a position... no need to null the globals too...
and maybe reduce the life timer to just about 1 second...


at the spell, so simple...
 
you set the unit variables to null, but that isnt really needed since they're globals...

anyway, the spell is too simple so I vote for rejection...

  • Life Break
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • Life Break Equal to (Ability being cast)
    • Actions
      • Set TempUnit1 = (Target unit of ability being cast)
      • Set TempUnit2 = (Triggering unit)
      • Set TempLoc = Position of TempUnit2
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Life of TempUnit2) Greater than or equal to 50.00
        • Then - Actions
          • Unit - Set life of TempUnit1 to (Life of TempUnit1) x 0.50)
          • Unit - Set life of TempUnit2 to ((Life of TempUnit2) x (0.35 - (0.05 x (Real((Level of Life Break for TempUnit1))))))
          • Unit - Create 1 Life Break Dummy for (Owner of TempUnit1) at (TempLoc) facing Default building facing degrees
          • Set TempUnit2 = (Last created unit)
          • Unit - Add a 1.00 second Generic expiration timer to TempUnit2
          • Unit - Add Life Break Slow to TempUnit2
          • Unit - Order TempUnit2] to Human Sorceress - Slow TempUnit1
          • Special Effect - Create a special effect attached to the origin of TempUnit1 using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
          • Special Effect - Destroy (Last created special effect)
          • Else - Actions
        • Custom script: call RemoveLocation(udg_TempLoc)
 
This spell can only be MUI if you use "A unit Starts the effect of an ability"
Trust me.
Nice idea btw :)
...

The truth: Your spell is too simple to be uploaded here :(
Try to make something cool :D
If you want to improve the spell, you could add a lot of configurables (ex: damage, effects, hp payment, knockback boolean, optional knockback trigger, ...)

You should make this spell worthwhile.

Henceforth, i shall give you a 1/5 and vote for rejection :( I'm sorry...

I gave you some ideas to help, so i hope you can fix this spell, because it would be really awesome with a little work :D

Good luck ;)

PM me if you need any help with triggering (i don't write others' triggers, but i do help when it comes to leaks, MUI-bility ;p, efficiency, functionality.)

:D thanks for understanding (-.- unless you hit your computer and broke the screen in anger ;P)
 
Level 22
Joined
Nov 14, 2008
Messages
3,256
This spell can only be MUI if you use "A unit Starts the effect of an ability"
Trust me.

And where did you get this information from? As it's incorrect. It's MUI already.

EDIT:

This spell should be splitted into 2 triggers. One with the current event as a stop trigger. Just checking the hp of the caster and order it to stop if it doesn't apply to it and therefore not wasting cooldown and mana.

The second trigger should be like it is now with Jay's edit (with Adiktuz fixes) and with the event A Unit Starts the Effect of an Ability.
 
Top