From 48361f2f967614303954e04654c4716ef4f45c90 Mon Sep 17 00:00:00 2001 From: Bartek Stalewski Date: Tue, 18 Nov 2014 13:45:33 +0100 Subject: [PATCH] Dodanie statystyk. --- arkadia/start.tf | 1 + arkadia/{statsy.tf => stats.tf} | 171 ++++++++++++++++++++++++++------ 2 files changed, 140 insertions(+), 32 deletions(-) rename arkadia/{statsy.tf => stats.tf} (59%) diff --git a/arkadia/start.tf b/arkadia/start.tf index 3a08c0b..fb12509 100644 --- a/arkadia/start.tf +++ b/arkadia/start.tf @@ -9,6 +9,7 @@ /load money.tf /load movement.tf /load specs.tf +/load stats.tf /load statusbar.tf /load substitute.tf /load warn.tf diff --git a/arkadia/statsy.tf b/arkadia/stats.tf similarity index 59% rename from arkadia/statsy.tf rename to arkadia/stats.tf index 4aa55ae..d15fcba 100644 --- a/arkadia/statsy.tf +++ b/arkadia/stats.tf @@ -1,10 +1,12 @@ +; by unknown + /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 -mregexp -t'.* trafia cie .* w .*, lecz caly impet uderzenia zostaje wyparowan.*' cos_ci_defensnelo_zbroja = /substitute -p @{C%c_bold}[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 @@ -12,8 +14,8 @@ /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 -mregexp -t'(.* udaje ci sie oslonic .*)' stats_oslona = /test ++oslona_tarcza %;/substitute -p @{C%c_bold}[tarcza]@{n} %{P1} +/def -Fp2 -mregexp -t'(.* tobie udaje sie oslonic .*)' stats_oslona2 = /test ++oslona_tarcza%;/substitute -p @{C%c_bold}[tarcza]@{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 @@ -21,8 +23,8 @@ /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 -mregexp -t'(.* tobie udaje sie unknac .*)' stats_unk = /test ++unk%;/substitute -p @{C%c_bold}[unk]@{n} %{P1} +/def -Fp2 -mregexp -t'(.* nie udaje sie trafic ciebie .*)' stats_unk2 = /test ++unk%;/substitute -p @{C%c_bold}[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 @@ -30,10 +32,10 @@ /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 -mregexp -t'(.* tobie udaje sie je zbic.*)' stats_parowanie = /test ++parowanie%;/substitute -p @{C%c_bold}[par]@{n} %{P1} +/def -Fp2 -mregexp -t'(.*, lecz tobie udaje sie zbic je z linii ataku.*)' stats_parowanie2 = /test ++parowanie%;/substitute -p @{C%c_bold}[par]@{n} %{P1} +/def -Fp2 -mregexp -t'(.*, lecz tobie udaje sie go sparowac.*)' stats_parowanie3 = /test ++parowanie%;/substitute -p @{C%c_bold}[par]@{n} %{P1} +/def -Fp2 -mregexp -t'(W pore zakleszczasz cios.*)' stats_parowanie4 = /test ++parowanie%;/substitute -p @{C%c_bold}[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 @@ -53,6 +55,15 @@ /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 -Fp2 -mregexp -t'ktory ma zmasakrowac.* twoja bron jakims cudem ' stats_spec_0 = /test ++spec_0 +/def -Fp2 -mregexp -t'rzucasz sie do ataku.* (ledwo muskajac) ' stats_spec_1 = /test ++spec_1 +/def -Fp2 -mregexp -t'rzucasz sie do ataku.* (lekko raniac) ' stats_spec_2 = /test ++spec_2 +/def -Fp2 -mregexp -t'rzucasz sie do ataku.* ((?0) \ /let p1=$[100*unik / x]%;\ /let p2=$[100*parowanie / x]%;\ @@ -114,6 +125,8 @@ /let ppp3=$[100*spec_3 / spece_suma]%;\ /let ppp4=$[100*spec_4 / spece_suma]%;\ /let ppp5=$[100*spec_5 / spece_suma]%;\ + /let ppp5=$[100*spec_6 / spece_suma]%;\ + /let ppp5=$[100*spec_7 / spece_suma]%;\ /let ppp8=$[100*spece_suma / (ilosc_ciosow+spece_suma)]%;\ /else \ /let ppp0=?%;\ @@ -132,30 +145,34 @@ /let p6=? %;\ /endif %;\ /let linia=$[strcat("| ",pad("uniki",-6)," ",pad(unik,5),"/",pad(x,-5)," [",pad(p1,3),"%%] |")]%;\ - /eval /echo -p @{C5}%{linia}@{n}%;\ + /eval /echo -p %{linia}@{n}%;\ /let linia=$[strcat("| ",pad("zbicia",-6)," ",pad(parowanie,5),"/",pad(x,-5)," [",pad(p2,3),"%%] |")]%;\ - /eval /echo -p @{C5}%{linia}@{n}%;\ + /eval /echo -p %{linia}@{n}%;\ /let linia=$[strcat("| ",pad("oslona",-6)," ",pad(oslona_tarcza,5),"/",pad(x,-5)," [",pad(p3,3),"%%] |")] %;\ - /eval /echo -p @{C5}%{linia}@{n}%;\ + /eval /echo -p %{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}%;\ + /eval /echo -p %{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}%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 0/7",-6)," ",pad(spec_0,3),"/",pad(spece_suma,-5)," [",pad(ppp0,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 1/7",-6)," ",pad(spec_1,3),"/",pad(spece_suma,-5)," [",pad(ppp1,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 2/7",-6)," ",pad(spec_2,3),"/",pad(spece_suma,-5)," [",pad(ppp2,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 3/7",-6)," ",pad(spec_3,3),"/",pad(spece_suma,-5)," [",pad(ppp3,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 4/7",-6)," ",pad(spec_4,3),"/",pad(spece_suma,-5)," [",pad(ppp4,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 5/7",-6)," ",pad(spec_5,3),"/",pad(spece_suma,-5)," [",pad(ppp5,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 6/7",-6)," ",pad(spec_6,3),"/",pad(spece_suma,-5)," [",pad(ppp5,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ + /let linia=$[strcat("| ",pad("Spec 7/7",-6)," ",pad(spec_7,3),"/",pad(spece_suma,-5)," [",pad(ppp5,3),"%%] |")]%;\ + /eval /echo -p %{linia}@{n}%;\ /let linia=$[strcat("+----------------------------+")] %;\ - /eval /echo -p @{C5}%{linia}@{n}%;\ + /eval /echo -p %{linia}@{n}%;\ /def czysc_staty = \ /quote -S /unset `/listvar -s wyparowane_* %;\ @@ -165,3 +182,93 @@ /quote -S /unset `/listvar -s parowanie %;\ /def czysc_spece = /quote -S /unset `/listvar -s spec_* %; + +; by thornag +/set _postepy_list=\ + minimalne|\ + nieznaczne|\ + bardzo male|\ + male|\ + nieduze|\ + zadowalajace|\ + spore|\ + dosc duze|\ + znaczne|\ + duze|\ + bardzo duze|\ + ogromne|\ + imponujace|\ + wspaniale|\ + gigantyczne|\ + niebotyczne + +/def _get_index = \ + /let __element=%{1}%; \ + /let __list=%{2}|%; \ + /let __i=-1%; \ + /while ({__list}!~"") \ + /let __i=$[{__i}+1]%; \ + /let __p=$[strstr({__list}, "|")]%; \ + /let __el=$[substr({__list},0,{__p})]%; \ + /if ({__el}=~{__element}) \ + /return %{__i}%; \ + /endif%; \ + /let __list=$[substr({__list},{__p}+1)]%; \ + /done%; \ + /return -1 + +/def _get_element = \ + /let __index=%{1}%; \ + /let __list=%{2}|%; \ + /let __i=-1%; \ + /while ({__list}!~"") \ + /let __i=$[{__i}+1]%; \ + /let __p=$[strstr({__list}, "|")]%; \ + /let __el=$[substr({__list},0,{__p})]%; \ + /if ({__i}=={__index}) \ + /return strcat({__el})%; \ + /endif%; \ + /let __list=$[substr({__list},{__p}+1)]%; \ + /done%; \ + /return "" + +/def -Fp500 -mregexp -t'Poczynil.s (.*) postepy, od momentu kiedy wszedles do gry\.' _postepy_lap = \ + /let __postep=%{2}%;\ + /let __index=$[_get_index({__postep}, {_postepy_list})]%;\ + /_postepy_zanotuj %{__index}%;\ + /_sub %__index/15 + + +/def _postepy_zanotuj = \ + /let __postep=%{1}%; \ + /if ({__postep}>{_postepy_current})\ + /set _postepy_czas_%{__postep}=$[ftime("%H:%M", time())]%;\ + /set _postepy_current=%{__postep}%;\ + /endif + +/def postepy = /_postepy_show_times + +/def _postepy_show_times = \ + /let __index=0%; \ + /echo -p @{n}------------------------%; \ + /echo | Postepy | Czas |%; \ + /echo -p @{n}---------------+--------%; \ + /while ({__index}<={_postepy_current}) \ + /let __postep=$[_get_element({__index}, {_postepy_list})]%; \ + /let __czas=$(/listvar -v _postepy_czas_$[strcat({__index})])%; \ + /if ({__czas} =~ "" )\ + /let __czas=??:??%;\ + /endif%;\ + /echo $[strcat("| ", pad({__postep},-13), "| ", {__czas}, " |")]%; \ + /let __index=$[{__index}+1]%; \ + /done%; \ + /if ({_postepy_current}==-1) \ + /echo -p @{n}| | |%; \ + /endif%; \ + /echo -p @{n}------------------------ + +/def _postepy_show = \ + /let __postep=%{2}%; \ + /let __index=$[_get_index({__postep}, {_postepy_list})]%; \ + /_postepy_zanotuj %{__index}%; \ + /test substitute(strcat("@{B}", {1}, " [",{__index},"/15]"),"",1)