• 🏆 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!

[Trigger] Non-channeling spell

Status
Not open for further replies.
Level 4
Joined
Feb 25, 2010
Messages
73
Hi people. I have a, apparently, common question about spells: how i can turn a channeling spell (like blizzard) in a non-channeling spell (like Rain of Fire of PitLord's DoTA).

I read some threads about this and all tell about "dummy spell and units". Whoever, i don't know how i can make this. I must create a unit that casts the ability for me? I know how i can do this unit invisible, but, how i can do this unit unselectable by the player? So, if somebody can help me i will be grateful ^^

Thanks
 
Level 18
Joined
Jan 21, 2006
Messages
2,552
Well you have the theory behind it. You use a dummy-caster that channel the ability, while a "dummy" ability is tracked which queues the dummy-caster. You can use an event EVENT_PLAYER_UNIT_SPELL_FINISH to detect when the dummy-caster has finished the spell, and then remove it. I've shown a brief example in the map attached.
 

Attachments

  • ActiveCastBlizzard.w3x
    13.5 KB · Views: 60
Level 4
Joined
Feb 25, 2010
Messages
73
Hummm, gentlemen i back with a question: i have created a ability named "Acid Mist". Well, so, following the trigger of Pharaoh i did this:

  • Acid Mist
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Acid Mist (Arkantos)
    • Actions
      • Set ArkantosPointSpell2 = (Target point of ability being cast)
      • Unit - Create 1 DummyArkantos for (Owner of (Triggering unit)) at ArkantosPointSpell facing Default building facing degrees
      • Unit - Add Acid Mist (Dummy) to (Last created unit)
      • Unit - Set level of Acid Mist (Dummy) for (Last created unit) to (Level of (Ability being cast) for (Triggering unit))
      • Unit - Order (Last created unit) to Human Archmage - Blizzard ArkantosPointSpell2
      • Unit - Add a ((2.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) + 9.00) second Generic expiration timer to (Last created unit)
      • Custom script: call RemoveLocation (udg_ArkantosPointSpell2)
However nothing happens. I did the spell with base in "Death and Decay" i already tried to put "Undead Lich - Death and Decay" in the place of "Human Archmage - Blizzard", but yet nothing happens. What i can do to this works?
 
  • Unit - Create 1 DummyArkantos for (Owner of (Triggering unit)) at ArkantosPointSpell facing Default building facing degrees
You accidentally used "ArkantosPointSpell" as the location for the dummy creation, when you set "ArkantosPointSpell2" in the trigger.

Plus, if your base is Death and Decay, a) your dummy's ability must be based on Lich's ability and b) You of course need to replace that line with Undead Lich - Death and Decay.
 
Status
Not open for further replies.
Top