|
Spearhawkster Newbie
Joined: 17 Dec 2005 Posts: 1
|
Posted: Sat Dec 17, 2005 10:10 am
tripple threat |
Hey hey,
I got a small problem....
When I cast my spitting earth spell I want to continue doing so
until the battle is over so I did a trigger of the text
Your arm makes a rising motion and a piece of earth
however this hits 3 times a round and I only require it to
trigger of one time and do a spitting again
alias for spitting earth is spi
how would I do this, I remember something about a noop, but forgot the way to do it...
thanx for the help |
|
|
|
darkspot Apprentice
Joined: 29 Jul 2002 Posts: 105
|
Posted: Sat Dec 17, 2005 10:59 am |
So you are saying for every 3 times it does it, you want it to fire once?
Untested, and possibly not the most effecient.. BUT
Code: |
#var SpittingEarthCount {0}
#trigger {Your arm makes a rising motion and a piece of earth} {#add SpittingEarthCount 1;#if (@SpittingEarthCount >=3) {spi;#var spittingEarthCount {0}}}
|
|
|
|
|
Vitae Enchanter
Joined: 17 Jun 2005 Posts: 673 Location: New York
|
Posted: Sat Dec 17, 2005 4:37 pm |
no what he meant was that the spell multihits in one round
spi
Your arm makes a rising motion and a piece of earth
Your arm makes a rising motion and a piece of earth
Your arm makes a rising motion and a piece of earth
spi
Your arm makes a rising motion and a piece of earth
Your arm makes a rising motion and a piece of earth
Your arm makes a rising motion and a piece of earth
the way that *I* would do it is
have the spi alias turn on the trigger, and have the trigger turn itself off
#alias spi {c spitting earth;+T spitting_earth_trigger}
#TRIGGER "spitting_earth_trigger"{^Your arm makes a rising motion and a piece of earth} {-T spitting_earth_trigger;spi} |
|
|
|
gamma_ray Magician
Joined: 17 Apr 2005 Posts: 496
|
Posted: Sun Dec 18, 2005 3:57 pm |
The problem would likely be that it would turn off just fine, but immediately call the alias again which would turn it on in time for it to get the next copy of the pattern.
Code: |
#TRIGGER {Your arm makes a rising motion and a piece of earth } {} "" {looppat|param=3}
#COND {} {spi} {wait|param=1} |
Matches the pattern 3 times and then sends spi, if you suddenly start needing to match the pattern four times, or two times, or whatever instead of three times, change the paramater in the settings editor. |
|
|
|
Vitae Enchanter
Joined: 17 Jun 2005 Posts: 673 Location: New York
|
Posted: Mon Dec 19, 2005 3:40 pm |
Gamma, how would that work if the times cast is random?
But your right, my method would turn it off then on again in a way that might be to quick.
Add in a 1.5 sec delay maybe? (then have probs if you run into lag, i know) |
|
|
|
Dharkael Enchanter
Joined: 05 Mar 2003 Posts: 593 Location: Canada
|
Posted: Mon Dec 19, 2005 7:19 pm |
If you have a prompt between rounds, why not have it fire once, disable itself
and have a prompt trigger to turn it back on again.
Or maybe have your spi alias simply toggle a variable, and in your prompt trigger if the variable evals to true
you cast the spell, have another trigger that changes the variable to false when the fight ends. |
|
_________________ -Dharkael-
"No matter how subtle the wizard, a knife between the shoulder blades will seriously cramp his style." |
|
|
|
Tech GURU
Joined: 18 Oct 2000 Posts: 2733 Location: Atlanta, USA
|
Posted: Mon Dec 19, 2005 9:39 pm |
Another option is to a multistate and recast on the empty line (I'm assuming of course there is one when the spells is done). For example
Code: |
#TRIGGER {Your arm makes a rising motion and a piece of earth } {}
#COND {$} {spi}
|
or this
Code: |
#TRIGGER { Your arm makes a rising motion and a piece of earth } {c spitting earth }
#COND { {^Your arm makes a rising motion and a piece of earth} } { spi }
|
Of course, in both example you'd need to disable the trigger after you done fighting to keep it from firing continuously. |
|
_________________ Asati di tempari! |
|
|
|
|
|