Mercurial > hg > batmud > ggrtf
changeset 650:7a420127f257
Refactored hitstats; Also at least bludgeon hit messages should be in correct order now; Comment cleanups.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 24 Jul 2007 01:23:24 +0000 |
parents | fcaf1254d25f |
children | 8f121335d490 |
files | ggrtf-misc.tf |
diffstat | 1 files changed, 92 insertions(+), 76 deletions(-) [+] |
line wrap: on
line diff
--- a/ggrtf-misc.tf Tue Jul 24 01:21:54 2007 +0000 +++ b/ggrtf-misc.tf Tue Jul 24 01:23:24 2007 +0000 @@ -422,87 +422,103 @@ /set hst_crithit=0 /set lst_hits= /set lst_crits= +/set hst_special=0 -/def -i -mregexp -t"^You score a \*?CRITICAL\*? hit!" ghitstats_crit =\ +/def -i prdefhitspec =\ + /if (!getopts("n:t:r", "")) /gerror Invalid prdefhitspec definition!%;/break%;/endif%;\ + /if (opt_n=~""|opt_t=~"") /gerror Required arguments not specified!%;/break%;/endif%;\ + /if (opt_r) /let _ttype=regexp%;/else /let _ttype=simple%;/endif%;\ + /set hst_%{opt_n}=0%;\ + /def -i -aCblue -m%{_ttype} -t"%{opt_t}" ghitstats_%{opt_n} =\ + /set hst_special=$$[hst_special+1]%%;\ + /set hst_%{opt_n}=$$[hst_%{opt_n}+1] + +/def -i -aCblue -mregexp -t"^You score a \*?CRITICAL\*? hit!$" ghitstats_crit =\ /set hst_crithit=1 -/def -i -mregexp -t"^You miss" ghitstats_miss =\ - /set hst_misses=$[hst_misses+1] - /def -i prdefhit =\ - /set lst_hits=%{lst_hits} %{1}%;\ - /set lst_crits=%{lst_crits} %{1}%;\ - /set hst_%{1}=0%;\ - /set hst_c%{1}=0%;\ - /set name_%{1}=%{-1}%;\ - /set name_c%{1}=%{-1}%;\ - /def -i -F -mregexp -t"^(You|(Cackling|Smiling|Grinning) (demonically|devilishly|diabolically) you) %{-1} " ghitstats_%{1} =\ + /let _hname=%{1}_%{2}%;\ + /set lst_hits=%{lst_hits} %{_hname}%;\ + /set lst_crits=%{lst_crits} %{_hname}%;\ + /set hst_%{_hname}=0%;\ + /set hst_c%{_hname}=0%;\ + /set hst_name_%{_hname}=%{3}%;\ + /set hst_name_c%{_hname}=%{3}%;\ + /def -i -aCblue -mregexp -t"^(You|(Cackling|Smiling|Grinning) (demonically|devilishly|diabolically) you) %{3} " ghitstats_%{_hname} =\ /set hst_total=$$[hst_total+1]%%;\ /if (hst_crithit==1) \ /set hst_crithit=0%%;\ /set hst_crits=$$[hst_crits+1]%%;\ - /set hst_c%{1}=$$[hst_c%{1}+1]%%;\ + /set hst_c%{_hname}=$$[hst_c%{_hname}+1]%%;\ /else \ - /set hst_%{1}=$$[hst_%{1}+1]%%;\ + /set hst_%{_hname}=$$[hst_%{_hname}+1]%%;\ /endif +;; Specials +/prdefhitspec -n"misses" -t"You miss." +/prdefhitspec -n"dodges" -t"You dodge." +/prdefhitspec -n"parries" -t"You parry." +/prdefhitspec -n"ripostes" -t"...AND riposte." +/prdefhitspec -n"tumbles" -t"^You tumble .*'s dodge\.$" -r +/prdefhitspec -n"stuns" -t"^You STUN " -r + + ;; Non-weapon -/prdefhit spank spank +/test prdefhit("brawl", 01, "spank") ;; Slashing weapons (axes and long blades) -/prdefhit sslash solidly slash -/prdefhit gash gash -/prdefhit lcut lightly cut -/prdefhit cut cut -/prdefhit tear tear -/prdefhit incise incise -/prdefhit shred shred -/prdefhit hshred horribly shred -/prdefhit slash slash -/prdefhit inccut incisively cut -/prdefhit pierce pierce -/prdefhit slit slit -/prdefhit ctatter cruelly tatter -/prdefhit rive rive -/prdefhit sshave savagely shave -/prdefhit cslash cruelly slash -/prdefhit uslash uncontrollably slash -/prdefhit qcut quickly cut -/prdefhit srip savagely rip -/prdefhit cbtear BRUTALLY TEAR -/prdefhit csshred SAVAGELY SHRED -/prdefhit ccrend CRUELLY REND -/prdefhit cdismember DISMEMBER +/test prdefhit("axes", 01, "solidly slash") +/test prdefhit("axes", 02, "gash") +/test prdefhit("axes", 03, "lightly cut") +/test prdefhit("axes", 04, "cut") +/test prdefhit("axes", 05, "tear") +/test prdefhit("axes", 06, "incise") +/test prdefhit("axes", 07, "shred") +/test prdefhit("axes", 08, "horribly shred") +/test prdefhit("axes", 09, "slash") +/test prdefhit("axes", 10, "incisively cut") +/test prdefhit("axes", 11, "pierce") +/test prdefhit("axes", 12, "slit") +/test prdefhit("axes", 13, "cruelly tatter") +/test prdefhit("axes", 14, "rive") +/test prdefhit("axes", 15, "savagely shave") +/test prdefhit("axes", 16, "cruelly slash") +/test prdefhit("axes", 17, "uncontrollably slash") +/test prdefhit("axes", 18, "quickly cut") +/test prdefhit("axes", 19, "savagely rip") +/test prdefhit("axes", 20, "BRUTALLY TEAR") +/test prdefhit("axes", 21, "SAVAGELY SHRED") +/test prdefhit("axes", 22, "CRUELLY REND") +/test prdefhit("axes", 23, "DISMEMBER") ;; Bludgeons -/prdefhit jostle jostle -/prdefhit butt butt -/prdefhit bump bump -/prdefhit thump thump -/prdefhit thrust thrust -/prdefhit stroke stroke -/prdefhit jab jab -/prdefhit bash bash -/prdefhit strike strike -/prdefhit sock sock -/prdefhit cuff cuff -/prdefhit knock knock -/prdefhit flail flail -/prdefhit beat beat -/prdefhit whack whack -/prdefhit smash smash -/prdefhit cbeat cruelly beat -/prdefhit bsmash badly smash -/prdefhit hthrust horribly thrust -/prdefhit sstrike savagely strike -/prdefhit ssock savagely sock -/prdefhit cccuff CRUELLY CUFF -/prdefhit cbbash BARBARICALLY BASH -/prdefhit crwhack REALLY WHACK -/prdefhit cbbeat BRUTALLY BEAT -/prdefhit ccdism CRUELLY DISMEMBER +/test prdefhit("blud", 01, "jostle") +/test prdefhit("blud", 02, "butt") +/test prdefhit("blud", 03, "bump") +/test prdefhit("blud", 04, "thump") +/test prdefhit("blud", 05, "stroke") +/test prdefhit("blud", 06, "thrust") +/test prdefhit("blud", 07, "jab") +/test prdefhit("blud", 08, "bash") +/test prdefhit("blud", 09, "strike") +/test prdefhit("blud", 10, "sock") +/test prdefhit("blud", 11, "cuff") +/test prdefhit("blud", 12, "knock") +/test prdefhit("blud", 13, "flail") +/test prdefhit("blud", 14, "whack") +/test prdefhit("blud", 15, "beat") +/test prdefhit("blud", 16, "smash") +/test prdefhit("blud", 17, "cruelly beat") +/test prdefhit("blud", 18, "badly smash") +/test prdefhit("blud", 19, "horribly thrust") +/test prdefhit("blud", 20, "savagely sock") +/test prdefhit("blud", 21, "savagely strike") +/test prdefhit("blud", 22, "REALLY WHACK") +/test prdefhit("blud", 23, "BRUTALLY BEAT") +/test prdefhit("blud", 24, "CRUELLY CUFF") +/test prdefhit("blud", 25, "BARBARICALLY BASH") ;; Output @@ -515,7 +531,7 @@ /else \ /set cnttmp=0%;\ /endif%;\ - /eval /msw | $$[pad(name_%{1},-30)] - $$[pad(hst_%{1},4)] / $$[pad(cnttmp,4)]%%% |%;\ + /eval /msw | $$[pad(hst_name_%{1},-30)] - $$[pad(hst_%{1},8)] / $$[pad(cnttmp,4)]%%% |%;\ /endif /def -i ghitstats_dolist1 = /while ({#}) /ghitstats_print %{1}%;/shift%;/done @@ -525,11 +541,11 @@ /set hst_count=0%;\ /msw ,-----------------.%;\ /msw | @{BCgreen}GgrTF@{n} @{Cyellow}Hit Stats@{n} |%;\ -/msw +-| @{BCgreen}Normal@{n} |------+-----------------------------.%;\ +/msw +-| @{BCgreen}Normal@{n} |------+---------------------------------.%;\ /ghitstats_dolist1 %{lst_hits}%;\ -/msw +-| @{BCred}Critical@{n} |----------------------------------+%;\ +/msw +-| @{BCred}Critical@{n} |--------------------------------------+%;\ /ghitstats_dolist2 %{lst_crits}%;\ -/msw +-----------------------------------------------'%;\ +/msw +---------------------------------------------------+%;\ /let _qtmp=$[hst_total + hst_misses]%;\ /if (_qtmp != 0) \ /let _qtmp1=$[trunc((100 * hst_total) / _qtmp)]%;\ @@ -540,19 +556,19 @@ /let _qtmp2=0%;\ /let _qtmp3=0%;\ /endif%;\ -/msw | Hits..: @{Cgreen}$[pad(hst_total,-6)]@{n} (@{BCgreen}$[pad(_qtmp1,3)]\%@{n}) | Crits: @{Cred}$[pad(hst_crits,-6)]@{n} (@{BCred}$[pad(_qtmp3,3)]\%@{n}) |%;\ -/msw | Misses: @{Cyellow}$[pad(hst_misses,-6)]@{n} (@{BCyellow}$[pad(_qtmp2,3)]\%@{n}) | Total Hit Types: @{BCwhite}$[pad(hst_count,-3)]@{n} |%;\ -/msw `----------------------------------------------' +/msw | Hits..: @{Cgreen}$[pad(hst_total,-8)]@{n} (@{BCgreen}$[pad(_qtmp1,3)]\%@{n}) | Crits.: @{Cred}$[pad(hst_crits,-8)]@{n} (@{BCred}$[pad(_qtmp3,3)]\%@{n}) |%;\ +/msw | Misses: @{Cyellow}$[pad(hst_misses,-8)]@{n} (@{BCyellow}$[pad(_qtmp2,3)]\%@{n}) | Total Hit Types: @{BCwhite}$[pad(hst_count,-6)]@{n} |%;\ +/msw +---------------------------------------+-----------'%;\ +/msw | Dodges.: @{BCmagenta}$[pad(hst_dodges,-8)]@{n} | Parries: @{BCyellow}$[pad(hst_parries,-8)]@{n} |%;\ +/msw | Tumbles: @{BCgreen}$[pad(hst_tumbles,-8)]@{n} | Stuns..: @{BCred}$[pad(hst_parries,-8)]@{n} |%;\ +/msw `---------------------------------------' ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; Special highlights and maglings for misc. commands +;; Slots mangler ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -;; Mangle 'slots' command's messages to more nicer layout. -;; FIXME: -;; What if torso is not the last slot listed? How to elegantly print -;; the bottom of the table. +;; FIXME: What if torso is not the last slot listed? How to elegantly print +;; the bottom of the table? /def -i -ag -p9999 -msimple -t"Your current armour status is:" gslots_mangle1 =\ /set slots_st=1%;\