Spell Blood Ward

Reaction score
332
Inspired by this thread.

The blood ward steals life from enemies in an area, and distributes the life stolen to allies in the same area.

I'm not sure how efficient this is, but I tried my best to remove leaks and such. If you spot an obvious opportunity for improvement, please say so and I will (depending on the circumstances) try my best to implement your suggestion.

Edit: The map has been updated. (Updated once so far)

bloodwardtk8.jpg
 

Attachments

  • BloodWard.w3x
    25.2 KB · Views: 419

Sim

Forum Administrator
Staff member
Reaction score
534
Leakless, lagless, good!

Maybe add an hotkey and set the AoE of the ward to 800 since in the trigger it says 800.

Add leveling features, since at the moment it can only be level 1. Add a "level" factor in the constant functions.

Other than that... I didn't encounter any bug.
 

Rheias

New Helper (I got over 2000 posts)
Reaction score
232
JASS:

function Blood_Ward_Death takes nothing returns boolean
    local unit u = GetTriggerUnit()
    local timer t = GetHandleTimer(u, "t")

    call FlushHandleLocals(t)
    call PauseTimer(t)
    call DestroyTimer(t)
    call DestroyTrigger(GetTriggeringTrigger())
    call FlushHandleLocals(u)

    set u = null
    set t = null

    return false
endfunction


Disable the trigger before destroying it.

JASS:
local real dmg = Blood_Ward_LifeStolen()+GetUnitAbilityLevel(u, Blood_Ward_AbilityID())*Blood_Ward_LevelFactor()


This should be presented as a constant function.



BJ here.

On a general note, you should make locals' names more informative. I would also suggest adding eye-candy, for example seeing a healing effect on allies in range, and damaging effect on enemies.

Nice spell, good job.
 
Reaction score
332
Leakless, lagless, good!

Maybe add an hotkey and set the AoE of the ward to 800 since in the trigger it says 800.

Add leveling features, since at the moment it can only be level 1. Add a "level" factor in the constant functions.

Other than that... I didn't encounter any bug.

Ok. A hotkey has been added, and I had a level factor in there but I noobed out and didn't properly implement it, so that's now been fixed. I reduced the AoE a bit as well, since it was a little large.

Disable the trigger before destroying it.

JASS:
local real dmg = Blood_Ward_LifeStolen()+GetUnitAbilityLevel(u, Blood_Ward_AbilityID())*Blood_Ward_LevelFactor()


This should be presented as a constant function.

On a general note, you should make locals' names more informative. I would also suggest adding eye-candy, for example seeing a healing effect on allies in range, and damaging effect on enemies.

Nice spell, good job.

I have removed the BJ and also added an effect to the buff (I couldn't think of two different effects for allies and enemies that would look the part).

I have also disabled the trigger before destroying and fixed the "local real dmg" line.
 

BebopJelli

New Member
Reaction score
2
Hey! You got it to work! Congradulations man, I see nothing wrong. Glad to be of inspiration ;)
 
N

NWG_Jonas

Guest
man i got to say what i really thing and i love it tougth i will actuly use this if im aloved 2 :p
 

saw792

Is known to say things. That is all.
Reaction score
280
Outdated spell, uses LHV and thus will not run.
 

Romek

Super Moderator
Reaction score
963
Thanks, GY'd.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top