• Check out the results of the Techtree Contest #19!
  • Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.
  • Create a void inspired texture for Warcraft 3 and enter Hive's 34th Texturing Contest: Void! Click here to enter!
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!

[Trigger] Spell trigger dummy buff

Status
Not open for further replies.

kallimann

K

kallimann

I'm trying to make a spell for a unit that dispels all negative buffs from an ally and keeps him from getting any negative buffs for some time.

The problem is that I'm trying to create a buff on the allied unit (the spell only displays negative buffs and this one is positive) but the buff does not show.

  • Then - Actions
    • Trigger - Turn on Dispel over time dispel ally <gen>
    • Countdown Timer - Start DispelOverTime as a One-shot timer that will expire in 15.00 seconds
    • Set DispelAllyloc = (Position of (Target unit of ability being cast))
    • Unit - Create 1 Dummy (Locust) (All) for (Owner of Bjarki) at DispelAllyloc facing Default building facing degrees
    • Set DispelbuffUnit = (Last created unit)
    • Unit - Add a 6.00 second Generic expiration timer to DispelbuffUnit
    • Unit - Add Dispel over time (dummy)(bjarki) to DispelbuffUnit
    • Unit - Set level of Dispel over time (dummy)(bjarki) for DispelbuffUnit to (Level of Dispel (Bjarki) for Bjarki)
    • Unit - Order DispelbuffUnit to Night Elf Druid Of The Claw - Rejuvenation DispelOverTimeTarget
    • Custom script: call RemoveLocation(udg_DispelAllyloc)
I make the dummy unit cast a modified rejuvenation on the target.

This is the rest of the trigger:
  • Dispel over time dispel ally
    • Events
      • Time - Every 0.50 seconds of game time
    • Conditions
    • Actions
      • Unit - Remove Negative buffs from DispelOverTimeTarget
  • Dispel over time dispel stop
    • Events
      • Time - DispelOverTime expires
    • Conditions
    • Actions
      • Trigger - Turn off Dispel over time dispel enemy <gen>
      • Trigger - Turn off Dispel over time dispel ally <gen>

If anyone finds the reason that the buff does not show, please let me know.
 
I tried adding the rejuvenation spell to a spell casting unit and tried to cast it, but couldn't target any units. Has the default targets allowed checked in (Air, Ground, Friend, Vulnerable, Invulnerable, Self, Organic, Neutral).
 
You need to get the unit ordercode of the spell. I dont know the exact order for the rejuvination spell. Instead of using nightelf - rejuv. use
  • Actions
    • unit - order dispelBuffUnit to (order(rejuvenation) dispelovertime target
As well, did you set the "target unit of ability being cast" variable?
EDIT: Would it not be easier to add an Anti Magic Shell ability with a modified model to the target unit. Or did you want to allow positive buffs to the unit?
 
Status
Not open for further replies.
Back
Top