changeset 1677:32c6a74b989a

Improve spell handling, add grabbing of wiz-only spell chance value.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 27 Mar 2024 17:24:10 +0200
parents b189ae1b391c
children 914961b1e2d2
files gm-magical.tf
diffstat 1 files changed, 7 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/gm-magical.tf	Wed Mar 27 17:23:36 2024 +0200
+++ b/gm-magical.tf	Wed Mar 27 17:24:10 2024 +0200
@@ -140,8 +140,10 @@
 ;; Start of spell
 
 
-/def -i -F -p9999 -msimple -t"You start chanting." gspell_start =\
-	/if (ceremony_st2=~"on")/let _cere=[@{BCgreen}CERE@{n}]%;/else /let _cere=%;/endif%;\
+/def -i -F -p9999 -mregexp -t"^You start chanting( \(chance ([0-9]+)\))?\.$" gspell_start =\
+	/set spell_chance=%{P2}%;\
+	/if (spell_chance!~"")/let _chance= [chance @{Cgreen}%{spell_chance}@{n}%%]%;/else /let _chance=%;/endif%;\
+	/if (ceremony_st2=~"on")/let _cere= [@{BCgreen}CERE@{n}]%;/else /let _cere=%;/endif%;\
 	/set ceremony_st2=off%;\
 	/set ceremony_st=off%;\
 	/set spell_t=$[time()]%;\
@@ -153,19 +155,20 @@
 	/set spell_hastes=0%;\
 	/set spell_ghastes=0%;\
 	/set cast_info=SP%;/set cast_info_n=%;/set cast_info_t=%;@@cast info%;\
-	/msk @{BCyellow} ---- SPELL START ---- @{n} (@{Cyellow}%{cnt_casts}@{n}) %{_cere}%;\
+	/msk @{BCyellow} ---- SPELL START ---- @{n} (@{Cyellow}%{cnt_casts}@{n})%{_cere}%{_chance}%;\
 	/gstatus_update%;/prexecfuncs %{event_spell_start}
 
 
 ;; Spell done
 /def -i -F -p9999 -msimple -t"You are done with the chant." gspell_end =\
+	/if (spell_chance!~"")/let _chance= [chance @{Cgreen}%{spell_chance}@{n}%%]%;/else /let _chance=%;/endif%;\
 	/set cnt_trounds=$[cnt_trounds+spell_rcount]%;\
 	/set cnt_scasts=$[cnt_scasts+1]%;\
 	/set spell_st=off%;\
 	/set spell_st2=on%;\
 	/set cast_info=%;\
 	/set cnt_ctime=$[cnt_ctime+time()-spell_t]%;\
-	/msk @{Cbggreen} ---- SPELL DONE ---- @{n} in [@{BCred}%{spell_rcount}@{n}] @{BCgreen}rounds!@{n} @{Cyellow}$[prgetstime(spell_t)]@{n}%;\
+	/msk @{Cbggreen} ---- SPELL DONE ---- @{n} in [@{BCred}%{spell_rcount}@{n}] @{BCgreen}rounds!@{n} @{Cyellow}$[prgetstime(spell_t)]@{n}%{_chance}%;\
 	/gstatus_update%;/prexecfuncs %{event_spell_done}