diff --git a/arkadia/statsy.tf b/arkadia/statsy.tf new file mode 100644 index 0000000..084e4f8 --- /dev/null +++ b/arkadia/statsy.tf @@ -0,0 +1,167 @@ +/def -Fp2 -t'*trafia cie * w nogi* wyparowan*' stats_wyparowane_nogi = /dodaj_wyparowane nogi %{L1} +/def -Fp2 -t'*trafia cie * w lewe ramie* wyparowan*' stats_wyparowane_lramie = /dodaj_wyparowane lramie %{L1} +/def -Fp2 -t'*trafia cie * w prawe ramie* wyparowan*' stats_wyparowane_pramie = /dodaj_wyparowane pramie %{L1} +/def -Fp2 -t'*trafia cie * w korpus* wyparowan*' stats_wyparowane_korpus = /dodaj_wyparowane korpus %{L1} +/def -Fp2 -t'*trafia cie * w glowe* wyparowan*' stats_wyparowane_glowa = /dodaj_wyparowane glowa %{L1} + +/def -Fp2 -mregexp -t'.* trafia cie .* w .*, lecz caly impet uderzenia zostaje wyparowan.*' cos_ci_defensnelo_zbroja = /substitute -p @{C%c_info}[ZBR]@{n} %{P0} + +/def -Fp2 -t'* cie w glowe.' stats_rany_glowa = /test ++glowa_rany +/def -Fp2 -t'* cie w lewe ramie.' stats_rany_lramie = /test ++lramie_rany +/def -Fp2 -t'* cie w prawe ramie.' stats_rany_pramie = /test ++pramie_rany +/def -Fp2 -t'* cie w korpus.' stats_rany_korpus = /test ++korpus_rany +/def -Fp2 -t'* cie w nogi.' stats_rany_nogi = /test ++nogi_rany + +/def -Fp2 -mregexp -t'(.* udaje ci sie oslonic .*)' stats_oslona = /test ++oslona_tarcza %;/substitute -p @{BC78}Defens tarcza @{C244}>@{n} %{P1} +/def -Fp2 -mregexp -t'(.* tobie udaje sie oslonic .*)' stats_oslona2 = /test ++oslona_tarcza%;/substitute -p @{BC78}Defens tarcza @{C244}>@{n} %{P1} +/def -Fp2 -t'*, zbijajac uderzenie i momentalnie przechodzac do przeciwnatarcia.' stats_oslona4 = /test ++oslona_tarcza +/def -Fp2 -t'*, lecz ty zbijasz go *' stats_oslona5 = /test ++oslona_tarcza +/def -Fp2 -t'Wycwiczonym blokiem*odbijasz*' stats_oslona6 = /test ++oslona_tarcza +/def -Fp2 -t'W pore zaslaniasz sie*' stats_oslona7 = /test ++oslona_tarcza +/def -Fp2 -t'Skutecznie oslaniasz*' stats_oslona8 = /test ++oslona_tarcza +/def -Fp2 -t'Bez trudu zbijasz*' stats_oslona9 = /test ++oslona_tarcza + +/def -Fp2 -mregexp -t'(.* tobie udaje sie uniknac .*)' stats_unik = /test ++unik%;/substitute -p @{C%c_info}[UNK]@{n} %{P1} +/def -Fp2 -mregexp -t'(.* nie udaje sie trafic ciebie .*)' stats_unik2 = /test ++unik%;/substitute -p @{C%c_info}[UNK]@{n} %{P1} +/def -Fp2 -t'*, lecz tobie udaje sie go uniknac.' stats_unik3 = /test ++unik +/def -Fp2 -t'*przecina powietrze tuz przed twoja glowa.' stats_unik4 = /test ++unik +/def -Fp2 -t'Z drwiacym usmiechem unikasz*' stats_unik5 = /test ++unik +/def -Fp2 -t'Z osiagnieta podczas lat treningu wprawa omijasz*' stats_unik6 = /test ++unik +/def -Fp2 -t'Efektownym wypadem schodzisz*' stats_unik7 = /test ++unik +/def -Fp2 -t'Z pokazowa latwoscia unikasz*' stats_unik8 = /test ++unik + +/def -Fp2 -mregexp -t'(.* tobie udaje sie je zbic.*)' stats_parowanie = /test ++parowanie%;/substitute -p @{C%c_info}[PAR]@{n} %{P1} +/def -Fp2 -mregexp -t'(.*, lecz tobie udaje sie zbic je z linii ataku.*)' stats_parowanie2 = /test ++parowanie%;/substitute -p @{C%c_info}[PAR]@{n} %{P1} +/def -Fp2 -mregexp -t'(.*, lecz tobie udaje sie go sparowac.*)' stats_parowanie3 = /test ++parowanie%;/substitute -p @{C%c_info}[PAR]@{n} %{P1} +/def -Fp2 -mregexp -t'(W pore zakleszczasz cios.*)' stats_parowanie4 = /test ++parowanie%;/substitute -p @{C%c_info}[PAR]@{n} %{P1} +/def -Fp2 -t'*, lecz sprawnie parujesz go*' stats_parowanie5 = /test ++parowanie +/def -Fp2 -t'Odpierasz natarcie*blyskawiczna zaslona*' stats_parowanie6 = /test ++parowanie +/def -Fp2 -t'Efektownie parujesz*' stats_parowanie7 = /test ++parowanie +/def -Fp2 -t'Jak gdyby od niechcenia zbijasz*' stats_parowanie8 = /test ++parowanie +/def -Fp2 -t'Elegancko odbijasz cios*' stats_parowanie9 = /test ++parowanie + +/def -Fp2 -t'*dotknal cie w glowe *' stats_rany_glowa2 = /test ++glowa_rany +/def -Fp2 -t'*dotknal cie w lewe ramie *' stats_rany_lramie2 = /test ++lramie_rany +/def -Fp2 -t'*dotknal cie w prawe ramie *' stats_rany_pramie2 = /test ++pramie_rany +/def -Fp2 -t'*dotknal cie w korpus *' stats_rany_korpus2 = /test ++korpus_rany +/def -Fp2 -t'*dotknal cie w nogi *' stats_rany_nogi2 = /test ++nogi_rany + +/def -Fp2 -mregexp -t'Wykorzystujac brak broni .* ze swistem' stats_spec_0 = /test ++spec_0 +/def -Fp2 -mregexp -t'Wykorzystujac brak broni .* (ledwie zahaczajac|ledwie sinca)' stats_spec_1 = /test ++spec_1 +/def -Fp2 -mregexp -t'Wykorzystujac brak broni .* (lekko raniac|krwawiace zadrapanie)' stats_spec_2 = /test ++spec_2 +/def -Fp2 -mregexp -t'Wykorzystujac brak broni .* (mocno raniac|dluga, poszarpana rane)' stats_spec_3 = /test ++spec_3 +/def -Fp2 -mregexp -t'Wykorzystujac brak broni .* (bardzo mocno raniac|gleboka rane z wystajacymi)' stats_spec_4 = /test ++spec_4 +/def -Fp2 -mregexp -t'Wykorzystujac brak broni .* smiertelne obrazenia' stats_spec_5 = /test ++spec_5 + +/def dodaj_wyparowane = \ + /let co=$[replace(".","",{2})]%;\ + /test (wyparowane_%{1}_%{co}:=wyparowane_%{1}_%{co} + 1) %; + +/def stats_wyparowane = \ + /let j=%{1} %;\ + /let wyp_razem=0 %;\ + /let wyparowane_lista=$(/listvar -s -mglob wyparowane_%{j}_*) %;\ + /let wyparowane_lista=$[strcat(wyparowane_lista," end")]%;\ + /let linia=%;\ + /while /let i=$[strstr(wyparowane_lista," ")]%; /@test i>0 %;/do \ + /let sprzet=$[substr(wyparowane_lista,0,i)] %;\ + /let wyparowane_lista=$[substr(wyparowane_lista,i+1)] %;\ + /let wyp_ile=$(/listvar -v %{sprzet}) %;\ + /let wyp_razem=$[wyp_razem+wyp_ile] %;\ + /let sprzet_nazwa=$[substr(sprzet,strrchr(sprzet,"_")+1)] %;\ + /let linia=$[strcat(linia," ",sprzet_nazwa,":",wyp_ile," ")]%;\ + /done %;\ + /let procent=100%;\ + /let x=$(/listvar -v %{j}_rany)%;\ + /let x=$[wyp_razem+x] %;\ + /set wszystkie_parowania=$[wszystkie_parowania+wyp_razem] %;\ + /if ({x}>0) \ + /let procent=$[100*wyp_razem / x ] %;\ + /else \ + /let procent=?%;\ + /endif %;\ + /let linia=$[strcat("| ",pad(j,-6)," ",pad(wyp_razem,5),"/",pad(x,-5)," [",pad(procent,3),"%%] |",linia)] %;\ + /eval /echo -p @{C5}%{linia}@{n} + +/def stats =\ + /set wszystkie_parowania=0%;\ + /echo -p @{C5}+----[ Skutecznosc zbroi ]---+-----------[ Wyparowane przez ]---------+@{n}%;\ + /stats_wyparowane glowa %;\ + /stats_wyparowane lramie %;\ + /stats_wyparowane pramie %;\ + /stats_wyparowane korpus %;\ + /stats_wyparowane nogi%;\ + /echo -p @{C5}+----------------------------+----------------------------------------+@{n}%;\ + /test (wszystkie_rany:=glowa_rany+lramie_rany+pramie_rany+korpus_rany+nogi_rany) %;\ + /let x=$[wszystkie_parowania+wszystkie_rany+unik+oslona_tarcza+parowanie] %;\ + /let spece_suma=$[spec_0+spec_1+spec_2+spec_3+spec_4+spec_5]%;\ + /if (x>0) \ + /let p1=$[100*unik / x]%;\ + /let p2=$[100*parowanie / x]%;\ + /let y=$[wszystkie_parowania+unik+oslona_tarcza+parowanie]%;\ + /let p3=$[100*oslona_tarcza / x]%;\ + /let p4=$[100*y / x]%;\ + /else \ + /let p1=?%;\ + /let p2=?%;\ + /let p3=?%;\ + /let p4=?%;\ + /endif%;\ + /if (spece_suma>0) \ + /let ppp0=$[100*spec_0 / spece_suma]%;\ + /let ppp1=$[100*spec_1 / spece_suma]%;\ + /let ppp2=$[100*spec_2 / spece_suma]%;\ + /let ppp3=$[100*spec_3 / spece_suma]%;\ + /let ppp4=$[100*spec_4 / spece_suma]%;\ + /let ppp5=$[100*spec_5 / spece_suma]%;\ + /let ppp8=$[100*spece_suma / (ilosc_ciosow+spece_suma)]%;\ + /else \ + /let ppp0=?%;\ + /let ppp1=?%;\ + /let ppp2=?%;\ + /let ppp3=?%;\ + /let ppp4=?%;\ + /let ppp5=?%;\ + /let ppp6=?%;\ + /let ppp7=?%;\ + /let ppp8=0%;\ + /endif%;\ + /if ({_rozkaz_udany} > 0) \ + /let p6=$[100*_rozkaz_udany/ (_rozkaz_nieudany+_rozkaz_udany)] %;\ + /else \ + /let p6=? %;\ + /endif %;\ + /let linia=$[strcat("| ",pad("uniki",-6)," ",pad(unik,5),"/",pad(x,-5)," [",pad(p1,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("zbicia",-6)," ",pad(parowanie,5),"/",pad(x,-5)," [",pad(p2,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("oslona",-6)," ",pad(oslona_tarcza,5),"/",pad(x,-5)," [",pad(p3,3),"%%] |")] %;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("rozkaz",-6)," ",pad(_rozkaz_udany,5),"/",pad(_rozkaz_nieudany,-5)," [",pad(p6,3),"%%] |")] %;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("+----[ Statystyka specow ]---+")] %;\ + /let linia=$[strcat(linia,"-----[ W sumie: ",pad(y,5),"/",pad(x,-5)," [",pad(p4,3),"%%] ]----+")] %;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 0/5",-6)," ",pad(spec_0,3),"/",pad(spece_suma,-5)," [",pad(ppp0,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 1/5",-6)," ",pad(spec_1,3),"/",pad(spece_suma,-5)," [",pad(ppp1,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 2/5",-6)," ",pad(spec_2,3),"/",pad(spece_suma,-5)," [",pad(ppp2,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 3/5",-6)," ",pad(spec_3,3),"/",pad(spece_suma,-5)," [",pad(ppp3,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 4/5",-6)," ",pad(spec_4,3),"/",pad(spece_suma,-5)," [",pad(ppp4,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 5/5",-6)," ",pad(spec_5,3),"/",pad(spece_suma,-5)," [",pad(ppp5,3),"%%] |")]%;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + /let linia=$[strcat("+----------------------------+")] %;\ + /eval /echo -p @{C5}%{linia}@{n}%;\ + +/def czysc_staty = \ + /quote -S /unset `/listvar -s wyparowane_* %;\ + /quote -S /unset `/listvar -s *_rany %;\ + /quote -S /unset `/listvar -s unik %;\ + /quote -S /unset `/listvar -s oslona_tarcza %;\ + /quote -S /unset `/listvar -s parowanie %;\ + +/def czysc_spece = /quote -S /unset `/listvar -s spec_* %;