From b576537fb5f64920861e6cf8b60977f7f60ab554 Mon Sep 17 00:00:00 2001 From: ThisBirchWood Date: Sun, 27 Apr 2025 16:31:09 +0200 Subject: [PATCH] ADD kill, death, assist stats --- assets/fonts/Metropolis-Bold.ttf | Bin 0 -> 155780 bytes main.py | 3 ++- models/match.py | 3 +++ models/player.py | 4 +++ render/info_renderer.py | 41 ++++++++++++++++++++++--------- states/start_menu.py | 1 + 6 files changed, 40 insertions(+), 12 deletions(-) create mode 100644 assets/fonts/Metropolis-Bold.ttf diff --git a/assets/fonts/Metropolis-Bold.ttf b/assets/fonts/Metropolis-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..390e56b66cd3f31c2e9cf729a1261d2ae8a964df GIT binary patch literal 155780 zcmeFacYIt|wLiM|ncn-1Mk9@;&q$h48}(w3RbAu~+i@f(u_ZUzPID6C^g@Cmm?Q){ zp@aYlDI~zX8ON!F5_&Iz0Qqr$K;V)~3HNe=0O1mke&4nCnbAnLlf3)h`@HwZ-O^d- zoPBm(ZSTGII%gPXjQIexY{SIp*tqS0EyVb9pGNE_CpN6#|$u<~EexPY|R5vxseoUxJnk-l@!fw>Dl-0k`XE`P4Euq z=0tlQ!*k=@`B(1A1;4cc=~4crkL}%c!4*yXzO6`m4rBF+y}M_3)!e!M5!8=+*1Z=I zhM+El`#W%-*n7cSuK4-&En0K{?bWgKc3*Pgqxv8JCu5&N9ZWg@qMftr*LECc?8#e@ z=Ee(VuQ;G7I8Z)+3i%@!&R(!P_xyo8}=6d+RMVG$iKKt>_jDPc4l=tTYm+U^U zcl>L2GdBDh(tk|g%EH*j?=-I8?ilC3n;IA{5zZA z(eg3>dmf#CQQpsg8`r<0YbDNn%6D<5V?)*P4%VRAhPJR%95I&AobG61jr2_GWpU*m zl!rr;LYqF0>+0ibR;N@S*Q3wn<7cc_d4oe^Vzt^a7Fv2J|AKP=H*mZ3cn`}e)kib) zD{tb^ybtMaX3G>e3obftX7%8sT1_p^x8o?V+EX5@s^VA5YkoD(SE8NeW121F8rFfM zS03{}<(m2DaC{EO4@I11{;M2^GKsd};CA)+0M6T3jplaXZ1X9OJ!tpoj!RgWo@xFK zX{e94vJsr?`Fqd~dGv_$%g~5bhq9dw@prKrCBbUMc@t|<-sqTNcFhEHEf=V>_{|*OWbOP37F8}mn=S?q-p$g=<*Zpb%sSANT)l(uU9@jQtnR&?W3aoYz9j>|(>v z5d)eu&d;)frjGR}XW+PoO)5UtsjO#R;O(=Njcg^39{zLC=T(+RJM!A!;e0dr;`=PG zd1I!0OnSSsmKxg2TLR^U7jpGxn zk^O`DaMYufvaQg*YxtV~3Dp?jB2>q`&Nasf#yAsMn3cV1oX3!4m@hFCGXk0cPcREJ z0a}?E(8er)c4h^10KSHqfep~b?0|0O0Q4{?pcjznRjwJwFSQ4<6r2yMl8n7MkFRX)Q0Q0O7u#+_bcClu_ZopSq56c4f zvK(L^YXR(Mt$+i7e`bTM4RDCH11@77fXi7PumJccwt{s64zn)65!MYj%6b6D0RPCw zSufxO>jPZL`T83fE(E`;3mNT zV4K+p;F)X`a0?p)Jd2G3P67Tqn`RS$TiHs$v)L-ZbJ%LYa{+(Pwy`yU+u0=G3|k90 z%hmzz0DPJ4Wa|NUu?>K`*%^R)*hauPz~8aGY!l!5GuIol3+1)Bl9lFb5M1^935 zYPJLL8nzSgTDA-DI<_0|dcc?14QvnKTiG1ojchOAO>7_F+W>#X4zc}!Z)fKLzJr|) zcr&{I@STAF$_}#&0pG=?Th@KJUf;BoeDz{l9_fR6+IggwFD1NbC60{9d=3ivd; z1MpLT|BF4t?gacadoSQ;*!uuK%ia(8Ilvd#v+M(apJ#Uget~@u@Qdtjz%K#*7@Ge> zfL~!B2K*}f2;kQQ{5rd5{zvQ^>|VfcvX26Oi`@tKZNMM0@38v;zsnu~{2qG{@HzG| z!0!V-&wjuj0(_o54ERI#aljw3PXPWH@CWP#_DR71#r_HKC+wdA|AjpQ2z<BdZ`r2+ zf5)Byd>Qb&?Dy=`fd9@u1Na~8vw(kKp9B0)!0)g>vS$JR#6A!BXZ8iaR{+1w{=&Wp z_*eENz`wCC1HQ_>0{C~pZ(+>-D&RlZ*8pE*Uk5zFz5!SQ{3e@c-vngPyI2>REIP$d z31&S7x)m2HpnHuPbb7r`r_&oLZXuYEsVc|912YAAOV5#24MuUT*BPqfbQ(&cRDurI zT8&ZUsFaSX^jbCOwD_w8BZbNx8d?cjafKM_1iFHPHCj}x(NIAeol%b{+=)XmQ4`P< zgWjM+BK&K0MvKv)H|h;qtUcs2>#=|PN2Pk|e{mh}*%Yps@$Ru# zttw8hr8Kf0Q5SHi)2eJtk0=mDsOy9#AV*{o4-BF;g5YY|G8*Is;bovwO@cUJErBt@ zBN{^z02W2bdW{8Fiq>EhSP1nwyKn1!$TxhO}Gw3KuxhCoo;joI0iQ9=H zWi~VD@K*_QaRv8Gy-*@GKoX0ibFGy2JuA$^?I|z zVlr7ygF~Cspsk?7Y!}_7d$r$mA{?S(8Gu7-k7Xf`*=(VFA_qM}Sa@isAaALtN`HY0 zx<*np4!1^u!wSbk>Wsv0DjUm^jYc9f^<1C{I4sAbO+s&ods%k*5o8cdMS=Q&t^i*U zPXnY`1cSvy?5x#N$p($hpwTK?BYFhBAa(>IEl#V+WHp*~FxcrJ#FSO51F~W7Vh)c{ zD+Eper|7Q5YOyY$0XRZXQK&^r38l7$JamP8)j33O2w0sIFj+VzE(HHJ5lOfQy2>rRNJBc1RqWZB=mshZT;OI5g-9 zX;p#9Og$GQ(910HvBaUc77r_#EC!Ml3e*c5SkR;eYY`5GiZXD>^L!FNLY|u;DpvMRnGsq=0q(Bpf zBpFXov_{@iJyf3zR)aW0o~RFY6^Gyj$<3tfBo2u>Cauea!C7y%+O2l8#YEUQnjAid z)#@Zvj79F^dcsBzelV8Q^}10fAHmIG0Q@JDEZf|6QLq*$Ui${DOyyAjkx z$x@me5M#3r;z<)%D#>7R*+4H4jHqMQd2prCThSv2bQ%;J5b3IM+3hZ?!w8fap`>ZD z09CBh!OG8kwHCdoT!4VU2whgtV7J>4=_K)?U~v$7?QW4=NGbt8Dxe&K1i)uGI0F>q z9X(&@7wH!;ugz5zXEjp(G7j~6s}*cv@Ti5VC!z@ToEXk#lv(5>HwCF*sO*Jo4yZ~y z{n@DpE_A}8H$s3R&0>VKy6q$ZR3Sztz0ZQd!eDc_94@QP0(Jx<-L)Qv!((%r^w@xc zB1BeF#lRsVYQk275I6y91yTB5jlVylXxmpcqzzRs;82} z;R4~E4yWDeq#k(C37a0QMUyTn$z=CA5oI$N>=?hS`Wh?NBSweI9V`}#*$qPA1PBYPczs@pBiVTuwT(zm!QmlfxdI}&zZ~k^ zZa*a!Byfogl*#K0QxKP4dcM%FpqqN@1~CY?YA_?e=qL5nV4yx*OrQ^fTC&R(LNR4F zb6Ol0H7ib%=fyphUCH6{SiuA?x6|#W9{4dr*bQcjhbCQAlG#z?Hlk%lBT>h02-z`M zm|Pye$LDm}ooJxVUK6YFdTLxg3wGfw5Mr9I87)?WfpA!#a2U&&@cSd8yZ(SbP+>7# z0AHwB2B*)5#(9Dwk7zXk;66ZE2~RSEq)Q+|L0(gd3mpzYHXt3YfM=nvE(@}|$~75{ zE?is9s%%iv6zWk7@t`1q#c8Qzch^vmx1wySPz0Y1t#X5{JXCf7^CJiP?{zq&nzgus zUZBrO6`IWsW4!|_8?)OR@CICNVn>(V5lqzje6?=B6*#nFPJpatXj$M85s{436s&}} zKut}sCMf$YpchE0Ar(%+9U%1j>O>YHsRW{ae=TK|97h>s2*xSMYbr~kL7;+2;qrNc zYMh6T43pvUX-_&gqmvo2E~2-JIn zHWOn|1SVv)m~2qYu)?!wlgm^=MQuWKH&`1K7!e5d`+Xp9kQ4_6P#fJ@jKffE%I#Uvydm8}fUppE3{*?N(J4NF@5aQJ=qpLoaYxL9Vxs zf<(5UPX&oJb_fzmCLEdxhibi8Iw)f+GmjXDG;9dRFO{5Bde6#$T_-p^tu_9c1uJS`qZ)+F=8I5Cm}v zBvA~BDv`tQ@H)g(k)nZuPuvqp)VAPM3so5m)c9*^NCAe?39s4isP#Z2Qb{&nBxpus zs6v~~V@`TZX1z5~8?LSQ*LeLkAiXEj8V!YFfqEz0B^($`kkw{(I87$(1F@zqpCwue zEdrYj(FWvL2-G%GK@ zUxEH$jT8BUl2!zRxOO>Gi`7OG(v;b())jDxrvz$+-l!4xqU=fs!tUDII+Pp=Q4eAe zW531euJ`+$7-n29M@_QMik4Ze!Jxz8vo!fIPqf$8$HLKI$RC8-^7@ipsc<+|8*y9V zoB~CNtPZOSgBy0ySWADvCIn7^4vCsXEKy;xaJU{Qj*$wY5R4Lf!x_=wWI41oG$aXA zDnpl18%uOhkhfIgg4Q6}fOOO)!~Rv(AP6$l*R`M+;z1%uojd5R zWUot8s1^63>`E7+-un86`fw;5rXD2i_L>^2%M+=op#czBtj#pofO?xP6vF6kZ3$Ry zMn_#F8A*ofgCR7~AIS7KMWao136BlS5==KSb~$Yxh(2~7S;z9AT~sbWk3>y6nXa&A zG#UYVQLzl61fe(5oT4BkHIr$~bjD&C!jvFEBvM9gGTlQ#-cpGwCU9zrP-i3IOjN}? zojk}d`bmAY+3M@#Zv*ADAbEfqLtbfoD%+qhG--j zjzp;s8HXbjvUz;5T1Ydrq}N@SjoHx{yPc>Lv~>hAShyPEnRq4~35BEKa7{3~JeNr1 z8qz*HV^9QkWOYN!+HBanW!IBEQw2b8raUVNr_*RvytR=+vkckh z-b5lxSqYEGq~bP{X&RuA7WY)xLWeuzgtU01IWDmiX=sQvc!>-uv2cn+91g#yT_8iH zX)M}}V#=Z#^@V*ER7G-RRa zCLL&u!x4#iJRy5`$nG$?qseTlITEXn#3PZ~Q0r)WI^7;^3cxMGk12Z{CJ+vPz;4IR zH|t+j?-Z2_P!PRs&Nb%*pGlAedYefFQHV4(p`)n|k-W7WhSKR)$|^Z7sp7V|Ik%jG zq!ATX>2RbgMYv1FTT&7`G3bk^ANkSGa)`y8&Khr*Ktx5~^rILd$AqRpBv3|FJl;+r zD(N!$`o`L1t$0eHv6q6>FNDYnA)DLko0@V> z*-UemdeQCmCKB#oT}wQUp$213O==+LL1R3gOs1wL<{pV*u<$pwcDHtAniH99CKHJb zY#wTB8*1#V^I&O*IcXeo5Kmpb%LRW6wq{$(+g}MA1vYyJdIwY_(5Ve7t(U}yLSuI~ zaM8X(WEqrUXmDLe#~>lKO$MO_3G{EIAaAKC$&m!d+Ns~|xxx0bJ^*g&K)_s?T3&B9 z>-9F&jtZ713L&(%tU)oP5{Miv;l^-9h*|{CH;a3si`o{Px})HW*7jU`J0?*6LBBtf z@zynTrqdW|8p7dF^Kjk=8u@(LY$%lSu1R6A2)1+%bq!|QGTHWAE|D7EHrm}i+R`8K zGu8lWR2sqhcpdw9&au1uckB-TD|Urn!fx=du?zfL?Eb!to!&q27?1EM`!i2t50Uh*8~!j+ z__8G7x6%SHly-QTbi<2e3?3jW;pedd9vtVu6JrP432%yd_Fr(&NpLOC!-wK>_&;33 zZh%k1E$~0M9o__Y!E@jq_y;_Qo%~0!cmE`I;y;I7^si%={JYo%KfzmAiO10gJ?3#P z><0J4KV=I%F)oG&#sPR(yagTxkZfS(p)e}&iDGrXBM@htD;?TE3$w?z%`*g82Jgy+F4*x#-MZsAt!eZ!iInb8Qm zVIJWM*Kh+jauYYhLyTcJe-G*mavS^(W%vu%aXnAL))oYP-~|bvpA39`n&Evjge1%1 z^>QZsT;9XGc|RZEy}X0>@j>3jhjo%f)WWqc)H%g^S!`FZ?0rAPUy@>6Urr^1KAPlrDf{&Peh@kVMR;Yci! zinK-gBcF`MVs3a$6VJ2(*Y~1^hfu>mqlPEoEAcsQ<$fLpS2Xb!w6hOwTfry!2EL8& z=NF=euP85w8g2+b75;SiPZ1@8`BS7$)X*B~tE%BqftG`!R}5Ui;0N>up|qoPfU#1h zggJdVy!Z#Ydhz)e!Rde(ylDQp1>8P^$ZI(EC^+nL;=r07w7H8v#2@94@hA9G{ImR7 z{ssOe{(b&D{~dpo!;28UgAg*nIwhrKlqMyM>kdWuJ4;AU5#C6i{{JI8e@R!}{A>Uh>cGDwSysqaJ)|oLzHC}esJ%F7u@^c8}}aY z=Lg~Q_91w@eHi|3AAyJ4M&= zgZ4E1%{~i``wYCvz6>w2ufn(NOYkZC3OvWY3D2ax(irUoHM>E_uGPZN9s2`h(7B$J~jb~3G zap>?=q_|-Nq6*WYNU@i$dZ(u&$7E`>D1#{VE>dix=WUeo*$q<>VB_#?q-fqSHG`N4 zJu}l)H(hnlgl49vr$fM2(K@oT$Tm(D*&0e5#eHZ^F-%wCHM37S*-lFFl#cC~p58S( zUF6Nv(`pZ9l!mYG~pFVGE4M0OoB z>==&FL+WlwHlHBUjqNPznxc3(5;+_>jJl4s>5{tSris`Yyx)HbW;W*eOK0I4gcI+wgov5H_Xv!5$*$B1Pj&5n$4kST) z3p3M{WM)*f)|`FRWM?B|!%fi&<5;qb8ObV3;mv5m2)aHK89N-GC87#svk(!a7zv?~ zKQITp`w%SHsa1H=;cB|PJxsNaIg~%FSAy4-+Q5 zXb7Gi^BS9r?`jUkz~_E+*4LaX2C~OEooj%2ItR1IG<2@b9@Ek}ls%@Sb6xhBp3e2z zV+J~hv&W2dZpa=p(YZMbv`9h}^)osCP<-=Un!&K$rCGue; z%ZiTX({-5o`nc>Xb+o#FQS>i@cE!*?I>*sJIw#OSIw#RTI;YS-I;YV;I%m*7Iya(! zbZ$cb=-iTx3<`;A%>u$1vMsY;;+?_gE+QQD3`(4|L#^d1fFrv%R@uPqrm6m@D?aQBrXDP9*OGiI_hb zX^BjbZUAam9X>n}pMWl!!UzcUi=nBPbDtL&?uQcd7XwJ9g8${bjnEYc#&E9xN)YU)UFhLlU;jH%<=h%OR3u1)D`r-w=9nxVZ>KUxqUpDF4= z?Zt8n(c;Z=c+!r{?1~q47+s6^9h>y?qhT^DU9R0*e)PnL( zQ3)DCx>*k)1~GJCI1D9AT7nX1Y1pDhXaH4}x=JwsJN{BOms$Ky2v(9wL}InvQz678HqwGq$ui>xLbusl}U^w;>nyh6IZE) zAs|;=Uan1GUnSQJ&2*M_xlG~$^hXO}al9B9nc5J-;2Ig6ZaLP*y^z}#i=J)_ZCLbl zc+t~x-sTGh6TV504aR#z(JFq4POI&l zfCBDsE@NdS?gpBpL^HyR+M5arRsjV*DfXDAK*BvO#coLX>eIxpL2=ycDfS@EWVYCc z(^|sf7|5wnTXOyJRGN<$ZC zQX0D0LTTvYtn6{ZFSuR3}~Rq%aXVS1jPc#qx3mE-xXZQ?lYP?k>exi%UxL z7I{f&E)!|!0i`*J%tMt@FBf+r#})FDa$G4dDfv|>XGj)#wY;PR*T_psa4pgraHW6Uu8Xn?aOx;Sn%acy3D_*0q!_|Sq_)9|O5ynY(SI5v7L!EZhT zYl54n=ziDeu?*cmWn?mfjZTM-r77xD#v2&d7H;0TS){}R3dikwZf|;u&mSskZ^hs| zdR(_l&qhb7r6-45V1>V$T}|I(P@YlX0Xn}~d1n3<<#&o}{+0Q4unL|#pXYaJLTHKu zR=FUH!&==18`}^p{r^??+X^1#YnUJYA^uCq$Zt@%VNTB#9fvEvW{zo-+-%jF=a|*P zO-8F}ju}(jWiz_w(%fsedCzik>?pt~a1Q0WJr4IA^JHq38o#Gz4)q0szQA4gvpQw70dkE?nbmz-2j>;^-+oLAtK; zwVFm`=*f5SyGmc=Lw{N^{NV8LgAWd4HxvtiUBl5s5AKRZcSRq3@WJS=U5CcUAKWt@ z`L^aaBhh3O|8LzJ8y`>1;%YoPI2_w`Rd1km!^Ic>)5RBWXq}6;M)8luXb@EWchJ@V zI%W%vX0BEEB)^+V*QS{P9n>3w&Czt!5a)TG%%_!=ZKWTz zJ-`DG@<6HWTYC;3R315T#&7?NVTVAJuQ{Z|P#44AM<*YGwbyt|;l+;^yPCmG zX?kH*J$0IEDrvf5eLZ!W>nds5u}>t@C`;>FXiuIMPgBlVrJMm+rWe&kc$?p($pLQx zSi*Y>oweMc4Pe_wnFNZ!-^yO5)s}I$mceCp7Lw&*>)Z+A5O36I2si8W@mQ*>vnQ^i zGN$)={rQd_o=QQ_bcu0 z!`qan?*C<#H2tu4FYO!NrPR97H%J>R6oyb4uWPUq0AgEs}-RjG>zPBS{mqrS>tSKJU!x-|Sg<)YF}e7f{8e(i}ryf*rA{=27@ zM-IL7(EAP@JosC_qVze^LK^H8GUW)`;RF}O*l1yefonB<(!lXz4&Kw51ADUVdQNRH zqI$j^Z33g#!fBMV+E{Hg5_Sb$H36T)hVL#oO$L86?+9ZWqBjt<^LW(7y1P14&D@uF zmoNBzL)*JLS_en^=T?;7$7i~_G7mg3+}D?V<{9OY?E3cn+F(8J8lMJo zg~WBKWJ(9A(zfuf&SgB`;SU&EcsyoDJHxo`?g^l|yzQY~yB?ZddpLhycvDO7&i?+L zy)By>_UGR zBwsR358fUozNn-TeH##c>te?X^^IJoZBi7yF04_Qz8*BGbE8*a7DYd~rfA>?1rcK{zjz7E#BS|mJkm7O z8p^vubrE-s%i*^A15oY80hbN#^1g2K?hj5aCJq{>2>$*W z_}h$8ELUg}?5q{+jG<9eW@n29lK`K^>v5T&q&Z%9Ewiy5J9RGXxpj56&{dufUGmuO z-H%=JSH5~rU*Db;q#~y7-nsKbQ_#mh?%qB$IMY?aM@gve2*7Vpw;jwkSm@J%YMe%9 z498l{b|dPyuQhSFIFpP!*g80~Fh{+kE>w#V&xdSyCn049$1*8Os2>BHEAK8h$Co!? zIOE?tzI*raOa3-7@wd&gP51DRRGP(W4so|^+4k;R4jlonlFWZiLwx8KyxN1^y+!&7 zY1Fnu`r#}BzN9?pBK9a7!AAJLmWC^Hc%s`5mVkc3OT*jIEr)iUR7-kr!-86JMU|-q zZKSxACQ?KwPRNcZTgVRfdxh+n7t4j(<|)x;nWhIjkBemI6luCon})_OSx!6lNkutT z55MDJj z4$3qG*m+%)hHyW>NqIkz6=Fk${tz4+#O#4y#GV7*@j)Y+LSX#kvjz+!j!p)wX?&QuvM%HyH(elZx9b}Ozjq2y>NM?!Vz5JO=V&1j61?e52p^GWSi zdB()zg-8|82u=|^80F4GrT-L+BK7{m(ECv~Q0R3+-D3#S zG;pmBlP9fqlDJXJBu-|56KFuKmd`>1`uI8zlz-eQxzYtSA3Nvlf8 zYuCd&*WH1E;M~^!odW|q`(xwvAK^EaUg{p2xqoK+{WBN};!T5l1_tH^1K$1Rao}MM z&9h>HmwVyOvj{KXi$v+C3i=__Fb!|xe@EM;jD1YVShNs^KY+q@%A8bI8X_#OmaRNt z3P&FJ^4xJp>8nSN@;;gq^19NmFl_z_ManYSPf(_Yc?$59qp5@}$*CA>nms6G;^Bbj0mZo_TX;x@Req@^V`7g;di)D=cq$*7Z zJeZc2^KG>ECspmq&wu8mG`~V!LqdLJT?6yaEKVckht~oJ9+oa7JaB-5{E)~9q!N=< zNsBj1yjYnv0=;Dk;k80S>W?m#ixX$4Lc#G3qF4B@QIC^!qz2Xsh2wJ%G$jGnAq%t6 znTk)L*@zSGJSVlFfFDDon0$1hDw-}mePe8gb49#m;OOA_qt-&lOsuKU!M|8)A3c9i z<&h@@k3BFvuF*`9z2P1L97^|<VZ0O z<$uDrlmbT&kyclAUz?y^JJJ&`oje~RJ=>;y3U$gfZTySMZ=pjue@gkSSh#R_oiJq% zMcP=Z5Vu(^`22!SYlLV>5>gx0#`t7ol4wkqp{vK0_x1P;@B%@rwr@W=JA3HRt8F*6 z@~)TLZbWs+M`M~Muz*X$DRAkhxMnpD@1`+SLiw;%sn+Yy3!PPw5STg;}<`3|NM_U)5||oo3I9$#&n4{{9_( za;~jTvS;txzWx5$w+}(L?jDkpZP8}Y9)Xhq6(^Ffs@J+Q4b5+4nr?NTeR3MoQ8G=_};IXx+9BAjp`ByNMKZCVy1eTpc zYl>dX*YVCDcru-;4dRp~cS zX}T$%gNPU#X{I34fGLnG>A+7Rz450`vS z^V_Z(#%#Sav%B<-KE5Id3jYkWo){>724Cd^UrXE*Z%Ul?!((kR&J@_dnC54YH8atmnd4ZUrV%Z!`MQLgpBdY*r(D{WqP?RPEVPycaNWF^hdT58Twmb_u zaeT)^yWZcwqknL)Z)ZP0{*iOVB6{oH+Xl9E@%zBKK%ZP^T#vR`fy$0TD=LQi*J7%# z(Xj10p`L+uXlI*^Gn>zbrG^Ec?qF7qcO0u18@~9$dYNCd`rydO!POr<%Fh`c?WTcx zVE@R-{(+xERXo|1&31jEx^6qT2P^0!FV+|Vhu`PH`oiu? z!AKHp_W1H*%}$G*>iS=}zf%9XBeMPrWdklo16ISozU%WLkTzN^pyYn=}~i7zoJ z_)-tXKP=8^7Uo?`t8t+|z;1YlEagq&H3wRfCkz2Yx_VXyrJ?Of_XMzXtWp|EX>{3| z(bfwGq}l*1eKWst&6ZF_d;IpC?z0ABNx4vm4*6Nb%Cpwwd#iLv6|D$g&4moj9>t8B zGa?w?)!!~;MFG{YDoZ55Hy)ZfGU&B z(?5YT#}^G>!Mfxb=n!xM+>dxbgE6+%#!D%(gS%Or9MA_PrG%e-qKS)h=_s06`QR6y}P$I z$7;epn!>UEAWB&yO<|Pds@XNQb|MlT&5|n zS1V~mzXwFWm$TOj^=;gsZ?9K$hPqnl%pk~HW5)-)Y#d*hQtc*Lw8{>kEU1wA#0_7Te06 zQ{;orh7rb+$faR_!ON^rYzh5ojW2J4vdYweq~ZF^nX zqlXbFt{Lb{0}B;uNYaEUrfN|rCrRc`A0Jhk4jnr2BM=8XA@U0u*&z6) z2R_dvBh@?+nI8~!MA*{>M*t$=x59d6f%QzIash1P&{A-I7TW4MGO+5mgAZVrF)FZT zkP&f-4J}Jqw6LMQsXUl5Elv*gLw2;2YSNND&4s>2SOlXKy~-0M({9vo8e1B$B5=cZ zxlg88C_xBoUQCrj1%JSQFZ9HNz`u`Stx5P73&U!q;A42l$Xhm;(&~iPDH!q9g$noG zw*HRBHLa~{8t+(t+g9uPTc`QkOE+|GYH8Wj$!{oKHGS)PNh?v8knv4Y#^LwAh*qGd zOhYm*({#g2{M2b^&L-2e!@FFhshYDbtt*eWT258Y!&U9+f>-*f%b_`&tZM*Y+FVqQ zz~O|zVS?-t`0PFu3}<$bS2KyP5~|a!vNi$Nkx>HL1V~9RyeuD2Bxsh!#j>xw$_$Xz z6#EsJkyN8xc@QX;3s12Ojchxh;vNGrVOlIgN3mWIaGD>QE7fjf%l! zP4gh|m6@<0N>PZxX!wW42P+`Au=sfLSXAL(6Sweq=-%r-aL@a%yZ3u{+;`s{C@#;x zO$Sy(FO)K}529>AHyBvOdWgPES|#(~BbkQyNT%uL=ba`E@sUi^&d)lD{!8o1^9_s3 zL0{2hG=WLyCHX!d}XhvHJ&&o(;iJe(4##2+G~&8 z|KKP7@sEFg-~sga)!2#?qwQh-@FG1nJr^)!#FEF{52m`CCjXj*$G z1qLx|m`IBh~ zZ!%3g-tt%~H%sfvc5{IK$Xp83drFX%0r_L2PuYhtCHr;xvTS5{aB$hm_5*t@qsIJDrne)d zxVm?al)l*+jy0}n?^u@&S#tf!*}l@sbiCEugjae6o@L+v1^781Z6w2m397f zbfhH*7O3j}b*hT0%8;;3`cEe8$lgA#ZfciFEbaMADJ;k?#*lj#NL|6XCZpn9!~5`_ zXeD0xW`!30(?knQv0%q|D`=6$yI{-tm2#7^Hdcq}cL?&~<9cOzr=l_FO&Wz6bd#7` zlZY%zVO*M`=5RaY;L?6Ow4L;(Nvmh7#Ex zY!n*x$}}@l4ξ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 F_5bi_E&Tuh literal 0 HcmV?d00001 diff --git a/main.py b/main.py index cad4a27..690c907 100644 --- a/main.py +++ b/main.py @@ -22,7 +22,8 @@ def main(): }, "styling": { "font": pygame.font.Font("assets/fonts/Metropolis-Regular.ttf", 30), - "small_font": pygame.font.Font("assets/fonts/Metropolis-Regular.ttf", 15), + "small_font": pygame.font.Font("assets/fonts/Metropolis-Regular.ttf", 18), + "underline_bold_font": (lambda f: (f.set_underline(True), f)[1])(pygame.font.Font("assets/fonts/Metropolis-Bold.ttf", 30)), "button_colour": (200, 200, 200), "pressed_button_colour": (150, 150, 150), "text_colour": (255, 255, 255), diff --git a/models/match.py b/models/match.py index 81d1e43..a57176b 100644 --- a/models/match.py +++ b/models/match.py @@ -39,6 +39,9 @@ class Match: player.health = int(self.current_tick[self.current_tick["player_steamid"] == player.steam_id]["health"].values[0]) player.armour = int(self.current_tick[self.current_tick["player_steamid"] == player.steam_id]["armor_value"].values[0]) player.current_weapon = self.current_tick[self.current_tick["player_steamid"] == player.steam_id]["active_weapon_name"].values[0] + player.kills = int(self.current_tick[self.current_tick["player_steamid"] == player.steam_id]["kills_total"].values[0]) + player.deaths = int(self.current_tick[self.current_tick["player_steamid"] == player.steam_id]["deaths_total"].values[0]) + player.assists = int(self.current_tick[self.current_tick["player_steamid"] == player.steam_id]["assists_total"].values[0]) def _update_round(self) -> None: if self.current_tick.empty: diff --git a/models/player.py b/models/player.py index 8e26608..4368c22 100644 --- a/models/player.py +++ b/models/player.py @@ -14,6 +14,10 @@ class Player: self.is_shooting = False self.current_weapon = None + self.kills = 0 + self.deaths = 0 + self.assists = 0 + ## UI-related state self.is_selected = False self.is_hovered = False diff --git a/render/info_renderer.py b/render/info_renderer.py index f68f45a..e4f1f17 100644 --- a/render/info_renderer.py +++ b/render/info_renderer.py @@ -8,25 +8,44 @@ class InfoRenderer: self.colour = self.styling["text_colour"] self.font = self.styling["font"] self.small_font = self.styling["small_font"] - + self.underline_bold_font = self.styling["underline_bold_font"] self.selected_player = None + self.player_info_start_y = 100 + self.match_info_start_y = 400 + # Private methods def _render_player_info(self): """Draws the player info on the screen.""" if self.selected_player is None: - return + player_info_title = "No player selected\n" + player_info = "" + else: + player_info_title = f"Player: {self.selected_player.name}\n" + player_info = f"Active Weapon: {self.selected_player.current_weapon}\n" + player_info += f"Health: {self.selected_player.health}\n" + player_info += f"Armour: {self.selected_player.armour}\n" + player_info += f"Kills: {self.selected_player.kills}\n" + player_info += f"Deaths: {self.selected_player.deaths}\n" + player_info += f"Assists: {self.selected_player.assists}\n" - player_info_title = f"{self.selected_player.name}\n" - player_info = f"Active Weapon: {self.selected_player.current_weapon}\n" - player_info += f"Health: {self.selected_player.health}\n" - player_info += f"Armour: {self.selected_player.armour}\n" - - text_surface = self.font.render(player_info_title, True, self.styling["text_colour"]) - self.screen.blit(text_surface, (10, 100)) + text_surface = self.underline_bold_font.render(player_info_title, True, self.styling["text_colour"]) + self.screen.blit(text_surface, (10, self.player_info_start_y)) text_surface = self.small_font.render(player_info, True, self.styling["text_colour"]) - self.screen.blit(text_surface, (10, 150)) + self.screen.blit(text_surface, (10, self.player_info_start_y + 50)) + + def _render_match_info(self): + """Draws the match info on the screen.""" + match_info_title = "Match Info\n" + match_info = f"Map: {self.match.map_name}\n" + match_info += f"Score: {self.match.team_1.score}-{self.match.team_2.score}\n" + + text_surface = self.underline_bold_font.render(match_info_title, True, self.styling["text_colour"]) + self.screen.blit(text_surface, (10, self.match_info_start_y)) + + text_surface = self.small_font.render(match_info, True, self.styling["text_colour"]) + self.screen.blit(text_surface, (10, self.match_info_start_y + 50)) def _render_current_tick(self, match_tick, max_tick): text = self.font.render(f"Tick: {match_tick}/{max_tick}", True, self.colour) @@ -41,4 +60,4 @@ class InfoRenderer: """Renders the info on the screen.""" self._render_player_info() self._render_current_tick(self.match.tick, self.match.max_tick) - self._render_team_scores(self.match.team_1.score, self.match.team_2.score) \ No newline at end of file + self._render_match_info() \ No newline at end of file diff --git a/states/start_menu.py b/states/start_menu.py index 449c5dc..f559893 100644 --- a/states/start_menu.py +++ b/states/start_menu.py @@ -84,6 +84,7 @@ class StartMenu(GameState): demo_parser = demoparser2.DemoParser(demo_file) game_info = demo_parser.parse_ticks(["X", "Y", "Z", "pitch", "yaw", "is_alive", "team", "player_steamid", "team_rounds_total", "team_num", "total_rounds_played", "shots_fired", + "kills_total", "deaths_total", "assists_total", "health", "armor_value", "active_weapon_name"]) header_info = demo_parser.parse_header() map_name = header_info['map_name']