view ggrtf-pssmangle.tf @ 684:6f0452997253

Fixed expiration.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 05 Oct 2007 17:28:52 +0000
parents 08b7e9b65c9e
children 934414dfe5db
line wrap: on
line source

;;
;; GgrTF::PSSMangle - 'pss' output parser/mangler
;; (C) Copyright 2005-2007 Matti Hämäläinen (Ggr) & Jarkko Vääräniemi (Jeskko)
;;
;; This file (triggerset) is Free Software distributed under
;; GNU General Public License version 2.
;;
;; NOTICE! This file requires GgrTF (version 0.6.0 or later) to be loaded.
;;
/loaded GgrTF::PSSMangle

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Settings
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
/prdeftoggle -n"fullparty"	-d"Always show full party formation"


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Output and prettyprinting macros
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
/def -i gparty_val =\
	/if (!{1})\
		/let _qtmp=-%;\
	/else \
		/let _qtmp=%{1}%;\
	/endif%;\
	/return "@{$[prgetnlite({1},{2})]}$[pad(_qtmp,4)]@{n}"

/def -i gparty_sc1 =\
	/eval /set _gp_s=$$[gparty_%{1}_%{2}_s]%;\
	/eval /set _gp_pl=$$[gparty_%{1}_%{2}_pl]%;\
	/eval /set _gp_hp=$$[gparty_%{1}_%{2}_hp]%;\
	/eval /set _gp_hpm=$$[gparty_%{1}_%{2}_hpm]%;\
	/eval /set _gp_sp=$$[gparty_%{1}_%{2}_sp]%;\
	/eval /set _gp_spm=$$[gparty_%{1}_%{2}_spm]%;\
	/eval /set _gp_ep=$$[gparty_%{1}_%{2}_ep]%;\
	/eval /set _gp_epm=$$[gparty_%{1}_%{2}_epm]%;\
	/if (_gp_pl=~"unc")\
		/let tmpc=@{BCwhite,BCbgred}%;\
	/elseif (_gp_pl=~"stun")\
		/let tmpc=@{BCred}%;\
	/elseif (_gp_pl=~"form"|_gp_pl=~"mbr"|_gp_pl=~"rest")\
		/let tmpc=@{Cmagenta}%;\
	/else /let tmpc=@{BCwhite}%;/endif%;\
	/let tmps=$[substr(_gp_s,0,8)]%;\
	/return "%{tmpc}$[pad(tmps,8)]@{n}@{Cblue}:@{n}$[gparty_val(_gp_hp,_gp_hpm)]@{Cblue}:@{n}$[gparty_val(_gp_sp,_gp_spm)]@{Cblue}:@{n}$[gparty_val(_gp_ep,_gp_epm)]"


/def -i gparty_show1 =\
	/echo ,-----------------------------------------------------------------------.%;\
	/msw |$[gparty_sc1(1,1)]|$[gparty_sc1(1,2)]|$[gparty_sc1(1,3)]|%;\
	/if (gparty_row2 | gparty_row3 | opt_fullparty=~"on")\
	/msw |$[gparty_sc1(2,1)]|$[gparty_sc1(2,2)]|$[gparty_sc1(2,3)]|%;\
	/if (gparty_row3 | opt_fullparty=~"on")\
	/msw |$[gparty_sc1(3,1)]|$[gparty_sc1(3,2)]|$[gparty_sc1(3,3)]|%;\
	/endif%;\
	/endif%;\
	/echo `-----------------------------------------------------------------------'


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Utility and grabbing triggers
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
/set gparty_gag=0
/def pss = /set gparty_gag=1%;@@party status short

/def -i gparty_set =\
	/if (!regmatch("^([1-3])\.([1-3])$",{1})) /gerror Invalid party place '%{1}'!%;/break%;/endif%;\
	/if ({2}!~"") /set gparty_row%{P1}=1%;/else /set gparty_row%{P1}=0%;/endif%;\
	/let _gps=$[replace(".","_",{1})]%;\
	/eval /set gparty_%{_gps}_os=$$[gparty_%{_gps}_s]%;\
	/eval /set gparty_%{_gps}_opl=$$[gparty_%{_gps}_pl]%;\
	/eval /set gparty_%{_gps}_ohp=$$[gparty_%{_gps}_hp]%;\
	/eval /set gparty_%{_gps}_ohpm=$$[gparty_%{_gps}_hpm]%;\
	/eval /set gparty_%{_gps}_osp=$$[gparty_%{_gps}_sp]%;\
	/eval /set gparty_%{_gps}_ospm=$$[gparty_%{_gps}_spm]%;\
	/eval /set gparty_%{_gps}_oep=$$[gparty_%{_gps}_ep]%;\
	/eval /set gparty_%{_gps}_oepm=$$[gparty_%{_gps}_epm]%;\
	/if (regmatch("^([A-Z][a-z]+)",{2}))\
		/set gparty_%{_gps}_s=%{P1}%;\
		/set gparty_mtmp=%{gparty_mtmp} %{P1}%;\
	/else \
		/set gparty_%{_gps}_s=%{2}%;\
		/set gparty_mtmp=%{gparty_mtmp} %{2}%;\
	/endif%;\
	/set gparty_%{_gps}_pl=%{3}%;\
	/set gparty_%{_gps}_hp=%{4}%;\
	/set gparty_%{_gps}_hpm=%{5}%;\
	/set gparty_%{_gps}_sp=%{6}%;\
	/set gparty_%{_gps}_spm=%{7}%;\
	/set gparty_%{_gps}_ep=%{8}%;\
	/set gparty_%{_gps}_epm=%{9}


/def -i gparty_clear =\
	/set gparty_mtmp=%;\
	/for _ccol 1 3 \
	/for _crow 1 3 \
		/gparty_set %%%{_crow}.%%%{_ccol}


/def -i -F -Egparty_gag -ag -p9999 -msimple -t',-----------------------------------------------------------------------------.' gpss_getbegin =\
	/gparty_clear


/def -i -F -Egparty_gag -ag -p9999 -mregexp -t"^\|.([1-3?]\.[1-3?])   ([A-Z][a-z ][a-z ]?[a-z ]?[a-z ]?[a-z ]?[a-z ]?[a-z ]?[a-z ]?[a-z ]?[a-z ]?[a-z]?) +(ld|ldr|fol|mbr|form|unc|dead|rest|stun) +([0-9-]+)\( *([0-9-]+)\) +([0-9-]+)\( *([0-9-]+)\) +([0-9-]+)\( *([0-9-]+)\)" gpss_getps =\
	/if ({P1} !~ "?.?")\
		/test gparty_set({P1},{P2},{P3},{P4},{P5},{P6},{P7},{P8},{P9})%;\
	/endif%;\


/def -i -F -Egparty_gag -ag -p9999 -msimple -t'`-----------------------------------------------------------------------------\'' gpss_getend =\
	/set gparty_gag=0%;\
	/set gparty_members=%{gparty_mtmp}%;\
	/gparty_show1%;\
	/prexecfuncs %{event_pss_once}%;\
	/set event_pss_once=


/def -i -F -p9999 -msimple -t'You are not in a party.' gpss_noparty =\
	/set gparty_gag=0%;\
	/set event_pss_once=