• 🏆 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!
  • 🏆 Hive's 6th HD Modeling Contest: Mechanical is now open! Design and model a mechanical creature, mechanized animal, a futuristic robotic being, or anything else your imagination can tinker with! 📅 Submissions close on June 30, 2024. Don't miss this opportunity to let your creativity shine! Enter now and show us your mechanical masterpiece! 🔗 Click here to enter!

Loop a spell

Status
Not open for further replies.
Level 10
Joined
Nov 5, 2008
Messages
536
I have a unit that casts Impale. The spikes of impale are replaced with flames.
When the spell is casted, it looks like a wall of fire shoots out from the caster.

I wonder how to make a spell "loop"?

That means that when Impale is casted and finished, the caster casts it again and again until it is ordered to move or stop.
 
Well, you will make a channeling spell, based off "Channel". You will use Art - Follow through time to the amount of time you want.
You will then make a dummy unit and an Impale spell with the flame model you want. Give it a cooldown of 0 seconds.
  • Trigger
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to Wall of Fire
  • Actions
    • Set Unit[1] = (Triggering unit)
    • Set Point[1] = (Target Point of ability being cast)
    • Set Point[2] = (Position of (Caster1))
    • Unit - Create 1 dummy at Point[2] for (Owner of (Caster1)) facing default building degrees
    • Set Unit[2] = (Last created unit)
    • Custom script: call RemoveLocation (udg_Point[2])
    • Trigger - Turn on Trigger2 <gen>
  • Trigger2
  • Events
    • Time - Every 1.5 seconds of game-time
  • Conditions
  • Actions
    • Unit - Order (Unit[1]) to Undead Crypt Lord - Impale (Point[1])
  • Trigger3
  • Events
    • Unit - A unit finishes casting an ability
  • Conditions
    • (Ability being cast) Equal to Wall of Fire
  • Actions
    • Unit - Kill Unit[2]
    • Custom script: call RemoveLocation (udg_Point[1])
    • Trigger - Turn off Trigger2 <gen>
 
Status
Not open for further replies.
Top