![](templates/Classic/images/spacer.gif) |
Draxx Beginner
Joined: 24 Jan 2011 Posts: 11
|
Posted: Mon Feb 28, 2022 2:15 pm
Timer display for spells cast at different powerlevels |
Let's say you can cast a spell at various power levels, which will determine the duration of the spell effect.
Is there a way to set up various triggers so that when you cast the spell at different power levels, a small window with a countdown timer shows up, and then disappears when the countdown reaches zero seconds?
Of course the matching text for the trigger, and the timings for each powerlevel would have to be pre-defined.
I'd appreciate any guidance on how to do this, thanks.
For example :
cast 'sanctuary powerlevel 1' - duration = 60 secs
cast 'sanctuary powerlevel 2' - duration = 90 secs
And so on...
I do know that you can set up a trigger to just "tick" when the spell is going to end, but in this case, I would prefer an ongoing countdown timer, so that I can see when the spell is about to end, if I need to take some remedial action in the game. |
|
|
![](templates/Classic/images/spacer.gif) |
shalimar GURU
![](images/avatars/114658559147aeed8fee539.gif)
Joined: 04 Aug 2002 Posts: 4685 Location: Pensacola, FL, USA
|
Posted: Mon Feb 28, 2022 5:47 pm |
Possible, yes.
You would need to set a variable to the known duration
sanctuaryCountdown=60
You need an alarm to decrement all of these variables.
Code: |
#ALARM "decrementor" -1 {
#IF (@thisCountdown) {thisCountdown=(@thisCountdown-1)}
#IF (@thatCountdown) {thatCountdown=(@thatCountdown-1)}
} |
And finally, you need to define the status window to display the info
#STWIN {%if(@this, %concat("This: ", @this)) %cr%if(@that, %concat("That: ", @that))} |
|
_________________ Discord: Shalimarwildcat |
|
|
![](templates/Classic/images/spacer.gif) |
Draxx Beginner
Joined: 24 Jan 2011 Posts: 11
|
Posted: Tue Mar 01, 2022 8:48 am |
Hey Shalimar,
Thanks for the help, but I don't understand how to set up the triggers you've mentioned above.
Could you please elaborate a little more on how I can set this up?
For the sake of clarity, here are the triggers for when I cast the Sanctuary spell:
You utter the words, "sanc power1" (where the spell duration is 60 seconds)
You utter the words, "sanc power2" (where the spell duration is 90 seconds)
You utter the words, "sanc power3" (where the spell duration is 120 seconds)
Then, I can set up the triggers as:
#TRIGGER {^You utter the words, "sanc power1"} {#VAR SancTimer 60}
#TRIGGER {^You utter the words, "sanc power2"} {#VAR SancTimer 90}
#TRIGGER {^You utter the words, "sanc power3"} {#VAR SancTimer 120}
Then, when the spell actually gets cast, I want the timer to start, which is triggered by:
#TRIGGER {^You skin starts glowing.} {#ALARM "ST" -1 {SancTimer=(@SancTimer-1)}
#STWIN {#CONCAT(@SancTimer) %cr}
But this is creating multiple problems:
a) The timer doesn't stop when it gets to 0.
b) The separate window doesn't close when the timer gets to 0.
c) Even if I close the window manually, the timer keeps counting backwards in the mainscreen's statusbar.
d) Despite all of these issues, if I cast the spell again, the separate window opens up and shows 2 timers counting down.
I'd appreciate your guidance, thanks. |
|
|
![](templates/Classic/images/spacer.gif) |
shalimar GURU
![](images/avatars/114658559147aeed8fee539.gif)
Joined: 04 Aug 2002 Posts: 4685 Location: Pensacola, FL, USA
|
Posted: Tue Mar 01, 2022 5:10 pm |
a. The alarm I made in my previous example should handle -ALL- of the various countdowns. It accounts for stopping at 0. Edit it to add the extra spell variables.
b. The individual spells should fade from the window when they reach 0 with my sample code. I would suggest docking the window in your layout.
c. A given status object can display on the bar or in the window, or both. Uncheck the bar if you only want to see it in the window.
d. You don't want to keep issuing the #STWIN command like that (you aren't matching my sample code so it won't look the same)
You want to edit the existing #STWIN object until all the spells you care to track are included. It should only show those spells not currently at 0
Are you using zMUD or CMUD? |
|
_________________ Discord: Shalimarwildcat |
|
|
![](templates/Classic/images/spacer.gif) |
shalimar GURU
![](images/avatars/114658559147aeed8fee539.gif)
Joined: 04 Aug 2002 Posts: 4685 Location: Pensacola, FL, USA
|
Posted: Wed Mar 02, 2022 3:11 pm |
As to the trigger, rather than have four triggers simplify it to a single two-state trigger:
#TRIGGER {^You utter the words, "sanc power(%d)"} {}
#COND {^Your skin starts glowing.} {sancTimer=(30+(30*%t1))} |
|
_________________ Discord: Shalimarwildcat |
|
|
![](templates/Classic/images/spacer.gif) |
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|