From cb66da2ca2c88703b50ff1ccbbe56cf692facc50 Mon Sep 17 00:00:00 2001 From: Jackz Date: Sat, 29 Apr 2023 10:25:49 -0500 Subject: [PATCH] update --- plugins/GrabEnt.smx | Bin 0 -> 13512 bytes plugins/L4D2Tools.smx | Bin 24682 -> 24798 bytes plugins/activitymonitor.smx | Bin 8978 -> 9007 bytes plugins/globalbans.smx | Bin 8148 -> 8146 bytes plugins/l4d2_TKStopper.smx | Bin 16832 -> 16942 bytes plugins/l4d2_autobotcrown.smx | Bin 9048 -> 9112 bytes plugins/l4d2_autorestart.smx | Bin 4144 -> 4234 bytes plugins/l4d2_crescendo_control.smx | Bin 7950 -> 10466 bytes plugins/l4d2_detections.smx | Bin 9675 -> 9709 bytes plugins/l4d2_extraplayeritems.smx | Bin 31235 -> 32583 bytes plugins/l4d2_feedthetrolls.smx | Bin 86702 -> 87987 bytes plugins/l4d2_hats.smx | Bin 0 -> 29765 bytes plugins/l4d2_population_control.smx | Bin 6422 -> 6676 bytes plugins/l4d2_tank_priority.smx | Bin 7719 -> 7692 bytes plugins/l4d2_turret.smx | Bin 22413 -> 22450 bytes plugins/left4dhooks.smx | Bin 2427 -> 3807 bytes plugins/sm_namespamblock.smx | Bin 5361 -> 5362 bytes plugins/sm_player_notes.smx | Bin 24344 -> 27030 bytes scripting/GrabEnt.sp | 533 +++++++ scripting/L4D2Tools.sp | 19 +- scripting/activitymonitor.sp | 4 + scripting/globalbans.sp | 6 +- scripting/include/feedthetrolls/base.inc | 5 +- scripting/include/feedthetrolls/combos.inc | 13 + scripting/include/feedthetrolls/commands.inc | 4 +- scripting/include/feedthetrolls/events.inc | 36 +- scripting/include/feedthetrolls/menus.inc | 27 +- scripting/include/feedthetrolls/specials.inc | 19 +- scripting/include/feedthetrolls/trolls.inc | 21 +- scripting/include/ftt.inc | 3 + scripting/include/jutils.inc | 75 +- scripting/include/left4dhooks.inc | 491 ++++++- scripting/include/left4dhooks_anim.inc | 2 +- scripting/include/left4dhooks_lux_library.inc | 2 +- scripting/include/left4dhooks_silver.inc | 97 +- scripting/include/left4dhooks_stocks.inc | 20 +- scripting/l4d2_TKStopper.sp | 13 +- scripting/l4d2_ai_tweaks.sp | 16 +- scripting/l4d2_autobotcrown.sp | 170 +-- scripting/l4d2_autorestart.sp | 17 +- scripting/l4d2_crescendo_control.sp | 193 ++- scripting/l4d2_detections.sp | 6 +- scripting/l4d2_extraplayeritems.sp | 291 ++-- scripting/l4d2_feedthetrolls.sp | 2 +- scripting/l4d2_hats.sp | 1252 +++++++++++++++++ scripting/l4d2_population_control.sp | 14 + scripting/l4d2_tank_priority.sp | 6 +- scripting/l4d2_turret.sp | 22 +- scripting/sm_namespamblock.sp | 4 +- scripting/sm_player_notes.sp | 176 ++- 50 files changed, 3176 insertions(+), 383 deletions(-) create mode 100644 plugins/GrabEnt.smx create mode 100644 plugins/l4d2_hats.smx create mode 100644 scripting/GrabEnt.sp create mode 100644 scripting/l4d2_hats.sp diff --git a/plugins/GrabEnt.smx b/plugins/GrabEnt.smx new file mode 100644 index 0000000000000000000000000000000000000000..dccadec5d25e0670e9c2e977a45e9151109d0769 GIT binary patch literal 13512 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 wtQA8hh-sQL>Uf|P+zZB&6doK|pH9+VcLhleE zK!8wQzQ1#x_dI_;yE|t-Gdr1k@9dqO&Fv+}iwhxdB6 zdt8KzjTJ?Og~fZ11sJihP!F-N#P9J-7Hll%d#rGef3jf%SmgJD*1b@`g^e|I-=N7o zcH_audU?;C?kVXWOW$+_##r zgglQ9miY|9NMQO!6p-vz=mrH}PyOk@6=UFitoI0Add?+y9U*gl?tj5>{!eOmRcvq7 zcLa*ei$v&d|Nfx@FQx)6L;@}v0x!G+FAAlv&jT(P{{53WSoIx(A`2oB zzatS6B#L$;-_ zc>^zE{4bJ|H_#dD|Fhg%ojF`hIr+D+zv?>*MczB*Ac52|hET~|SNdNVbY6!fGlrmK zuEBx-^@Pap;_&#N)Xu8!UnsKq|F`|0Ula7dx}tl(o2z>F$NnnNvupHs}`Vq zYyWixloN?~Ljqx84C#}(R`XQKXrFi4x>~(D&^GT)3eBMFn0Qp8b>B zSoK|mf+nHJFOdil639sjqi1ZSSw*B-R3t)|1oABsaev(Vv|J|ce5 zpAAnDKO4^HR${dAKVi>!&G@xZoA)-e)B*m-I|iy!wdYX-q10AtVaZ6jam()+;=J10fr;o7#(`&B zlqvLFBV)P+kdmB3!G+^ur)BP;&2-!G{Hx23KMKZH%gl!xbqi(e0I=-{ zcS8P>;o|HA!S{V{XPUMfq!0a_un#4+N4gg#7=@Tt(~-PZ9a>vS2r(XXYOC5rs@>o> zBiZ5aMj~C!Q;LhdPkLPdku@I;{-e*NzVL_ZME??pii?TQq66o@1(y72W}2#v zfg^ArCK(n62)t~pTddRv%MV4dfXD6MkFlo%oa(h|wv7V0Y=RneW8vDH0YP57?!rLP zvu%OloTNjNofGw>Bk+xF2WUo8xrMN-snw*mRUZCmsnz*VNN69hf~9}taZ+q3ZxI}h z7omtKPphd&$r|& zWq};E?=y3q%m=#sD#fy$VzwRE{X371ZKN?V+Y-H~@(1(H{X4J>MYH7+o7W8jGaIyZ zoVPscISVd=f(x_H+Ix1ZJ}_+iFu*q+UBUSWt@{92DuUK^U<;>>(1+HS#)j8@3Z@SE z8E|Q5I~`?Jg<|Z3t9up^Yuuekw7^Vk!gFkfE`uNofc>*ORpd2abmHAvV6=A)scmDf zXY)Ej`vE7xN)rJdZSZE{Bc{0akRNUCmJuip4;uTE@va-^_b{-IwV{@@b)GFTyZzKhaSJTqjexb zAphc5Dw{Fxc`@*4A zXVO6*;n1$OuT3ELVW{f9g_UV*suJ6YQ@YV|x`*xE(%f!)=~)_?45X^S^y+hsSwIuI zec*zG_S!vvu#GU1fEy~2PuRD-DVWJ#O?XH`yG@Jqpi#V6KguVxL)@$RssTbHCczQS zd%>8unlL3=&^Ry!=9d3Q(2H(Y^ShrIOjES2TF_Wvyd)^Yrh4WB%0#fNUjg0}*P)hz zXJUEg*;xsv7dr(vc=01Ey09g^qKDw z8(}Qj1NN;^`MvX2l};qU-N%YBMn7?(BT=iI>1cE{Y1}4V@T@^(+T}>v;iP}Iz&0{N zETrvfYZIgg_P&*d;&vr##B(vBL(IQ+<;VNa1=;UyVxog^JvOZ1@m2w`^b?*N%X5N! z;O4FOLI*kw=dZCX_;#x!2_6TUM#_NM4%(&RKC&%a2bZmPi>tta9g5yOqvlq0W_2Rw ztoAaKOGXNzWE@y@+1)Y2p3~9zim5>+fnjE{qiSjEB5tz;ldm|x5G`mXGA+kuC*=)i zT_}z5{@JmtxBnGwTY2djBY`?7KNPiF6gYB{ILE1^brH6$AG3;Zy-(vvAL_ch17ZAK z?F>ZwNp>;H2DpSTXG<+#N(b*Ac?ucFILUNAhhOdeanaiLj8G36*>TdgrDz)|8fxTg z<7tvE_a1=WOsUI3vO?5!>`tC+YPy_BA)V06;|3jD-ZOT&A9EZ#5XnwQE^dcr>Gj7W zZi;r>vQYoxZO-*9Yymz%?Ff|>?cdRhiS8dvRLpV$m{cnu%Sj>`9ZiE5VvMk0VqwVz zjPY~b=HDnd#6&UC1`d4x(lc(LU@l_&~>r9A4Fe+Qs;Gz_K*3;|H zy}p=wSTJnYsB-h=dlrgU^jydDaG-gn?ehGW;hx8W-v<6&DPy8;Y!K|sG-3&EM@22_ z>D>aL&ypB^t~O1&Y&%_uY^?FkFixHrLVFijG_-wWj~bavVI7eGl-d^-?JbSS8Fle! ztI1i7turoe8g9_|Sg@XY_K!#S;E(iP=yc$?$+U~a`JmdoT7Jk>ROa@)g1Ri%>2==~ zeU8_eVOGKd6^}6!VZ-AX2bS9w|xa!ASs5g(h>A5aTe?T8rj$C zbe9am-Q~j8gTG0){IdD&w#5a*;afCJ`!0LV3;5+Qhy3fA=y@C-Y}+aSYrtdMwkzr2!cn&hbCjO@BCm#=tT%+Tpc zq03%fpzeliS;)G-Zg!(b-xE5x&ZA!cdA~{?e)Y)XMMLvUG#%WCAi8eMFBTFb9!L=V zj6a)%g4!)PxJgma**8yDpyt`p+S=l}MGPrh&Pc!wkCL5B;9{Ca6(rfnt|CPG ze|bzoV`ty9<*%K6Jx#m2Wbd}uKHLydI!M|yHKh)xb$4ZA8+nnhN_dw^+GLs8{7R-Y z$HnBbdtB9IF1XU+{LZN;CT#3(-#8c}J453gaLey!G30knW05}GVG6Ls6`x8>FDRp) ztj{%BTRMRG1gtv|{-!qJpj7kp3KfqOl=8a2`4sZYyX!VCLb3bXswy1`V9* zRq9ruv_qw+_r#N;T_eembR88ou&oQWLnGBs+ot#t{IJfxZwtDA{N_@MrJdB~a*Cxd zPuo+3&igBLd=}3lcmSJA@%`SQfNw2|CWqs3?ark`ey$zm-Zri`V_c@pSL=-r4)SMc z1J~^I22q=sS{J^NO0RSJp^gkIl{yHHxM7yuo&Wl*?;MKJTd^>{yV4Zkg_RmB)0tmQbXk< z(HFGI3sbbZn~SzON;EZ2GnuxEQNK+AZ>hH}HT3?T-YgTzW*f8{3M>~`P@HhSBg?;8 zFRO*$_LgNZC=E9}njBt2pG%^yOAll{fHJN4NIQgFtV{+*x(oa$#tDVew0RrCNE-(- zokB=#7{Y-mG3!2&8TlEm0vUA?33t$pORs>RO$@r_(c=FQE z^PJH(chi}RKdyEvEzre>(Nyw|6{>is7zLe3IoY|UGOE2Pj#&o{Hbn7&%sNvY(oa~; z#Dyw?*8dPPO~D&0LmKDCriMcVF-3K+8D&~uO#sV|dBL7;!xzDchU-gWE!V@H$`zM) z>WGJW+edU~9ky?8K@>y5DP%K?@wcXE#$uB>rM4J%pSa_!wD~rt{tCO<-CAe7na+-S zK2blw(_)$>rPBU%=*I9oy{Fm-=?M$iJ1c*%&DSp@a9>7NDJKXk~Segx94pBFBFhI5`q$ zQOvZA6E89uttKsgsX<>iLe$DQBeSQv@F=1J5Ry75eQ+?Xno+(dmUWWm?ZQ83lD#ce zdL>qerd~u0%H%JE+08Wc`u0$XN!E6VDoGZ}Y8j5*sC zymnV~uc6@Wk2A)fT*J#w9@}jyBMtP#!902a@YXHSiQDnmb>6r%xX+BlcNzq5M%%Iu z6M`c-T*O_?dP(1>K&Xan0ZH!{; za6DtPLDBGeo4Hf})&oZ-r)fZgrYu^pkr!6f2K#+J64kN2B|rTNn$c&L;kqA+b75dMk8=w)zn5Pi{!za&87FReaQoCJ$*!5b>#k0AIqb?U<$=doM)4md2bnB zUOF?RQ{epte0SCfmX=fx%u}wA1*^tGI2k z+Di5|T4-zD*urO@e=GYDZ29*Yhxe8{1d53PZ7pxR!Es`GgKpa`%xV^^6--@cUzja{ zJ50S%t7V4gi#3P@W& zJ*iy`2L5H%yprpgVG}59p0-J>HoP+65 z@Z$$tOhQYdZ*k2C#I4NRxKw3n7G3*S&ZPw}jGzCnFcuNYQc(lZ^rGFVCq*59{Hta9 zq?`Nu7dGaO*OI9{^*_lioY?-7Lb*0QQvd-F&tHAjEqt$eFJ4?CEopGWUzxN{>!<*_IyMC)~(#_NC=HgY2r8J32I8;8Kg zgk0uXU7{L%pG)zf)YIoReE`!=%`LHio4G?$4nx;PQnZLC{ z%b0A-p!sslIuhPV*H^9`uVi3L<9-7}m>LYV`NX2_5Diw~!r6RoKq;oVtI2>8b(9?u zde9a)RGZ|NR5<-D(D{LlI}GjwBWQB^JzXgp8LYql!`UFiDQAjmBzmUxh0$_AkM_D; zCI_ZtOLlNXTdH=u)-zzl!7Lu&t@Hj{XQ*^we0=WxcTB8qyWA)SG*;Yppr*=j?99k; zY4TRdIWp`xj!kVfv^bGwDtWk>?u4c@>i7%$I^41PZ_j;yWwpvhmNq~bjvMyczbfw;A%itkQ z;LK<=u)O&f);BTe17(q!=!I1ZY7hOKFh>|e-lMQdAUscPRU3L;c#(DrM zUKafqCSQ`D)%jL6c_7|E%$nf0$?Hf9c|ezm%!P;m^0-~-eMPY zXUy4s0SuhAZH4yIZeH;!F#(I)_=zBrKzPRGSp?Zkfa~4hK~3BC@Ij5!wgarj!b;|2 z2bZTzP1A3;CE&+#khRT`1m|9D8NUs@CVB4I^QJTQO4m)?lVtzm-(Lt%Rzu)5=z6$$ z>julEtq&6ST+g@)8K{OqdUR~1{pJbDJ#IgOF5Y1y0~L3XvM?Drps$T^BKn3@Dumg6 z5p6wxx!p#9`a5_nn(%e8Wyc$|G5c^o15WAQ-dt2^Kfj+sWgc18sWK?U_SbkD|I+Jq z10JLgLq~Vjwrz!39u?wZyEQp3ltzG;hEOhPG<`Qj28$j?X(*$w0Q6Vy3JO$pI3!$2 z@iU_B@BlN?m(2$_BUdenO{OMq*6KW({B87nXj`1$t}zL2j1LYqFkYTjl%!odR+iWX zl#`|{D+wORUP~b5Q_bvwmMt3JIn|c+JGWK$MF`Sze?=84!xS)h>V7iFHi61&8bJ=a z7l}&s-TI|KeNA{Trwz<$IpT!RsZx900>4or&SJS@dY!Lcy7UumH%>hlEkbcCCoO|SgAEeCY$c8CEVnI=H2{x5w z)XQpuVJMSuioPEg$yF=$`KAADUc#74SKZ@f4H}Aaf_MH^Oaz*O%C>~ zv~VjNS|rDRT=%N35~_PE^$?ER3(5K7vVur~Mu=;!+;CxP;mwQZzh`jLd|#(*>@@AB z>m9na$y|sc(gzl;G9A>eWuGU4XiZV3B&9MxqOx|nfWE#mvPl23vuGB?FBn|_= zp>A~1gbaBD0;ljZ zqtq=^n@!_YqX_RDo=wd84~wN>z+_2#)`ZzkE}mhAK0kT=06Qk+1sd5riMB>i<$$V+ z>x!#8vIl+LtBOw;4$k~~yi+EemMb$?vd8kIgO^Oq%@*93Y=pNzN<{~fOdc%gc?KaZ zDlr`)DGN(zoJZ%u3fY~$0D(i*s;GVo@~=#Q`L&cgn(<%fGqIGrdG~7o6|-b)vE4du z=?_>uXg^X1we2q?8bg*WCxRXo*e#@OTn(EyAk2q8Y73L-er}12^E?mOO}vE6aHD@h z*O%0mZ_?-k%Vdy2z`vpUF9Da?-RIOzo7KY~Atvaw#Xzqjh*7avU)us=@vaUnc_6*G zyRq&dHJtG%B6v8TWC^glOU@Z+R1)!@3dS2P%ytfJh9OBq79_js2LtOSB;EQh0={#hexl7I>uUUhS%U4v$(+~b8K8Q3n|g%I*={YE+4aRN zfbpVlFMn<>zV&yF?bqXDl#aIxN?R8=o4Z>+NewKglHCrM5o2pYNO9OD$BSa}W#DPC z!HhoTP1Pc|h3+F>S~>7xCp*-?bbmfhnB$%L^|3r$cR4rOZDG#kF6dUMr)S zS+#gt4YF(pj?bNgx~?5s(ayBq=||_O&xRP#P~CH+e2krnXnY5cCtsobozDWMd=V{@ z1|jOHuF!oIS1O~kpH*lvQ)OJdc@FTvB`SlrM+W$;_xH9kcW-SAWW{fhEwMWtxFhg* zzAauTQ9j|6*(q;WE28R8P;v8#cNG&JzG~k-;{`xIPK}{CHqx(ivruyxPUv%@GHQsT zkL*)lg=x&SOQt9kaA9wFMgE?MRi1$Z zE6%%IEte{?`}@x#s~Z|Z(LP)}oH27F@icsew@)Hyq7Mme;wy?ei=VB2`prQZRgmLb zEPoDoqFz6@kn<({OD4@(i^z#({c?_q$n6piR(naw5A`k}TeXLvIwjNbi+!Y!WqCL8 zKS?_!dc(8OJh`UK5=c7B?_IC|dKAWgLT1Q^{wj^V8QR;i(_y&bo{G2Ap|~k8&C4m| zlx#O4y2-AL2uX3=3G(v4%;fDvRYrmSs(b(>cTB9|WNZua!5qaQBIt^ z)X=85YNc7qiF3 zptwk`U~q2v?NzHi=MA^cPdf{Cf1eAZ1z+1WzxXs^k3<06y3>Xvz$jo}+^g(IS5a>`MR39KnJA zkG)k^&ce%{@L!S0Qo1tOX4Vo0@_!gTh|m4GM7jTV!1|Y5k}I85fwEHiNZC~Ow?a#q zx4|OnVm4#o$u@hRCDn8jr9|7Ase(CgQ3szTwe%(2IbjEajO;cT1F&>f>8r~TW=q1I zSX7qurmkhOV3*To^q|Xj+<9cUsDx9(YxqMYdPq=;8~g^wSqJr?sV^4CC^tX z={JdSB0?B`CZtWBqhdDhTzUq16Y~}mVLfOAWu~N$*yCOwg)YfA(=SSP-xohCw<=CttIHbkC>V1r5c;wm?1r~O z+{F+og_}YjefUdj=2;XG86H2`_qOiexZYE*lT_rnlHUI%Gm!}e%=L_dVcm9?VKS>f zOFwNNiF0`qImC1=g`?hl7P8Pr$NQ*>>4<;vN%O~Mf~En`XbK{>@vBqlemLFd1sq?jBlbm( zW>2@2)!voCYRxnpJ%X7BGq^KPn(n{vQ-!K@9fmFt+*>^c7ArNMGe+G!;Me!lG2TZ{kp786pg_HIdco9` z)X#4vp*BTx6ojmAHKz`$$K0foc4!Hex~T`-czkIG{GK~ZTy=l9F6DYk>~r|II9iZU z{<_FgDogSOFi^?pmP`7I@$m#p9&TaL8D2t1=x@?jq)~Wz%&U%SQAEh2$kV5aO(+5d zd0RSj{qX#OKb2ms-!+Aw5_&5D2N=DXG`JUlD*_ef$E*XR9z;@u|gi_L%YEhfG; zz%dk?IL)f*a@+g*`bC`#j?`WXt@n=)iN!F=sE4DJCFDS1;zVq&NzLEb<#*3*A{c(4 z*)(0j)m+iUF}ToD6_3lvi1m1VEjSKMP~`C(Q?hqt7faZ6$7r+%8-|Lnvd%c@=`2Ol zV!buUnLU}t*G;)1UN*3}OpI)Hb4~9rMd^eFxtaW=FsXmq>O1;Y`xp2^Yd`dd2*s#Z zyePEZ4rl=ky%NtEKej5+?|tGkh&(omo2XiAKD8UX$+h5C-4!{ zfOZP2@e?M@!c|QHBYq#EX|~8eKTQ1{dX1Z3YNp7^8O9K;Zp0EyQpIniFXM6zC&wMn9 z6+JHZwueZU57Pud(Gzkqsda5vzw!_Ny}y6|V_v(Ut|rXrE^)lE7kBy>drZoBU)V0& zLlX6qEG#on`m#q^R;YRA;_;)aJ{l&$(9O*^R`PV91FJ7Evk=d26emfMT%ybJ6y*JH zJ{_h{Dom)BR}$jROP{6Bhm*VsW@O{_fo7^6weWS0IV9tchf|VOVqIs&KsJqKw#X%b zmcxK1H0$5i$P0-FJU9;McJz0wP=1)#v09Lf|AtW!lW5&)XUW_EiW9k3KVlUAs!&Wz z_zuUotg$DeTiF};nWodUZOl{Uu3XdP@&*oEW%_t;HNgBS*JXGEGk5E(`D1w*THRt; z84GDLcz)ryii8l8a!JKgawd0R#uN*zwKVq1iS3ZE<)gGheza?LGns2<3yH#b!%HG_^rZiD(^F#aq3~g^$xe72up*<62jz)$`s&2A_r3aSHgSLFpHkrYr_4T4 zMV7V}B>D1yjUxRjaaT;Y$yctNFyWO(Xv`l6<`nu52ZYFI*34qwB^JZAO%glw?}tN7 zBS&M$-5jwWLr)?}E9<_x-?}-(GO)???5>B8W!?bJxT)6}*BGX2G}biSjm0frST*1& z@;^ZGqsE$L@$ur$TTA0n;IY^Pu~NAL`*6BYy26@&P`}7~5Ud~VM7yfEqPYD%*YH1E z_LynLE~)>1#B%b+;XlpqTMLDddVvRGSHG!+gu7$@#OOxV=={&GmF33xe{KgkY_OOA z^FsCQ`0amZ>?^2mgn2Wq!v-M#X9xZd_`msG({+be#NGJb5JWcf;4Erxsns52%})J+ z7X|uO*xkVlaPP%EOvnuf*l9}7eIxLWXQ@;!FgS0=KD|sjVT;I9h6ON>wyhU-nL1gh zRfzoj(31$GDN~=us)WZe_^d?JYT#{8G{=#mNylLHcL~r!|}>`+P}pjq_uFE0eqJuk_l5! zC3a;ejY+;(Fv%sRd+hbgPwQ1@a*g8<_u+KMJ9*iPDU-xg6n*ZznbKP6`*)FgE~Z?U zf``1!6R{Lumt(*-M)@DO&(lS2^+8C@7bSqF!xJ`xu3saLCX)!Mr|<6{)23--^9n4h zOHe!ebzC+zNcr1Px4YNuX(xSi#MoIm5V5CcBoBQeu7y*gs<+y1+Pc|A)Rb|@?(5cj z>n4cY775>J03K4 zDy#;H;xQLwoZXz|#(h@Pe8?0o{7oSr$TgjkJ^!36TE0Jy;{cl<-k*-ldt3DGjTGVF zV;#7&y;Fy!;c2Fzi#kg8MZrn&N6$Y9y6+_;uj$p0`2SuegfY5LjjGmmOlqdQTs)EKbNl(J%p(Qo?=K5-%hlts<$BTCJ2IEs)pJ58El=PdF?u+cV63Ndm z`7ScrLRpm14Yyl1?T}dg7ufMHSZz+b`-W?r1;_QCFa1BVvwMx^X@W^i7)+=hQdD@BB!${)6E4j4=d95vq zSMn6Hqp-K8gN^obevfOmUYUf%kB(@*6Z!S>(Oft`&QFF=dwv@H!}kkzO@tgQH%rtX zKAeAF$+*9xGO5aHskJ`t%+_Sz+nyodgz7kD%YSd|(pG*GBK?#3apGVSy+t6v-(-0N zHLmc`{GM-ELVY{%Q(>!aBG%gJ&g0l<7ZCmIL;rXVr$mZ+Bk>gn>viG zd~$6Gh{Myu;XeE{n2Fkl|4J z4~>M6UTC1K*m<@QF6mu;?8Oor2b>x~?G?|m<{cI$kNmz-%I3af*Ix%kj9lvrlB-2% zuV(3IoD#iJtsVIpviJ6%IS}L9_BB6Pz&BfSC7Ae)gmJK?i>Fg$B(uF@rgBy;<(4-`Ap_()=HitVInGwEdy z_;EK{`PPd4oXuJcrPr!g8|s$=eTx|*POtXqjYv|?scqXKo1nINr<5+G%1L^pM@4Ll z8>j^A-BK=#ze-8veykWk<#WbMV?0X{dq33I*8JqPhtIwBO=ZWK)Zd*%RG1jn)rsl* zU3`stDGgd0wrO$#7K({|h@2NGh*%E@CK=k!Zuu+z*rSSvZYFOWLM*Br)3b;kCe%}s zC?#?%hr5>4N8sX&#rpjg>%k0*hWXAkkPp=zNlDcml{(9p{1kBcww`OQ_`TlSc#G+Z ziIuc&bXi|@PP~F>0xTg^Sz1tA2#bcpHpuqC@3%GX@}QhRlFcn%0A3gurEb27UU`EY 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%0AT@39pvg6CM5> zH5DuMaTou)ylC0vrtEE-V$B@a3EzqHwzbuaEpK?LalpyT%fZXbeVUkbwO-r1)q64p zu1|Qj@dnW2DQj5>Q@miTREc<;q?EWu|KpEHe=_S72RAQwt;OY#|48i*=2#_=nQIoB$4`Xn3C%tSxj#4)-G{) zT0iR}%C_8H?K-K{8M~&z`7fPIy{S%|s4N!g4(<1N{i({s2PjJ=zXNjl0s&g-42Kk` z!=*AVu-8~qP)5yNDE?>c=%+dAW5le7?Z#yDMO2Po(wu$UN#)g?59GQ zoV{F!&h3|}^2(c9t}5x~YvJO(BP^=9Tim^r)Fy*@wwpaf$DgK&1#8RY;yFa^-u=!2 zKfyb_Bzmph%91R^v45;*$X!xH}kC9Xw5L5=PQvq7ZKSFIUo$mXBq60BnpJ$qAbTK;0q(Kk#A z3*<>n${Mfk3OwFgpZ+*Ua{Gx2QAQu^J314XeMVW6*FcYunSoGBI%WoGe(i^577wp*QNGKJjIHist^tG9** z0TX*cyDMKf#%r+NArP(H(-CQ(Q3{pED3Ve}Y0IDT54dG*j9fb?h9B$ym{@{ab5%ah z%6(8OcM+gr5II2`j4+vjFxL>lF@R1j{zJ@f#BBk$l8sg;NI!1kZ?Ns@4UeNTB_dZ2fLC>g2M79_}lsJk`&s zvA#HjNB^J<`R|4USOw}%tN$aN8YkHHonhT$ABF>f%nCfZGeJ7 z)r5G+<#b#~02kg3mCf+8IwqJwO~@nUCPv$Fw~HU!#scA~@it2h=%t9D${T(2;Z~#; zpLloxeVfH?MjeJ=tCc72KE5fbi_D@Np;6(ouwjy=g|%mMTP}q9<>wN2SCL_RC?aU; zNH(r{Rk*Ad<~Ix5t9rfzp%$r<=k*ZXsS4i355$1B!Cb{hpq$(Owa9C{-;9U-b6O73?J%tFA=mG7G3F$&$?R zB(Z$R?I4;LV+-gnRRq-3(VYJ5CFuqf@>PcEhPd=$71A{wmp{}?Tz)ffyZ#<~8C5f2 zCNaSgb~(YnvmsqMwz&V~Q92{~XN%;)6P5H#^v~L{a!il;4sg|D7glu^r-o>zwe3V| zW$K>r`Rkuv7Xs=fVC)pzGbt)R^Vx2n$*LWMpZN+BEnRthNtmg7d0ni|<&Rxqo0Eni zfA)^6%A23NgJN~Dk{Yk({+|E~9`xZqvx~$6h!%IW0(!DYEP>V+i8auMBC!bKd_b!p zwg)YPT8hOwXic$L2&Ia}O6Zkhu@ri>1FeU?QY;ok zXN$#(i2O)PqQ58>Ya-@Hi=vCgVpYU)(z57V#bRAV-lm1oKNX9W5!;`ZM&BWLUr0No}L|RZH)=1RwC9( z?ImKNw5dd_lo)=0helc}aqgnU(laGuwbWZ8mP?Tmv0mC!A{I=nH?5f14zy%qd|ESc zT+yQG%@VO{V!P9_iQ|XXO`k6j3#TI`V&(LkC1UCHJ0)W6^yLz=_9_(_v5bjzjnRfRFe7rwbIP@^RD-Q(#e_c3tjJr$}-;2bV@Bi+4_uZEHUhjH;-1YuT zuJ_4zX1?3<9qeIMBQM|m;2~P(K^Y4IzqZH;!>))R%%d1fQ{dMNYyo};fPsg!w_ z^D1@bJEw^*eD5^Td1p-%-L__$=(P81-F4|S(OKJnrire4Xqv16eqoyEnwxa{{Dy9e z-?Y>ZFIvAveFyHhEh*tiZ2|i`mgq{q%kc|0N<9JYf6`i(I;0eA}dzb%<3s2|+` z{vB{S+V&#H7x3$r$m?%dB7Z6KD1R>j50{AEGz$C{@B-%n;C0|-S{Z|(|AAJ-z<<>1 ziGKnPOp>bu&HkS(I?XQ1Q}oRNppUu;un2e-SPZ-Z zECH5*VJA@s1C|0CX@w2kS|+?P44eYo54;I@tW0z~t{2LImw`6}OQ4_M0`voK<=PZ~ zSOMG&ybYKFet@OI$QDKa;o22P{yGDX(B9O%=5Gl6#j8-O!_oxr=P1KlJ#a!90lV05z(eE%;LiZB z0)LA92>faC&#kf^qi*?m@*D6l$2ag7DKBo7_0x0+oMYrG;ICMs3;rt80rLBQpX)$= zKC}e#ZIpZj{5|UKz~A@D9CV7h8SoESF5n9+7jPHb{Wj6TPiedY{3y!{9AW*Si+xP% zf-kfEfUmG0fxF4qz}Lt}z!T(4;BPS==CPBEr*R4JODrGocUZpLWd;b|F6G{JyXfjC zZsY8)}fL)YFm9oFk3gjn$KW#vMlC>Mi&*k<2d2RkEkl)Fj0`k+W8~l`Da-GaJ){(W=A|D3hk@?^ zF93g%;|zF|^5ZV>32+YZmpLBpk~v}y=CLoby=TaNLnH7PIIql*uP?f12!D;t5WYG% zL-^{#4B;ya^WPUKcY(aHdive+Wk{#S&A{cHmw-)_k9W&H(^cRKOMaQXmGTz2n*9V^ zLwP+@bn9clwd^0@7S2O|z^561rs&rGdjzY1TUlO>K_G7iAGt^P;h@Gt_sHCPy_Ea+YQE9fey{M)9$+8iYdi|%=Z}}}6}~FDPq6Gh;jc#Eb1av};C=G- z%kX`|cLy{cyifS=_!*84?o*r##-{h~jdxnJ~$$_E6eKOlNU`vam!9ME|10nsPU zJs|qT%m)Si4{E*QLD4G?X*~R(=oc3r6#b&AN^nk<=o#HrqGue@c(h9NjZ0OcZ(Obt zedBtS=o!;zLBHaEJTyz>$N=!SIiEZPy@2$GMEBYEkgUD=tJwcYc?J9@%A463vz-5c z-{JfR{1?ur8V_kaqw%`NsyTwS8kYdSOZhZM*7gU1|Hk(%nr-wlmbj|$EK-VPkl7!fvYITfKQUI=89a2&lS0{Pvic%B43Wql|6vd zz;^N(@IxHWwSxXy+0R~5D_^+9fg33gfSV|%fSWmPG@h*$d3Cu~O}rrtrPiEK3}k6zQ~`{e33r~=ZoBbxiVkmNoBprlNODw^&(G(>qTxH zt`~W6639<;FVu^?s8}HLTEha78*$(chF>7_+xZ1Dzm;QM`U2$`@I{tmq0Dzj7Rr2g z0r(N7hjr^mS&l_A{|y6QX1gwu`R|y<^BOMzUuAh41lt!f6@BdJQqjYXEtRhpFKE07`~vgEqZYr^^`x6xWL?QhKOSk6`5@jX^T9ri2ODKRIH_^8QRaoK8m~3# zd11N8`v#3mmW$jUUM_Ne?{bmr`<82YuJPD%k?ZG|i(D^n61m>0v8_qglif`s=dWmg zyxJt|%CcrzSGH^H1pW>Csae*U0~+^f+}|wg&TAU4H_Q67u|?LO$692)c}3&Z7QNTD zLe`xn8ml$du8?);K8^cV==JCdS&z1@l=Wx(N?CuVR?7Nw?@C#BUS28d&MPZr-MM6y ztT#JX$+~j$Dp^|QMxTrKO+ zU8`jsdVIC4L$9rtb?BTY1*@Nw_2_Pmd!Cea>4_(0U3&3Jy)IoN>(G`pvJO4EM%I<1 zYh)dHYK^QTuWG!uM%I(nZL*%MZIkt6cblvyQ*E-29Bz|!m|>&P~LSw|jk zlXc{oHd#NOZIkumRgKr$WF6^WE9=OrwX%+E(>Sd0@LE|{o?k2L%JOxxu54T<>&eJE zSx?3_9?*Drovbg9t&{cTlJ&AaYy>t?4_Pnk!x7-)Tt}^!b>Cs&Qnri6)4*k14`R|; z#q}U?HP<)5HH-&b%X~GCYP?R*!a_nV$Y?L#h z7GNLa1N+&Y8V_hZ2pk|kZ4xX8hS{#b=U5)#Alq$|oDrP{#<_mfcm?=>Jlo+Z%yZQH zfJx@7F|P3-FhzcOO3s{0Fj;S>KDJr*(1O67tgps>8V_!kb?_13i(F@Jk@alD7CB?; z-XiPTVc_c=H^3j^xY2k_<8k08*biIeOlm6@GoK`%06)ce8jor`2HeN-27H6{c}B1m z_$I?YBeyk-0zbp@L)rL$EXOJEEsirN9Y4l>7~ny+L5P zU*=iahp76nU_0>h%(?vT20X`jz&|HH zYdi@23zoN6&IT_5&$FIE!7|`qk$-}6M$-xW8_GY8!$CPqJOcdR%pdr-Oh@D8pqwpE zhf;Wv?F9Tf)6uwp8Tbvh8}OS<7kG*MsPRNd&Lq!kya467(S zP~$+KtfPkeWF57)Pu5X~G@k8~_0(03*MR@b`uEFvX*%#K`BUT8epx?t_sjZeU%#xM zj`YiVseVA#OPe)r9gua??g3dh?a_ElM(aVzi^uCJbx_0q-X^!jL9rZL$tJ zzfIObH#AaNpUHT@dw|`*dw~ZdvPXX|B4@ytfe$j=AjTxH9yklwps`zH5cm+|56YSG zNsXhxIa~*SMg^xw#nvbS{2NjXC~2He7a)>x8~Gx-MKGi-0*v%mwu53}7ho&b zlkEwgd2I*^a;?w9(Ue z4)}8n5Bvr4%}a7-=EtJ=7uo*6UuJs(kCBgnzru0?f0g4D_(hH@;BmGq@Yh%`ET(^* z{Q>+9wkz;A84vhdEGO_J%K`in_kDoB!*T$Bm+d$rSPvX!djo%u?EySR{sVrQ<51&& z3E&?v{)n9Qm3<8JBJ8YqD?8O^&yjj>eWfvX9>eEGkBPU@`Ed z#!=uT;5A?=F!DO)HQ-+0O~6CIn}LUcx6lUXM+BDuZw00_4g)KI$2Fb+-o~?kTHptO zWuL&hjW(XZO4@<~r}2yzcn58Y_F^spc54jomD|2{Yup2z0Xzk~m+^pprVqTIwnIOP z`3+bNe31EQ3~C$zRskzNDL4~23%C{d5X<)|%wNDcz(<)5u!c5H8n*)H0uKUfX}b!X z$Mp7DRvoZjV*_wL@PNjHz?(IRiflTn0P~Yy_SI zE@wI#uLGNa{x>n7v7T>=t+U7r@4u4BOUY~N3d zUC3$R2Ii;n2CxIzxF7Qu(*bT`I>4vcPa5|EH#2|W)4)sn#TNK7a4XAy^BKWP;InLJ zjrG6}GaX@wg3l!t-vt(1Na=v^_Jk~x8!!XJ-`V092jLg z0=JWYfIHZZz+v+90nAq{KkxXe*XeV*~IdrVsoG;{iX)dIMiB7Q2l_ zCE4~m&8AI|w%_5fovfdKr)ZlS?rl%fH>1&h=XM=tnoj3V9riA5D?=Obsd9{_^17ck zRQh%_rbQd?TebZN_s6;Y&;9Xgokxw%qt253@dY|BmiG>Av(7xZtux({J?^_?xv%ox zr1S34c0=4-zQ>ZYE8gnHJ>&Z<*(;_^6OMg>;mzjI7vn<&|eF*O7 zbsc_L*WuS_KHCB1`txcq<)kI3BaahGVfMduxwdvWLd=OYWULVaeVY&o8;> z#q&$#43YWq0c~z>J6fQ^t+4$b;shlP=;>693Re zJVN4Mn8X&Jy2Vf(T+oNYITRSi5Vej`n1;_ z(k71DL@st|6m{7oa%D-&s8hEJU#a%w@~RQj{^`#d?RkQ_{96uDH60g3=MAE2y02*B z1x-}t{1by%@lBokpSeP+=v2CCgmtAtilm}{-+}a)Lx#p&7e1hej2)7eSJNw9A!(jfT`3_|k-l9l zwpAl{7#+tUV-iOh{dSDpPROMQ)sEsh7gaUyED;kZ5?Oea=1ha=Z_#PqZxGXs+*u-j z7Eb4;8-4U)gP884`&}Vbzwav%gD5{`=2F61(+OR~*+wPSTdvql!}ok!h--eGtT>_lT9#MSE!fGSwQwUiP2HIUM9CC)lK7Q6{5YLjB0P)6bAyNcgAn~Iho;8S< zN&EzehYg}?||6@Swpj@qn9>1`4#?5W2lX4c&x zsx<$uR4jTr&8hs`29YhV()^BpNwm}aSA$5cRYkvfvYbjs+6)nNhl{A9-)9i1_zl~l zlAEYAcSwcEhn$dmNbHy_8@wc1w+F4g?2ay4 zj;Ayc@>BKuHW1?}C%WqQB#0N1cF0SjhYU}a&1fM`zj*Q;U3i|np4?=A2hP-6geUB!x?w9SlZ?%cd7p*HK zQhhxN{kuV@dDWJR?Y%<0Xls>9*7Z0cm8kp%(mbh&{wgh(C_j&BVz)MlDqvVTYuJLBmFa zLrCPY@WFr(+wJbS!Lwvd?6h0nuZgVtX1nDpjgVXImgkW*iER09yX8;XMDS9Y!R8pm zbm4hIF2v~)v43y~QS?n#1;p+qKpve#08E z8>D@$6LQpUkSc?i9&xnG>F#umIFqQDb{D^D{}J@lUfm!J$xpSoeSLPXF`+QJO-xUw zua;#J%WZ|+CZ-jMFOvhRzT^Xf`W=1xV8Kt9hhxfvMSM)T| zjBXRt(K$uZ(DCq6*A!_IRrFh?I7Cj7>D;*w-R90cO*C`2iOgL!$YP|~z6UJ+x{eMZ zQ^e>zD@IEI>SbTm}Z-;u8^uoeJ-LZQp`m>f+1e?`V=`4;wevh zLg50O$4G6jx!BtzrbF`J@Zw9ZkS38k2}LKS$dP91MT0{alINc!W^f3JdtP)ka++v1 zvQ11RyX->9@D-UJhT z+L+Gn1F^~=su|(oo8)YVM0Q-d@H_xI`Ds_-(?qlIHZfxq(+=`rn=5*nXhye*jIIj5 z5k)G0--WWiq_=$SU8D0a3NfSK_Z!4??j$z66EjB#y5ht#*EB)HfyfJbGPOg}+F;}b{Z;KEJ&tG!O*3cK-Pxu9G1%zJh{gI zf6CRxJR2sFU3`dAk!x)lqMYMerupl#GX45ghnQZOe#=EvGs3?Z#58+<-wZjwU)r;% V+##~*RC`V`iKi^<{{a@XE0L^r$N~TW diff --git a/plugins/activitymonitor.smx b/plugins/activitymonitor.smx index 01f49a688e07c5d5eca41f6a3b49dacde7500d83..33dbb8f39d2fb0fc44fbe7ac9a7b909a9bef3480 100644 GIT binary patch literal 9007 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 N_sBmO`Wj2Y{||T4ZW#ao delta 8780 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 literal 8148 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 B&CLJ+ diff --git a/plugins/l4d2_TKStopper.smx b/plugins/l4d2_TKStopper.smx index 2f461cef70cbf56440aad5d16e6066f25fcbdea5..f13042aac4903fba5a52b8a01092c8f28ec59f6a 100644 GIT binary patch literal 16942 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%0D&s)Avp(cD0j=l;!k-e)|Rp zO1+R?qFpqo8qlCyl=-{Y${o^NTw@#TP;TLcJN%Z-F7Sr)k99xG2oMxG3J{ce z{rrM?il=YNf5vx#c}abtVdWdxBYqq2N$8pJV2Wpg^gzgt9?&DTTNibH(TUJ0yo*A4 z&{FD834nb=Yckl0S?^q|TK&6({K9WdlAN3dVSzN&$NUEtm2b&fSXY>jw`$cY*^lh)P!!7Y&mcGk@ zc3ZlF{wYAfQAaN_GU6olYH9yiFGAt_9m~R99nil$?)EvA267+TzfA+Vy-9Hb?;hD) zjRn*J7iO_uD@#D}o@Joh+m6>t&>~u`zy@WVPr$8{2~?g&UBZvKd%d~+tTJlp2A{b7 z_`RAyJ+88zfTfee8oZjz>$K2Myn!~aFSmy6Slk2_yxU4!-h%$z>9&joz4u8mVmtg1 zMT)7QkLqwbN6`qaDPUMo!BxQO%L|TPJ?Un$Cd;rU_pk*QVIVV{59JxcS^kp@ANrcy zK3e@mShw&q<}J#F*)if4J@D-bQUQEBW?Wb5k}!5iw41k}%!NO@zQ&V#9#%x$7m$91 zowL#ncm=-kSdC8^C=(an^inj@PjH?qZ2{|*;2ZkGmWcK&4N{G=R24#}^2GxXElED| zNgh$?BLK*{*Qc6Yp1k+MXap`+!+QcZ&kk$YV-*Eq1yOAg0D10GYbY<_pdR;!b=BDZ zs9vs@m!iIcIscmhVL^Ytc-u?Dz)hLQ{fEhG{VnQJ0C#gy4g!!Q29J}A+Ojj?{qK~) zHu=fNx8I!G0EV2Q#n^Wp2m?wr9AgWt#W1W5x+ zUXe!_L78X$twYPT01&kf-~uJNM)dTX$&pa=YZvV$+(k+0T9B{1V#LG}-s=kjOCRb5 zUkc(2emV2Sp(GPbkLYWx+$!^QC*m7f6Crd@aM)s=70}v2h`V} znA^nEflixK_&2Ic*b91K^KmPX^Z0G$8t(0&d0YU^&R0_ z!i=XL{?T8bpn2p~h@Wu#r2x&C7^A273*k($O=-vbIgatSQIA^`%48&0N1_!yIy8=u zK|4(PeHX+&21CrI#1$6rho5ts6d%1GM&LJ=Xhpplgiegr$WC1caJ4DHoSG*(s$~34 zy;pheW|znv}8Oc;i2e!C2UR(3?R=PMySs|wD7eT#O-MKe`i_y^m3Q>1{EeoOS zIr*ksp17$PZi-qsqAHw;E%kJeo!Hs$fJOfLgNM=0LA`i<&q;m~Y>end18n~|pD&fi5 z0_aEYgdvi|@|$nhRSZTMKS^FuRIi7gM1?5AYC4&wc1wR_(l$Cwd-^@_4vOx#q|_EY zU->dg-hk;TZO@nte!EJFk{%3DhrO+sl%K*VbjVtoaw_+)=%}KD`&55f_S2rp3w=WleW1Tc2jH7eu%zW;)C6aMD zeuS$-^B9AXQB%X{9F4Kud4vMvbxQ&71u4)~p!cfsjq}%cW;J5g+mV#NJDbLomxsuV z#HG|LJ>^H!@;o*mClp6p&M1_LHi!vUe6b<`oE!;wuEHzq*Yy7HS)2L7bBjY0O z%`&kFjgxfaZj~r)N+loDngx`$qn-lHnfw^hLT`1={_;9rbN(qqF17h7wRW3@26a;H zUmcGZgUzlk{+w1a874UT&ee|1CA`@W|6XrG&vxV2_-S!g~ ziA70a1oOXCsU4(~7ysKMas47jJ=-*K>JtN(dswo+DP282AL>}gHNB5y-1A{%;} z+Z0RM9De*I3mVKcL-BQFJC8&z6$`UMlx4X%G+%sgs6Rmt`rBIyJU>_?)P<;6YQFvV zowX4X(3mYi4ue+N@DSYkBLMJbX`?3nKPk{|9YqxqiJjR8Rl_ diff --git a/plugins/l4d2_autobotcrown.smx b/plugins/l4d2_autobotcrown.smx index 30fcc71e78a2f127fd7d0ef578c02fbc6473f425..0d41327dc861ad2c17062baeea7e2317b98e8752 100644 GIT binary patch delta 8967 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 hjKcC=&j`a}P)Hu{bvD{{W&r=NSM1 delta 8903 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 U-Ad7}>kYB4;w{l5(Il(?0iuOBX#fBK diff --git a/plugins/l4d2_autorestart.smx b/plugins/l4d2_autorestart.smx index 72f85899f883c61e644f40747b6b88fb6847a6c2..40fe024dc66f87a0798f916b282586f07ef49b64 100644 GIT binary patch delta 4028 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 diff --git a/plugins/l4d2_detections.smx b/plugins/l4d2_detections.smx index 8864c789b43d08b196323bdf46df292472841b29..29e8faef8f632dba6b3b803a8e7163cb118dfc94 100644 GIT binary patch delta 9511 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 delta 9477 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 diff --git a/plugins/l4d2_extraplayeritems.smx b/plugins/l4d2_extraplayeritems.smx index 17a74547a116d5bc10de69c65bb8dbe3746ba08b..ccbff08c78c1dbfe97690c0545d28f32cde608ca 100644 GIT binary patch literal 32583 zcmZ6y2Ut^0(?1+QKmkETnlw@A0!r^FNR{4uhtNW=p(+9@O?nT#Nw1L_K%_(HEkKYK zAoNaX|J?WUJlFeOUry$l-|o)r+04$)&N(?pPEK757Y9c^7y!T@zyVM`#{mFd-~#^r z{KLP@000EoQqdd$@WB!QAi?5oF&uyb9sodr#k^8DfIci|z!Cn<0aR8av4rQ@81B3%G#@1_M@wpogKpA^(6D*eT!0KYTBbLmt zm>$w4a-}xgz&-vm}7Y_mc+bq0Ha(0 zz&I8Y7vKOMVfg}M>E5~hZ3FNl5clu|1 z|3D{u=l?-_XIq#5RQ_*_|4IOzTr4e|{wMBY^$+%)-)VbjuHEa!6QpNojZ+&3avBtD zq%!KReJuS1_X`&SBgZSbBQ1wC(_?WHxxe|)Lu*U*X| zr-sERzfy`KkH=QjYZzgajONFaH^y{9TmDKncUdAH=OasP=X*q}t+7(X@~EXt2p@1H zGfjj~=+H{V1GzK4Da5FbOFeO+hv!T4hU(EhZCum%AnrddL!B;Fp-3h|*eYodIcX4( z?wW=Enp@;TMdV^EGRv$fG`qL6YPz#(uCof>=~5PIHs9$I8;T4fgvpQwVRd@xuUY7> zM}#j_L@!L-4_daDQQYo!K7>-Sp=K4KW_6+2Go3s;%h1727g#9rF(K?fC*j5_h+HI5 zBCfbx56Zj_(C!C_?d25j1H|gGPe_R~J!b{`=}AmX3+J}5yA`!Vcvu=970%0DAM`gKL2Y(tOc>w@H*h+^cpRsyM9J@-As4gD11>! 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 diff --git a/plugins/l4d2_feedthetrolls.smx b/plugins/l4d2_feedthetrolls.smx index 2c01d406cf8791e3de63b9d35d6298830f1d0b2f..377e09766fcee0ac85bebc942b66326717cf5906 100644 GIT binary patch literal 87987 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℞s1sq*h4221yg;yfEILF0+=-fJW7ZQ)!Qf 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 Ey8YyWA^-pY diff --git a/plugins/l4d2_hats.smx b/plugins/l4d2_hats.smx new file mode 100644 index 0000000000000000000000000000000000000000..5d32b2137f6b3af0b73e33f2acb8ae1b955d3aab GIT binary patch literal 29765 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

K!(Lq5IYhY(my0>f7jK&PGd85*^T5wE$K_Ak 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 bj<9h!R^wFLV)II-9A +#include +#include + +public Plugin myinfo = +{ + name = "GrabEnt", + author = PLUGIN_AUTHOR, + description = "Grab then Move, Push/Pull or Rotate the entity you're looking at until released", + version = PLUGIN_VERSION, + url = "" +}; + +int g_pGrabbedEnt[MAXPLAYERS + 1]; +int g_eRotationAxis[MAXPLAYERS + 1] = { -1, ... }; +int g_eOriginalColor[MAXPLAYERS + 1][4]; + +float g_pLastButtonPress[MAXPLAYERS + 1]; +float g_fGrabOffset[MAXPLAYERS + 1][3]; +float g_fGrabDistance[MAXPLAYERS + 1]; + +MoveType g_pLastMoveType[MAXPLAYERS + 1]; +bool g_pInRotationMode[MAXPLAYERS + 1]; +bool g_eReleaseFreeze[MAXPLAYERS + 1] = { true, ... }; + +Handle g_eGrabTimer[MAXPLAYERS+1]; + +int g_BeamSprite; +int g_HaloSprite; + +#define MAX_FORBIDDEN_CLASSNAMES 10 +static char FORBIDDEN_CLASSNAMES[MAX_FORBIDDEN_CLASSNAMES][] = { + "env_physics_blocker", + "env_player_blocker", + "func_brush", + "func_simpleladder", + "func_button", + "func_elevator", + "func_button_timed", + // "func_movelinear", + // "infected", + "func_lod", + "func_door", + "prop_ragdoll" +}; + +public void OnPluginStart() +{ + RegAdminCmd("sm_grabent_freeze", Cmd_ReleaseFreeze, ADMFLAG_CHEATS, "<0/1> - Toggle entity freeze/unfreeze on release."); + RegAdminCmd("sm_grab", Cmd_Grab, ADMFLAG_CHEATS, "Toggle Grab the entity in your crosshair."); + RegAdminCmd("+grabent", Cmd_Grab, ADMFLAG_CHEATS, "Grab the entity in your crosshair."); + RegAdminCmd("-grabent", Cmd_Release, ADMFLAG_CHEATS, "Release the grabbed entity."); +} + +public void OnMapStart() +{ + g_BeamSprite = PrecacheModel("materials/sprites/laser.vmt", true); + g_HaloSprite = PrecacheModel("materials/sprites/halo01.vmt", true); + + for (int i = 0; i < MAXPLAYERS; i++) { + g_pGrabbedEnt[i] = -1; + g_eRotationAxis[i] = -1; + g_pLastButtonPress[i] = 0.0; + + g_pInRotationMode[i] = false; + g_eReleaseFreeze[i] = true; + + g_eGrabTimer[i] = null; + } +} +public void OnClientDisconnect(client) +{ + if (g_pGrabbedEnt[client] != -1 && IsValidEntity(g_pGrabbedEnt[client])) + Cmd_Release(client, 0); + + g_eRotationAxis[client] = -1; + + g_pLastButtonPress[client] = 0.0; + + g_pInRotationMode[client] = false; + g_eReleaseFreeze[client] = true; +} + +//============================================================================ +// FREEZE SETTING COMMAND // +//============================================================================ +public Action Cmd_ReleaseFreeze(client, args) +{ + if (args < 1) { + ReplyToCommand(client, "\x04[SM]\x01 \x05sm_grabent_freeze <0/1>\x01 -- \x050\x01: Entity unfreeze on release, \x051\x01: Entity freeze on release"); + return Plugin_Handled; + } + + char sArg[16]; + GetCmdArg(1, sArg, sizeof(sArg)); TrimString(sArg); + + if (!StrEqual(sArg, "0") && !StrEqual(sArg, "1")) { + ReplyToCommand(client, "\x04[SM]\x01 ERROR: Value can only be either 0 or 1"); + return Plugin_Handled; + } + + g_eReleaseFreeze[client] = StrEqual(sArg, "1") ? true : false; + + PrintToChat(client, "\x04[SM]\x01 Entities will now be \x05%s\x01 on Release!", g_eReleaseFreeze[client] == true ? "Frozen" : "Unfrozen"); + return Plugin_Handled; +} + +//============================================================================ +// GRAB ENTITY COMMAND // +//============================================================================ +public Action Cmd_Grab(client, args) { + if (client < 1 || client > MaxClients || !IsClientInGame(client)) + return Plugin_Handled; + + if (g_pGrabbedEnt[client] > 0 && IsValidEntity(g_pGrabbedEnt[client])) { + Cmd_Release(client, 0); + return Plugin_Handled; + } + + // int ent = GetClientAimTarget(client, false); + int ent = GetLookingEntity(client, Filter_IgnoreForbidden); + + if (ent == -1 || !IsValidEntity(ent)) + return Plugin_Handled; //<-- timer to allow search for entity?? + + float entOrigin[3], playerGrabOrigin[3]; + GetEntPropVector(ent, Prop_Send, "m_vecOrigin", entOrigin); + GetClientEyePosition(client, playerGrabOrigin); + + g_pGrabbedEnt[client] = ent; + + // Get the point at which the ray first hit the entity + float initialRay[3]; + initialRay[0] = GetInitialRayPosition(client, 'x'); + initialRay[1] = GetInitialRayPosition(client, 'y'); + initialRay[2] = GetInitialRayPosition(client, 'z'); + + // Calculate the offset between intitial ray hit and the entities origin + g_fGrabOffset[client][0] = entOrigin[0] - initialRay[0]; + g_fGrabOffset[client][1] = entOrigin[1] - initialRay[1]; + g_fGrabOffset[client][2] = entOrigin[2] - initialRay[2]; + + // Calculate the distance between ent and player + float xDis = Pow(initialRay[0]-(playerGrabOrigin[0]), 2.0); + float yDis = Pow(initialRay[1]-(playerGrabOrigin[1]), 2.0); + float zDis = Pow(initialRay[2]-(playerGrabOrigin[2]), 2.0); + g_fGrabDistance[client] = SquareRoot((xDis)+(yDis)+(zDis)); + + // Get and Store entities original color (useful if colored) + int entColor[4]; + int colorOffset = GetEntSendPropOffs(ent, "m_clrRender"); + + if (colorOffset > 0) + { + entColor[0] = GetEntData(ent, colorOffset, 1); + entColor[1] = GetEntData(ent, colorOffset + 1, 1); + entColor[2] = GetEntData(ent, colorOffset + 2, 1); + entColor[3] = GetEntData(ent, colorOffset + 3, 1); + } + + g_eOriginalColor[client][0] = entColor[0]; + g_eOriginalColor[client][1] = entColor[1]; + g_eOriginalColor[client][2] = entColor[2]; + g_eOriginalColor[client][3] = entColor[3]; + + // Set entities color to grab color (green and semi-transparent) + SetEntityRenderMode(ent, RENDER_TRANSALPHA); + SetEntityRenderColor(ent, 0, 255, 0, 235); + + // Freeze entity + char sClass[64]; + GetEntityClassname(ent, sClass, sizeof(sClass)); TrimString(sClass); + + if (StrEqual(sClass, "player", false)) { + g_pLastMoveType[ent] = GetEntityMoveType(ent); + SetEntityMoveType(ent, MOVETYPE_NONE); + } else + AcceptEntityInput(ent, "DisableMotion"); + + + g_pLastMoveType[client] = GetEntityMoveType(client); + // Disable weapon prior to timer + SetWeaponDelay(client, 1.0); + + // Make sure rotation mode can immediately be entered + g_pLastButtonPress[client] = GetGameTime() - 2.0; + g_pInRotationMode[client] = false; + + DataPack pack; + g_eGrabTimer[client] = CreateDataTimer(0.1, Timer_UpdateGrab, pack, TIMER_REPEAT); + pack.WriteCell(client); + + return Plugin_Handled; +} + +//============================================================================ +// TIMER FOR GRAB ENTITY // +//============================================================================ +public Action Timer_UpdateGrab(Handle timer, DataPack pack) { + int client; + pack.Reset(); + client = pack.ReadCell(); + + if (!IsValidEntity(client) || client < 1 || client > MaxClients || !IsClientInGame(client)) + return Plugin_Stop; + + if (g_pGrabbedEnt[client] == -1 || !IsValidEntity(g_pGrabbedEnt[client])) + return Plugin_Stop; + + // Continuously delay use of weapon, as to not fire any bullets when pushing/pulling/rotating + SetWeaponDelay(client, 1.0); + + // *** Enable/Disable Rotation Mode + if (GetClientButtons(client) & IN_RELOAD) { + // Avoid instant enable/disable of rotation mode by requiring a one second buffer + if (GetGameTime() - g_pLastButtonPress[client] >= 1.0) { + g_pLastButtonPress[client] = GetGameTime(); + g_pInRotationMode[client] = g_pInRotationMode[client] == true ? false : true; + PrintToChat(client, "\x04[SM]\x01 Rotation Mode \x05%s\x01", g_pInRotationMode[client] == true ? "Enabled" : "Disabled"); + + // Restore the entities color and alpha if enabling + if(g_pInRotationMode[client]) { + SetEntityRenderColor(g_pGrabbedEnt[client], 255, 255, 255, 255); + PrintToChat(client, "\x05[A]\x01 RED \x05[S]\x01 GREEN \x05[D]\x01 BLUE \x05[W]\x01 SHOW RINGS"); + } + // Change back to grabbed color if disabling + else + SetEntityRenderColor(g_pGrabbedEnt[client], 0, 255, 0, 235); + } + } + // ***In Rotation Mode + if (g_pInRotationMode[client]) { + SetEntityMoveType(client, MOVETYPE_NONE); + + float ang[3], pos[3], mins[3], maxs[3]; + GetEntPropVector(g_pGrabbedEnt[client], Prop_Send, "m_angRotation", ang); + GetEntPropVector(g_pGrabbedEnt[client], Prop_Send, "m_vecOrigin", pos); + GetEntPropVector(g_pGrabbedEnt[client], Prop_Send, "m_vecMins", mins); + GetEntPropVector(g_pGrabbedEnt[client], Prop_Send, "m_vecMaxs", maxs); + + // If the entity is a child, it will have a null position, so we'll hesitantly use the parents position + int parent = GetEntPropEnt(g_pGrabbedEnt[client], Prop_Data, "m_hMoveParent"); + if (parent > 0 && IsValidEntity(parent)) + GetEntPropVector(parent, Prop_Send, "m_vecOrigin", pos); + + // Get rotation axis from button press + int buttonPress = GetClientButtons(client); + switch(buttonPress) { + case IN_FORWARD: { + g_eRotationAxis[client] = -1; // [W] = Show Rings + PrintToChat(client, "\x04[SM]\x01 Show Rings \x05On\x01"); + } + case IN_MOVELEFT: { + g_eRotationAxis[client] = 0; // [A] = x axis + PrintToChat(client, "\x04[SM]\x01 Rotation Axis \x05X\x01"); + } + case IN_BACK: { + g_eRotationAxis[client] = 1; // [S] = y axis + PrintToChat(client, "\x04[SM]\x01 Rotation Axis \x05Y\x01"); + } + case IN_MOVERIGHT: { + g_eRotationAxis[client] = 2; // [D] = z axis + PrintToChat(client, "\x04[SM]\x01 Rotation Axis \x05Z\x01"); + } + } + + + // Reset angles when A+S+D is pressed + if((buttonPress & IN_MOVELEFT) && (buttonPress & IN_BACK) && (buttonPress & IN_MOVERIGHT)) { + ang[0] = 0.0; ang[1] = 0.0; ang[2] = 0.0; + g_eRotationAxis[client] = -1; + } + + // Largest side should dictate the diameter of the rings + float diameter, sendAng[3]; + diameter = (maxs[0] > maxs[1]) ? (maxs[0] + 10.0) : (maxs[1] + 10.0); + diameter = ((maxs[2] + 10.0) > diameter) ? (maxs[2] + 10.0) : diameter; + + // Sending original ang will cause non-stop rotation issue + sendAng = ang; + + // Draw rotation rings + switch(g_eRotationAxis[client]) { + case -1: CreateRing(client, sendAng, pos, diameter, 0, true); // all 3 rings + case 0: CreateRing(client, sendAng, pos, diameter, 0, false); // red (x) + case 1: CreateRing(client, sendAng, pos, diameter, 1, false); // green (y) + case 2: CreateRing(client, sendAng, pos, diameter, 2, false); // blue (z) + } + + // Rotate with mouse if on a rotation axis (A,S,D) + if (g_eRotationAxis[client] != -1) { + // + Rotate + if (GetClientButtons(client) & IN_ATTACK) + ang[g_eRotationAxis[client]] += 10.0; + // - Rotate + else if (GetClientButtons(client) & IN_ATTACK2) + ang[g_eRotationAxis[client]] -= 10.0; + } + + TeleportEntity(g_pGrabbedEnt[client], NULL_VECTOR, ang, NULL_VECTOR); + } + // ***Not in Rotation Mode + if (!g_pInRotationMode[client] || g_eRotationAxis[client] == -1) { + // Keep track of player noclip as to avoid forced enable/disable + if(!g_pInRotationMode[client]) { + SetEntityMoveType(client, g_pLastMoveType[client]) + } + // Push entity (Allowed if we're in rotation mode, not on a rotation axis (-1)) + if (GetClientButtons(client) & IN_ATTACK) + { + if (g_fGrabDistance[client] < 80) + g_fGrabDistance[client] += 10; + else + g_fGrabDistance[client] += g_fGrabDistance[client] / 25; + } + // Pull entity (Allowed if we're in rotation mode, not on a rotation axis (-1)) + else if (GetClientButtons(client) & IN_ATTACK2 && g_fGrabDistance[client] > 25) + { + if (g_fGrabDistance[client] < 80) + g_fGrabDistance[client] -= 10; + else + g_fGrabDistance[client] -= g_fGrabDistance[client] / 25; + } + + g_eRotationAxis[client] = -1; + } + + // *** Runs whether in rotation mode or not + float entNewPos[3]; + entNewPos[0] = GetEntNewPosition(client, 'x') + g_fGrabOffset[client][0]; + entNewPos[1] = GetEntNewPosition(client, 'y') + g_fGrabOffset[client][1]; + entNewPos[2] = GetEntNewPosition(client, 'z') + g_fGrabOffset[client][2]; + + float mins[3]; + GetEntPropVector(g_pGrabbedEnt[client], Prop_Data, "m_vecMins", mins); + entNewPos[2] += mins[2]; + + TeleportEntity(g_pGrabbedEnt[client], entNewPos, NULL_VECTOR, NULL_VECTOR); + + return Plugin_Handled; +} + +//============================================================================ +// RELEASE ENTITY COMMAND // +//============================================================================ +public Action Cmd_Release(client, args) { + if (!IsValidEntity(client) || client < 1 || client > MaxClients || !IsClientInGame(client)) + return Plugin_Handled; + + if (g_pGrabbedEnt[client] == -1 || !IsValidEntity(g_pGrabbedEnt[client])) + return Plugin_Handled; + + // Allow near-immediate use of weapon + SetWeaponDelay(client, 0.2); + + SetEntityMoveType(client, g_pLastMoveType[client]); + + + // Unfreeze if target was a player and unfreeze if setting is set to 0 + char sClass[64]; + GetEntityClassname(g_pGrabbedEnt[client], sClass, sizeof(sClass)); TrimString(sClass); + + if (StrEqual(sClass, "player", false)) + SetEntityMoveType(g_pGrabbedEnt[client], g_pLastMoveType[g_pGrabbedEnt[client]]); + else if (g_eReleaseFreeze[client] == false) + AcceptEntityInput(g_pGrabbedEnt[client], "EnableMotion"); + + // Restore color and alpha to original prior to grab + SetEntityRenderColor(g_pGrabbedEnt[client], g_eOriginalColor[client][0], g_eOriginalColor[client][1], g_eOriginalColor[client][2], g_eOriginalColor[client][3]); + + // Kill the grab timer and reset control values + if (g_eGrabTimer[client] != null) { + KillTimer(g_eGrabTimer[client]); + g_eGrabTimer[client] = null; + } + + g_pGrabbedEnt[client] = -1; + g_eRotationAxis[client] = -1; + g_pInRotationMode[client] = false; + + return Plugin_Handled; +} + +//============================================================================ +// *** UTILITIES *** // +//============================================================================ +int GetLookingEntity(int client, TraceEntityFilter filter) { + static float pos[3], ang[3]; + GetClientEyePosition(client, pos); + GetClientEyeAngles(client, ang); + TR_TraceRayFilter(pos, ang, MASK_ALL, RayType_Infinite, filter, client); + if(TR_DidHit()) { + return TR_GetEntityIndex(); + } + return -1; +} + +stock float GetEntNewPosition(int client, char axis) +{ + if (client > 0 && client <= MaxClients && IsClientInGame(client)) { + float endPos[3], clientEye[3], clientAngle[3], direction[3]; + GetClientEyePosition(client, clientEye); + GetClientEyeAngles(client, clientAngle); + + GetAngleVectors(clientAngle, direction, NULL_VECTOR, NULL_VECTOR); + ScaleVector(direction, g_fGrabDistance[client]); + AddVectors(clientEye, direction, endPos); + + TR_TraceRayFilter(clientEye, endPos, MASK_SOLID, RayType_EndPoint, TraceRayFilterEnt, client); + if (TR_DidHit(INVALID_HANDLE)) { + TR_GetEndPosition(endPos); + } + + if (axis == 'x') return endPos[0]; + else if (axis == 'y') return endPos[1]; + else if (axis == 'z') return endPos[2]; + } + + return 0.0; +} +///// +stock float GetInitialRayPosition(int client, char axis) +{ + if (client > 0 && client <= MaxClients && IsClientInGame(client)) { + float endPos[3], clientEye[3], clientAngle[3]; + GetClientEyePosition(client, clientEye); + GetClientEyeAngles(client, clientAngle); + + TR_TraceRayFilter(clientEye, clientAngle, MASK_SOLID, RayType_Infinite, TraceRayFilterActivator, client); + if (TR_DidHit(INVALID_HANDLE)) + TR_GetEndPosition(endPos); + + if (axis == 'x') return endPos[0]; + else if (axis == 'y') return endPos[1]; + else if (axis == 'z') return endPos[2]; + } + + return 0.0; +} +///// +stock void SetWeaponDelay(int client, float delay) +{ + if (IsValidEntity(client) && client > 0 && client <= MaxClients && IsClientInGame(client)) { + int pWeapon = GetEntPropEnt(client, Prop_Send, "m_hActiveWeapon"); + + if (IsValidEntity(pWeapon) && pWeapon != -1) { + SetEntPropFloat(pWeapon, Prop_Send, "m_flNextPrimaryAttack", GetGameTime() + delay); + SetEntPropFloat(pWeapon, Prop_Send, "m_flNextSecondaryAttack", GetGameTime() + delay); + } + } +} +///// +stock void CreateRing(int client, float ang[3], float pos[3], float diameter, int axis, bool trio) +{ + if (!IsValidEntity(client) || client < 1 || client > MaxClients || !IsClientInGame(client)) + return; + + float ringVecs[26][3]; + int ringColor[3][4]; + + ringColor[0] = { 255, 0, 0, 255 }; + ringColor[1] = { 0, 255, 0, 255 }; + ringColor[2] = { 0, 0, 255, 255 }; + + int numSides = (!trio) ? 26 : 17; + float angIncrement = (!trio) ? 15.0 : 24.0; + + for (int i = 1; i < numSides; i++) { + float direction[3], endPos[3]; + switch(axis) { + case 0: GetAngleVectors(ang, direction, NULL_VECTOR, NULL_VECTOR); + case 1: + { + ang[2] = 0.0; + GetAngleVectors(ang, NULL_VECTOR, direction, NULL_VECTOR); + } + case 2: GetAngleVectors(ang, NULL_VECTOR, NULL_VECTOR, direction); + } + + ScaleVector(direction, diameter); + AddVectors(pos, direction, endPos); + + if (i == 1) ringVecs[0] = endPos; + + ringVecs[i] = endPos; + ang[axis] += angIncrement; + + TE_SetupBeamPoints(ringVecs[i-1], ringVecs[i], g_BeamSprite, g_HaloSprite, 0, 15, 0.2, 2.5, 2.5, 1, 0.0, ringColor[axis], 10); + TE_SendToClient(client, 0.0); + + if(trio && i == numSides-1 && axis < 2) { + i = 0; + ang[axis] -= angIncrement * (numSides-1); + axis += 1; + } + } +} + +//============================================================================ +// *** FILTERS *** // +//============================================================================ + +public bool TraceRayFilterEnt(int entity, int mask, any:client) +{ + if (entity == client || entity == g_pGrabbedEnt[client]) + return false; + return true; +} +///// +public bool TraceRayFilterActivator(int entity, int mask, any:activator) +{ + if (entity == activator) + return false; + return true; +} + +bool Filter_IgnoreForbidden(int entity, int mask, int data) { + if(entity == data || entity == 0) return false; + if(entity <= MaxClients) return true; + static char classname[32]; + GetEntityClassname(entity, classname, sizeof(classname)); + for(int i = 0; i < MAX_FORBIDDEN_CLASSNAMES; i++) { + if(StrEqual(FORBIDDEN_CLASSNAMES[i], classname)) { + return false; + } + } + return true; +} \ No newline at end of file diff --git a/scripting/L4D2Tools.sp b/scripting/L4D2Tools.sp index 798c73d..22ee96f 100644 --- a/scripting/L4D2Tools.sp +++ b/scripting/L4D2Tools.sp @@ -185,7 +185,7 @@ int GetAllowedPlayerIndex(const char[] authid2) { public void OnClientPostAdminCheck(int client) { if(!IsFakeClient(client)) { if(reserveMode == Reserve_AdminOnly && GetUserAdmin(client) == INVALID_ADMIN_ID) { - static char auth[32]; + char auth[32]; GetClientAuthId(client, AuthId_Steam2, auth, sizeof(auth)); if(GetAllowedPlayerIndex(auth) == -1) { KickClient(client, "Sorry, server is reserved"); @@ -454,7 +454,7 @@ public Action Command_SetClientModel(int client, int args) { if(args < 1) { ReplyToCommand(client, "Usage: sm_model [player] ['keep']"); } else { - static char arg1[2], arg2[16], arg3[8]; + char arg1[2], arg2[16], arg3[8]; GetCmdArg(1, arg1, sizeof(arg1)); GetCmdArg(2, arg2, sizeof(arg2)); GetCmdArg(3, arg3, sizeof(arg3)); @@ -644,6 +644,8 @@ public Action VGUIMenu(UserMsg msg_id, Handle bf, const int[] players, int playe public void OnClientPutInServer(int client) { if(!IsFakeClient(client)) SDKHook(client, SDKHook_WeaponEquip, Event_OnWeaponEquip); + else + SDKHook(client, SDKHook_OnTakeDamage, Event_OnTakeDamage); } public void OnClientDisconnect(int client) { @@ -656,14 +658,16 @@ public void OnClientDisconnect(int client) { botDropMeleeWeapon[client] = -1; } } + public void Event_PlayerDisconnect(Event event, const char[] name, bool dontBroadcast) { int client = GetClientOfUserId(event.GetInt("userid")); if(client && !IsFakeClient(client)) { - static char auth[32]; + char auth[32]; GetClientAuthId(client, AuthId_Steam2, auth, sizeof(auth)); SteamIDs.Remove(auth); } } + int disabledItem[2048]; //Can also probably prevent kit drop to pick them up public void Event_WeaponDrop(Event event, const char[] name, bool dontBroadcast) { @@ -744,7 +748,7 @@ public void Event_BotPlayerSwap(Event event, const char[] name, bool dontBroadca public Action Event_OnWeaponDrop(int client, int weapon) { if(!IsValidEntity(weapon) || !IsFakeClient(client)) return Plugin_Continue; if(GetEntProp(client, Prop_Send, "m_humanSpectatorUserID") > 0) { - static char wpn[32]; + char wpn[32]; GetEdictClassname(weapon, wpn, sizeof(wpn)); if(StrEqual(wpn, "weapon_melee") || StrEqual(wpn, "weapon_pistol_magnum")) { #if defined DEBUG @@ -757,7 +761,8 @@ public Action Event_OnWeaponDrop(int client, int weapon) { return Plugin_Continue; } public void Frame_HideEntity(int entity) { - TeleportEntity(entity, OUT_OF_BOUNDS, NULL_VECTOR, NULL_VECTOR); + if(IsValidEntity(entity)) + TeleportEntity(entity, OUT_OF_BOUNDS, NULL_VECTOR, NULL_VECTOR); } //STUCK BOTS WITH ZOMBIES FIX public Action Event_OnTakeDamage(int victim, int& attacker, int& inflictor, float& damage, int& damagetype) { @@ -768,11 +773,11 @@ public Action Event_OnTakeDamage(int victim, int& attacker, int& inflictor, floa return Plugin_Continue; } - bool attackerVisible = IsEntityInSightRange(victim, attacker, 130.0, 100.0); + bool attackerVisible = IsEntityInSightRange(victim, attacker, 130.0, 10000.0); if(!attackerVisible) { //Zombie is behind the bot, reduce damage taken and slowly kill zombie (1/10 of default hp per hit) damage /= 2.0; - SDKHooks_TakeDamage(attacker, victim, victim, 10.0); + SDKHooks_TakeDamage(attacker, victim, victim, 30.0); return Plugin_Changed; } } diff --git a/scripting/activitymonitor.sp b/scripting/activitymonitor.sp index ebe79ce..f44f618 100644 --- a/scripting/activitymonitor.sp +++ b/scripting/activitymonitor.sp @@ -101,6 +101,10 @@ public void OnPluginEnd() { TriggerTimer(pushTimer, true); } +public void OnMapEnd() { + TriggerTimer(pushTimer, true); +} + public void OnMapStart() { static char curMap[64]; GetCurrentMap(curMap, sizeof(curMap)); diff --git a/scripting/globalbans.sp b/scripting/globalbans.sp index 06038ba..e0c5a98 100644 --- a/scripting/globalbans.sp +++ b/scripting/globalbans.sp @@ -220,11 +220,11 @@ public void DB_OnConnectCheck(Database db, DBResultSet results, const char[] err } else { //No failure, check the data. while(client > 0 && results.FetchRow()) { //Is there a ban found? - static char reason[128], steamid[64], public_message[255]; + static char reason[255], steamid[64], public_message[255]; DBResult colResult; - results.FetchString(1, steamid, sizeof(steamid)); results.FetchString(0, reason, sizeof(reason), colResult); + results.FetchString(1, steamid, sizeof(steamid)); if(colResult == DBVal_Null) { reason[0] = '\0'; } @@ -259,7 +259,7 @@ public void DB_OnConnectCheck(Database db, DBResultSet results, const char[] err g_db.Format(query, sizeof(query), "UPDATE bans SET times_tried=times_tried+1 WHERE steamid = '%s'", steamid); g_db.Query(DB_GenericCallback, query); } else { - LogAction(-1, client, "%N (%s) was previously banned from server: \"%s\"", client, steamid, reason); + LogAction(-1, client, "\"%L\" was previously banned from server: \"%s\"", client, reason); // User was previously banned PrintChatToAdmins("%N (%s) has a previous suspended/expired ban of reason \"%s\"", client, steamid, reason); } diff --git a/scripting/include/feedthetrolls/base.inc b/scripting/include/feedthetrolls/base.inc index 87a7075..4e4dc25 100644 --- a/scripting/include/feedthetrolls/base.inc +++ b/scripting/include/feedthetrolls/base.inc @@ -240,6 +240,7 @@ void ResetClient(int victim, bool wipe = true) { Trolls[i].activeFlagClients[victim] = -1; } } + noRushingUsSpeed[victim] = 1.0; BaseComm_SetClientMute(victim, false); SetEntityGravity(victim, 1.0); SetEntPropFloat(victim, Prop_Send, "m_flLaggedMovementValue", 1.0); @@ -368,8 +369,8 @@ void ApplyTroll(int victim, const char[] name, int activator, trollModifier modi // Log all actions, indicating if constant or single-fire, and if any flags if(!silent) { if(isActive) { - CShowActivityEx(activator, "[FTT] ", "deactivated {yellow}\"%s\"{default} on %N. ", troll.name, victim); - LogAction(activator, victim, "\"%L\" deactivated {yellow}\"%s\"{default} on \"%L\"", activator, troll.name, victim); + CShowActivityEx(activator, "[FTT] ", "deactivated {yellow}%s{default} on %N. ", troll.name, victim); + LogAction(activator, victim, "\"%L\" deactivated \"%s\" on \"%L\"", activator, troll.name, victim); } else { static char flagName[MAX_TROLL_FLAG_LENGTH]; // strcopy(flagName, sizeof(flagName), troll.name) diff --git a/scripting/include/feedthetrolls/combos.inc b/scripting/include/feedthetrolls/combos.inc index 18f0035..7b0b318 100644 --- a/scripting/include/feedthetrolls/combos.inc +++ b/scripting/include/feedthetrolls/combos.inc @@ -46,6 +46,19 @@ void SetupsTrollCombos() { combo.AddTroll("Witch Magnet"); #endif + SetupCombo(combo, "Rush Stopper"); + combo.AddTroll("Special Magnet"); + combo.AddTroll("Tank Magnet"); + #if defined _behavior_included + combo.AddTroll("Witch Magnet"); + #endif + combo.AddTroll("No Button Touchie", TrollMod_Constant, 17); + combo.AddTroll("Slow Speed", TrollMod_Constant, 2); + combo.AddTroll("Instant Commons", TrollMod_Instant, 1); + // combo.AddTroll("Swarm", TrollMod_Instant); + combo.AddTroll("Vomit Player"); + combo.AddTroll("Dull Melee", .flags=2); + SetupCombo(combo, "Tank Run Noob"); combo.AddTroll("Slow Speed"); combo.AddTroll("Tank Magnet"); diff --git a/scripting/include/feedthetrolls/commands.inc b/scripting/include/feedthetrolls/commands.inc index 3cc0e60..08dd361 100644 --- a/scripting/include/feedthetrolls/commands.inc +++ b/scripting/include/feedthetrolls/commands.inc @@ -57,7 +57,7 @@ public Action Command_InstaSpecial(int client, int args) { } } if(successes > 0) - ShowActivityEx(client, "[FTT] ", "spawned Insta-%sâ„¢ near %s", arg2, target_name); + CShowActivityEx(client, "[FTT] ", "spawned {green}Insta-%sâ„¢{default} near {green}%s", arg2, target_name); } @@ -123,7 +123,7 @@ public Action Command_InstaSpecialFace(int client, int args) { } } if(successes > 0) - ShowActivityEx(client, "[FTT] ", "spawned Insta-%sâ„¢ on %s", arg2, target_name); + CShowActivityEx(client, "[FTT] ", "spawned {green}Insta-%sâ„¢{default} on {green}%s", arg2, target_name); } return Plugin_Handled; } diff --git a/scripting/include/feedthetrolls/events.inc b/scripting/include/feedthetrolls/events.inc index 0e14b41..6979bea 100644 --- a/scripting/include/feedthetrolls/events.inc +++ b/scripting/include/feedthetrolls/events.inc @@ -223,9 +223,27 @@ public Action Event_ButtonPress(const char[] output, int entity, int client, flo if(!noButtonPressIndex) noButtonPressIndex = GetTrollID("No Button Touchie"); if(client > 0 && client <= MaxClients) { if(Trolls[noButtonPressIndex].IsActive(client)) { - AcceptEntityInput(entity, "Lock"); - RequestFrame(Frame_ResetButton, entity); - return Plugin_Handled; + if(Trolls[noButtonPressIndex].activeFlagClients[client] & 1) { + AcceptEntityInput(entity, "Lock"); + RequestFrame(Frame_ResetButton, entity); + return Plugin_Handled; + } + if(Trolls[noButtonPressIndex].activeFlagClients[client] & 2) { + L4D_CTerrorPlayer_OnVomitedUpon(client, client); + } + if(Trolls[noButtonPressIndex].activeFlagClients[client] & 4) { + L4D_SetPlayerIncapacitatedState(client, true); + } + if(Trolls[noButtonPressIndex].activeFlagClients[client] & 8) { + ServerCommand("sm_slay #%d", GetClientUserId(client)); + } + if(Trolls[noButtonPressIndex].activeFlagClients[client] & 16) { + float speed = GetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue"); + if(speed > 0.9) speed = 0.80; + speed -= 5.0; + SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", speed); + PrintToConsoleAdmins("[FTT] NoButtonTouchie: %N speed is now %f", speed); + } } lastButtonUser = client; } @@ -776,12 +794,12 @@ public Action OnVocalizeCommand(int client, const char[] vocalize, int initiator if(vocalGagID == 0) vocalGagID = GetTrollID("Vocalize Gag"); if(noRushingUsID == 0) noRushingUsID = GetTrollID("No Rushing Us"); if(Trolls[noRushingUsID].IsActive(client) && (StrEqual(vocalize, "PlayerHurryUp") || StrEqual(vocalize, "PlayerYellRun") || StrEqual(vocalize, "PlayerMoveOn") || StrEqual(vocalize, "PlayerLeadOn"))) { - float speed = GetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue"); - speed -= 0.01; - if(speed < 0.0) SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", 0.0); - else if(speed > 0.05) - SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", speed); - PrintToConsoleAdmins("[FTT] NoRushingUs: Dropping speed for %N (now %.1f%)", client, speed * 100.0); + noRushingUsSpeed[client] -= 0.01; + if(noRushingUsSpeed[client] < 0.05) { + noRushingUsSpeed[client] = 0.05; + } + SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", noRushingUsSpeed[client]); + PrintToConsoleAdmins("[FTT] NoRushingUs: Dropping speed for %N (now %.1f%)", client, noRushingUsSpeed[client] * 100.0); } if(Trolls[vocalGagID].IsActive(client)) { return Plugin_Handled; diff --git a/scripting/include/feedthetrolls/menus.inc b/scripting/include/feedthetrolls/menus.inc index 3da38ba..b2f36c2 100644 --- a/scripting/include/feedthetrolls/menus.inc +++ b/scripting/include/feedthetrolls/menus.inc @@ -90,8 +90,9 @@ public int ChoosePlayerHandler(Menu menu, MenuAction action, int param1, int par } SetupCategoryMenu(param1, userid); - } else if (action == MenuAction_End) + } else if (action == MenuAction_End) { delete menu; + } return 0; } @@ -208,7 +209,7 @@ public int ChooseModeMenuHandler(Menu menu, MenuAction action, int param1, int p modiferMenu.ExitButton = true; modiferMenu.Display(param1, 0); - } else if(troll.HasFlags() && !troll.IsActive(client)) { + } else if(!troll.IsActive(client) && troll.HasFlags()) { ShowSelectFlagMenu(param1, userid, -1, troll); } else { troll.Activate(client, param1); @@ -241,8 +242,10 @@ public int ChooseClumsySlotHandler(Menu menu, MenuAction action, int param1, int } else { ThrowItemToPlayer(client, param1, slot); } - LogAction(param1, client, "\"%L\" activated troll \"Throw It all\" slot=%d for \"%L\"", param1, slot, client); - ShowActivityEx(param1, "[FTT] ", "activated troll \"Throw It All\" for %N. ", client); + if(slot != -2) { + LogAction(param1, client, "\"%L\" activated troll \"Throw It all\" slot=%d for \"%L\"", param1, slot, client); + ShowActivityEx(param1, "[FTT] ", "activated troll \"Throw It All\" for %N. ", client); + } ShowThrowItAllMenu(param1, userid); } else if (action == MenuAction_End) @@ -395,17 +398,19 @@ void ShowTrollMenu(int client, bool isComboList) { for(int i = 1; i <= MaxClients; i++) { if(IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) == 2) { IntToString(GetClientUserId(i), userid, sizeof(userid)); - int specClient = GetSpectatorClient(i); + int realPlayer = L4D_GetBotOfIdlePlayer(i); + PrintToServer("%d/%d", i, realPlayer); // Incase player is idle, grab their bot instead of them - if(specClient > 0) { - if(IsPlayerAlive(specClient)) - Format(display, sizeof(display), "%N (AFK)", specClient); + if(realPlayer > 0 && IsClientConnected(realPlayer)) { + if(IsPlayerAlive(i)) + Format(display, sizeof(display), "%N (AFK)", realPlayer); else - Format(display, sizeof(display), "%N (AFK/Dead)", specClient); + Format(display, sizeof(display), "%N (AFK/Dead)", realPlayer); } else if(!IsPlayerAlive(i)) Format(display, sizeof(display), "%N (Dead)", i); - - GetClientName(i, display, sizeof(display)); + else { + GetClientName(i, display, sizeof(display)); + } menu.AddItem(userid, display); } } diff --git a/scripting/include/feedthetrolls/specials.inc b/scripting/include/feedthetrolls/specials.inc index cc87dde..1115c77 100644 --- a/scripting/include/feedthetrolls/specials.inc +++ b/scripting/include/feedthetrolls/specials.inc @@ -101,14 +101,21 @@ bool ProcessSpecialQueue() { CheatCommand(target, "z_spawn_old", SPECIAL_NAMES[view_as(spActiveRequest.type) - 1], "auto"); } else if(spActiveRequest.type == Special_Witch) { int witch = L4D2_SpawnWitch(spActiveRequest.position, spActiveRequest.angle); + DataPack pack; + CreateDataTimer(0.2, Timer_SetWitchTarget, pack); + pack.WriteCell(witch); + pack.WriteCell(GetClientUserId(target)); if(witch != -1) SetWitchTarget(witch, target); return ProcessSpecialQueue(); } else if(spActiveRequest.type == Special_Tank) { // BypassLimit(); int tank = L4D2_SpawnTank(spActiveRequest.position, spActiveRequest.angle); - if(tank > 0 && IsClientConnected(tank)) + if(tank > 0 && IsClientConnected(tank)) { + PrintToConsoleAll("[ftt/debug] requested tank spawned %d -> %N", tank, target) pdata[tank].attackerTargetUid = spActiveRequest.targetUserId; + pdata[tank].specialAttackFlags = view_as(SPI_AlwaysTarget); + } return ProcessSpecialQueue(); } return true; @@ -117,6 +124,16 @@ bool ProcessSpecialQueue() { return false; } +Action Timer_SetWitchTarget(Handle h, DataPack pack) { + pack.Reset(); + int witch = pack.ReadCell(); + int target = GetClientOfUserId(pack.ReadCell()); + if(IsValidEntity(witch) && target > 0) { + SetWitchTarget(witch, target); + } + return Plugin_Handled; +} + stock SpecialType GetSpecialType(const char[] input) { for(int i = 0; i < 8; i++) { if(strcmp(SPECIAL_NAMES[i], input, false) == 0) return view_as(i + 1); diff --git a/scripting/include/feedthetrolls/trolls.inc b/scripting/include/feedthetrolls/trolls.inc index e7bc0fa..2315896 100644 --- a/scripting/include/feedthetrolls/trolls.inc +++ b/scripting/include/feedthetrolls/trolls.inc @@ -192,7 +192,14 @@ void SetupTrolls() { SetCategory("Misc"); SetupTroll("Gun Jam", "On reload, small chance their gun gets jammed - Can't reload.", TrollMod_Constant); SetupTroll("No Shove", "Prevents a player from shoving", TrollMod_Constant); - SetupTroll("No Button Touchie", "Stops people from pressing buttons", TrollMod_Constant); + index = SetupTroll("No Button Touchie", "Stops people from pressing buttons", TrollMod_Constant); + Trolls[index].AddFlagPrompt(true); + Trolls[index].AddFlag("Prevent Use", true); + Trolls[index].AddFlag("Vomit On Touch", false); + Trolls[index].AddFlag("Incap On Touch", false); + Trolls[index].AddFlag("Slay On Touch", false); + Trolls[index].AddFlag("0.8x Speed", false); + // add flag: vomit on touch index = SetupTroll("Meta: Inverse", "Uhm you are not supposed to see this...", TrollMod_Instant); Trolls[index].hidden = true; Trolls[index].AddFlagPrompt(false); @@ -223,11 +230,12 @@ bool ApplyAffect(int victim, const Troll troll, int activator, trollModifier mod if(StrEqual(troll.name, "Reset User")) { LogAction(activator, victim, "\"%L\" reset all effects for \"%L\"", activator, victim); ShowActivityEx(activator, "[FTT] ", "reset effects for %N. ", victim); - for(int i = 0; i <= MAX_TROLLS; i++) { - Trolls[i].activeFlagClients[victim] = -1; - } - SetEntityGravity(victim, 1.0); - SetEntPropFloat(victim, Prop_Send, "m_flLaggedMovementValue", 1.0); + // for(int i = 0; i <= MAX_TROLLS; i++) { + // Trolls[i].activeFlagClients[victim] = -1; + // } + // SetEntityGravity(victim, 1.0); + // SetEntPropFloat(victim, Prop_Send, "m_flLaggedMovementValue", 1.0); + ResetClient(victim, true); return false; } else if(StrEqual(troll.name, "Slow Speed")) { if(toActive) { @@ -280,7 +288,6 @@ bool ApplyAffect(int victim, const Troll troll, int activator, trollModifier mod if(modifier & TrollMod_Instant) { L4D2_RunScript("RushVictim(GetPlayerFromUserID(%d), %d)", victim, 15000); } - return true; } else if(StrEqual(troll.name, "Gun Jam")) { int wpn = GetClientWeaponEntIndex(victim, 0); if(wpn > -1) diff --git a/scripting/include/ftt.inc b/scripting/include/ftt.inc index 89f0929..ed8bb6e 100644 --- a/scripting/include/ftt.inc +++ b/scripting/include/ftt.inc @@ -98,6 +98,9 @@ float entLastHeight[2048]; float fLastAntiRushEvent[MAXPLAYERS+1]; float fAntiRushFrequencyCounter[MAXPLAYERS+1]; +float noRushingUsSpeed[MAXPLAYERS+1]; + + #define MODEL_CAR "models/props_vehicles/cara_95sedan.mdl" diff --git a/scripting/include/jutils.inc b/scripting/include/jutils.inc index 47d27ff..2e8f6d5 100644 --- a/scripting/include/jutils.inc +++ b/scripting/include/jutils.inc @@ -485,14 +485,16 @@ stock bool IsClientInSightRange(int client, int target, float angle = 90.0, floa else return false; } +/// Checks if entity is in sight of client. Angle is the FOV, distance to be squared stock bool IsEntityInSightRange(int client, int target, float angle = 90.0, float distance = 0.0, bool heightcheck = true, bool negativeangle = false) { if(angle > 360.0 || angle < 0.0) ThrowError("Angle Max : 360 & Min : 0. %d isn't proper angle.", angle); - else if(!IsValidClient(client)) + else if(!IsClientConnected(client) || !IsClientInGame(client)) ThrowError("Client is not Alive."); else if(target <= MaxClients || !IsValidEntity(target)) ThrowError("Target is not valid entity."); - + + float clientPos[3], targetPos[3], angleVector[3], targetVector[3], resultAngle, resultDistance; GetClientEyeAngles(client, angleVector); @@ -505,7 +507,7 @@ stock bool IsEntityInSightRange(int client, int target, float angle = 90.0, floa GetClientAbsOrigin(client, clientPos); GetEntPropVector(target, Prop_Send, "m_vecOrigin", targetPos); if(heightcheck && distance > 0) - resultDistance = GetVectorDistance(clientPos, targetPos); + resultDistance = GetVectorDistance(clientPos, targetPos, true); clientPos[2] = targetPos[2] = 0.0; MakeVectorFromPoints(clientPos, targetPos, targetVector); NormalizeVector(targetVector, targetVector); @@ -517,7 +519,7 @@ stock bool IsEntityInSightRange(int client, int target, float angle = 90.0, floa if(distance > 0) { if(!heightcheck) - resultDistance = GetVectorDistance(clientPos, targetPos); + resultDistance = GetVectorDistance(clientPos, targetPos, true); return distance >= resultDistance; } @@ -665,10 +667,10 @@ stock void ClearParent(int child) { } stock void GetForwardVector(float vPos[3], float vAng[3], float vReturn[3], float fDistance) { - float vDir[3]; - GetAngleVectors(vAng, vDir, NULL_VECTOR, NULL_VECTOR); - ScaleVector(vDir, fDistance); - AddVectors(vPos, vDir, vReturn); + float vDir[3]; + GetAngleVectors(vAng, vDir, NULL_VECTOR, NULL_VECTOR); + ScaleVector(vDir, fDistance); + AddVectors(vPos, vDir, vReturn); } stock void GetDirectionVector(float pos1[3], float angle[3], float rVec[3], float distance, float force) { @@ -680,3 +682,60 @@ stock void GetDirectionVector(float pos1[3], float angle[3], float rVec[3], floa ScaleVector(rVec, force); } + +// Taken from https://gist.github.com/Aeldrion/48c82912f632eec4c8b9da7394b89c5d +stock void HSVToRGB(const float vec[3], float out[3]) { + // Translates HSV color to RGB color + // H: 0.0 - 360.0, S: 0.0 - 100.0, V: 0.0 - 100.0 + // R, G, B: 0.0 - 1.0 + + float hue = vec[0]; + float saturation = vec[1]; + float value = vec[2]; + + float c = (value / 100.0) * (saturation / 100.0); + float x = c * (1.0 - FloatAbs(float(RoundToFloor(hue / 60) % 2) - 1)); + float m = (value / 100.0) - c; + + if (hue >= 0 && hue < 60.0) { + out[0] = c; + out[1] = x; + out[2] = 0.0; + } else if (hue >= 60.0 && hue < 120.0) { + out[0] = x; + out[1] = c; + out[2] = 0.0; + } else if (hue >= 120.0 && hue < 180.0) { + out[0] = 0.0; + out[1] = c; + out[2] = x; + } else if (hue >= 180.0 && hue < 240.0) { + out[0] = 0.0; + out[1] = x; + out[2] = c; + } else if (hue >= 240.0 && hue < 300.0) { + out[0] = x; + out[1] = 0.0; + out[2] = c; + } else if (hue >= 300.0 && hue < 360.0) { + out[0] = c; + out[1] = 0.0; + out[2] = x; + } + + out[0] += m; + out[1] += m; + out[2] += m; + + out[0] * 255.0; + out[1] * 255.0; + out[2] * 255.0; +} +stock void HSVToRGBInt(const float vec[3], int out[3]) { + // Don't initialize memory, just use the existing memory as int out[3], just tell it that is a float + HSVToRGB(vec, view_as(out)); + // Convert float to int: + out[0] = RoundToFloor(view_as(out[0])); + out[1] = RoundToFloor(view_as(out[1])); + out[2] = RoundToFloor(view_as(out[2])); +} \ No newline at end of file diff --git a/scripting/include/left4dhooks.inc b/scripting/include/left4dhooks.inc index 23d5140..91e7fca 100644 --- a/scripting/include/left4dhooks.inc +++ b/scripting/include/left4dhooks.inc @@ -58,16 +58,16 @@ -// Natives: 246 (including 3 for L4D1 only) -// L4D1 = 31 [left4downtown] + 47 [l4d_direct] + 16 [l4d2addresses] + 51 [silvers - mine!] + 4 [anim] = 149 -// L4D2 = 61 [left4downtown] + 59 [l4d_direct] + 32 [l4d2addresses] + 87 [silvers - mine!] + 4 [anim] = 243 +// Natives: 252 (including 3 for L4D1 only) +// L4D1 = 31 [left4downtown] + 47 [l4d_direct] + 16 [l4d2addresses] + 56 [silvers - mine!] + 4 [anim] = 154 +// L4D2 = 61 [left4downtown] + 59 [l4d_direct] + 31 [l4d2addresses] + 94 [silvers - mine!] + 4 [anim] = 249 -// Forwards: 172 (including 2 for L4D1 only) -// L4D1 = 126; -// L4D2 = 170; +// Forwards: 183 (including 2 for L4D1 only) +// L4D1 = 129 +// L4D2 = 181 -// Stocks: 163 (L4D1 = 109, L4D2 = 159) -// left4dhooks_silver 43 stocks (L4D1 = 36, L4D2 = 47) +// Stocks: 168 (L4D1 = 111, L4D2 = 164) +// left4dhooks_silver 45 stocks (L4D1 = 38, L4D2 = 52) // left4dhooks_stocks 83 stocks (L4D1 = 44, L4D2 = 79) // left4dhooks_lux_library 34 stocks (L4D1 = 30, L4D2 = 34) @@ -114,6 +114,8 @@ public void __pl_l4dh_SetNTVOptional() MarkNativeAsOptional("L4D_GetNearestNavArea"); MarkNativeAsOptional("L4D_GetLastKnownArea"); MarkNativeAsOptional("L4D2_GetFurthestSurvivorFlow"); + MarkNativeAsOptional("L4D2_GetFirstSpawnClass"); + MarkNativeAsOptional("L4D2_SetFirstSpawnClass"); MarkNativeAsOptional("L4D_FindRandomSpot"); MarkNativeAsOptional("L4D2_IsVisibleToPlayer"); MarkNativeAsOptional("L4D_HasAnySurvivorLeftSafeArea"); @@ -208,6 +210,11 @@ public void __pl_l4dh_SetNTVOptional() MarkNativeAsOptional("L4D2_GetWitchCount"); MarkNativeAsOptional("L4D_GetCurrentChapter"); MarkNativeAsOptional("L4D_GetMaxChapters"); + MarkNativeAsOptional("L4D_GetAllNavAreas"); + MarkNativeAsOptional("L4D_GetNavAreaID"); + MarkNativeAsOptional("L4D_GetNavAreaByID"); + MarkNativeAsOptional("L4D_GetNavAreaPos"); + MarkNativeAsOptional("L4D_GetNavAreaSize"); MarkNativeAsOptional("L4D_GetNavArea_SpawnAttributes"); MarkNativeAsOptional("L4D_SetNavArea_SpawnAttributes"); MarkNativeAsOptional("L4D_GetNavArea_AttributeFlags"); @@ -410,7 +417,8 @@ enum PointerType POINTER_EVENTMANAGER = 8, // pScriptedEventManager (L4D2 Only) POINTER_SCAVENGEMODE = 9, // pScavengeMode (L4D2 Only) POINTER_VERSUSMODE = 10, // pVersusMode - POINTER_SCRIPTVM = 11 // @g_pScriptVM (L4D2 Only) + POINTER_SCRIPTVM = 11, // @g_pScriptVM (L4D2 Only) + POINTER_THENAVAREAS = 12 // @TheNavAreas }; // Provided by "BHaType": @@ -463,65 +471,192 @@ enum }; // From: https://developer.valvesoftware.com/wiki/List_of_L4D_Series_Nav_Mesh_Attributes +// Use by "L4D_GetNavArea_AttributeFlags" and "L4D_SetNavArea_AttributeFlags" natives. // NavArea Base Attributes: enum { - NAV_BASE_CROUCH = 1, - NAV_BASE_JUMP = 2, - NAV_BASE_PRECISE = 4, - NAV_BASE_NO_JUMP = 8, - NAV_BASE_STOP = 16, - NAV_BASE_RUN = 32, - NAV_BASE_WALK = 64, - NAV_BASE_AVOID = 128, - NAV_BASE_TRANSIENT = 256, - NAV_BASE_DONT_HIDE = 512, - NAV_BASE_STAND = 1024, - NAV_BASE_NO_HOSTAGES = 2048, - NAV_BASE_STAIRS = 4096, - NAV_BASE_NO_MERGE = 8192, - NAV_BASE_OBSTACLE_TOP = 16384, - NAV_BASE_CLIFF = 32768, - NAV_BASE_TANK_ONLY = 65536, - NAV_BASE_MOB_ONLY = 131072, - NAV_BASE_PLAYERCLIP = 262144, - NAV_BASE_BREAKABLEWALL = 524288, - NAV_BASE_FLOW_BLOCKED = 134217728, - NAV_BASE_OUTSIDE_WORLD = 268435456, - NAV_BASE_MOSTLY_FLAT = 536870912, - NAV_BASE_HAS_ELEVATOR = 1073741824, - NAV_BASE_NAV_BLOCKER = -2147483648 + NAV_BASE_CROUCH = 1, // (1<<0) + NAV_BASE_JUMP = 2, // (1<<1) + NAV_BASE_PRECISE = 4, // (1<<2) + NAV_BASE_NO_JUMP = 8, // (1<<3) + NAV_BASE_STOP = 16, // (1<<4) + NAV_BASE_RUN = 32, // (1<<5) + NAV_BASE_WALK = 64, // (1<<6) + NAV_BASE_AVOID = 128, // (1<<7) + NAV_BASE_TRANSIENT = 256, // (1<<8) + NAV_BASE_DONT_HIDE = 512, // (1<<9) + NAV_BASE_STAND = 1024, // (1<<10) + NAV_BASE_NO_HOSTAGES = 2048, // (1<<11) + NAV_BASE_STAIRS = 4096, // (1<<12) + NAV_BASE_NO_MERGE = 8192, // (1<<13) + NAV_BASE_OBSTACLE_TOP = 16384, // (1<<14) + NAV_BASE_CLIFF = 32768, // (1<<15) + NAV_BASE_TANK_ONLY = 65536, // (1<<16) + NAV_BASE_MOB_ONLY = 131072, // (1<<17) + NAV_BASE_PLAYERCLIP = 262144, // (1<<18) + NAV_BASE_BREAKABLEWALL = 524288, // (1<<19) + NAV_BASE_FLOW_BLOCKED = 134217728, // (1<<27) + NAV_BASE_OUTSIDE_WORLD = 268435456, // (1<<28) + NAV_BASE_MOSTLY_FLAT = 536870912, // (1<<29) + NAV_BASE_HAS_ELEVATOR = 1073741824, // (1<<30) + NAV_BASE_NAV_BLOCKER = -2147483648 // (1<<31) }; +// Use by "L4D_GetNavArea_SpawnAttributes" and "L4D_SetNavArea_SpawnAttributes" natives. // NavArea Spawn Attributes: enum { - NAV_SPAWN_EMPTY = 2, - NAV_SPAWN_STOP_SCAN = 4, - NAV_SPAWN_BATTLESTATION = 32, - NAV_SPAWN_FINALE = 64, - NAV_SPAWN_PLAYER_START = 128, - NAV_SPAWN_BATTLEFIELD = 256, - NAV_SPAWN_IGNORE_VISIBILITY = 512, - NAV_SPAWN_NOT_CLEARABLE = 1024, - NAV_SPAWN_CHECKPOINT = 2048, - NAV_SPAWN_OBSCURED = 4096, - NAV_SPAWN_NO_MOBS = 8192, - NAV_SPAWN_THREAT = 16384, - NAV_SPAWN_RESCUE_VEHICLE = 32768, - NAV_SPAWN_RESCUE_CLOSET = 65536, - NAV_SPAWN_ESCAPE_ROUTE = 131072, - NAV_SPAWN_DESTROYED_DOOR = 262144, - NAV_SPAWN_NOTHREAT = 524288, - NAV_SPAWN_LYINGDOWN = 1048576, - NAV_SPAWN_COMPASS_NORTH = 16777216, - NAV_SPAWN_COMPASS_NORTHEAST = 33554432, - NAV_SPAWN_COMPASS_EAST = 67108864, - NAV_SPAWN_COMPASS_EASTSOUTH = 134217728, - NAV_SPAWN_COMPASS_SOUTH = 268435456, - NAV_SPAWN_COMPASS_SOUTHWEST = 536870912, - NAV_SPAWN_COMPASS_WEST = 1073741824, - NAV_SPAWN_COMPASS_WESTNORTH = -2147483648 + NAV_SPAWN_EMPTY = 2, // (1<<0) + NAV_SPAWN_STOP_SCAN = 4, // (1<<1) + NAV_SPAWN_BATTLESTATION = 32, // (1<<5) + NAV_SPAWN_FINALE = 64, // (1<<6) + NAV_SPAWN_PLAYER_START = 128, // (1<<7) + NAV_SPAWN_BATTLEFIELD = 256, // (1<<8) + NAV_SPAWN_IGNORE_VISIBILITY = 512, // (1<<9) + NAV_SPAWN_NOT_CLEARABLE = 1024, // (1<<10) + NAV_SPAWN_CHECKPOINT = 2048, // (1<<11) + NAV_SPAWN_OBSCURED = 4096, // (1<<12) + NAV_SPAWN_NO_MOBS = 8192, // (1<<13) + NAV_SPAWN_THREAT = 16384, // (1<<14) + NAV_SPAWN_RESCUE_VEHICLE = 32768, // (1<<15) + NAV_SPAWN_RESCUE_CLOSET = 65536, // (1<<16) + NAV_SPAWN_ESCAPE_ROUTE = 131072, // (1<<17) + NAV_SPAWN_DESTROYED_DOOR = 262144, // (1<<18) + NAV_SPAWN_NOTHREAT = 524288, // (1<<19) + NAV_SPAWN_LYINGDOWN = 1048576, // (1<<20) + NAV_SPAWN_COMPASS_NORTH = 16777216, // (1<<24) + NAV_SPAWN_COMPASS_NORTHEAST = 33554432, // (1<<25) + NAV_SPAWN_COMPASS_EAST = 67108864, // (1<<26) + NAV_SPAWN_COMPASS_EASTSOUTH = 134217728, // (1<<27) + NAV_SPAWN_COMPASS_SOUTH = 268435456, // (1<<28) + NAV_SPAWN_COMPASS_SOUTHWEST = 536870912, // (1<<29) + NAV_SPAWN_COMPASS_WEST = 1073741824, // (1<<30) + NAV_SPAWN_COMPASS_WESTNORTH = -2147483648 // (1<<31) +}; + +// List provided by "A1m`" taken from: https://github.com/A1mDev/l4d2_structs/blob/master/terror_player_animstate.h +// There are constants that are not used, these constants were already inside the engine, the developers added their own over the existing code. +// Some constants from 'l4d2util_contants.inc'. +// These are used by the "L4D2Direct_DoAnimationEvent" native and "L4D_OnDoAnimationEvent*" forwards. +// L4D1 seems to only have 35 animation events, the names may not be relative to those listed here. +enum PlayerAnimEvent_t +{ + // Made by A1m`. + + PLAYERANIMEVENT_ATTACK_PRIMARY = 1, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_ATTACK_SECONDARY = 2, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_ATTACK_GRENADE = 3, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_RELOAD = 4, // CMultiPlayerAnimState::DoAnimationEvent, CTerrorGun::SendWeaponAnim + PLAYERANIMEVENT_RELOAD_LOOP = 5, // CMultiPlayerAnimState::DoAnimationEvent, CBaseShotgun::CheckReload->PlayReloadAnim + PLAYERANIMEVENT_RELOAD_END = 6, //CMultiPlayerAnimState::DoAnimationEvent, CBaseShotgun::CheckReload->PlayReloadAnim, CTerrorGun::AbortReload + PLAYERANIMEVENT_JUMP = 7, // CMultiPlayerAnimState::DoAnimationEvent, CTerrorGameMovement::DoJump, CCSGameMovement::CheckJumpButton + PLAYERANIMEVENT_LAND = 8, // CTerrorGameMovement::PlayerRoughLandingEffects + + PLAYERANIMEVENT_SWIM = 9, // Not sure, not used in the game anyway + + PLAYERANIMEVENT_DIE = 10, // CMultiPlayerAnimState::DoAnimationEvent, CTerrorPlayer::StartSurvivorDeathAnim, CTerrorPlayer::OnIncapacitatedAsTank + PLAYERANIMEVENT_FLINCH_CHEST = 11, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_FLINCH_HEAD = 12, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_FLINCH_LEFTARM = 13, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_FLINCH_RIGHTARM = 14, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_FLINCH_LEFTLEG = 15, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_FLINCH_RIGHTLEG = 16, // CMultiPlayerAnimState::DoAnimationEvent + + PLAYERANIMEVENT_DOUBLEJUMP = 17, // Not sure, not used in the game anyway + + PLAYERANIMEVENT_CANCEL_GESTURE_ATTACK_AND_RELOAD = 18, // CTerrorPlayer::OnShovedByPounceLanding, CTerrorPlayer::OnShovedBySurvivor, CTerrorPlayer::OnRideEnded, CTerrorPlayer::OnPounceEnded + + PLAYERANIMEVENT_CANCEL = 19, // Not sure, not used in the game anyway + + PLAYERANIMEVENT_SPAWN = 20, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_SNAP_YAW = 21, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_CUSTOM = 22, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_CUSTOM_GESTURE = 23, // CMultiPlayerAnimState::DoAnimationEvent + PLAYERANIMEVENT_CUSTOM_SEQUENCE = 24, // CMultiPlayerAnimState::DoAnimationEvent + + PLAYERANIMEVENT_CUSTOM_GESTURE_SEQUENCE = 25, // Not sure, not used in the game anyway + + // TF Specific. Here until there's a derived game solution to this. + PLAYERANIMEVENT_ATTACK_PRE = 26, // Not sure, not used in the game anyway + PLAYERANIMEVENT_ATTACK_POST = 27, // Not sure, not used in the game anyway + PLAYERANIMEVENT_GRENADE1_DRAW = 28, // Not sure, not used in the game anyway + PLAYERANIMEVENT_GRENADE2_DRAW = 29, // Not sure, not used in the game anyway + PLAYERANIMEVENT_GRENADE1_THROW = 30, // Not sure, not used in the game anyway + PLAYERANIMEVENT_GRENADE2_THROW = 31, // Not sure, not used in the game anyway + PLAYERANIMEVENT_VOICE_COMMAND_GESTURE = 32, // Not sure, not used in the game?. CTerrorPlayerAnimState::DoAnimationEvent + + PLAYERANIMEVENT_HAND_ATTACK = 33, // CClaw::OnSwingStart, CTerrorPlayer::UpdateTankEffects, CTankClaw::OnSwingStart + PLAYERANIMEVENT_HAND_LOW_ATTACK = 34, // CTankClaw::OnSwingStart, CTerrorWeapon::OnSwingStart + PLAYERANIMEVENT_SHOVE_COMMON = 35, // CTerrorWeapon::OnSwingStart + PLAYERANIMEVENT_SHOVE = 36, // CTerrorWeapon::OnSwingStart + PLAYERANIMEVENT_SHOVE_ZOMBIE_STOMP = 37, //CTerrorWeapon::OnSwingStart + PLAYERANIMEVENT_START_RELOADING_SHOTGUN = 38, // CBaseShotgun::Reload->PlayReloadAnim + PLAYERANIMEVENT_START_CHAINSAW = 39, // CChainsaw::Deploy + PLAYERANIMEVENT_PRIMARY_ATTACK = 40, // CTerrorMeleeWeapon::StartMeleeSwing, CBaseBeltItem::PrimaryAttack, FireTerrorBullets, CGrenadeLauncher::PrimaryAttack + PLAYERANIMEVENT_SECONDARY_ATTACK = 41, // CTerrorMeleeWeapon::StartMeleeSwing, CVomit::ActivateAbility, FireTerrorBullets + PLAYERANIMEVENT_HEAL_SELF = 42, + PLAYERANIMEVENT_HEAL_OTHER = 43, + PLAYERANIMEVENT_CROUCH_HEAL_INCAP = 44, // CTerrorPlayer::StartReviving + PLAYERANIMEVENT_CROUCH_HEAL_INCAPACITATED_ABOVE = 45, // CTerrorPlayer::StartReviving + PLAYERANIMEVENT_STOP_USE_ACTION = 46, // CTerrorPlayer::StopRevivingSomeone, CTerrorPlayer::StopBeingRevived, CFirstAidKit::OnStopAction, CItemAmmoPack::OnStopAction, CItemBaseUpgradePack::OnStopAction, CItemDefibrillator::OnStopAction + PLAYERANIMEVENT_PICKUP_START_SUBJECT = 47, // CTerrorPlayer::StartReviving + PLAYERANIMEVENT_PICKUP_STOP_SUBJECT = 48, // CTerrorPlayer::CleanupPlayerState, CTerrorPlayer::StopBeingRevived, CTerrorPlayer::StopRevivingSomeone + PLAYERANIMEVENT_PICKUP_SUCCESS_SUBJECT = 49, // CTerrorPlayer::OnRevived + PLAYERANIMEVENT_DEFIB_START = 50, + PLAYERANIMEVENT_DEFIB_END = 51, + PLAYERANIMEVENT_DEPLOY_AMMO = 52, + PLAYERANIMEVENT_USE_GASCAN_START = 53, + PLAYERANIMEVENT_USE_GASCAN_END = 54, // CGasCan::OnStopAction + PLAYERANIMEVENT_USE_COLA_START = 55, + PLAYERANIMEVENT_USE_COLA_END = 56, // CColaBottles::OnStopAction + PLAYERANIMEVENT_FLINCH_EVENT_SHOVED_BY_TEAMMATE = 57, // CTerrorPlayer::OnTakeDamageInternal->GetFlinchEvent, CTerrorPlayer::OnTakeDamage_Alive->GetFlinchEvent, CTerrorWeapon::OnHit->GetFlinchEvent + PLAYERANIMEVENT_FLINCH_EVENT_TAKE_DAMAGE = 58, // CTerrorPlayer::GetFlinchEvent + PLAYERANIMEVENT_THROW_ITEM_START = 59, // CBaseCSGrenade::PrimaryAttack + + PLAYERANIMEVENT_ROLL_GRENADE = 60, // Not sure, not used in the game anyway + + PLAYERANIMEVENT_THROW_ITEM_FINISH = 61, // CBaseCSGrenade::ItemPostFrame + PLAYERANIMEVENT_THROW_GRENADE = 62, // CCSPlayer::DoAnimationEvent + PLAYERANIMEVENT_THROW_ITEM_HOLSTER = 63, // CBaseCSGrenade::Holster + PLAYERANIMEVENT_PLAYER_USE = 64, // CTerrorPlayer::OnUseEntity + PLAYERANIMEVENT_CHANGE_SLOT = 65, // CWeaponCSBase::DefaultDeploy + + PLAYERANIMEVENT_UNKNOWN_START_GESTURE = 66, // Don't know. Not used in the game? Something like option 32? CTerrorPlayerAnimState::DoAnimationEvent + + PLAYERANIMEVENT_TUG_HANGING_PLAYER = 67, // CTerrorPlayer::StartTug + PLAYERANIMEVENT_STUMBLE = 68, // CTerrorPlayer::UpdateStagger, CTerrorPlayer::OnShovedByPounceLanding, CTerrorPlayer::OnStaggered, CTerrorPlayer::UpdateStagger, CTerrorPlayer::OnShovedBySurvivor + PLAYERANIMEVENT_POUNCE_VICTIM_END = 69, + PLAYERANIMEVENT_SPIT_SPITTING = 70, // CSpitAbility::ActivateAbility + PLAYERANIMEVENT_CHARGER_START_CHARGE = 71, // CCharge::BeginCharge + PLAYERANIMEVENT_CHARGER_END_CHARGE = 72, // CCharge::EndCharge + PLAYERANIMEVENT_CHARGER_PUMMELING_START = 73, + PLAYERANIMEVENT_CHARGER_PUMMELING_END = 74, // ZombieReplacement::Restore, CTerrorPlayer::UpdatePound, ZombieReplacement::Restore + PLAYERANIMEVENT_CHARGER_SLAM_INTO_GROUND = 75, // CTerrorPlayer::OnSlammedSurvivor + PLAYERANIMEVENT_IMPACT_BY_CHARGER = 76, + PLAYERANIMEVENT_CHARGER_PUMMELED = 77, // ThrowImpactedSurvivor->CTerrorPlayer::Fling; CTerrorPlayerAnimState::HandleActivity_Pummeling + PLAYERANIMEVENT_POUNDED_BY_CHARGER = 78, // ZombieReplacement::Restore, CTerrorPlayer::UpdatePound, CTerrorPlayerAnimState::HandleActivity_Pummeling + PLAYERANIMEVENT_CARRIED_BY_CHARGER = 79, // ZombieReplacement::Restore, CTerrorPlayer::OnStartBeingCarried + PLAYERANIMEVENT_STAGGERING = 80, // CTerrorPlayer::OnSlammedSurvivor + PLAYERANIMEVENT_VICTIM_SLAMMED_INTO_GROUND = 81, // CTerrorPlayer::OnSlammedSurvivor + PLAYERANIMEVENT_HUNTER_POUNCING = 82, // ZombieReplacement::Restore, CTerrorPlayer::OnPouncedUpon, ZombieReplacement::Restore + PLAYERANIMEVENT_HUNTER_POUNCE_ON_VICTIM = 83, // CTerrorPlayer::OnPouncedOnSurvivor + PLAYERANIMEVENT_JOCKEY_RIDING = 84, + PLAYERANIMEVENT_JOCKEY_RIDDEN = 85, // ZombieReplacement::Restore + PLAYERANIMEVENT_HUNTER_GETUP = 86, // CTerrorPlayer::OnPouncedUpon, ZombieReplacement::Restore + PLAYERANIMEVENT_TONGUE_LAUNCH_START = 87, // SmokerTongueVictim::OnStart + PLAYERANIMEVENT_TONGUE_LAUNCH_END = 88, // CTongue::OnEnterExtendingState + PLAYERANIMEVENT_TONGUE_REELING_IN = 89, // CTongue::OnEnterAttachedToTargetState + PLAYERANIMEVENT_TONGUE_ATTACKING_START = 90, // CTongue::OnTouch + PLAYERANIMEVENT_TONGUE_ATTACKING_END = 91, // CTerrorPlayer::OnReleasingWithTongue + PLAYERANIMEVENT_VICTIM_PULLED = 92, // ZombieReplacement::Restore, CTerrorPlayer::OnGrabbedByTongue + PLAYERANIMEVENT_ROCK_THROW = 93, // CThrow::ActivateAbility + PLAYERANIMEVENT_TANK_CLIMB = 94, // TankLocomotion::ClimbUpToLedge + PLAYERANIMEVENT_TANK_RAGE = 95, // CTerrorPlayer::OnAttackSuccess, CTerrorPlayer::OnMissionLost, CTerrorPlayer::ClientCommand (dance) + PLAYERANIMEVENT_PLAYERHIT_BY_TANK = 96, // CTankClaw::OnPlayerHit, CTerrorPlayer::OnTakeDamage->Fling, CTerrorPlayer::OnKnockedDown + PLAYERANIMEVENT_PUSH_ENTITY = 97, // CTerrorPlayer::PlayerUse + PLAYERANIMEVENT_FIDGET = 98, // CTerrorPlayerAnimState::UpdateFidgeting + + PLAYERANIMEVENT_COUNT // Total size 99. Function 'CTerrorPlayer::DoAnimationEvent'. }; @@ -747,7 +882,7 @@ forward void L4D2_OnSpawnWitchBride_Post(int entity, const float vecPos[3], cons /** * @brief Called whenever ZombieManager::SpawnWitchBride(Vector&,QAngle&) is invoked * @brief Called when a Witch Bride spawns - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param entity Entity index that spawned (can be -1 if blocked) * @param vecPos Vector coordinate where witch is spawned @@ -763,7 +898,6 @@ forward void L4D2_OnSpawnWitchBride_PostHandled(int entity, const float vecPos[3 * @remarks called on random hordes, mini and finale hordes, and boomer hordes, causes Zombies to attack * Not called on "z_spawn mob", hook the console command and check arguments to catch plugin mobs * This function is used to reset the Director's natural horde timer. - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @return Plugin_Handled to block, Plugin_Continue otherwise */ @@ -794,7 +928,6 @@ forward void L4D_OnMobRushStart_PostHandled(); /** * @brief Called whenever ZombieManager::SpawnITMob(int) is invoked * @remarks called on boomer hordes, increases Zombie Spawn Queue - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param amount Amount of Zombies to add to Queue * @@ -1401,7 +1534,6 @@ forward void L4D_TankClaw_GroundPound_Pre(int tank, int claw); * @remarks When hitting the ground (maybe only when hitting an incapped player) * @remarks The forwards "L4D_TankClaw_OnPlayerHit_Pre" and "L4D_TankClaw_OnPlayerHit_Post" trigger before this * @remarks The forwards "L4D_TankClaw_DoSwing_Pre" and "L4D_TankClaw_DoSwing_Post" can trigger after this - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param tank tank client index * @param claw the claw entity index @@ -1624,6 +1756,17 @@ forward Action L4D_OnStartMeleeSwing(int client, bool boolean); // L4D2 only. forward void L4D_OnStartMeleeSwing_Post(int client, bool boolean); +/** + * @brief Called whenever CTerrorMeleeWeapon::StartMeleeSwing(CTerrorPlayer *, bool) is invoked + * @remarks Called when a player uses his melee weapons primary attack. This is before the game + * reads the melee weapon data (model etc) and decides if he CAN attack at all. + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @noreturn + */ +// L4D2 only. +forward void L4D_OnStartMeleeSwing_PostHandled(int client, bool boolean); + /** * @brief Called whenever CTerrorMeleeWeapon::GetDamageForVictim() is invoked * @remarks Called to calculate the damage when a melee weapon hits something @@ -1640,6 +1783,35 @@ forward void L4D_OnStartMeleeSwing_Post(int client, bool boolean); // L4D2 only. forward Action L4D2_MeleeGetDamageForVictim(int client, int weapon, int victim, float &damage); +/** + * @brief Called whenever CTerrorPlayer::DoAnimationEvent is invoked + * @note The event argument is NOT the same as the sequence numbers found in the model viewer + * @note You can get the number for your animation by looking at the disasm for virtual calls to DoAnimationEvent + * + * @return Plugin_Handled to block, Plugin_Changed to modify value, Plugin_Continue otherwise + */ +forward Action L4D_OnDoAnimationEvent(int client, int &event, int &variant_param); + +/** + * @brief Called whenever CTerrorPlayer::DoAnimationEvent is invoked + * @note The event argument is NOT the same as the sequence numbers found in the model viewer + * @note You can get the number for your animation by looking at the disasm for virtual calls to DoAnimationEvent + * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @noreturn + */ +forward void L4D_OnDoAnimationEvent_Post(int client, int event, int variant_param); + +/** + * @brief Called whenever CTerrorPlayer::DoAnimationEvent is invoked + * @note The event argument is NOT the same as the sequence numbers found in the model viewer + * @note You can get the number for your animation by looking at the disasm for virtual calls to DoAnimationEvent + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @noreturn + */ +forward void L4D_OnDoAnimationEvent_PostHandled(int client, int event, int variant_param); + /** * @brief Called whenever CDirectorScriptedEventManager::SendInRescueVehicle(void) is invoked * @remarks Called when the last Finale stage is reached and the Rescue means becomes 'available'. @@ -1679,6 +1851,21 @@ forward Action L4D2_OnChangeFinaleStage(int &finaleType, const char[] arg); // L4D2 only. forward void L4D2_OnChangeFinaleStage_Post(int finaleType, const char[] arg); +/** + * @brief Called whenever CDirectorScriptedEventManager::ChangeFinaleStage is invoked + * @remarks Called when the director stage changes + * @remarks some values for FinaleStageType: 1 - Finale Started; 6 - Rescue Vehicle Ready; 7 - Zombie Hordes; 8 - Tank; 10 - Combat Respite (nothing spawns) + * @remarks SendInRescueVehicle does not depend on Finale Stage being 6, that only signals endless Hordes/Tanks + * @remarks Can use the "FINALE_*" enums (search for them above) for the finaleType value. + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @param FinaleStageType integer value + * + * @noreturn + */ +// L4D2 only. +forward void L4D2_OnChangeFinaleStage_PostHandled(int finaleType, const char[] arg); + /** * @brief Called whenever CDirectorVersusMode::EndVersusModeRound(bool) is invoked * @remarks Called before score calculations and the scoreboard display @@ -1981,7 +2168,6 @@ forward Action L4D_OnMotionControlledXY(int client, int activity); /** * @brief Called whenever CTerrorPlayer::OnShovedByPounceLanding(CTerrorPlayer*) is invoked - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param victim the survivor that is about to get stumbled as a result of "attacker" capping someone in close proximity * @param attacker the SI that is about to cause a stumble as a result of capping someone in close proximity to a survivor @@ -2097,7 +2283,7 @@ forward void L4D2_OnThrowImpactedSurvivor_PostHandled(int attacker, int victim); * @remarks Does not trigger for all cases when someone is fatally falling. * @remarks Use this forward to check if the current map has death fall cameras (fatal falls). * - * @param client Client index of the player. + * @param client Client index of the player. Can be 0. * @param camera Death fall camera index. * * @return Plugin_Handled to block the death fall camera, Plugin_Continue to allow. @@ -2279,7 +2465,6 @@ forward void L4D_OnGrabWithTongue_PostHandled(int victim, int attacker); /** * @brief Called whenever CTerrorPlayer::OnLeptOnSurvivor() is invoked * @remarks Called when a Survivor player is about to be ridden by a Jockey - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param victim the client who's being grabbed * @param attacker the Jockey grabbing someone @@ -2302,17 +2487,30 @@ forward Action L4D2_OnJockeyRide(int victim, int attacker); // L4D2 only. forward void L4D2_OnJockeyRide_Post(int victim, int attacker); +/** + * @brief Called whenever CTerrorPlayer::OnLeptOnSurvivor() is invoked + * @remarks Called when a Survivor player is starting to be ridden by a Jockey + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @param victim the client who's being grabbed + * @param attacker the Jockey grabbing someone + * + * @noreturn + */ + // L4D2 only. +forward void L4D2_OnJockeyRide_PostHandled(int victim, int attacker); + /** * @brief Called whenever CTerrorPlayer::OnSlammedSurvivor() is invoked * @remarks Called when a Survivor is slammed into a wall by a Charger, or on the first pummel if bWallSlam is 0 - * @bDeadlyCharge seems to always return 1 on Windows + * @remarks bDeadlyCharge seems to always return 1 on Windows * * @param victim the client who's being slammed * @param attacker the Charger slamming someone * @param bWallSlam when slammed into a wall. Changing this can play a different animation * @param bDeadlyCharge indicates the carry ends at a height down 360.0 units from the carry start, and adds DMG_PARALYZE to the damage flags to incap the victim. Changing this can incap the victim. * - * @return Plugin_Changed to use overwritten values from plugin, Plugin_Continue otherwise + * @return Plugin_Handled to block, Plugin_Changed to use overwritten values from plugin, Plugin_Continue otherwise */ // L4D2 only. forward Action L4D2_OnSlammedSurvivor(int victim, int attacker, bool &bWallSlam, bool &bDeadlyCharge); @@ -2321,6 +2519,7 @@ forward Action L4D2_OnSlammedSurvivor(int victim, int attacker, bool &bWallSlam, * @brief Called whenever CTerrorPlayer::OnSlammedSurvivor() is invoked * @remarks Called when a Survivor is slammed into a wall by a Charger, or on the first pummel if bWallSlam is 0 * @bDeadlyCharge seems to always return 1 on Windows + * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param victim the client who's being slammed * @param attacker the Charger slamming someone @@ -2332,10 +2531,25 @@ forward Action L4D2_OnSlammedSurvivor(int victim, int attacker, bool &bWallSlam, // L4D2 only. forward void L4D2_OnSlammedSurvivor_Post(int victim, int attacker, bool bWallSlam, bool bDeadlyCharge); +/** + * @brief Called whenever CTerrorPlayer::OnSlammedSurvivor() is invoked + * @remarks Called when a Survivor is slammed into a wall by a Charger, or on the first pummel if bWallSlam is 0 + * @bDeadlyCharge seems to always return 1 on Windows + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @param victim the client who's being slammed + * @param attacker the Charger slamming someone + * @param bWallSlam when slammed into a wall. Changing this can play a different animation + * @param bDeadlyCharge indicates the carry ends at a height down 360.0 units from the carry start, and adds DMG_PARALYZE to the damage flags to incap the victim. Changing this can incap the victim. + * + * @noreturn + */ + // L4D2 only. +forward void L4D2_OnSlammedSurvivor_PostHandled(int victim, int attacker, bool bWallSlam, bool bDeadlyCharge); + /** * @brief Called whenever CTerrorPlayer::OnStartCarryingVictim() is invoked * @remarks Called when a Survivor player is about to be carried by a Charger - * @remarks This forward will not trigger if there's no room to charge when grabbing a survivor, but "L4D2_OnPummelVictim" will trigger * * @param victim the client who's being grabbed * @param attacker the Charger picking up someone @@ -2348,7 +2562,6 @@ forward Action L4D2_OnStartCarryingVictim(int victim, int attacker); /** * @brief Called whenever CTerrorPlayer::OnStartCarryingVictim() is invoked * @remarks Called when a Survivor player is about to be carried by a Charger - * @remarks This forward will not trigger if there's no room to charge when grabbing a survivor, but "L4D2_OnPummelVictim" will trigger * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param victim the client who's being grabbed @@ -2359,6 +2572,19 @@ forward Action L4D2_OnStartCarryingVictim(int victim, int attacker); // L4D2 only. forward void L4D2_OnStartCarryingVictim_Post(int victim, int attacker); +/** + * @brief Called whenever CTerrorPlayer::OnStartCarryingVictim() is invoked + * @remarks Called when a Survivor player is about to be carried by a Charger + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @param victim the client who's being grabbed + * @param attacker the Charger picking up someone + * + * @noreturn + */ + // L4D2 only. +forward void L4D2_OnStartCarryingVictim_PostHandled(int victim, int attacker); + /** * @brief Called when CTerrorPlayer::QueuePummelVictim is invoked. * @remarks Called when a player is about to be pummelled by a Charger. @@ -2440,7 +2666,6 @@ forward void L4D_OnVomitedUpon_PostHandled(int victim, int attacker, bool boomer /** * @brief Called whenever CTerrorPlayer::OnHitByVomitJar is invoked * @remarks Called when a Special Infected is about to be hit from a Bilejar explosion - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param victim the client who's now it * @param attacker the attacker who caused the vomit (can be 0) @@ -2461,10 +2686,21 @@ forward Action L4D2_OnHitByVomitJar(int victim, int &attacker); */ forward void L4D2_OnHitByVomitJar_Post(int victim, int attacker); +/** + * @brief Called whenever CTerrorPlayer::OnHitByVomitJar is invoked + * @remarks Called when a Special Infected is hit from a Bilejar explosion + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @param victim the client who's now it + * @param attacker the attacker who caused the vomit (can be 0) + * + * @noreturn + */ +forward void L4D2_OnHitByVomitJar_PostHandled(int victim, int attacker); + /** * @brief Called whenever CPipeBombProjectile::Create is invoked * @remarks Called when a PipeBomb projectile is being created - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param client the client who is throwing the grenade (can be 0) * @param vecPos the position vector of the projectile @@ -2619,7 +2855,6 @@ forward void L4D2_VomitJar_Detonate_PostHandled(int entity, int client); /** * @brief Called whenever CInsectSwarm::CanHarm() is invoked * @remarks Called when Spitter Acid is determining if a client or entity can be damaged - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param acid the acid entity index causing the damage * @param spitter the Spitter or client who created the acid (can be 0 or -1) @@ -2710,10 +2945,23 @@ forward Action L4D2_CGasCan_ShouldStartAction(int client, int gascan, int nozzle // L4D2 only. forward void L4D2_CGasCan_ShouldStartAction_Post(int client, int gascan, int nozzle); +/** + * @brief Called whenever CGasCan::ShouldStartAction() is invoked + * @remarks Called when someone has started to pour a gascan into a nozzle + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @param client the client pouring + * @param gascan the gascan entity index that is being consumed + * @param nozzle the nozzle being poured into + * + * @noreturn + */ + // L4D2 only. +forward void L4D2_CGasCan_ShouldStartAction_PostHandled(int client, int gascan, int nozzle); + /** * @brief Called whenever CGasCan::OnActionComplete() is invoked * @remarks Called when someone is about to complete pouring a gascan into a nozzle - * @remarks This forward will not trigger if the relative pre-hook forward has been blocked with Plugin_Handled * * @param client the client pouring * @param gascan the gascan entity index that is being consumed @@ -2739,7 +2987,21 @@ forward Action L4D2_CGasCan_ActionComplete(int client, int gascan, int nozzle); forward void L4D2_CGasCan_ActionComplete_Post(int client, int gascan, int nozzle); /** - * @brief Returns the current game mode type when it changes. 0=Unknown or error. 1=Coop. 2=Survival. 4=Versus. 8=Scavenge (L4D2). + * @brief Called whenever CGasCan::OnActionComplete() is invoked + * @remarks Called when someone completes pouring a gascan into a nozzle + * @remarks This forward will ONLY trigger if the relative pre-hook forward has been blocked with Plugin_Handled + * + * @param client the client pouring + * @param gascan the gascan entity index that is being consumed + * @param nozzle the nozzle being poured into + * + * @noreturn + */ + // L4D2 only. +forward void L4D2_CGasCan_ActionComplete_PostHandled(int client, int gascan, int nozzle); + +/** + * @brief Returns the current game mode type when it changes. 0=Unknown or error. 1=Coop. 2=Versus. 4=Survival. 8=Scavenge (L4D2). * @remarks You can use the "GAMEMODE_*" enums provided above to match the mode. * @remarks Only triggers when the server starts and after when the game mode changes. * @@ -2922,7 +3184,7 @@ native bool L4D2_ExecVScriptCode(char[] code); native bool L4D2_GetVScriptOutput(char[] code, char[] buffer, int maxlength); /** - * @brief Returns the current game mode type. 0=Unknown or error. 1=Coop. 2=Survival. 4=Versus. 8=Scavenge (L4D2). + * @brief Returns the current game mode type. 0=Unknown or error. 1=Coop. 2=Versus. 4=Survival. 8=Scavenge (L4D2). * @remarks You can use the "GAMEMODE_*" enums provided above to match the mode. * * @return Current game mode. @@ -3100,6 +3362,24 @@ native any L4D_GetNearestNavArea(const float vecPos[3], float maxDist = 300.0, b */ native any L4D_GetLastKnownArea(int client); +/** + * @brief Gets the first Special Infected type the Director will spawn. Value set on map start. + * @remarks zombieClass: 1=Smoker, 2=Boomer, 3=Hunter, 4=Spitter, 5=Jockey, 6=Charger + * + * @return zombieClass of the Special Infected first spawning. + */ +// L4D2 only. +native int L4D2_GetFirstSpawnClass(); + +/** + * @brief Sets the first Special Infected type the Director will spawn. + * @remarks zombieClass: 1=Smoker, 2=Boomer, 3=Hunter, 4=Spitter, 5=Jockey, 6=Charger + * + * @noreturn + */ +// L4D2 only. +native void L4D2_SetFirstSpawnClass(int zombieClass); + /** * @brief Gets the maximum flow distance any survivor has achieved. * @@ -3162,6 +3442,9 @@ native bool L4D_AreAllSurvivorsInFinaleArea(); /** * @brief Returns true when the specified Survivor or Special Infected is in the starting checkpoint area. + * @remarks This might return true on certain maps, maybe in Survival/Scavenge start areas if they are close enough to the saferoom. + * @remarks You could use the "L4D_IsPositionInFirstCheckpoint" native instead to accurately determine if someone is in the starting area. + * @remarks This will always returns false when the "Unlock Finales" plugin by "Marttt" is installed: https://forums.alliedmods.net/showthread.php?t=333274 * * @param client Client id to check their checkpoint. * @@ -4045,8 +4328,56 @@ native int L4D_GetCurrentChapter(); */ native int L4D_GetMaxChapters(); +/** + * @brief Returns all TheNavAreas addresses + * + *param aList The ArrayList to store all nav area addresses. + * + * @noreturn + */ +native void L4D_GetAllNavAreas(ArrayList aList); + +/** + * @brief Returns a given NavArea's ID from it's address + * + *param area The NavArea address + * + * @return NavArea ID + */ +native int L4D_GetNavAreaID(Address area); + +/** + * @brief Returns a given NavArea address from it's ID + * + *param id The NavArea ID + * + * @return NavArea address or Address_Null if invalid ID + */ +native Address L4D_GetNavAreaByID(int id); + +/** + * @brief Returns origin of a given NavArea + * + *param area The address of the NavArea to read. + *param vecPos The vector to store the position read. + * + * @noreturn + */ +native void L4D_GetNavAreaPos(Address area, float vecPos[3]); + +/** + * @brief Returns size of a given NavArea + * + *param area The address of the NavArea to read. + *param vecPos The vector to store the size read. + * + * @noreturn + */ +native void L4D_GetNavAreaSize(Address area, float vecSize[3]); + /** * @brief Returns the nav area attribute flags + * @remarks See the "NAV_BASE_*" near the top of the include file * *param pTerrorNavArea Pointer to a NavArea * @@ -4056,6 +4387,7 @@ native int L4D_GetNavArea_AttributeFlags(Address pTerrorNavArea); /** * @brief Sets the nav area attribute flags + * @remarks See the "NAV_BASE_*" near the top of the include file * *param pTerrorNavArea Pointer to a NavArea *param flags Attribute flags to set @@ -4066,6 +4398,7 @@ native void L4D_SetNavArea_AttributeFlags(Address pTerrorNavArea, int flags); /** * @brief Returns the terror nav area attribute flags + * @remarks See the "NAV_SPAWN_*" near the top of the include file * *param pTerrorNavArea Pointer to a TerrorNavArea * @@ -4075,6 +4408,7 @@ native int L4D_GetNavArea_SpawnAttributes(Address pTerrorNavArea); /** * @brief Sets the terror nav area attribute flags + * @remarks See the "NAV_SPAWN_*" near the top of the include file * *param pTerrorNavArea Pointer to a TerrorNavArea *param flags Attribute flags to set @@ -5068,7 +5402,7 @@ native float L4D2Direct_GetFlowDistance(int client); * * @noreturn */ -native void L4D2Direct_DoAnimationEvent(int client, int event); +native void L4D2Direct_DoAnimationEvent(int client, int event, int variant_param = 0); /** * Get the clients health bonus. @@ -5555,6 +5889,7 @@ native void L4D2_SwapTeams(); * @return 0=Not flipped. 1=Flipped */ // L4D2 only. +#pragma deprecated Use this instead: GameRules_GetProp("m_bAreTeamsFlipped"); native bool L4D2_AreTeamsFlipped(); /** diff --git a/scripting/include/left4dhooks_anim.inc b/scripting/include/left4dhooks_anim.inc index 45505b1..776a509 100644 --- a/scripting/include/left4dhooks_anim.inc +++ b/scripting/include/left4dhooks_anim.inc @@ -1,6 +1,6 @@ /* * Left 4 DHooks Direct -* Copyright (C) 2022 Silvers +* Copyright (C) 2023 Silvers * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/scripting/include/left4dhooks_lux_library.inc b/scripting/include/left4dhooks_lux_library.inc index f71fdc9..3e11f04 100644 --- a/scripting/include/left4dhooks_lux_library.inc +++ b/scripting/include/left4dhooks_lux_library.inc @@ -1,5 +1,5 @@ /** -* Copyright (C) 2022 LuxLuma +* Copyright (C) 2023 LuxLuma * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/scripting/include/left4dhooks_silver.inc b/scripting/include/left4dhooks_silver.inc index 8262e5d..8700355 100644 --- a/scripting/include/left4dhooks_silver.inc +++ b/scripting/include/left4dhooks_silver.inc @@ -280,6 +280,32 @@ stock void StopUsingMinigun(int client) } } +/** + * @brief Returns if a player is on fire + * + * @param client Client index to check + * + * @return true on fire, false otherwise + */ +stock bool L4D_IsPlayerOnFire(int client) +{ + if( GetEntProp(client, Prop_Data, "m_fFlags") & FL_ONFIRE ) return true; + else return false; +} + +/** + * @brief Returns if a player is burning + * + * @param client Client index to check + * + * @return true on burning, false otherwise + */ +stock bool L4D_IsPlayerBurning(int client) +{ + float fBurning = GetEntPropFloat(client, Prop_Send, "m_burnPercent"); + return (fBurning > 0.0) ? true : false; +} + // ================================================== @@ -713,48 +739,65 @@ stock bool L4D_HasReachedSmoker(int client) // ================================================== // CHARGER STOCKS - Written by "Forgetest" // ================================================== +#define QueuedPummel_Victim 0 +#define QueuedPummel_StartTime 4 +#define QueuedPummel_Attacker 8 + /** * @brief Internally used to get offset to the start of queued pummel field. * * @return Offset into CTerrorPlayer to the start of queued pummel props */ -static int L4D2_OffsQueuedPummelInfo() +static stock int L4D2_OffsQueuedPummelInfo() { static int m_hQueuedPummelVictim = -1; - if ( m_hQueuedPummelVictim == -1 ) + if( m_hQueuedPummelVictim == -1 ) m_hQueuedPummelVictim = FindSendPropInfo("CTerrorPlayer", "m_pummelAttacker") + 4; - + return m_hQueuedPummelVictim; } /** * @brief Returns the timestamp when the queued pummel begins. * - * @param client Client ID of the player to check + * @param client Client ID of the charger to check * * @return timestamp or -1.0 if no queued pummel */ -stock float L4D2_GetQueuedPummelStartTime(int client) +stock float L4D2_GetQueuedPummelStartTime(int charger) { - return GetEntDataFloat(client, L4D2_OffsQueuedPummelInfo() + 4); + return GetEntDataFloat(charger, L4D2_OffsQueuedPummelInfo() + QueuedPummel_StartTime); +} + +/** + * @brief Sets the timestamp when the queued pummel begins. + * + * @param client Client ID of the charger to check + * @param timestamp Timestamp to set + * + * @noreturn + */ +stock void L4D2_SetQueuedPummelStartTime(int charger, float timestamp) +{ + SetEntDataFloat(charger, L4D2_OffsQueuedPummelInfo() + QueuedPummel_StartTime, timestamp); } /** * @brief Returns if a Charger is in a queued pummel. * - * @param client Client ID of the player to check + * @param charger Client ID of the charger to check * * @return true if in queued pummel, false otherwise */ -stock bool L4D2_IsInQueuedPummel(int client) +stock bool L4D2_IsInQueuedPummel(int charger) { - float flTimestamp = L4D2_GetQueuedPummelStartTime(client); - + float flTimestamp = L4D2_GetQueuedPummelStartTime(charger); + return flTimestamp != -1.0 && flTimestamp > GetGameTime(); } /** - * @brief Returns the victim when a Charger is in a queued pummel. + * @brief Returns the victim of a Charger in a queued pummel. * * @param client Client ID of the player to check * @@ -762,11 +805,24 @@ stock bool L4D2_IsInQueuedPummel(int client) */ stock int L4D2_GetQueuedPummelVictim(int client) { - return GetEntDataEnt2(client, L4D2_OffsQueuedPummelInfo()); + return GetEntDataEnt2(client, L4D2_OffsQueuedPummelInfo() + QueuedPummel_Victim); } /** - * @brief Returns the attacker when a Survivor is in a queued pummel. + * @brief Sets the victim of a Charger in a queued pummel. + * + * @param client Client ID of the player to set + * @param target Client ID of the target to set + * + * @noreturn + */ +stock void L4D2_SetQueuedPummelVictim(int client, int target) +{ + SetEntDataEnt2(client, L4D2_OffsQueuedPummelInfo() + QueuedPummel_Victim, target); +} + +/** + * @brief Returns the attacker of a Survivor in a queued pummel. * * @param client Client ID of the player to check * @@ -774,7 +830,20 @@ stock int L4D2_GetQueuedPummelVictim(int client) */ stock int L4D2_GetQueuedPummelAttacker(int client) { - return GetEntDataEnt2(client, L4D2_OffsQueuedPummelInfo() + 8); + return GetEntDataEnt2(client, L4D2_OffsQueuedPummelInfo() + QueuedPummel_Attacker); +} + +/** + * @brief Sets the attacker of a Survivor in a queued pummel. + * + * @param client Client ID of the player to set + * @param target Client ID of the target to set + * + * @noreturn + */ +stock void L4D2_SetQueuedPummelAttacker(int client, int target) +{ + SetEntDataEnt2(client, L4D2_OffsQueuedPummelInfo() + QueuedPummel_Attacker, target); } diff --git a/scripting/include/left4dhooks_stocks.inc b/scripting/include/left4dhooks_stocks.inc index cf3f7c1..f900b13 100644 --- a/scripting/include/left4dhooks_stocks.inc +++ b/scripting/include/left4dhooks_stocks.inc @@ -1,7 +1,7 @@ /** * ============================================================================= * Left 4 Dead Stocks Library (C)2011-2012 Buster "Mr. Zero" Nielsen - * Syntax Update and merge into "Left 4 DHooks Direct" (C) 2022 "SilverShot" + * Syntax Update and merge into "Left 4 DHooks Direct" (C) 2023 "SilverShot" * ============================================================================= * * This program is free software; you can redistribute it and/or modify it @@ -134,13 +134,17 @@ enum L4D2ZombieClassType enum L4D2UseAction { - L4D2UseAction_None = 0, // No use action active - L4D2UseAction_Healing = 1, // Includes healing yourself or a teammate. - L4D2UseAction_Defibing = 4, // When defib'ing a dead body. - L4D2UseAction_GettingDefibed = 5, // When comming back to life from a dead body. - L4D2UseAction_PouringGas = 8, // Pouring gas into a generator - L4D2UseAction_Cola = 9, // For Dead Center map 2 cola event, when handing over the cola to whitalker. - L4D2UseAction_Button = 10 // Such as buttons, timed buttons, generators, etc. + L4D2UseAction_None = 0, // No use action active + L4D2UseAction_Healing = 1, // Includes healing yourself or a teammate. + L4D2UseAction_AmmoPack = 2, // When deploying the ammo pack that was never added into the game + L4D2UseAction_Defibing = 4, // When defib'ing a dead body. + L4D2UseAction_GettingDefibed = 5, // When comming back to life from a dead body. + L4D2UseAction_DeployIncendiary = 6, // When deploying Incendiary ammo + L4D2UseAction_DeployExplosive = 7, // When deploying Explosive ammo + L4D2UseAction_PouringGas = 8, // Pouring gas into a generator + L4D2UseAction_Cola = 9, // For Dead Center map 2 cola event, when handing over the cola to whitalker. + L4D2UseAction_Button = 10, // Such as buttons, timed buttons, generators, etc. + L4D2UseAction_UsePointScript = 11 // When using a "point_script_use_target" entity /* List is not fully done, these are just the ones I have found so far */ } diff --git a/scripting/l4d2_TKStopper.sp b/scripting/l4d2_TKStopper.sp index b86f2a3..0f4a794 100644 --- a/scripting/l4d2_TKStopper.sp +++ b/scripting/l4d2_TKStopper.sp @@ -46,6 +46,8 @@ enum struct PlayerData { int immunityFlags; bool pendingAction; + + bool joined; } PlayerData pData[MAXPLAYERS+1]; @@ -96,7 +98,7 @@ public void OnPluginStart() { hFFAutoScaleAmount = CreateConVar("l4d2_tk_auto_ff_rate", "0.02", "The rate at which auto reverse-ff is scaled by.", FCVAR_NONE, true, 0.0); hFFAutoScaleMaxRatio = CreateConVar("l4d2_tk_auto_ff_max_ratio", "5.0", "The maximum amount that the reverse ff can go. 0.0 for unlimited", FCVAR_NONE, true, 0.0); hFFAutoScaleForgivenessAmount = CreateConVar("l4d2_tk_auto_ff_forgive_rate", "0.05", "This amount times amount of minutes since last ff is removed from ff rate", FCVAR_NONE, true, 0.0); - hFFAutoScaleActivateTypes = CreateConVar("l4d2_tk_auto_ff_activate_types", "7", "The types of damages to ignore. Add bits together.\n0 = Just direct fire\n1 = Damage from admins\n2 = Blast damage (pipes, grenade launchers)\n4 = Molotov/gascan/firework damage\n8 = Killing black and white players", FCVAR_NONE, true, 0.0, true, 15.0); + hFFAutoScaleActivateTypes = CreateConVar("l4d2_tk_auto_ff_activate_types", "6", "The types of damages to ignore. Add bits together.\n0 = Just direct fire\n1 = Damage from admins\n2 = Blast damage (pipes, grenade launchers)\n4 = Molotov/gascan/firework damage\n8 = Killing black and white players", FCVAR_NONE, true, 0.0, true, 15.0); ConVar hGamemode = FindConVar("mp_gamemode"); hGamemode.AddChangeHook(Event_GamemodeChange); @@ -238,6 +240,7 @@ public void Event_FinaleVehicleReady(Event event, const char[] name, bool dontBr PrintChatToAdmins("Note: %N is still marked as troll and will be banned after this game. Use \"/ignore tk\" to ignore them.", i); } } + PrintToServer("[TKStopper] Escape vehicle active, 2x rff in effect"); } public void OnMapEnd() { @@ -250,7 +253,8 @@ public void OnClientPutInServer(int client) { } public void OnClientPostAdminCheck(int client) { - if(GetUserAdmin(client) != INVALID_ADMIN_ID) { + if(GetUserAdmin(client) != INVALID_ADMIN_ID && !pData[client].joined) { + pData[client].joined = true; pData[client].immunityFlags = Immune_TK; // If no admins can do ff and they if(~hFFAutoScaleActivateTypes.IntValue & view_as(RffActType_AdminDamage)) { @@ -298,6 +302,7 @@ public void Event_PlayerDisconnect(Event event, const char[] name, bool dontBroa pData[client].ffCount = 0; pData[client].immunityFlags = 0; pData[client].totalFFCount = 0; + pData[client].joined = false; } } @@ -314,7 +319,7 @@ public Action Event_OnTakeDamage(int victim, int& attacker, int& inflictor, flo return Plugin_Changed; } // Otherwise if attacker was ignored or is a bot, stop here and let vanilla handle it - else if(pData[attacker].immunityFlags & Immune_RFF || IsFakeClient(attacker)) return Plugin_Continue; + else if(pData[attacker].immunityFlags & Immune_RFF || IsFakeClient(attacker) || IsFakeClient(victim)) return Plugin_Continue; // If victim is black and white and rff damage isnt turned on for it, allow it: else if(damagetype & DMG_DIRECT && GetEntProp(victim, Prop_Send, "m_isGoingToDie") && ~hFFAutoScaleActivateTypes.IntValue & view_as(RffActType_BlackAndWhiteDamage)) { return Plugin_Continue; @@ -462,7 +467,7 @@ public Action Event_OnTakeDamage(int victim, int& attacker, int& inflictor, flo SDKHooks_TakeDamage(attacker, attacker, attacker, pData[attacker].autoRFFScaleFactor * damage); if(pData[attacker].autoRFFScaleFactor > 1.0) - damage /= pData[attacker].autoRFFScaleFactor; + damage = 0.0; else damage /= 2.0; return Plugin_Changed; diff --git a/scripting/l4d2_ai_tweaks.sp b/scripting/l4d2_ai_tweaks.sp index fe0f10f..938f3de 100644 --- a/scripting/l4d2_ai_tweaks.sp +++ b/scripting/l4d2_ai_tweaks.sp @@ -3,6 +3,7 @@ //#define DEBUG +#define ALLOW_HEALING_MIN_IDLE_TIME 180 #define PLUGIN_VERSION "1.0" #include @@ -10,6 +11,8 @@ #include //#include +int idleTimeStart[MAXPLAYERS+1]; + public Plugin myinfo = { name = "L4D2 AI Tweaks", @@ -24,8 +27,16 @@ public void OnPluginStart() { if(g_Game != Engine_Left4Dead2) { SetFailState("This plugin is for L4D2 only."); } + // HookEvent("player_bot_replace", Event_PlayerOutOfIdle ); + HookEvent("bot_player_replace", Event_PlayerToIdle); } +public Action Event_PlayerToIdle(Event event, const char[] name, bool dontBroadcast) { + int client = GetClientOfUserId(event.GetInt("userid")); + if(client > 0) { + idleTimeStart[client] = GetTime(); + } +} public void OnActionCreated( BehaviorAction action, int actor, const char[] name ) { /* Hooking friend healing action (when bot wants to heal someone) */ @@ -37,7 +48,8 @@ public Action OnFriendAction( BehaviorAction action, int actor, BehaviorAction p // Do not allow idle bots to heal another player, unless they are black and white. // Do not let idle bots heal non-idle bots int target = action.Get(0x34) & 0xFFF; - if(GetEntProp(actor, Prop_Send, "m_humanSpectatorUserID") > 0) { // If idle bot + int realPlayer = GetClientOfUserId(GetEntProp(actor, Prop_Send, "m_humanSpectatorUserID")); + if(realPlayer > 0) { // If idle bot if(IsFakeClient(target)) { // If target is a bot, not idle player, ignore if(GetEntProp(target, Prop_Send, "m_humanSpectatorUserID") == 0) { @@ -46,7 +58,7 @@ public Action OnFriendAction( BehaviorAction action, int actor, BehaviorAction p } } // If they are not black and white, also stop - if(!GetEntProp(target, Prop_Send, "m_bIsOnThirdStrike")) { //If real player and not black and white, stop + if(!GetEntProp(target, Prop_Send, "m_bIsOnThirdStrike") && idleTimeStart[realPlayer] < ALLOW_HEALING_MIN_IDLE_TIME) { //If real player and not black and white, stop result.type = DONE; return Plugin_Handled; } diff --git a/scripting/l4d2_autobotcrown.sp b/scripting/l4d2_autobotcrown.sp index a761e8f..f30ed5f 100644 --- a/scripting/l4d2_autobotcrown.sp +++ b/scripting/l4d2_autobotcrown.sp @@ -54,10 +54,12 @@ public void OnPluginStart() if(IsValidEntity(i)) { GetEntityClassname(i, classname, sizeof(classname)); if(StrEqual(classname, "witch", false)) { - WitchList.Push(i); - #if defined DEBUG - PrintToServer("Found pre-existing witch %d", i); - #endif + if(HasEntProp(i, Prop_Send, "m_rage")) { + WitchList.Push(EntIndexToEntRef(i)); + #if defined DEBUG + PrintToServer("Found pre-existing witch %d", i); + #endif + } } } @@ -136,29 +138,28 @@ public void Change_Gamemode(ConVar convar, const char[] oldValue, const char[] n } -public Action Event_WitchSpawn(Event event, const char[] name, bool dontBroadcast) { +public void Event_WitchSpawn(Event event, const char[] name, bool dontBroadcast) { int witchID = event.GetInt("witchid"); - WitchList.Push(witchID); - #if defined DEBUG - PrintToServer("Witch spawned: %d", witchID); - #endif - //If not currently scanning, begin scanning ONLY if not active - if(timer == INVALID_HANDLE && AutoCrownBot == -1) { - timer = CreateTimer(SCAN_INTERVAL, Timer_Scan, _, TIMER_REPEAT); + if(HasEntProp(witchID, Prop_Send, "m_rage")) { + WitchList.Push(EntIndexToEntRef(witchID)); + #if defined DEBUG + PrintToServer("Witch spawned: %d", witchID); + #endif + //If not currently scanning, begin scanning ONLY if not active + if(timer == INVALID_HANDLE && AutoCrownBot == -1) { + timer = CreateTimer(SCAN_INTERVAL, Timer_Scan, _, TIMER_REPEAT); + } } } -public Action Event_WitchKilled(Event event, const char[] name, bool dontBroadcast) { - int witchID = event.GetInt("witchid"); - int index = FindValueInArray(WitchList, witchID); - #if defined DEBUG - PrintToServer("Witched killed: %d", witchID); - #endif +public void Event_WitchKilled(Event event, const char[] name, bool dontBroadcast) { + int witchRef = EntIndexToEntRef(event.GetInt("witchid")); + int index = WitchList.FindValue(witchRef); if(index > -1) { - RemoveFromArray(WitchList, index); + WitchList.Erase(index); } //If witch that was killed, terminate active loop - if(AutoCrownTarget == witchID) { + if(AutoCrownTarget == witchRef) { ResetAutoCrown(); #if defined DEBUG PrintToServer("AutoCrownTarget has died"); @@ -174,65 +175,67 @@ public Action Timer_Active(Handle hdl) { return Plugin_Stop; } //TODO: Also check if startled and cancel it immediately. - if(AutoCrownBot > -1) { - int client = GetClientOfUserId(AutoCrownBot); - if(!IsValidEntity(AutoCrownTarget) || IsPlayerIncapped(client)) { - ResetAutoCrown(); - - #if defined DEBUG - PrintToServer("Could not find valid AutoCrownTarget"); - #endif - return Plugin_Stop; - }else if(client <= 0 || !IsClientConnected(client) || !IsClientInGame(client) || !IsPlayerAlive(client)) { - ResetAutoCrown(); - #if defined DEBUG - PrintToServer("Could not find valid AutoCrownBot"); - #endif - return Plugin_Stop; - } - - char wpn[32]; - if(!GetClientWeapon(client, wpn, sizeof(wpn)) || !StrEqual(wpn, "weapon_autoshotgun") && !StrEqual(wpn, "weapon_shotgun_spas")) { - ResetAutoCrown(); - #if defined DEBUG - PrintToServer("AutoCrownBot does not have a valid weapon (%s)", wpn); - #endif - return Plugin_Stop; - } - - GetEntPropVector(AutoCrownTarget, Prop_Send, "m_vecOrigin", witchPos); - GetClientAbsOrigin(client, botPosition); - - float distance = GetVectorDistance(botPosition, witchPos); - if(distance <= 60) { - float botAngles[3]; - GetClientAbsAngles(client, botAngles); - botAngles[0] = 60.0; - botAngles[1] = RadToDeg(ArcTangent2( botPosition[1] - witchPos[1], botPosition[0] - witchPos[0])) + 180.0; - //Is In Position - - ClientCommand(client, "slot0"); - TeleportEntity(client, NULL_VECTOR, botAngles, NULL_VECTOR); - AutoCrownInPosition = true; - }else{ - L4D2_RunScript("CommandABot({cmd=1,bot=GetPlayerFromUserID(%i),pos=Vector(%f,%f,%f)})", AutoCrownBot, witchPos[0], witchPos[1], witchPos[2]); - PathfindTries++; - } - if(PathfindTries > 30) { - ResetAutoCrown(); - int index = FindValueInArray(WitchList, AutoCrownTarget); - if(index > -1) - RemoveFromArray(WitchList, index); - //remove witch - #if defined DEBUG - PrintToServer("Could not pathfind to witch in time."); - #endif - } - return Plugin_Continue; - }else{ + if(AutoCrownBot == -1) { timer = CreateTimer(SCAN_INTERVAL, Timer_Scan, _, TIMER_REPEAT); return Plugin_Stop; } + + int client = GetClientOfUserId(AutoCrownBot); + int crownTarget = EntRefToEntIndex(AutoCrownTarget); + if(crownTarget == INVALID_ENT_REFERENCE) { + ResetAutoCrown(); + + #if defined DEBUG + PrintToServer("Could not find valid AutoCrownTarget"); + #endif + return Plugin_Stop; + }else if(client <= 0 || !IsPlayerAlive(client)) { + ResetAutoCrown(); + #if defined DEBUG + PrintToServer("Could not find valid AutoCrownBot"); + #endif + return Plugin_Stop; + } + + char wpn[32]; + if(!GetClientWeapon(client, wpn, sizeof(wpn)) || !StrEqual(wpn, "weapon_autoshotgun") && !StrEqual(wpn, "weapon_shotgun_spas")) { + ResetAutoCrown(); + #if defined DEBUG + PrintToServer("AutoCrownBot does not have a valid weapon (%s)", wpn); + #endif + return Plugin_Stop; + } + + GetEntPropVector(crownTarget, Prop_Send, "m_vecOrigin", witchPos); + GetClientAbsOrigin(client, botPosition); + + float distance = GetVectorDistance(botPosition, witchPos, true); + if(distance <= 3600) { + float botAngles[3]; + GetClientAbsAngles(client, botAngles); + botAngles[0] = 60.0; + botAngles[1] = RadToDeg(ArcTangent2(botPosition[1] - witchPos[1], botPosition[0] - witchPos[0])) + 180.0; + //Is In Position + + ClientCommand(client, "slot0"); + TeleportEntity(client, NULL_VECTOR, botAngles, NULL_VECTOR); + AutoCrownInPosition = true; + } else { + L4D2_RunScript("CommandABot({cmd=1,bot=GetPlayerFromUserID(%i),pos=Vector(%f,%f,%f)})", AutoCrownBot, witchPos[0], witchPos[1], witchPos[2]); + PathfindTries++; + } + + if(PathfindTries > 40) { + ResetAutoCrown(); + int index = WitchList.FindValue(AutoCrownTarget); + if(index > -1) + WitchList.Erase(index); + //remove witch + #if defined DEBUG + PrintToServer("Could not pathfind to witch in time."); + #endif + } + return Plugin_Continue; } public Action Timer_Scan(Handle hdl) { float botPosition[3], witchPos[3]; @@ -253,8 +256,13 @@ public Action Timer_Scan(Handle hdl) { //Loop all witches, find any valid nearby witches: for(int i = 0; i < WitchList.Length; i++) { - int witchID = WitchList.Get(i); - if(IsValidEntity(witchID) && HasEntProp(witchID, Prop_Send, "m_rage") && GetEntPropFloat(witchID, Prop_Send, "m_rage") <= 0.4) { + int witchRef = WitchList.Get(i); + int witchID = EntRefToEntIndex(witchRef); + if(witchID == INVALID_ENT_REFERENCE) { + WitchList.Erase(i); + continue; + } + if(GetEntPropFloat(witchID, Prop_Send, "m_rage") <= 0.4) { GetEntPropVector(witchID, Prop_Send, "m_vecOrigin", witchPos); if(GetVectorDistance(botPosition, witchPos) <= SCAN_RANGE) { //GetEntPropVector(witchID, Prop_Send, "m_angRotation", witchAng); @@ -264,7 +272,7 @@ public Action Timer_Scan(Handle hdl) { #endif L4D2_RunScript("CommandABot({cmd=1,bot=GetPlayerFromUserID(%i),pos=Vector(%f,%f,%f)})", GetClientUserId(bot), witchPos[0], witchPos[1], witchPos[2]); - AutoCrownTarget = witchID; + AutoCrownTarget = witchRef; AutoCrownBot = GetClientUserId(bot); AutoCrownInPosition = false; CreateTimer(ACTIVE_INTERVAL, Timer_Active, _, TIMER_REPEAT | TIMER_FLAG_NO_MAPCHANGE); @@ -282,19 +290,19 @@ public Action Timer_Scan(Handle hdl) { public Action Timer_StopFiring(Handle hdl) { ResetAutoCrown(); + return Plugin_Handled; } public Action OnPlayerRunCmd(int client, int& buttons, int& impulse, float vel[3], float angles[3], int& weapon, int& subtype, int& cmdnum, int& tickcount, int& seed, int mouse[2]) { if(AutoCrownInPosition && GetClientOfUserId(AutoCrownBot) == client && !(buttons & IN_ATTACK)) { buttons |= IN_ATTACK; - //CreateTimer(0.4, Timer_StopFiring); return Plugin_Changed; } return Plugin_Continue; } public void ResetAutoCrown() { - AutoCrownTarget = -1; + AutoCrownTarget = INVALID_ENT_REFERENCE; AutoCrownInPosition = false; if(AutoCrownBot > -1) L4D2_RunScript("CommandABot({cmd=3,bot=GetPlayerFromUserID(%i)})", AutoCrownBot); diff --git a/scripting/l4d2_autorestart.sp b/scripting/l4d2_autorestart.sp index 247ed09..078001b 100644 --- a/scripting/l4d2_autorestart.sp +++ b/scripting/l4d2_autorestart.sp @@ -4,12 +4,14 @@ //#define DEBUG #define PLUGIN_VERSION "1.0" -#define MAX_TIME_ONLINE_MS 604800 +#define MAX_TIME_ONLINE_SECONDS 172800 +//604800 #include #include //#include int startupTime, triesBots, triesEmpty; +bool pendingRestart; public Plugin myinfo = { name = "L4D2 Autorestart", @@ -41,7 +43,7 @@ public Action Command_RequestRestart(int client, int args) { ReplyToCommand(client, "Restarting..."); LogAction(client, -1, "requested to restart server if empty."); ServerCommand("quit"); - }else{ + } else { ReplyToCommand(client, "Players are online."); } return Plugin_Handled; @@ -55,8 +57,9 @@ public Action Timer_Check(Handle h) { ServerCommand("quit"); } return Plugin_Continue; - } else if(GetTime() - startupTime > MAX_TIME_ONLINE_MS) { + } else if(GetTime() - startupTime > MAX_TIME_ONLINE_SECONDS) { LogAction(0, -1, "Server has passed max online time threshold, will restart if remains empty"); + pendingRestart = true; noHibernate.BoolValue = true; if(IsServerEmpty()) { if(++triesEmpty > 4) { @@ -65,12 +68,20 @@ public Action Timer_Check(Handle h) { } return Plugin_Continue; } + // If server is occupied, falls down below and resets: } triesBots = 0; triesEmpty = 0; return Plugin_Continue; } +public void OnConfigsExecuted() { + // Reset no hibernate setting when level changes: + if(pendingRestart) { + noHibernate.BoolValue = true; + } +} + // Returns true if server is empty, and there is only bots. No players bool IsServerEmptyWithOnlyBots() { bool hasBot; diff --git a/scripting/l4d2_crescendo_control.sp b/scripting/l4d2_crescendo_control.sp index 001806e..2109b04 100644 --- a/scripting/l4d2_crescendo_control.sp +++ b/scripting/l4d2_crescendo_control.sp @@ -2,17 +2,29 @@ #pragma newdecls required #define DEBUG 0 - #define PLUGIN_VERSION "1.0" -#define PANIC_DETECT_THRESHOLD 50.0 - #include #include #include //#include -static ConVar hPercent, hRange, hEnabled; +#define PANIC_DETECT_THRESHOLD 50.0 +#define MAX_GROUPS 4 + +enum struct Group { + float pos[3]; + ArrayList members; +} + +enum struct GroupResult { + int groupCount; + int ungroupedCount; + float ungroupedRatio; +} + + +static ConVar hPercent, hRange, hEnabled, hGroupTeamDist; static char gamemode[32]; static bool panicStarted; static float lastButtonPressTime; @@ -38,15 +50,27 @@ public void OnPluginStart() hEnabled = CreateConVar("l4d2_crescendo_control", "1", "Should plugin be active?\n 1 = Enabled normally\n2 = Admins with bypass allowed only", FCVAR_NONE, true, 0.0, true, 1.0); hPercent = CreateConVar("l4d2_crescendo_percent", "0.5", "The percent of players needed to be in range for crescendo to start", FCVAR_NONE); hRange = CreateConVar("l4d2_crescendo_range", "250.0", "How many units away something range brain no work", FCVAR_NONE); + hGroupTeamDist = CreateConVar("l4d2_cc_team_maxdist", "320.0", "The maximum distance another player can be away from someone to form a group", FCVAR_NONE, true, 10.0); ConVar hGamemode = FindConVar("mp_gamemode"); hGamemode.GetString(gamemode, sizeof(gamemode)); hGamemode.AddChangeHook(Event_GamemodeChange); AddNormalSoundHook(SoundHook); + + RegAdminCmd("sm_dgroup", Command_DebugGroups, ADMFLAG_GENERIC); //dhook setup } +Action Command_DebugGroups(int client, int args) { + PrintDebug("Running manual compute of groups"); + float activatorFlow = L4D2Direct_GetFlowDistance(client); + Group groups[MAX_GROUPS]; + GroupResult result; + ComputeGroups(groups, result, activatorFlow); + return Plugin_Handled; +} + public void Event_GamemodeChange(ConVar cvar, const char[] oldValue, const char[] newValue) { cvar.GetString(gamemode, sizeof(gamemode)); } @@ -83,19 +107,37 @@ public Action Timer_GetFlows(Handle h) { return Plugin_Continue; } +public float GetFlowAtPosition(const float pos[3]) { + Address area = L4D_GetNearestNavArea(pos, 50.0, false, false, false, 2); + if(area == Address_Null) return -1.0; + return L4D2Direct_GetTerrorNavAreaFlow(area); +} + public Action Event_ButtonPress(const char[] output, int entity, int client, float delay) { if(hEnabled.IntValue > 0 && client > 0 && client <= MaxClients) { + float activatorFlow = L4D2Direct_GetFlowDistance(client); + Group groups[MAX_GROUPS]; + GroupResult result; + ComputeGroups(groups, result, activatorFlow); + AdminId admin = GetUserAdmin(client); - if(admin != INVALID_ADMIN_ID && admin.HasFlag(Admin_Custom1)) return Plugin_Continue; + if(admin != INVALID_ADMIN_ID && admin.HasFlag(Admin_Custom1)) { + lastButtonPressTime = GetGameTime(); + return Plugin_Continue; + } else if(result.groupCount > 0 && result.ungroupedCount > 0) { + lastButtonPressTime = GetGameTime(); + return Plugin_Continue; + } if(panicStarted) { panicStarted = false; return Plugin_Continue; } + static float pos[3]; GetEntPropVector(entity, Prop_Send, "m_vecOrigin", pos); - float activatorFlow = L4D2Direct_GetFlowDistance(client); + PrintToConsoleAll("[CC] Button Press by %N", client); if(hEnabled.IntValue == 2 || !IsActivationAllowed(activatorFlow, 1500.0)) { @@ -123,6 +165,134 @@ public Action SoundHook(int clients[MAXPLAYERS], int& numClients, char sample[PL public void Frame_ResetButton(int entity) { AcceptEntityInput(entity, "Unlock"); } +bool ComputeGroups(Group groups[MAX_GROUPS], GroupResult result, float activateFlow) { + float prevPos[3], pos[3]; + // int prevMember = -1; + // ArrayList groupMembers = new ArrayList(); + int groupIndex = 0; + // ArrayList groups = new ArrayList(); + + // Group group; + // // Create the first group + // group.pos = pos; + // group.members = new ArrayList(); + // PrintToServer("[cc] Creating first group"); + + bool inGroup[MAXPLAYERS+1]; + + for(int i = 1; i <= MaxClients; i++) { + if(!inGroup[i] && IsClientConnected(i) && IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2) { + float prevFlow = L4D2Direct_GetFlowDistance(i); + GetClientAbsOrigin(i, prevPos); + ArrayList members = new ArrayList(); + + for(int j = 1; j <= MaxClients; j++) { + if(j != i && IsClientConnected(j) && IsClientInGame(j) && IsPlayerAlive(j) && GetClientTeam(j) == 2) { + // TODO: MERGE groups + GetClientAbsOrigin(j, pos); + float flow = L4D2Direct_GetFlowDistance(j); + float dist = FloatAbs(GetVectorDistance(prevPos, pos)); + float flowDiff = FloatAbs(prevFlow - flow); + if(dist <= hGroupTeamDist.FloatValue) { + if(members.Length == 0) { + members.Push(GetClientUserId(i)); + PrintDebug("add leader to group %d: %N", groupIndex + 1, i); + } + PrintDebug("add member to group %d: %N (dist = %.4f) (fldiff = %.1f)", groupIndex + 1, j, dist, flowDiff); + inGroup[j] = true; + members.Push(GetClientUserId(j)); + } else { + PrintDebug("not adding member to group %d: %N (dist = %.4f) (fldiff = %.1f) (l:%N)", groupIndex + 1, j, dist, flowDiff, i); + } + } + } + if(members.Length > 1) { + groups[groupIndex].pos = prevPos; + groups[groupIndex].members = members; + groupIndex++; + PrintDebug("created group #%d with %d members", groupIndex, members.Length); + if(groupIndex == MAX_GROUPS) { + PrintDebug("maximum amount of groups reached (%d)", MAX_GROUPS); + } + } else { + delete members; + } + } + } + + int totalGrouped = 0; + for(int i = 1; i <= MaxClients; i++) { + if(IsClientConnected(i) && IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2) { + if(inGroup[i]) + totalGrouped++; + else + result.ungroupedCount++; + } + } + + result.ungroupedRatio = float(result.ungroupedCount) / float(totalGrouped); + + PrintDebug("total grouped: %d | total ungrouped: %d | ratio: %f", totalGrouped, result.ungroupedCount, result.ungroupedRatio); + + PrintDebug("total groups created: %d", groupIndex); + + // for(int i = 1; i <= MaxClients; i++) { + // if(IsClientConnected(i) && IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2) { + // GetClientAbsOrigin(i, pos); + // // Skip the first member, as they will start the group + // if(prevMember == -1) { + // prevMember = i; + // continue; + // } + + // // Check if player is in a radius of the group source + // float dist = GetVectorDistance(group.pos, pos); + // if(dist < TEAM_GROUP_DIST) { + // // TODO: not just join last group + // if(group.members.Length == 0) { + // PrintToServer("[cc] add leader to group %d: %N", groupIndex + 1, prevMember); + // // groupMembers.Push(GetClientUserId(prevMember)); + // group.members.Push(GetClientUserId(prevMember)); + // } + // // groupMembers.Push(GetClientUserId(i)); + // group.members.Push(GetClientUserId(i)); + // PrintToServer("[cc] add member to group %d: %N (dist = %.2f)", groupIndex + 1, i, dist); + // } else { + // // Player is not, create a new group. + // if(group.members.Length > 0) { + // groups.PushArray(group); + // } + // groupIndex++; + // group.pos = pos; + // group.members = new ArrayList(); + // PrintToServer("[cc] Creating group %d", groupIndex + 1); + // } + // prevPos = pos; + // prevMember = i; + // } + // } + + PrintDebug("===GROUP SUMMARY==="); + for(int i = 0; i < MAX_GROUPS; i++) { + if(groups[i].members != null) { + PrintDebug("---Group %d---", i + 1); + PrintDebug("Origin: %.1f %.1f %.1f", groups[i].pos[0], groups[i].pos[1], groups[i].pos[2]); + float groupFlow = GetFlowAtPosition(groups[i].pos); + PrintDebug("Flow Diff: %.2f (g:%.1f) (a:%.1f) (gdt:%.f)", FloatAbs(activateFlow - groupFlow), activateFlow, groupFlow, hGroupTeamDist.FloatValue); + PrintDebug("Leader: %N (uid#%d)", GetClientOfUserId(groups[i].members.Get(0)), groups[i].members.Get(0)); + for(int j = 1; j < groups[i].members.Length; j++) { + int userid = groups[i].members.Get(j); + PrintDebug("Member: %N (uid#%d)", GetClientOfUserId(userid), userid); + } + delete groups[i].members; + } + } + PrintDebug("===END GROUP SUMMARY==="); + // delete groupMembers; + + result.groupCount = groupIndex; + return groupIndex > 0; +} // 5 far/8 total @@ -136,7 +306,7 @@ stock bool IsActivationAllowed(float flowmax, float threshold) { int farSurvivors, totalSurvivors; float totalFlow; for(int i = 1; i <= MaxClients; i++) { - if(IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) == 2 && IsPlayerAlive(i)) { + if(IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) == 2 && IsPlayerAlive(i) && !IsFakeClient(i)) { if(flowRate[i] < flowmax - threshold) { PrintDebug("Adding %N with flow of %.2f to far survivors average", i, flowRate[i]); farSurvivors++; @@ -145,7 +315,7 @@ stock bool IsActivationAllowed(float flowmax, float threshold) { totalSurvivors++; } } - if(farSurvivors == 0) return true; + if(farSurvivors == 0 || totalSurvivors == 1) return true; float average = totalFlow / farSurvivors; float percentFar = float(farSurvivors) / float(totalSurvivors); @@ -156,7 +326,7 @@ stock bool IsActivationAllowed(float flowmax, float threshold) { return true; } //If not, check the ratio of players - bool isAllowed = percentFar <= 0.30; + bool isAllowed = percentFar <= 0.40; PrintDebug("Activation is %s", isAllowed ? "allowed" : "blocked"); return isAllowed; } @@ -178,7 +348,8 @@ stock void PrintDebug(const char[] format, any ... ) { #if defined DEBUG char buffer[256]; VFormat(buffer, sizeof(buffer), format, 2); - PrintToServer("[Debug] %s", buffer); - PrintToConsoleAll("[Debug] %s", buffer); + // PrintToServer("[CrescendoControl:Debug] %s", buffer); + PrintToConsoleAll("[CrescendoControl:Debug] %s", buffer); + LogMessage("%s", buffer); #endif } \ No newline at end of file diff --git a/scripting/l4d2_detections.sp b/scripting/l4d2_detections.sp index 35aaef9..1f81b03 100644 --- a/scripting/l4d2_detections.sp +++ b/scripting/l4d2_detections.sp @@ -16,6 +16,7 @@ enum KitDetectionState { KDS_None, KDS_NoKitEnteringSaferoom, + KDS_PickedUpKit, KDS_Healed } @@ -23,6 +24,7 @@ enum struct PlayerDetections { int kitPickupsSaferoom; int saferoomLastOpen; int saferoomOpenCount; + bool hadKitBeforeHeal; // Do not reset normally; need to keep track during level transitions KitDetectionState saferoomKitState; @@ -149,8 +151,8 @@ public void Event_ItemPickup(Event event, const char[] name, bool dontBroadcast) if(StrEqual(itmName, "first_aid_kit")) { if(detections[client].saferoomKitState == KDS_NoKitEnteringSaferoom) { // Player had no kit entering saferoom and has healed - detections[client].saferoomKitState = KDS_Healed; - } else if(detections[client].saferoomKitState == KDS_Healed) { + detections[client].saferoomKitState = KDS_PickedUpKit; + } else if(detections[client].saferoomKitState == KDS_PickedUpKit) { // Player has healed. Double kit detected InternalDebugLog("DOUBLE_KIT", client); Call_StartForward(fwd_PlayerDoubleKit); diff --git a/scripting/l4d2_extraplayeritems.sp b/scripting/l4d2_extraplayeritems.sp index c172418..e39bcca 100644 --- a/scripting/l4d2_extraplayeritems.sp +++ b/scripting/l4d2_extraplayeritems.sp @@ -24,7 +24,7 @@ #define DEBUG_ANY 3 //Set the debug level -#define DEBUG_LEVEL DEBUG_GENERIC +#define DEBUG_LEVEL DEBUG_ANY #define EXTRA_PLAYER_HUD_UPDATE_INTERVAL 0.8 //Sets abmExtraCount to this value if set // #define DEBUG_FORCE_PLAYERS 7 @@ -103,11 +103,19 @@ enum State { State_PendingEmpty, State_Active } +#if defined DEBUG_LEVEL +char StateNames[3][] = { + "Empty", + "PendingEmpty", + "Actve" +}; +#endif enum struct PlayerData { bool itemGiven; //Is player being given an item (such that the next pickup event is ignored) bool isUnderAttack; //Is the player under attack (by any special) State state; + bool hasJoined; } enum struct PlayerInventory { @@ -187,7 +195,7 @@ public void OnPluginStart() { HookEvent("tank_spawn", Event_TankSpawn); //Special Event Tracking - HookEvent("player_team", Event_PlayerTeam); + HookEvent("player_disconnect", Event_PlayerDisconnect); HookEvent("charger_carry_start", Event_ChargerCarry); HookEvent("charger_carry_end", Event_ChargerCarry); @@ -212,7 +220,7 @@ public void OnPluginStart() { hSaferoomDoorAutoOpen = CreateConVar("l4d2_extraitems_doorunlock_open", "0", "Controls when the door automatically opens after unlocked. Add bits together.\n0 = Never, 1 = When timer expires, 2 = When all players loaded in", FCVAR_NONE, true, 0.0); hEPIHudState = CreateConVar("l4d2_extraitems_hudstate", "1", "Controls when the hud displays.\n0 -> OFF, 1 = When 5+ players, 2 = ALWAYS", FCVAR_NONE, true, 0.0, true, 3.0); hExtraFinaleTank = CreateConVar("l4d2_extraitems_extra_tanks", "3", "Add bits together. 0 = Normal tank spawning, 1 = 50% tank split on non-finale (half health), 2 = Tank split (full health) on finale ", FCVAR_NONE, true, 0.0, true, 3.0); - hSplitTankChance = CreateConVar("l4d2_extraitems_splittank_chance", "0.5", "Add bits together. 0 = Normal tank spawning, 1 = 50% tank split on non-finale (half health), 2 = Tank split (full health) on finale ", FCVAR_NONE, true, 0.0, true, 1.0); + hSplitTankChance = CreateConVar("l4d2_extraitems_splittank_chance", "0.75", "The % chance of a split tank occurring in non-finales", FCVAR_NONE, true, 0.0, true, 1.0); cvDropDisconnectTime = CreateConVar("l4d2_extraitems_disconnect_time", "120.0", "The amount of seconds after a player has actually disconnected, where their character slot will be void. 0 to disable", FCVAR_NONE, true, 0.0); cvFFDecreaseRate = CreateConVar("l4d2_extraitems_ff_decrease_rate", "0.3", "The friendly fire factor is subtracted from the formula (playerCount-4) * this rate. Effectively reduces ff penalty when more players. 0.0 to subtract none", FCVAR_NONE, true, 0.0); @@ -264,6 +272,7 @@ public void OnPluginStart() { RegAdminCmd("sm_epi_lock", Command_ToggleDoorLocks, ADMFLAG_CHEATS, "Toggle all toggle\'s lock state"); RegAdminCmd("sm_epi_kits", Command_GetKitAmount, ADMFLAG_CHEATS); RegAdminCmd("sm_epi_items", Command_RunExtraItems, ADMFLAG_CHEATS); + RegConsoleCmd("sm_epi_status", Command_DebugStatus); #endif CreateTimer(10.0, Timer_ForceUpdateInventories, _, TIMER_REPEAT); @@ -333,7 +342,10 @@ public void Cvar_HudStateChange(ConVar convar, const char[] oldValue, const char delete updateHudTimer; }else { int count = GetRealSurvivorsCount(); - int threshold = hEPIHudState.IntValue == 1 ? 4 : 0; + int threshold = 0; + if(hEPIHudState.IntValue == 1) { + threshold = L4D2_GetSurvivorSetMap() == 2 ? 4 : 5; + } if(convar.IntValue > 0 && count > threshold && updateHudTimer == null) { PrintToServer("[EPI] Creating new hud timer"); updateHudTimer = CreateTimer(EXTRA_PLAYER_HUD_UPDATE_INTERVAL, Timer_UpdateHud, _, TIMER_REPEAT); @@ -414,7 +426,7 @@ public Action Command_SetKitAmount(int client, int args) { extraKitsAmount = number; extraKitsStarted = extraKitsAmount; ReplyToCommand(client, "Set extra kits amount to %d", number); - }else{ + } else { ReplyToCommand(client, "Must be a number greater than 0. -1 to disable"); } return Plugin_Handled; @@ -440,6 +452,15 @@ public Action Command_RunExtraItems(int client, int args) { PopulateItems(); return Plugin_Handled; } +public Action Command_DebugStatus(int client, int args) { + ReplyToCommand(client, "Player Statuses:"); + for(int i = 1; i <= MaxClients; i++) { + if(IsClientConnected(i) && !IsFakeClient(i)) { + ReplyToCommand(i, "\t%d. %N: %s", i, i, StateNames[view_as(playerData[i].state)]); + } + } + return Plugin_Handled; +} #endif ///////////////////////////////////// /// EVENTS @@ -482,7 +503,8 @@ public Action L4D2_OnChangeFinaleStage(int &finaleType, const char[] arg) { public void Event_TankSpawn(Event event, const char[] name, bool dontBroadcast) { int user = event.GetInt("userid"); int tank = GetClientOfUserId(user); - if(tank > 0 && IsFakeClient(tank) && abmExtraCount > 4 && hExtraFinaleTank.BoolValue) { + if(tank > 0 && IsFakeClient(tank) && abmExtraCount > 4 && hExtraFinaleTank.IntValue > 0) { + PrintToConsoleAll("[EPI] Split tank is enabled, checking new spawned tank"); if(finaleStage == Stage_FinaleTank2 && allowTankSplit && hExtraFinaleTank.IntValue & 2) { PrintToConsoleAll("[EPI] Second tank spawned, setting health."); // Sets health in half, sets finaleStage to health @@ -500,6 +522,8 @@ public void Event_TankSpawn(Event event, const char[] name, bool dontBroadcast) extraTankHP = hp; CreateTimer(0.2, Timer_SetHealth, user); CreateTimer(GetRandomFloat(10.0, 18.0), Timer_SpawnSplitTank, user); + } else { + PrintToConsoleAll("[EPI] Random chance for split tank failed"); } // Then, summon the next tank } else if(finaleStage == Stage_TankSplit) { @@ -548,7 +572,7 @@ public void OnGetWeaponsInfo(int pThis, const char[] classname) { /////////////////////////////////////////////////////// //Called on the first spawn in a mission. -public Action Event_GameStart(Event event, const char[] name, bool dontBroadcast) { +public void Event_GameStart(Event event, const char[] name, bool dontBroadcast) { firstGiven = false; extraKitsAmount = 0; extraKitsStarted = 0; @@ -559,62 +583,71 @@ public Action Event_GameStart(Event event, const char[] name, bool dontBroadcast for(int i = 1; i <= MaxClients; i++) { playerData[i].state = State_Empty; } - return Plugin_Continue; } -public Action Event_PlayerFirstSpawn(Event event, const char[] name, bool dontBroadcast) { +public void Event_PlayerFirstSpawn(Event event, const char[] name, bool dontBroadcast) { int userid = event.GetInt("userid"); int client = GetClientOfUserId(userid); - if(GetClientTeam(client) == 2) { - CreateTimer(1.5, Timer_RemoveInvincibility, client); + if(GetClientTeam(client) != 2) return; + if(IsFakeClient(client)) { + // Make the real player's bot invincible, ONLY for the first time it appears + int player = L4D_GetIdlePlayerOfBot(client); + if(player > 0 && !playerData[client].hasJoined) { + playerData[client].hasJoined = true; + // TODO: Confirm this fix works + CreateTimer(1.5, Timer_RemoveInvincibility, userid); + SDKHook(client, SDKHook_OnTakeDamage, OnInvincibleDamageTaken); + } + } else { + // Make the (real) player invincible: + CreateTimer(1.5, Timer_RemoveInvincibility, userid); SDKHook(client, SDKHook_OnTakeDamage, OnInvincibleDamageTaken); - if(!IsFakeClient(client)) { - playerData[client].state = State_Active; - if(L4D_IsFirstMapInScenario() && !firstGiven) { - //Check if all clients are ready, and survivor count is > 4. - if(AreAllClientsReady()) { - abmExtraCount = GetRealSurvivorsCount(); - if(abmExtraCount > 4) { - firstGiven = true; - //Set the initial value ofhMinPlayers - if(hUpdateMinPlayers.BoolValue && hMinPlayers != null) { - hMinPlayers.IntValue = abmExtraCount; - } - PopulateItems(); - CreateTimer(1.0, Timer_GiveKits); - } - if(firstSaferoomDoorEntity > 0 && IsValidEntity(firstSaferoomDoorEntity)) { - UnlockDoor(firstSaferoomDoorEntity, 2); + + playerData[client].state = State_Active; + if(L4D_IsFirstMapInScenario() && !firstGiven) { + //Check if all clients are ready, and survivor count is > 4. + if(AreAllClientsReady()) { + abmExtraCount = GetRealSurvivorsCount(); + if(abmExtraCount > 4) { + PrintToServer("[EPI] First chapter kits given"); + firstGiven = true; + //Set the initial value ofhMinPlayers + if(hUpdateMinPlayers.BoolValue && hMinPlayers != null) { + hMinPlayers.IntValue = abmExtraCount; } + PopulateItems(); + CreateTimer(1.0, Timer_GiveKits); } - } else { - // New client has connected, not on first map. - // TODO: Check if Timer_UpdateMinPlayers is needed, or if this works: - // Never decrease abmExtraCount - int newCount = GetRealSurvivorsCount(); - if(newCount > abmExtraCount && abmExtraCount > 4) { - abmExtraCount = newCount; - hMinPlayers.IntValue = abmExtraCount; - - ConVar friendlyFireFactor = GetActiveFriendlyFireFactor(); - // TODO: Get previous default - friendlyFireFactor.FloatValue = friendlyFireFactor.FloatValue - ((newCount - 4) * cvFFDecreaseRate.FloatValue); - if(friendlyFireFactor.FloatValue < 0.0) { - friendlyFireFactor.FloatValue = 0.01; - } + if(firstSaferoomDoorEntity > 0 && IsValidEntity(firstSaferoomDoorEntity)) { + UnlockDoor(firstSaferoomDoorEntity, 2); } - // If 5 survivors, then set them up, TP them. - if(newCount > 4) { - CreateTimer(0.1, Timer_SetupNewClient, userid); + } + } else { + // New client has connected, not on first map. + // TODO: Check if Timer_UpdateMinPlayers is needed, or if this works: + // Never decrease abmExtraCount + int newCount = GetRealSurvivorsCount(); + if(newCount > abmExtraCount && abmExtraCount > 4) { + abmExtraCount = newCount; + hMinPlayers.IntValue = abmExtraCount; + + ConVar friendlyFireFactor = GetActiveFriendlyFireFactor(); + // TODO: Get previous default + friendlyFireFactor.FloatValue = friendlyFireFactor.FloatValue - ((newCount - 4) * cvFFDecreaseRate.FloatValue); + if(friendlyFireFactor.FloatValue < 0.0) { + friendlyFireFactor.FloatValue = 0.01; } } + // If 5 survivors, then set them up, TP them. + if(newCount > 4) { + CreateTimer(0.1, Timer_SetupNewClient, userid); + } } } - return Plugin_Continue; - } -public Action Event_PlayerSpawn(Event event, const char[] name, bool dontBroadcast) { - if(StrEqual(gamemode, "hideandseek")) return Plugin_Continue; +public void Event_PlayerSpawn(Event event, const char[] name, bool dontBroadcast) { + if(!StrEqual(gamemode, "coop") && !StrEqual(gamemode, "realism")) return; + int user = event.GetInt("userid"); int client = GetClientOfUserId(user); if(GetClientTeam(client) == 2) { @@ -637,13 +670,15 @@ public Action Event_PlayerSpawn(Event event, const char[] name, bool dontBroadca SDKHook(client, SDKHook_WeaponEquip, Event_Pickup); } int count = GetRealSurvivorsCount(); - int threshold = hEPIHudState.IntValue == 1 ? 5 : 0; + int threshold = 0; + if(hEPIHudState.IntValue == 1) { + threshold = L4D2_GetSurvivorSetMap() == 2 ? 4 : 5; + } if(hEPIHudState.IntValue > 0 && count > threshold && updateHudTimer == null) { PrintToServer("[EPI] Creating new hud timer (player spawn)"); updateHudTimer = CreateTimer(EXTRA_PLAYER_HUD_UPDATE_INTERVAL, Timer_UpdateHud, _, TIMER_REPEAT); } UpdatePlayerInventory(client); - return Plugin_Continue; } @@ -655,21 +690,19 @@ public Action Timer_CheckInventory(Handle h, int client) { return Plugin_Handled; } -public void Event_PlayerTeam(Event event, const char[] name, bool dontBroadcast) { - if(event.GetBool("disconnect")) { - int userid = event.GetInt("userid"); - int client = GetClientOfUserId(userid); - int team = event.GetInt("team"); - if(client > 0 && team == 2) { //TODO: re-add && !event.GetBool("isbot") - SaveInventory(client); - PrintToServer("debug: Player %N (index %d, uid %d) now pending empty", client, client, userid); - playerData[client].state = State_PendingEmpty; - /*DataPack pack; - CreateDataTimer(cvDropDisconnectTime.FloatValue, Timer_DropSurvivor, pack); - pack.WriteCell(userid); - pack.WriteCell(client);*/ - CreateTimer(cvDropDisconnectTime.FloatValue, Timer_DropSurvivor, client); - } +public void Event_PlayerDisconnect(Event event, const char[] name, bool dontBroadcast) { + int userid = event.GetInt("userid"); + int client = GetClientOfUserId(userid); + if(client > 0 && IsClientConnected(client) && IsClientInGame(client) && !IsFakeClient(client) && GetClientTeam(client) == 2) { //TODO: re-add && !event.GetBool("isbot") + playerData[client].hasJoined = false; + SaveInventory(client); + PrintToServer("debug: Player %N (index %d, uid %d) now pending empty", client, client, userid); + playerData[client].state = State_PendingEmpty; + /*DataPack pack; + CreateDataTimer(cvDropDisconnectTime.FloatValue, Timer_DropSurvivor, pack); + pack.WriteCell(userid); + pack.WriteCell(client);*/ + CreateTimer(cvDropDisconnectTime.FloatValue, Timer_DropSurvivor, client); } } @@ -677,8 +710,8 @@ public Action Timer_DropSurvivor(Handle h, int client) { if(playerData[client].state == State_PendingEmpty) { playerData[client].state = State_Empty; if(hMinPlayers != null) { - PrintToServer("[EPI] Dropping survivor %d. hMinPlayers-pre:%d", client, hMinPlayers.IntValue); - PrintToConsoleAll("[EPI] Dropping survivor %d. hMinPlayers-pre:%d", client, hMinPlayers.IntValue); + PrintToServer("[EPI] Dropping survivor %d. hMinPlayers-pre:%d abmCount=%d", client, hMinPlayers.IntValue, abmExtraCount); + PrintToConsoleAll("[EPI] Dropping survivor %d. hMinPlayers-pre:%d abmCount=%d", client, hMinPlayers.IntValue, abmExtraCount); hMinPlayers.IntValue = --abmExtraCount; if(hMinPlayers.IntValue < 4) { hMinPlayers.IntValue = 4; @@ -712,12 +745,11 @@ public Action Timer_DropSurvivor(Handle h, int client) { /////// Events ///////////////////////////////////////// -public Action Event_ItemPickup(Event event, const char[] name, bool dontBroadcast) { +public void Event_ItemPickup(Event event, const char[] name, bool dontBroadcast) { int client = GetClientOfUserId(event.GetInt("userid")); if(client > 0) { UpdatePlayerInventory(client); } - return Plugin_Continue; } @@ -765,19 +797,34 @@ public Action Timer_SetupNewClient(Handle h, int userid) { char weaponName[64]; ArrayList tier2Weapons = new ArrayList(ByteCountToCells(32)); + ArrayList tier1Weapons = new ArrayList(ByteCountToCells(32)); + ArrayList secondaryWeapons = new ArrayList(ByteCountToCells(32)); for(int i = 1; i <= MaxClients; i++) { if(i != client && IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) == 2 && IsPlayerAlive(i)) { int wpn = GetPlayerWeaponSlot(i, 0); if(wpn > 0) { GetEdictClassname(wpn, weaponName, sizeof(weaponName)); - for(int j = 0; j < TIER2_WEAPON_COUNT; j++) { - if(StrEqual(TIER2_WEAPONS[j], weaponName)) { - tier2Weapons.PushString(weaponName); - break; + if(!StrEqual(weaponName, "weapon_grenade_launcher") && !StrEqual(weaponName, "weapon_rifle_m60")) { + for(int j = 0; j < TIER2_WEAPON_COUNT; j++) { + if(StrEqual(TIER2_WEAPONS[j], weaponName)) { + tier2Weapons.PushString(weaponName); + break; + } } + tier1Weapons.PushString(weaponName); + // playerWeapons.PushString(weaponName); } } + wpn = GetPlayerWeaponSlot(i, 1); + if(wpn > 0) { + GetEdictClassname(wpn, weaponName, sizeof(weaponName)); + if(StrEqual(weaponName, "weapon_melee")) { + // Get melee name, won't have weapon_ prefix + GetEntPropString(wpn, Prop_Data, "m_strMapSetScriptName", weaponName, sizeof(weaponName)); + } + secondaryWeapons.PushString(weaponName); + } float intensity = L4D_GetPlayerIntensity(i); if(intensity < lowestIntensity || lowestClient == -1) { @@ -787,49 +834,70 @@ public Action Timer_SetupNewClient(Handle h, int userid) { } } + // Give player any random t2 weapon, if no one has one, fallback to t1, if no one has one, give them a magnum if(tier2Weapons.Length > 0) { tier2Weapons.GetString(GetRandomInt(0, tier2Weapons.Length - 1), weaponName, sizeof(weaponName)); // Format(weaponName, sizeof(weaponName), "weapon_%s", weaponName); PrintToServer("[EPI/debug] Giving new client (%N) tier 2: %s", client, weaponName); - } else { - Format(weaponName, sizeof(weaponName), "weapon_%s", TIER1_WEAPONS[GetRandomInt(0, TIER1_WEAPON_COUNT - 1)]); + GiveWeapon(client, weaponName, 3.0, 0); + } else if(tier1Weapons.Length > 0) { + // Format(weaponName, sizeof(weaponName), "weapon_%s", TIER1_WEAPONS[GetRandomInt(0, TIER1_WEAPON_COUNT - 1)]); + tier1Weapons.GetString(GetRandomInt(0, tier1Weapons.Length - 1), weaponName, sizeof(weaponName)); PrintToServer("[EPI/debug] Giving new client (%N) tier 1: %s", client, weaponName); + GiveWeapon(client, weaponName, 3.0, 0); } + PrintToServer("%N: Giving random secondary / %d", secondaryWeapons.Length, client); + PrintToConsoleAll("%N: Giving random secondary / %d", secondaryWeapons.Length, client); + if(secondaryWeapons.Length > 0) { + secondaryWeapons.GetString(GetRandomInt(0, secondaryWeapons.Length - 1), weaponName, sizeof(weaponName)); + GiveWeapon(client, weaponName, 6.5, 1); + } + if(lowestClient > 0) { float pos[3]; GetClientAbsOrigin(lowestClient, pos); TeleportEntity(client, pos, NULL_VECTOR, NULL_VECTOR); } - delete tier2Weapons; - float pos[3]; - if(L4D2_IsValidWeapon(weaponName)) { - int wpn = CreateEntityByName(weaponName); - DispatchSpawn(wpn); - SetEntProp(wpn, Prop_Send, "m_iClip1", L4D2_GetIntWeaponAttribute(weaponName, L4D2IWA_ClipSize)); - L4D_SetReserveAmmo(client, wpn, L4D2_GetIntWeaponAttribute(weaponName, L4D2IWA_Bullets)); - GetClientAbsOrigin(client, pos); - TeleportEntity(wpn, pos, NULL_VECTOR, NULL_VECTOR); - DataPack pack; - CreateDataTimer(0.2, Timer_GiveWeapon, pack); - pack.WriteCell(userid); - pack.WriteCell(wpn); - } else { - LogError("EPI: INVALID WEAPON: %s for %N", weaponName, client); - } + delete tier2Weapons; + delete tier1Weapons; + delete secondaryWeapons; + return Plugin_Handled; } + +void GiveWeapon(int client, const char[] weaponName, float delay = 0.3, int clearSlot = -1) { + if(clearSlot > 0) { + int oldWpn = GetPlayerWeaponSlot(client, clearSlot); + if(oldWpn != -1) { + AcceptEntityInput(oldWpn, "Kill"); + } + } + PrintToServer("%N: Giving %s", client, weaponName); + PrintToConsoleAll("%N: Giving %s", client, weaponName); + DataPack pack; + CreateDataTimer(delay, Timer_GiveWeapon, pack); + pack.WriteCell(GetClientUserId(client)); + pack.WriteString(weaponName); +} + public Action Timer_GiveWeapon(Handle h, DataPack pack) { pack.Reset(); int userid = pack.ReadCell(); - int wpn = pack.ReadCell(); int client = GetClientOfUserId(userid); if(client > 0) { - EquipPlayerWeapon(client, wpn); + char wpnName[32]; + pack.ReadString(wpnName, sizeof(wpnName)); + CheatCommand(client, "give", wpnName, ""); } + return Plugin_Handled; } -public Action Timer_RemoveInvincibility(Handle h, int client) { - SDKUnhook(client, SDKHook_OnTakeDamage, OnInvincibleDamageTaken); +public Action Timer_RemoveInvincibility(Handle h, int userid) { + int client = GetClientOfUserId(userid); + if(client > 0) { + SetEntProp(client, Prop_Send, "m_iHealth", 100); + SDKUnhook(client, SDKHook_OnTakeDamage, OnInvincibleDamageTaken); + } return Plugin_Handled; } public Action OnInvincibleDamageTaken(int victim, int& attacker, int& inflictor, float& damage, int& damagetype, int& weapon, float damageForce[3], float damagePosition[3]) { @@ -875,13 +943,13 @@ public void OnMapStart() { GiveStartingKits(); } isFailureRound = false; - }else if(!L4D_IsFirstMapInScenario()) { + } else if(!L4D_IsFirstMapInScenario()) { //Re-set value incase it reset. //hMinPlayers.IntValue = abmExtraCount; currentChapter++; - }else if(L4D_IsMissionFinalMap()) { + } else if(L4D_IsMissionFinalMap()) { //Add extra kits for finales - static char curMap[64]; + char curMap[64]; GetCurrentMap(curMap, sizeof(curMap)); if(StrEqual(curMap, "c4m5_milltown_escape")) { @@ -932,6 +1000,12 @@ public void OnMapStart() { L4D2_RunScript(HUD_SCRIPT_CLEAR); } +public void OnConfigsExecuted() { + if(hUpdateMinPlayers.BoolValue && hMinPlayers != null) { + hMinPlayers.IntValue = abmExtraCount; + } +} + public void OnMapEnd() { for(int i = 0; i < ammoPacks.Length; i++) { @@ -947,7 +1021,6 @@ public void OnMapEnd() { ammoPacks.Clear(); playersLoadedIn = 0; abmExtraCount = 4; - PrintToServer("[EPI] Stopping timer for map ending"); delete updateHudTimer; } @@ -968,7 +1041,7 @@ public void EntityOutput_OnStartTouchSaferoom(const char[] output, int caller, i int extraPlayers = abmExtraCount - 4; float averageTeamHP = GetAverageHP(); if(averageTeamHP <= 30.0) extraPlayers += (extraPlayers / 2); //if perm. health < 30, give an extra 4 on top of the extra - else if(averageTeamHP <= 50.0) extraPlayers = (extraPlayers / 3); //if the team's average health is less than 50 (permament) then give another + else if(averageTeamHP <= 50.0) extraPlayers += (extraPlayers / 3); //if the team's average health is less than 50 (permament) then give another //Chance to get an extra kit (might need to be nerfed or restricted to > 50 HP) if(GetRandomFloat() < 0.3 && averageTeamHP <= 80.0) ++extraPlayers; @@ -1217,11 +1290,12 @@ public Action Timer_UpdateHud(Handle h) { Format(players, sizeof(players), "%s%s %s\\n", players, prefix, data); } } - if(hEPIHudState.IntValue == 3) { + if(hEPIHudState.IntValue != 3) { + RunVScriptLong(HUD_SCRIPT_DATA, players); + } else { PrintHintTextToAll("DEBUG HUD TIMER"); RunVScriptLong(HUD_SCRIPT_DEBUG, players); - } else - RunVScriptLong(HUD_SCRIPT_DATA, players); + } return Plugin_Continue; } @@ -1267,6 +1341,12 @@ public void PopulateItems() { int spawner, count; for(int i = 0; i < sizeof(cabinets); i++) { if(cabinets[i].id == 0) break; + GetEntityClassname(cabinets[i].id, classname, sizeof(classname)); + if(!StrEqual(classname, "prop_health_cabinet")) { + PrintToServer("Cabinet %d (ent %d) is not a valid entity, is %s. Skipping", i, cabinets[i].id, classname); + cabinets[i].id = 0; + continue; + } int spawnCount = GetEntProp(cabinets[i].id, Prop_Data, "m_pillCount"); int extraAmount = RoundToCeil(float(abmExtraCount) * (float(spawnCount)/4.0) - spawnCount); bool hasASpawner; @@ -1275,6 +1355,7 @@ public void PopulateItems() { for(int block = 0; block < CABINET_ITEM_BLOCKS; block++) { spawner = cabinets[i].items[block]; if(spawner > 0) { + if(!HasEntProp(spawner, Prop_Data, "m_itemCount")) continue; hasASpawner = true; count = GetEntProp(spawner, Prop_Data, "m_itemCount") + 1; SetEntProp(spawner, Prop_Data, "m_itemCount", count); diff --git a/scripting/l4d2_feedthetrolls.sp b/scripting/l4d2_feedthetrolls.sp index 95508d8..149affc 100644 --- a/scripting/l4d2_feedthetrolls.sp +++ b/scripting/l4d2_feedthetrolls.sp @@ -84,7 +84,7 @@ public void OnPluginStart() { hBotReverseFFDefend.AddChangeHook(Change_BotDefend); RegAdminCmd("sm_ftl", Command_ListTheTrolls, ADMFLAG_GENERIC, "Lists all the trolls currently ingame."); - RegAdminCmd("sm_ftm", Command_ListModes, ADMFLAG_KICK, "Lists all the troll modes and their description"); + RegAdminCmd("sm_ftm", Command_ListModes, ADMFLAG_GENERIC, "Lists all the troll modes and their description"); RegAdminCmd("sm_ftr", Command_ResetUser, ADMFLAG_GENERIC, "Resets user of any troll effects."); RegAdminCmd("sm_fta", Command_ApplyUser, ADMFLAG_KICK, "Apply a troll mod to a player, or shows menu if no parameters."); RegAdminCmd("sm_ftas", Command_ApplyUserSilent, ADMFLAG_ROOT, "Apply a troll mod to a player, or shows menu if no parameters."); diff --git a/scripting/l4d2_hats.sp b/scripting/l4d2_hats.sp new file mode 100644 index 0000000..f59fee5 --- /dev/null +++ b/scripting/l4d2_hats.sp @@ -0,0 +1,1252 @@ +#pragma semicolon 1 +#pragma newdecls required + +#define PLUGIN_VERSION "1.0" +#define PLAYER_HAT_REQUEST_COOLDOWN 10 +static float EMPTY_ANG[3] = { 0.0, 0.0, 0.0 }; + +#include +#include +#include +#include +#include +#include + +enum hatFlags { + HAT_NONE = 0, + HAT_POCKET = 1, + HAT_REVERSED = 2, + HAT_COMMANDABLE = 4, + HAT_RAINBOW = 8 +} +enum struct HatData { + int entity; // The entity REFERENCE + int visibleEntity; // Thee visible entity REF + + // Original data for entity + float orgPos[3]; + float orgAng[3]; + float offset[3]; + float angles[3]; + int collisionGroup; + int solidType; + int moveType; + + float scale; + int flags; + float rainbowColor[3]; + int rainbowTicks; + bool rainbowReverse; +} +enum hatFeatures { + HatConfig_None = 0, + HatConfig_PlayerHats = 1, + HatConfig_RespectAdminImmunity = 2, + HatConfig_FakeHat = 4, + HatConfig_NoSaferoomHats = 8, + HatConfig_PlayerHatConsent = 16, + HatConfig_InfectedHats = 32, + HatConfig_ReversedHats = 64, + HatConfig_DeleteThrownHats = 128 +} + +HatData hatData[MAXPLAYERS+1]; +int lastHatRequestTime[MAXPLAYERS+1]; +bool tempGod[MAXPLAYERS+1]; + +Cookie noHatVictimCookie; +ConVar cvar_sm_hats_enabled; +ConVar cvar_sm_hats_flags; +ConVar cvar_sm_hat_rainbow_speed; +ConVar cvar_sm_hats_blacklist_enabled; + +#define MAX_FORBIDDEN_CLASSNAMES 12 +static char FORBIDDEN_CLASSNAMES[MAX_FORBIDDEN_CLASSNAMES][] = { + "prop_door_rotating_checkpoint", + "env_physics_blocker", + "env_player_blocker", + "func_brush", + "func_simpleladder", + "prop_door_rotating", + "func_button", + "func_elevator", + "func_button_timed", + // "func_movelinear", + // "infected", + "func_lod", + "func_door", + "prop_ragdoll" +}; + +#define MAX_REVERSE_CLASSNAMES 2 +static char REVERSE_CLASSNAMES[MAX_REVERSE_CLASSNAMES][] = { + "infected", + "func_movelinear" +}; + +public Plugin myinfo = +{ + name = "L4D2 Hats", + author = "jackzmc", + description = "", + version = PLUGIN_VERSION, + url = "https://github.com/Jackzmc/sourcemod-plugins" +}; + +ArrayList NavAreas; + +public void OnPluginStart() { + EngineVersion g_Game = GetEngineVersion(); + if(g_Game != Engine_Left4Dead && g_Game != Engine_Left4Dead2) { + SetFailState("This plugin is for L4D/L4D2 only."); + } + + LoadTranslations("common.phrases"); + HookEvent("player_entered_checkpoint", OnEnterSaferoom); + HookEvent("player_bot_replace", Event_PlayerOutOfIdle ); + HookEvent("bot_player_replace", Event_PlayerToIdle); + + RegConsoleCmd("sm_hat", Command_DoAHat, "Hats"); + + cvar_sm_hats_blacklist_enabled = CreateConVar("sm_hats_blacklist_enabled", "1", "Is the prop blacklist enabled", FCVAR_NONE, true, 0.0, true, 1.0); + cvar_sm_hats_enabled = CreateConVar("sm_hats_enabled", "1.0", "Enable hats.\n0=OFF, 1=Admins Only, 2=Any", FCVAR_NONE, true, 0.0, true, 2.0); + cvar_sm_hats_enabled.AddChangeHook(Event_HatsEnableChanged); + cvar_sm_hats_flags = CreateConVar("sm_hats_features", "217", "Toggle certain features. Add bits together\n1 = Player Hats\n2 = Respect Admin Immunity\n4 = Create a fake hat for hat wearer to view instead, and for yeeting\n8 = No saferoom hats\n16 = Player hatting requires victim consent\n32 = Infected Hats\n64 = Reverse hats", FCVAR_CHEAT, true, 0.0); + cvar_sm_hat_rainbow_speed = CreateConVar("sm_hats_rainbow_speed", "1", "Speed of rainbow", FCVAR_NONE, true, 0.0); + + noHatVictimCookie = new Cookie("hats_no_target", "Disables other players from making you their hat", CookieAccess_Public); + noHatVictimCookie.SetPrefabMenu(CookieMenu_OnOff_Int, "Disable player hats for self", OnLocalPlayerHatCookieSelect); +} + +//////////////////////////////////////////////////////////////// + +public Action Command_DoAHat(int client, int args) { + int hatter = GetHatter(client); + if(hatter > 0) { + ClearHat(hatter, HasFlag(hatter, HAT_REVERSED)); + PrintToChat(hatter, "[Hats] %N has unhatted themselves", client); + return Plugin_Handled; + } + + AdminId adminId = GetUserAdmin(client); + if(cvar_sm_hats_enabled.IntValue == 1) { + if(adminId == INVALID_ADMIN_ID) { + PrintToChat(client, "[Hats] Hats are for admins only"); + return Plugin_Handled; + } + } else if(!adminId.HasFlag(Admin_Cheats)) { + PrintToChat(client, "[Hats] You do not have permission"); + return Plugin_Handled; + } + if(cvar_sm_hats_enabled.IntValue == 0) { + ReplyToCommand(client, "[Hats] Hats are disabled"); + return Plugin_Handled; + } else if(GetClientTeam(client) != 2 && ~cvar_sm_hats_flags.IntValue & view_as(HatConfig_InfectedHats)) { + PrintToChat(client, "[Hats] Hats are only available for survivors."); + return Plugin_Handled; + } + + int oldVisible = EntRefToEntIndex(hatData[client].visibleEntity); + if(oldVisible > 0) { + AcceptEntityInput(oldVisible, "Kill"); + hatData[client].visibleEntity = INVALID_ENT_REFERENCE; + } + + int entity = GetHat(client); + if(entity > 0) { + char arg[4]; + GetCmdArg(1, arg, sizeof(arg)); + // int orgEntity = entity; + if(HasFlag(client, HAT_REVERSED)) { + entity = client; + } + ClearParent(entity); + + if(arg[0] == 's') { + char sizeStr[4]; + GetCmdArg(2, sizeStr, sizeof(sizeStr)); + float size = StringToFloat(sizeStr); + if(HasEntProp(entity, Prop_Send, "m_flModelScale")) + SetEntPropFloat(entity, Prop_Send, "m_flModelScale", size); + else + PrintHintText(client, "Hat does not support scaling"); + int child = -1; + while((child = FindEntityByClassname(child, "*")) != INVALID_ENT_REFERENCE ) + { + int parent = GetEntPropEnt(child, Prop_Data, "m_pParent"); + if(parent == entity && HasEntProp(child, Prop_Send, "m_flModelScale")) { + if(HasEntProp(child, Prop_Send, "m_flModelScale")) { + PrintToConsole(client, "found child %d for %d", child, entity); + SetEntPropFloat(child, Prop_Send, "m_flModelScale", size); + } else { + PrintToConsole(client, "Child %d for %d cannot be scaled", child, entity); + } + + } + } + + EquipHat(client, entity); + return Plugin_Handled; + } else if(arg[0] == 'r' && arg[1] == 'a') { + SetFlag(client, HAT_RAINBOW); + hatData[client].rainbowTicks = 0; + hatData[client].rainbowReverse = false; + hatData[client].rainbowColor[0] = 0.0; + hatData[client].rainbowColor[1] = 255.0; + hatData[client].rainbowColor[2] = 255.0; + EquipHat(client, entity); + ReplyToCommand(client, "Rainbow hats enabled"); + return Plugin_Handled; + } + + + AcceptEntityInput(entity, "EnableMotion"); + SetEntProp(entity, Prop_Send, "m_CollisionGroup", hatData[client].collisionGroup); + SetEntProp(entity, Prop_Send, "m_nSolidType", hatData[client].solidType); + + + int visibleEntity = EntRefToEntIndex(hatData[client].visibleEntity); + SDKUnhook(entity, SDKHook_SetTransmit, OnRealTransmit); + if(visibleEntity > 0) { + SDKUnhook(visibleEntity, SDKHook_SetTransmit, OnVisibleTransmit); + AcceptEntityInput(visibleEntity, "Kill"); + hatData[client].visibleEntity = INVALID_ENT_REFERENCE; + } + tempGod[client] = true; + + CreateTimer(2.0, Timer_RemoveGod, GetClientUserId(client)); + if(entity <= MaxClients) { + tempGod[entity] = true; + hatData[client].orgAng[2] = 0.0; + CreateTimer(2.5, Timer_RemoveGod, GetClientUserId(entity)); + SetEntityMoveType(entity, MOVETYPE_WALK); + } else { + SetEntProp(entity, Prop_Send, "movetype", hatData[client].moveType); + } + + if(arg[0] == 'y') { + GetClientEyeAngles(client, hatData[client].orgAng); + GetClientAbsOrigin(client, hatData[client].orgPos); + hatData[client].orgPos[2] += 45.0; + float ang[3], vel[3]; + + GetClientEyeAngles(client, ang); + ang[2] = 0.0; + if(ang[0] > 0.0) ang[0] = -ang[0]; + // ang[0] = -45.0; + + vel[0] = Cosine(DegToRad(ang[1])) * 1500.0; + vel[1] = Sine(DegToRad(ang[1])) * 1500.0; + vel[2] = 700.0; + if(entity <= MaxClients) { + TeleportEntity(entity, hatData[client].orgPos, hatData[client].orgAng, NULL_VECTOR); + L4D2_CTerrorPlayer_Fling(entity, client, vel); + } /*else if(visibleEntity > 0) { + PrintToChat(client, "Yeeting fake car..."); + ClearParent(visibleEntity); + + SetEntProp(visibleEntity, Prop_Send, "movetype", 6); + + AcceptEntityInput(visibleEntity, "EnableMotion"); + + TeleportEntity(entity, OUT_OF_BOUNDS, hatData[client].orgAng, NULL_VECTOR); + TeleportEntity(visibleEntity, hatData[client].orgPos, hatData[client].orgAng, vel); + DataPack pack; + CreateDataTimer(4.0, Timer_PropYeetEnd, pack); + pack.WriteCell(hatData[client].entity); + pack.WriteCell(hatData[client].visibleEntity); + pack.WriteCell(hatData[client].collisionGroup); + pack.WriteCell(hatData[client].solidType); + pack.WriteCell(hatData[client].moveType); + hatData[client].visibleEntity = INVALID_ENT_REFERENCE; + hatData[client].entity = INVALID_ENT_REFERENCE; + } */ else { + TeleportEntity(entity, hatData[client].orgPos, hatData[client].orgAng, vel); + CreateTimer(6.0, Timer_PropSleep, hatData[client].entity); + } + PrintToChat(client, "[Hats] Yeeted hat"); + hatData[client].entity = INVALID_ENT_REFERENCE; + return Plugin_Handled; + } else if(arg[0] == 'c') { + if(GetCursorLocation(client, hatData[client].orgPos)) { + GlowPoint(hatData[client].orgPos); + TeleportEntity(entity, hatData[client].orgPos, hatData[client].orgAng, NULL_VECTOR); + PrintToChat(client, "[Hats] Placed hat on cursor."); + } else { + PrintToChat(client, "[Hats] Could not find cursor position."); + } + } else if(arg[0] == 'p' || (entity <= MaxClients && arg[0] != 'r')) { + if(!HasFlag(client, HAT_REVERSED)) { + + GetClientEyePosition(client, hatData[client].orgPos); + GetClientEyeAngles(client, hatData[client].orgAng); + GetHorizontalPositionFromOrigin(hatData[client].orgPos, hatData[client].orgAng, 80.0, hatData[client].orgPos); + hatData[client].orgAng[0] = 0.0; + // GlowPoint(hatData[client].orgPos, 2.0); + float mins[3]; + GetEntPropVector(entity, Prop_Data, "m_vecMins", mins); + // GlowPoint(hatData[client].orgPos, 3.0); + hatData[client].orgPos[2] += mins[2]; + FindGround(hatData[client].orgPos, hatData[client].orgPos); + // GlowPoint(hatData[client].orgPos); + } + + + /*GetGroundTopDown(client, hatData[client].orgPos, hatData[client].orgAng); + // GetGround(client, hatData[client].orgPos, hatData[client].orgAng); + float mins[3]; + GetEntPropVector(entity, Prop_Data, "m_vecMins", mins); + hatData[client].orgPos[2] -= mins[2]; + GetHorizontalPositionFromOrigin(hatData[client].orgPos, hatData[client].orgAng, 80.0, hatData[client].orgPos);*/ + TeleportEntity(entity, hatData[client].orgPos, hatData[client].orgAng, NULL_VECTOR); + // hatData[client].orgPos[2] = mins[2]; + PrintToChat(client, "[Hats] Placed hat in front of you."); + } else { + PrintToChat(client, "[Hats] Restored hat to its original position."); + } + + if(hatData[client].scale > 0 && HasEntProp(entity, Prop_Send, "m_flModelScale")) + SetEntPropFloat(entity, Prop_Send, "m_flModelScale", hatData[client].scale); + + AcceptEntityInput(entity, "Sleep"); + TeleportEntity(entity, hatData[client].orgPos, hatData[client].orgAng, NULL_VECTOR); + hatData[client].entity = INVALID_ENT_REFERENCE; + } else { + int flags = 0; + entity = GetLookingEntity(client, Filter_IgnorePlayer); //GetClientAimTarget(client, false); + if(entity <= 0) { + PrintCenterText(client, "[Hats] No entity found"); + } else { + if(args > 0) { + char arg[4]; + GetCmdArg(1, arg, sizeof(arg)); + if(arg[0] == 'r') { + flags |= view_as(HAT_REVERSED); + } + } + int parent = GetEntPropEnt(entity, Prop_Data, "m_hParent"); + if(parent > 0 && entity > MaxClients) { + PrintToConsole(client, "[Hats] Selected a child entity, selecting parent (child %d -> parent %d)", entity, parent); + entity = parent; + } else if(entity <= MaxClients) { + if(GetClientTeam(entity) != 2 && ~cvar_sm_hats_flags.IntValue & view_as(HatConfig_InfectedHats)) { + PrintToChat(client, "[Hats] Cannot make enemy a hat... it's dangerous"); + return Plugin_Handled; + } else if(!IsPlayerAlive(entity) || GetEntProp(entity, Prop_Send, "m_isHangingFromLedge") || L4D_IsPlayerCapped(entity)) { + PrintToChat(client, "[Hats] Player is either dead, hanging or in the process of dying."); + return Plugin_Handled; + } else if(EntRefToEntIndex(hatData[entity].entity) == client) { + PrintToChat(client, "[Hats] Woah you can't be making a black hole, jesus be careful."); + return Plugin_Handled; + } else if(~cvar_sm_hats_flags.IntValue & view_as(HatConfig_PlayerHats)) { + PrintToChat(client, "[Hats] Player hats are disabled"); + return Plugin_Handled; + } else if(!CanTarget(entity)) { + PrintToChat(client, "[Hats] Player has disabled player hats for themselves."); + return Plugin_Handled; + } else if(!CanTarget(client)) { + PrintToChat(client, "[Hats] Cannot hat a player when you have player hats turned off"); + return Plugin_Handled; + } else if(cvar_sm_hats_flags.IntValue & view_as(HatConfig_RespectAdminImmunity)) { + AdminId targetAdmin = GetUserAdmin(entity); + AdminId clientAdmin = GetUserAdmin(client); + if(targetAdmin != INVALID_ADMIN_ID && clientAdmin == INVALID_ADMIN_ID) { + PrintToChat(client, "[Hats] Cannot target an admin"); + return Plugin_Handled; + } else if(targetAdmin != INVALID_ADMIN_ID && targetAdmin.ImmunityLevel > clientAdmin.ImmunityLevel) { + PrintToChat(client, "[Hats] Cannot target %N, they are immune to you", entity); + return Plugin_Handled; + } + } + if(!IsFakeClient(entity) && cvar_sm_hats_flags.IntValue & view_as(HatConfig_PlayerHatConsent) && ~flags & view_as(HAT_REVERSED)) { + int lastRequestDiff = GetTime() - lastHatRequestTime[client]; + if(lastRequestDiff < PLAYER_HAT_REQUEST_COOLDOWN) { + PrintToChat(client, "[Hats] Player hat under %d seconds cooldown", lastRequestDiff); + return Plugin_Handled; + } + + Menu menu = new Menu(HatConsentHandler); + menu.SetTitle("%N: Requests to hat you", client); + char id[8]; + Format(id, sizeof(id), "%d|1", GetClientUserId(client)); + menu.AddItem(id, "Accept"); + Format(id, sizeof(id), "%d|0", GetClientUserId(client)); + menu.AddItem(id, "Reject"); + menu.Display(entity, 12); + PrintHintText(client, "Sent hat request to %N", entity); + PrintToChat(entity, "[Hats] %N requests to hat you, 1 to Accept, 2 to Reject. Expires in 12 seconds.", client); + return Plugin_Handled; + } + } + + + char classname[64]; + GetEntityClassname(entity, classname, sizeof(classname)); + if(cvar_sm_hats_blacklist_enabled.BoolValue) { + for(int i = 0; i < MAX_FORBIDDEN_CLASSNAMES; i++) { + if(StrEqual(FORBIDDEN_CLASSNAMES[i], classname)) { + PrintToChat(client, "[Hats] Entity (%s) is a blacklisted entity. Naughty.", classname); + return Plugin_Handled; + } + } + } + + if(~flags & view_as(HAT_REVERSED)) { + for(int i = 0; i < MAX_REVERSE_CLASSNAMES; i++) { + if(StrEqual(REVERSE_CLASSNAMES[i], classname)) { + flags |= view_as(HAT_REVERSED); + break; + } + } + } + EquipHat(client, entity, classname, flags); + } + } + return Plugin_Handled; +} + +public int HatConsentHandler(Menu menu, MenuAction action, int target, int param2) { + if (action == MenuAction_Select) { + static char info[8]; + menu.GetItem(param2, info, sizeof(info)); + static char str[2][8]; + ExplodeString(info, "|", str, 2, 8, false); + int activator = GetClientOfUserId(StringToInt(str[0])); + int hatAction = StringToInt(str[1]); + if(activator == 0) { + ReplyToCommand(target, "Player has gone idle or left"); + return 0; + } else if(hatAction == 1) { + EquipHat(activator, target, "player", 0); + } else { + ClientCommand(activator, "play player/orch_hit_csharp_short.wav"); + PrintHintText(activator, "%N refused your request", target); + lastHatRequestTime[activator] = GetTime(); + } + } else if (action == MenuAction_End) + delete menu; + return 0; +} + +/////////////////////////////////////////////////////////////////////////////////////////////// + +public void Event_ItemPickup(Event event, const char[] name, bool dontBroadcast) { + int client = GetClientOfUserId(event.GetInt("userid")); + for(int slot = 0; slot <= 5; slot++) { + int wpn = GetPlayerWeaponSlot(client, slot); + for(int i = 1; i <= MaxClients; i++) { + if(i != client && IsClientConnected(i) && IsClientInGame(i) && !IsFakeClient(i)) { + int hat = GetHat(i); + if(hat == wpn) { + + break; + } + } + } + } +} + +public void OnEnterSaferoom(Event event, const char[] name, bool dontBroadcast) { + int userid = event.GetInt("userid"); + int client = GetClientOfUserId(userid); + if(cvar_sm_hats_flags.IntValue & view_as(HatConfig_NoSaferoomHats) && client > 0 && client <= MaxClients && IsValidClient(client) && GetClientTeam(client) == 2) { + if(HasHat(client)) { + if(!IsHatAllowed(client)) { + PrintToChat(client, "[Hats] Hat is not allowed in the saferoom and has been returned"); + ClearHat(client, true); + } else { + CreateTimer(2.0, Timer_PlaceHat, userid); + // float maxflow = L4D2Direct_GetMapMaxFlowDistance() + // L4D_GetNavArea_SpawnAttributes + // L4D_GetNavAreaPos + } + } + } +} + +Action Timer_PlaceHat(Handle h, int userid) { + int client = GetClientOfUserId(userid); + if(client > 0 && HasHat(client)) { + GetClientEyePosition(client, hatData[client].orgPos); + GetClientEyeAngles(client, hatData[client].orgAng); + GetHorizontalPositionFromOrigin(hatData[client].orgPos, hatData[client].orgAng, 80.0, hatData[client].orgPos); + hatData[client].orgAng[0] = 0.0; + PrintToChat(client, "[Hats] Hat has been placed down"); + ClearHat(client, true); + } + return Plugin_Handled; +} +void GlowPoint(const float pos[3], float lifetime = 5.0) { + #if defined DEBUG_GLOW + PrecacheModel("models/props_fortifications/orange_cone001_reference.mdl"); + int entity = CreateEntityByName("prop_dynamic"); + DispatchKeyValue(entity, "disableshadows", "1"); + DispatchKeyValue(entity, "model", "models/props_fortifications/orange_cone001_reference.mdl"); + TeleportEntity(entity, pos, NULL_VECTOR, NULL_VECTOR); + DispatchSpawn(entity); + CreateTimer(lifetime, Timer_Kill, entity); + #endif +} + +Action Timer_Kill(Handle h, int entity) { + if(IsValidEntity(entity)) + AcceptEntityInput(entity, "Kill"); + return Plugin_Handled; +} + +stock bool GetCursorLocation(int client, float outPos[3]) { + float start[3], angle[3], ceilPos[3], wallPos[3], normal[3]; + GetClientEyePosition(client, start); + GetClientEyeAngles(client, angle); + TR_TraceRayFilter(start, angle, MASK_SOLID, RayType_Infinite, Filter_NoPlayers, client); + if(TR_DidHit()) { + TR_GetEndPosition(outPos); + TR_GetPlaneNormal(null, normal); + if(normal[2] < 0.1) { + + // Find a suitable position above + start[0] = outPos[0]; + start[1] = outPos[1]; + start[2] = outPos[2] += 100.0; + TR_TraceRayFilter(outPos, start, MASK_SOLID, RayType_EndPoint, TraceEntityFilterPlayer, client); + bool ceilCollided = TR_DidHit(); + bool ceilOK = !TR_AllSolid(); + TR_GetEndPosition(ceilPos); + float distCeil = GetVectorDistance(outPos, ceilPos, true); + // Find a suitable position backwards + angle[0] = 70.0; + angle[1] += 180.0; + TR_TraceRayFilter(outPos, angle, MASK_SOLID, RayType_Infinite, TraceEntityFilterPlayer, client); + bool wallCollided = TR_DidHit(); + TR_GetEndPosition(wallPos); + float distWall = GetVectorDistance(outPos, wallPos, true); + + if(ceilCollided && wallCollided) + + if(wallCollided && distWall < 62500) { + outPos = wallPos; + } else if(ceilOK) { + outPos = ceilPos; + } + + // if(TR_DidHit()) { + // PrintToChat(client, "Wall: Collided %f -> %f | %f", outPos[2], wallPos[2], distWall); + // if(ceilOk) { + // float distWall = GetVectorDistance(outPos, wallPos, true); + // if(distCeil < distWall) { + // outPos = ceilPos; + // } else { + // outPos = wallPos; + // } + // } else { + // outPos = wallPos; + // } + // } else if(ceilOk) { + // outPos = ceilPos; + // } + } + + return true; + } else { + return false; + } +} + +Action Timer_RemountHats(Handle h) { + float p1[3], p2[3]; + for(int i = 1; i <= MaxClients; i++) { + int entity = GetHat(i); + if(IsClientConnected(i) && IsClientInGame(i) && !HasFlag(i, HAT_POCKET)) { + int visibleEntity = EntRefToEntIndex(hatData[i].visibleEntity); + if(entity > 0) { + GetClientAbsOrigin(i, p1); + GetEntPropVector(entity, Prop_Send, "m_vecOrigin", p2); + if(GetVectorDistance(p1, p2) > 40000.0) { + ClearParent(entity); + if(visibleEntity > 0) { + ClearParent(visibleEntity); + } + RequestFrame(Frame_Remount, i); + } + } else if(visibleEntity > 0) { + AcceptEntityInput(visibleEntity, "Kill"); + hatData[i].visibleEntity = INVALID_ENT_REFERENCE; + } + } + } + return Plugin_Handled; +} + +void Frame_Remount(int i) { + int entity = GetHat(i); + if(entity == -1) return; + SetParent(entity, i); + SetParentAttachment(entity, "eyes", false); + SetParentAttachment(entity, "eyes", true); + + int visibleEntity = EntRefToEntIndex(hatData[i].visibleEntity); + if(visibleEntity > 0) { + SetParent(visibleEntity, i); + SetParentAttachment(visibleEntity, "eyes", false); + SetParentAttachment(visibleEntity, "eyes", true); + } +} + +Action Timer_PropSleep(Handle h, int ref) { + if(IsValidEntity(ref)) { + if(cvar_sm_hats_flags.IntValue & view_as(HatConfig_DeleteThrownHats)) { + // Don't delete if someone has hatted it (including ourself): + for(int i = 1; i <= MaxClients; i++) { + if(IsClientConnected(i) && IsClientInGame(i) && hatData[i].entity == ref) { + return Plugin_Handled; + } + } + char classname[64]; + GetEntityClassname(ref, classname, sizeof(classname)); + if(StrContains(classname, "prop_") > -1) { + AcceptEntityInput(ref, "Kill"); + return Plugin_Handled; + } + } + AcceptEntityInput(ref, "Sleep"); + } + return Plugin_Handled; +} + +Action Timer_PropYeetEnd(Handle h, DataPack pack) { + pack.Reset(); + int realEnt = EntRefToEntIndex(pack.ReadCell()); + int visibleEnt = EntRefToEntIndex(pack.ReadCell()); + // if(IsValidEntity(visibleEnt)) { + // float pos[3], ang[3]; + // GetEntPropVector(visibleEnt, Prop_Send, "m_vecOrigin", pos); + // GetEntPropVector(visibleEnt, Prop_Send, "m_angRotation", ang); + // AcceptEntityInput(visibleEnt, "kill"); + // if(IsValidEntity(realEnt)) { + // TeleportEntity(realEnt, pos, ang, NULL_VECTOR); + // } + // } + if(IsValidEntity(realEnt)) { + SetEntProp(realEnt, Prop_Send, "m_CollisionGroup", pack.ReadCell()); + SetEntProp(realEnt, Prop_Send, "m_nSolidType", pack.ReadCell()); + SetEntProp(realEnt, Prop_Send, "movetype", pack.ReadCell()); + AcceptEntityInput(realEnt, "Sleep"); + } + + return Plugin_Handled; +} + +Action Timer_RemoveGod(Handle h, int userid) { + int client = GetClientOfUserId(userid); + if(client) { + tempGod[client] = false; + SDKUnhook(client, SDKHook_OnTakeDamageAlive, OnTakeDamageAlive); + } + return Plugin_Handled; +} + + +public void Event_PlayerOutOfIdle(Event event, const char[] name, bool dontBroadcast) { + int bot = GetClientOfUserId(event.GetInt("bot")); + int client = GetClientOfUserId(event.GetInt("player")); + if(GetClientTeam(client) != 2) return; + float pos[3]; + for(int i = 1; i <= MaxClients; i++) { + if(hatData[i].entity == bot) { + GetClientAbsOrigin(i, pos); + ClearHat(i); + hatData[i].entity = EntIndexToEntRef(client); + TeleportEntity(hatData[i].entity, pos, hatData[i].orgAng, NULL_VECTOR); + return; + } + } + PrintToServer("Fixing hatted player to bot: Bot %N to client %N", bot, client); + // Incase they removed hat right after, manually fix them + ClearParent(client); + ClearParent(bot); + SetEntProp(client, Prop_Send, "m_CollisionGroup", 5); + SetEntProp(client, Prop_Send, "m_nSolidType", 2); + SetEntityMoveType(client, MOVETYPE_WALK); + RequestFrame(Frame_FixClient, client); + // SetEntProp(client, Prop_Send, "movetype", MOVETYPE_ISOMETRIC); +} + +void Frame_FixClient(int client) { + if(IsClientConnected(client) && GetClientTeam(client) == 2) { + ClearParent(client); + SetEntProp(client, Prop_Send, "m_CollisionGroup", 5); + SetEntProp(client, Prop_Send, "m_nSolidType", 2); + SetEntityMoveType(client, MOVETYPE_WALK); + } + // SetEntProp(client, Prop_Send, "movetype", MOVETYPE_ISOMETRIC); +} +public void Event_PlayerToIdle(Event event, const char[] name, bool dontBroadcast) { + int bot = GetClientOfUserId(event.GetInt("bot")); + int client = GetClientOfUserId(event.GetInt("player")); + if(GetClientTeam(client) != 2) return; + float pos[3]; + for(int i = 1; i <= MaxClients; i++) { + if(hatData[i].entity == client) { + GetClientAbsOrigin(i, pos); + ClearHat(i); + hatData[i].entity = EntIndexToEntRef(bot); + TeleportEntity(hatData[i].entity, pos, hatData[i].orgAng, NULL_VECTOR); + return; + } + } + // Incase they removed hat right after, manually fix them + ClearParent(bot); + SetEntProp(bot, Prop_Send, "m_CollisionGroup", 5); + SetEntProp(bot, Prop_Send, "m_nSolidType", 2); + SetEntityMoveType(bot, MOVETYPE_WALK); +} + +void OnLocalPlayerHatCookieSelect(int client, CookieMenuAction action, any info, char[] buffer, int maxlen) { + if(action != CookieMenuAction_SelectOption) return; + bool value = StringToInt(buffer) == 1; + if(value) { + for(int i = 1; i <= MaxClients; i++) { + int hat = GetHat(i); + if(hat == client) { + ClearHat(i, false); + PrintToChat(i, "%N has blocked player hats for themselves", client); + } + } + ClearHat(client, false); + } +} + +public void Event_HatsEnableChanged(ConVar convar, const char[] sOldValue, const char[] sNewValue) { + if(convar.IntValue == 0) { + ClearHats(); + } else if(convar.IntValue == 1) { + for(int i = 1; i <= MaxClients; i++) { + if(IsClientConnected(i) && GetUserAdmin(i) == INVALID_ADMIN_ID && HasHat(i)) { + ClearHat(i, false); + } + } + } +} + +ArrayList GetSpawnLocations() { + ArrayList list = new ArrayList(); + ArrayList newList = new ArrayList(); + L4D_GetAllNavAreas(list); + for(int i = 0; i < list.Length; i++) { + Address nav = list.Get(i); + if(L4D_GetNavArea_SpawnAttributes(nav) & NAV_SPAWN_THREAT) { + newList.Push(nav); + } + } + delete list; + PrintToServer("[Hats] Got %d valid locations", newList.Length); + return newList; +} + +void ChooseRandomPosition(float pos[3], int ignoreClient = 0) { + if(NavAreas.Length > 0 && GetURandomFloat() > 0.5) { + int nav = NavAreas.Get(GetURandomInt() % (NavAreas.Length - 1)); + L4D_FindRandomSpot(nav, pos); + } else { + int survivor = GetRandomClient(5, 1); + if(ignoreClient > 0 && survivor == ignoreClient) survivor = GetRandomClient(5, 1); + if(survivor > 0) { + GetClientAbsOrigin(survivor, pos); + } + } +} + +static float cmdThrottle[MAXPLAYERS+1]; +static bool onLadder[MAXPLAYERS+1]; +float lastAng[MAXPLAYERS+1][3]; +public Action OnPlayerRunCmd(int client, int& buttons, int& impulse, float vel[3], float angles[3], int& weapon, int& subtype, int& cmdnum, int& tickcount, int& seed, int mouse[2]) { + float tick = GetGameTime(); + if(cvar_sm_hats_enabled.IntValue == 0 || (GetUserAdmin(client) == INVALID_ADMIN_ID && cvar_sm_hats_enabled.IntValue == 1)) return Plugin_Continue; + int entity = GetHat(client); + int visibleEntity = EntRefToEntIndex(hatData[client].visibleEntity); + if(entity > 0) { + // try to tp hat to its own pos + if(!onLadder[client] && GetEntityMoveType(client) == MOVETYPE_LADDER) { + onLadder[client] = true; + ClearParent(entity); + if(visibleEntity > 0) { + hatData[client].visibleEntity = INVALID_ENT_REFERENCE; + AcceptEntityInput(visibleEntity, "Kill"); + } + } else if(onLadder[client] && GetEntityMoveType(client) != MOVETYPE_LADDER) { + onLadder[client] = false; + EquipHat(client, entity); + } + + if(HasFlag(client, HAT_RAINBOW)) { + // Decrement and flip, possibly when rainbowticks + if(hatData[client].rainbowReverse) { + hatData[client].rainbowColor[0] -= cvar_sm_hat_rainbow_speed.FloatValue; + } else { + hatData[client].rainbowColor[0] += cvar_sm_hat_rainbow_speed.FloatValue; + } + + if(hatData[client].rainbowColor[0] > 360.0) { + hatData[client].rainbowReverse = true; + hatData[client].rainbowColor[0] = 360.0; + } else if(hatData[client].rainbowColor[0] < 0.0) { + hatData[client].rainbowReverse = false; + hatData[client].rainbowColor[0] = 0.0; + } + + static int rgb[3]; + HSVToRGBInt(hatData[client].rainbowColor, rgb); + SetEntityRenderColor(entity, rgb[0], rgb[1], rgb[2]); + hatData[client].rainbowTicks = -cvar_sm_hat_rainbow_speed.IntValue; + EquipHat(client, entity); + } + + if(entity <= MaxClients) { + if(!onLadder[entity] && GetEntityMoveType(entity) == MOVETYPE_LADDER) { + onLadder[entity] = true; + ClearParent(entity); + } else if(onLadder[entity] && GetEntityMoveType(entity) != MOVETYPE_LADDER) { + onLadder[entity] = false; + EquipHat(client, entity); + } + } + if(HasFlag(client, HAT_COMMANDABLE | HAT_REVERSED) && tickcount % 200 == 0) { + float pos[3]; + ChooseRandomPosition(pos, client); + L4D2_CommandABot(entity, client, BOT_CMD_MOVE, pos); + } + } + if(buttons & IN_USE && buttons & IN_RELOAD) { + if(entity > 0) { + if(buttons & IN_ZOOM) { + if(buttons & IN_JUMP) hatData[client].offset[2] += 1.0; + if(buttons & IN_DUCK) hatData[client].offset[2] -= 1.0; + if(buttons & IN_FORWARD) hatData[client].offset[0] += 1.0; + if(buttons & IN_BACK) hatData[client].offset[0] -= 1.0; + if(buttons & IN_MOVELEFT) hatData[client].offset[1] += 1.0; + if(buttons & IN_MOVERIGHT) hatData[client].offset[1] -= 1.0; + TeleportEntity(entity, hatData[client].offset, angles, vel); + return Plugin_Handled; + } else if(tick - cmdThrottle[client] > 0.25) { + if(buttons & IN_ATTACK) { + ClientCommand(client, "sm_hat %s", 'y'); + } else if(buttons & IN_SPEED) { + ClientCommand(client, "sm_hat %s", 'n'); + } else if(buttons & IN_DUCK) { + ClientCommand(client, "sm_hat %s", 'p'); + } + } + } else if(tick - cmdThrottle[client] > 0.25 && L4D2_GetPlayerUseAction(client) == L4D2UseAction_None) { + ClientCommand(client, "sm_hat"); + } + cmdThrottle[client] = tick; + lastAng[client] = angles; + hatData[client].angles = angles; + return Plugin_Handled; + } + return Plugin_Continue; +} + + +// Don't show real entity to hat wearer (Show for ALL but hat wearer) +Action OnRealTransmit(int entity, int client) { + #if defined DEBUG_HAT_SHOW_FAKE + return Plugin_Continue; + #endif + if(hatData[client].entity != INVALID_ENT_REFERENCE && EntRefToEntIndex(hatData[client].entity) == entity) + return Plugin_Handled; + return Plugin_Continue; +} + +// Only show to hat wearer (do not show to ALL) +Action OnVisibleTransmit(int entity, int client) { + #if defined DEBUG_HAT_SHOW_FAKE + return Plugin_Continue; + #endif + if(hatData[client].visibleEntity != INVALID_ENT_REFERENCE && EntRefToEntIndex(hatData[client].visibleEntity) != entity) + return Plugin_Handled; + return Plugin_Continue; +} + + +public Action OnTakeDamageAlive(int victim, int& attacker, int& inflictor, float& damage, int& damagetype) { + if(victim > MaxClients || victim <= 0) return Plugin_Continue; + if(damage > 0.0 && tempGod[victim]) { + damage = 0.0; + return Plugin_Handled; + } + if(attacker > MaxClients || attacker <= 0) return Plugin_Continue; + if(victim == EntRefToEntIndex(hatData[attacker].entity) || attacker == EntRefToEntIndex(hatData[victim].entity)) { + damage = 0.0; + return Plugin_Handled; + } + return Plugin_Continue; +} + +public void OnClientDisconnect(int client) { + tempGod[client] = false; +} + +public void OnEntityDestroyed(int entity) { + for(int i = 1; i <= MaxClients; i++) { + if(IsClientConnected(i) && IsClientInGame(i) && !IsFakeClient(i)) { + if(EntRefToEntIndex(hatData[i].entity) == entity) { + ClearHat(i); + PrintHintText(i, "Hat entity has vanished"); + ClientCommand(i, "play ui/menu_back.wav"); + break; + } + } + } +} +public void OnMapStart() { + CreateTimer(30.0, Timer_RemountHats, _, TIMER_REPEAT | TIMER_FLAG_NO_MAPCHANGE); + for(int i = 1; i <= MaxClients; i++) { + cmdThrottle[i] = 0.0; + tempGod[i] = false; + } + NavAreas = GetSpawnLocations(); +} + +public void OnMapEnd() { + delete NavAreas; + ClearHats(); +} +public void OnPluginEnd() { + ClearHats(); +} + +public bool TraceEntityFilterPlayer(int entity, int contentsMask, any data) { + if(EntRefToEntIndex(hatData[data].entity) == entity) { + return false; + } + return entity != data; +} + + +int GetLookingEntity(int client, TraceEntityFilter filter) { + static float pos[3], ang[3]; + GetClientEyePosition(client, pos); + GetClientEyeAngles(client, ang); + TR_TraceRayFilter(pos, ang, MASK_SHOT, RayType_Infinite, filter, client); + if(TR_DidHit()) { + return TR_GetEntityIndex(); + } + return -1; +} + + +/////////////////////////////////////////////////////////////////////////////////////////////// + +bool Filter_OnlyPlayers(int entity, int mask, int data) { + return entity > 0 && entity <= MaxClients && entity != data; +} + +bool Filter_NoPlayers(int entity, int mask, int data) { + return entity > MaxClients && entity != data; +} + +bool Filter_IgnorePlayer(int entity, int mask, int data) { + if(entity == data) return false; + if(entity <= MaxClients) { + int client = GetRealClient(data); + return CanTarget(client); // Don't target if player targetting off + } + if(cvar_sm_hats_blacklist_enabled.BoolValue) { + static char classname[32]; + GetEntityClassname(entity, classname, sizeof(classname)); + for(int i = 0; i < MAX_FORBIDDEN_CLASSNAMES; i++) { + if(StrEqual(FORBIDDEN_CLASSNAMES[i], classname)) { + return false; + } + } + } + return true; +} + +//////////////////////////////// + +void ClearHats() { + for(int i = 1; i <= MaxClients; i++) { + if(HasHat(i)) { + ClearHat(i, false); + } + if(IsClientConnected(i) && IsClientInGame(i)) SetEntityMoveType(i, MOVETYPE_WALK); + } +} +void ClearHat(int i, bool restore = false) { + + int entity = EntRefToEntIndex(hatData[i].entity); + int visibleEntity = EntRefToEntIndex(hatData[i].visibleEntity); + int modifyEntity = HasFlag(i, HAT_REVERSED) ? i : entity; + + if(visibleEntity > 0) { + SDKUnhook(visibleEntity, SDKHook_SetTransmit, OnVisibleTransmit); + AcceptEntityInput(visibleEntity, "Kill"); + } + if(modifyEntity > 0) { + SDKUnhook(modifyEntity, SDKHook_SetTransmit, OnRealTransmit); + ClearParent(modifyEntity); + } else { + return; + } + + // if(HasEntProp(entity, Prop_Send, "m_flModelScale")) + // SetEntPropFloat(entity, Prop_Send, "m_flModelScale", 1.0); + SetEntProp(modifyEntity, Prop_Send, "m_CollisionGroup", hatData[i].collisionGroup); + SetEntProp(modifyEntity, Prop_Send, "m_nSolidType", hatData[i].solidType); + SetEntProp(modifyEntity, Prop_Send, "movetype", hatData[i].moveType); + + hatData[i].entity = INVALID_ENT_REFERENCE; + hatData[i].visibleEntity = INVALID_ENT_REFERENCE; + + if(HasFlag(i, HAT_REVERSED)) { + entity = i; + i = modifyEntity; + } + + if(entity <= MAXPLAYERS) { + AcceptEntityInput(entity, "EnableLedgeHang"); + } + if(restore) { + // If hat is a player, override original position to hat wearer's + if(entity <= MAXPLAYERS && HasEntProp(i, Prop_Send, "m_vecOrigin")) { + GetEntPropVector(i, Prop_Send, "m_vecOrigin", hatData[i].orgPos); + } + // Restore to original position + if(HasFlag(i, HAT_REVERSED)) { + TeleportEntity(i, hatData[i].orgPos, hatData[i].orgAng, NULL_VECTOR); + } else { + TeleportEntity(entity, hatData[i].orgPos, hatData[i].orgAng, NULL_VECTOR); + } + } +} + +bool HasHat(int client) { + return GetHat(client) > 0; +} + +int GetHat(int client) { + if(hatData[client].entity == INVALID_ENT_REFERENCE) return -1; + int index = EntRefToEntIndex(hatData[client].entity); + if(index <= 0) return -1; + if(!IsValidEntity(index)) return -1; + return index; +} + +int GetHatter(int client) { + int myRef = EntIndexToEntRef(client); + for(int i = 1; i <= MaxClients; i++) { + if(hatData[client].entity == myRef) { + return i; + } + } + return -1; +} + +bool CanTarget(int victim) { + static char buf[2]; + noHatVictimCookie.Get(victim, buf, sizeof(buf)); + return StringToInt(buf) == 0; +} + +bool IsHatAllowed(int client) { + char name[32]; + GetEntityClassname(hatData[client].entity, name, sizeof(name)); + // Don't allow non-weapons in saferoom + if(StrEqual(name, "prop_physics")) { + GetEntPropString(hatData[client].entity, Prop_Data, "m_ModelName", name, sizeof(name)); + if(StrContains(name, "gnome") != -1) { + return true; + } + PrintToConsole(client, "Dropping hat: prop_physics (%s)", name); + return false; + } + else if(StrEqual(name, "player") || StrContains(name, "weapon_") > -1 || StrContains(name, "upgrade_") > -1) { + return true; + } + PrintToConsole(client, "Dropping hat: %s", name); + return false; +} + + +void SetFlag(int client, hatFlags flag) { + hatData[client].flags |= view_as(flag); +} + +bool HasFlag(int client, hatFlags flag) { + return hatData[client].flags & view_as(flag) != 0; +} + +void EquipHat(int client, int entity, const char[] classname = "", int flags = HAT_NONE) { + if(HasHat(client)) + ClearHat(client, true); + + // Player specific tweaks + int visibleEntity; + if(entity == 0) { + ThrowError("Attempted to equip world (client = %d)", client); + return; + } + + hatData[client].entity = EntIndexToEntRef(entity); + int modifyEntity = HasFlag(client, HAT_REVERSED) ? client : entity; + hatData[client].collisionGroup = GetEntProp(modifyEntity, Prop_Send, "m_CollisionGroup"); + hatData[client].solidType = GetEntProp(modifyEntity, Prop_Send, "m_nSolidType"); + hatData[client].moveType = GetEntProp(modifyEntity, Prop_Send, "movetype"); + + + if(modifyEntity <= MaxClients) { + SDKHook(modifyEntity, SDKHook_OnTakeDamageAlive, OnTakeDamageAlive); + AcceptEntityInput(modifyEntity, "DisableLedgeHang"); + } else if(cvar_sm_hats_flags.IntValue & view_as(HatConfig_FakeHat)) { + return; + // char model[64]; + // GetEntPropString(entity, Prop_Data, "m_ModelName", model, sizeof(model)); + // visibleEntity = CreateEntityByName("prop_dynamic"); + // DispatchKeyValue(visibleEntity, "model", model); + // DispatchKeyValue(visibleEntity, "disableshadows", "1"); + // DispatchSpawn(visibleEntity); + // SetEntProp(visibleEntity, Prop_Send, "m_CollisionGroup", 1); + // hatData[client].visibleEntity = EntIndexToEntRef(visibleEntity); + // SDKHook(visibleEntity, SDKHook_SetTransmit, OnVisibleTransmit); + // SDKHook(entity, SDKHook_SetTransmit, OnRealTransmit); + } + SDKHook(client, SDKHook_OnTakeDamageAlive, OnTakeDamageAlive); + // Temp remove the hat to be yoinked by another player + for(int i = 1; i <= MaxClients; i++) { + if(i != client && EntRefToEntIndex(hatData[i].entity) == entity) { + ClearHat(i); + } + } + + // Called on initial hat + if(classname[0] != '\0') { + if(entity <= MaxClients && !IsFakeClient(entity)) { + PrintToChat(entity, "[Hats] %N has hatted you, type /hat to dismount at any time", client); + } + // Reset things: + hatData[client].flags = 0; + hatData[client].offset[0] = hatData[client].offset[1] = hatData[client].offset[2] = 0.0; + hatData[client].angles[0] = hatData[client].angles[1] = hatData[client].angles[2] = 0.0; + + if(cvar_sm_hats_flags.IntValue & view_as(HatConfig_ReversedHats) && flags & view_as(HAT_REVERSED)) { + SetFlag(client, HAT_REVERSED); + if(StrEqual(classname, "infected") || (entity <= MaxClients && IsFakeClient(entity))) { + SetFlag(client, HAT_COMMANDABLE); + } + PrintToChat(client, "[Hats] Set yourself as %s (%d)'s hat", classname, entity); + if(entity <= MaxClients) { + LogAction(client, entity, "\"%L\" made themselves \"%L\" (%s)'s hat (%d, %d)", client, entity, classname, entity, visibleEntity); + PrintToChat(entity, "[Hats] %N has set themselves as your hat", client); + } + } else { + if(entity <= MaxClients) + PrintToChat(client, "[Hats] Set %N (%d) as a hat", entity, entity); + else + PrintToChat(client, "[Hats] Set %s (%d) as a hat", classname, entity); + if(entity <= MaxClients) + LogAction(client, entity, "\"%L\" picked up \"%L\" (%s) as a hat (%d, %d)", client, entity, classname, entity, visibleEntity); + else + LogAction(client, -1, "\"%L\" picked up %s as a hat (%d, %d)", client, classname, entity, visibleEntity); + } + hatData[client].scale = -1.0; + if(modifyEntity <= MaxClients) { + if(HasFlag(client, HAT_REVERSED)) { + hatData[client].offset[2] += 7.2; + } else { + hatData[client].offset[2] += 4.2; + } + } else { + float mins[3]; + GetEntPropVector(modifyEntity, Prop_Send, "m_vecMins", mins); + hatData[client].offset[2] += mins[2]; + } + PrintToConsole(client, "offset %f %f %f", hatData[client].offset[0],hatData[client].offset[1],hatData[client].offset[2]); + } + AcceptEntityInput(modifyEntity, "DisableMotion"); + + // Get the data (position, angle, movement shit) + + GetEntPropVector(modifyEntity, Prop_Send, "m_vecOrigin", hatData[client].orgPos); + GetEntPropVector(modifyEntity, Prop_Send, "m_angRotation", hatData[client].orgAng); + hatData[client].collisionGroup = GetEntProp(modifyEntity, Prop_Send, "m_CollisionGroup"); + hatData[client].solidType = GetEntProp(modifyEntity, Prop_Send, "m_nSolidType"); + hatData[client].moveType = GetEntProp(modifyEntity, Prop_Send, "movetype"); + + + if(StrEqual(classname, "witch", false)) { + TeleportEntity(entity, EMPTY_ANG, NULL_VECTOR, NULL_VECTOR); + SetFlag(client, HAT_POCKET); + } + + if(!HasFlag(client, HAT_POCKET)) { + // TeleportEntity(entity, EMPTY_ANG, EMPTY_ANG, NULL_VECTOR); + if(HasFlag(client, HAT_REVERSED)) { + SetParent(client, entity); + if(StrEqual(classname, "infected")) { + SetParentAttachment(modifyEntity, "head", true); + TeleportEntity(modifyEntity, hatData[client].offset, hatData[client].angles, NULL_VECTOR); + SetParentAttachment(modifyEntity, "head", true); + } else { + SetParentAttachment(modifyEntity, "eyes", true); + TeleportEntity(modifyEntity, hatData[client].offset, hatData[client].angles, NULL_VECTOR); + SetParentAttachment(modifyEntity, "eyes", true); + } + + if(HasFlag(client, HAT_COMMANDABLE)) { + ChooseRandomPosition(hatData[client].offset); + L4D2_CommandABot(entity, client, BOT_CMD_MOVE, hatData[client].offset); + } + } else { + SetParent(entity, client); + SetParentAttachment(modifyEntity, "eyes", true); + TeleportEntity(modifyEntity, hatData[client].offset, hatData[client].angles, NULL_VECTOR); + SetParentAttachment(modifyEntity, "eyes", true); + } + + if(visibleEntity > 0) { + SetParent(visibleEntity, client); + SetParentAttachment(visibleEntity, "eyes", true); + hatData[client].offset[2] += 10.0; + TeleportEntity(visibleEntity, hatData[client].offset, hatData[client].angles, NULL_VECTOR); + SetParentAttachment(visibleEntity, "eyes", true); + #if defined DEBUG_HAT_SHOW_FAKE + L4D2_SetEntityGlow(visibleEntity, L4D2Glow_Constant, 0, 0, color2, false); + #endif + } + + #if defined DEBUG_HAT_SHOW_FAKE + L4D2_SetEntityGlow(modifyEntity, L4D2Glow_Constant, 0, 0, color, false); + #endif + + SetEntProp(modifyEntity, Prop_Send, "m_nSolidType", 0); + SetEntProp(modifyEntity, Prop_Send, "m_CollisionGroup", 1); + SetEntProp(modifyEntity, Prop_Send, "movetype", MOVETYPE_NONE); + } +} + +stock bool FindGround(const float start[3], float end[3]) { + float angle[3]; + angle[0] = 90.0; + + Handle trace = TR_TraceRayEx(start, angle, MASK_SHOT, RayType_Infinite); + if(!TR_DidHit(trace)) { + delete trace; + return false; + } + TR_GetEndPosition(end, trace); + delete trace; + return true; +} + +stock bool L4D_IsPlayerCapped(int client) { + if(GetEntPropEnt(client, Prop_Send, "m_pummelAttacker") > 0 || + GetEntPropEnt(client, Prop_Send, "m_carryAttacker") > 0 || + GetEntPropEnt(client, Prop_Send, "m_pounceAttacker") > 0 || + GetEntPropEnt(client, Prop_Send, "m_jockeyAttacker") > 0 || + GetEntPropEnt(client, Prop_Send, "m_pounceAttacker") > 0 || + GetEntPropEnt(client, Prop_Send, "m_tongueOwner") > 0) + return true; + return false; +} \ No newline at end of file diff --git a/scripting/l4d2_population_control.sp b/scripting/l4d2_population_control.sp index 71c8d14..5a92dc5 100644 --- a/scripting/l4d2_population_control.sp +++ b/scripting/l4d2_population_control.sp @@ -67,6 +67,8 @@ public void OnPluginStart() { SetFailState("This plugin is for L4D2 only."); } + HookEvent("game_start", OnGameStart); + hPercentTotal = CreateConVar("l4d2_population_global_chance", "1.0", "The % chance that any the below chances occur.\n0.0 = NEVER, 1.0: ALWAYS"); hPercentClown = CreateConVar("l4d2_population_clowns", "0.0", "The % chance that a common spawns as a clown.\n0.0 = OFF, 1.0 = ALWAYS", FCVAR_NONE, true, 0.0, true, 1.0); hPercentMud = CreateConVar("l4d2_population_mud", "0.0", "The % chance that a common spawns as a mud zombie.\n0.0 = OFF, 1.0 = ALWAYS", FCVAR_NONE, true, 0.0, true, 1.0); @@ -87,6 +89,18 @@ public void OnPluginStart() { //AutoExecConfig(true, "l4d2_population_control"); } + +public void OnGameStart(Event event, const char[] name, bool dontBroadcast) { + hPercentTotal.FloatValue = 1.0; + hPercentClown.FloatValue = 0.0; + hPercentMud.FloatValue = 0.0; + hPercentCeda.FloatValue = 0.0; + hPercentWorker.FloatValue = 0.0; + hPercentRiot.FloatValue = 0.0; + hPercentJimmy.FloatValue = 0.0; + hTotalZombies.FloatValue = 0.0; +} + public void OnMapStart() { for(int i = 0; i < COMMON_MODELS_COUNT; i++) { PrecacheModel(INFECTED_MODELS[i], true); diff --git a/scripting/l4d2_tank_priority.sp b/scripting/l4d2_tank_priority.sp index 61fa273..81e9044 100644 --- a/scripting/l4d2_tank_priority.sp +++ b/scripting/l4d2_tank_priority.sp @@ -37,7 +37,7 @@ public void OnPluginStart() { SetFailState("This plugin is for L4D/L4D2 only."); } - clients = new ArrayList(3); + clients = new ArrayList(4); HookEvent("player_hurt", Event_PlayerHurt); HookEvent("tank_spawn", Event_TankSpawn); @@ -93,8 +93,8 @@ public Action L4D2_OnChooseVictim(int attacker, int &curTarget) { clients.SortCustom(Sort_TankTargetter); curTarget = clients.Get(0); - tankChosenVictim[attacker] = curTarget; - targettingTank[curTarget] = attacker; + // tankChosenVictim[attacker] = curTarget; + // targettingTank[curTarget] = attacker; PrintToConsoleAll("[TankPriority] Player Selected to target: %N", curTarget); //TODO: Possibly clear totalTankDamage return Plugin_Changed; diff --git a/scripting/l4d2_turret.sp b/scripting/l4d2_turret.sp index c6e5caa..f6cb857 100644 --- a/scripting/l4d2_turret.sp +++ b/scripting/l4d2_turret.sp @@ -160,7 +160,7 @@ void SetupTurret(int turret, float time = 0.0) { thinkTimer = CreateTimer(0.1, Timer_Think, _, TIMER_REPEAT); } // Clamp to 0 -> _TURRET_PHASE_TICKS - 1 - turretPhaseOffset[turret] = turretIds.Length % (_TURRET_PHASE_TICKS - 1); + turretPhaseOffset[turret] = (turretIds.Length + 1) % (_TURRET_PHASE_TICKS - 1); turretIds.Push(turret); } Action Timer_ActivateTurret(Handle h, int turret) { @@ -356,12 +356,15 @@ public Action Timer_Think(Handle h) { // Keep targetting if can view target = EntRefToEntIndex(turretActiveEntity[entity]); if(target > 0 && IsValidEntity(target)) { - bool ragdoll = GetEntProp(target, Prop_Data, "m_bClientSideRagdoll") == 1; - if(!ragdoll && CanSeeEntity(pos, target)) { + if(target <= MaxClients) { + if(IsPlayerAlive(target) && GetEntProp(target, Prop_Data, "m_bClientSideRagdoll") == 0 && CanSeeEntity(pos, target)) { + FireTurretAuto(pos, target, turretDamage[entity]); + continue; + } + } else if(CanSeeEntity(pos, target)) { FireTurretAuto(pos, target, turretDamage[entity]); continue; } - entityActiveTurret[target] = 0; } DeactivateTurret(entity); } @@ -381,9 +384,9 @@ public Action Timer_Think(Handle h) { CreateTimer(1.2, Timer_KillRock, EntIndexToEntRef(target)); damage = 1000.0; } - if(target == -1) target = FindNearestVisibleClient(TEAM_SPECIALS, pos, TURRET_MAX_RANGE_SPECIALS_OPTIMIZED); + if(target <= 0) target = FindNearestVisibleClient(TEAM_SPECIALS, pos, TURRET_MAX_RANGE_SPECIALS_OPTIMIZED); } - if(target == -1) target = FindNearestVisibleEntity("infected", pos, TURRET_MAX_RANGE_INFECTED_OPTIMIZED, entity); + if(target <= 0) target = FindNearestVisibleEntity("infected", pos, TURRET_MAX_RANGE_INFECTED_OPTIMIZED, entity); if(target > 0) { turretDamage[entity] = damage; entityActiveTurret[target] = entity; @@ -537,7 +540,7 @@ stock int FindNearestVisibleClient(int team, const float origin[3], float maxRan if(distance <= closestDist || client == -1) { if(CanSeePoint(origin, pos)) { // Priority: Pinned survivors - if(L4D_GetPinnedSurvivor(i)) { + if(L4D_GetPinnedSurvivor(i) > 0) { return i; } client = i; @@ -553,6 +556,7 @@ stock int FindNearestVisibleEntity(const char[] classname, const float origin[3] int entity = INVALID_ENT_REFERENCE; static float pos[3]; while ((entity = FindEntityByClassname(entity, classname)) != INVALID_ENT_REFERENCE) { + // Skip entity, it's already being targetted if(entityActiveTurret[entity] > 0) continue; bool ragdoll = GetEntProp(entity, Prop_Data, "m_bClientSideRagdoll") == 1; if(ragdoll) continue; @@ -568,7 +572,7 @@ stock int FindNearestVisibleEntity(const char[] classname, const float origin[3] } stock bool CanSeePoint(const float origin[3], const float point[3]) { - TR_TraceRay(origin, point, MASK_SOLID, RayType_EndPoint); + TR_TraceRay(origin, point, MASK_SHOT, RayType_EndPoint); return !TR_DidHit(); // Can see point if no collisions } @@ -576,7 +580,7 @@ stock bool CanSeePoint(const float origin[3], const float point[3]) { stock bool CanSeeEntity(const float origin[3], int entity) { static float point[3]; GetEntPropVector(entity, Prop_Send, "m_vecOrigin", point); - TR_TraceRayFilter(origin, point, MASK_ALL, RayType_EndPoint, Filter_CanSeeEntity, entity); + TR_TraceRayFilter(origin, point, MASK_SHOT, RayType_EndPoint, Filter_CanSeeEntity, entity); return TR_GetEntityIndex() == entity; // Can see point if no collisions } diff --git a/scripting/sm_namespamblock.sp b/scripting/sm_namespamblock.sp index cb27018..b9e7721 100644 --- a/scripting/sm_namespamblock.sp +++ b/scripting/sm_namespamblock.sp @@ -9,8 +9,8 @@ #include //#include -#define MIN_TIME_BETWEEN_NAME_CHANGES 10000 -#define MAX_NAME_COUNT 3 +#define MIN_TIME_BETWEEN_NAME_CHANGES 10000 // In seconds +#define MAX_NAME_COUNT 3 // How many changes max within a MIN_TIME_BETWEEN_NAME_CHANGES public Plugin myinfo = { diff --git a/scripting/sm_player_notes.sp b/scripting/sm_player_notes.sp index 19e8c13..58073af 100644 --- a/scripting/sm_player_notes.sp +++ b/scripting/sm_player_notes.sp @@ -29,6 +29,7 @@ static char query[1024]; static char reason[256]; static int WaitingForNotePlayer; static char menuNoteTarget[32]; +static char menuNoteTargetName[32]; enum struct PlayerData { char id[32]; @@ -52,6 +53,7 @@ public void OnPluginStart() { HookEvent("player_disconnect", Event_PlayerDisconnect); HookEvent("player_first_spawn", Event_FirstSpawn); + RegConsoleCmd("sm_rep", Command_RepPlayer, "+rep or -rep a player"); RegAdminCmd("sm_note", Command_AddNote, ADMFLAG_KICK, "Add a note to a player"); RegAdminCmd("sm_notes", Command_ListNotes, ADMFLAG_KICK, "List notes for a player"); RegAdminCmd("sm_notedisconnected", Command_AddNoteDisconnected, ADMFLAG_KICK, "Add a note to any disconnected players"); @@ -69,6 +71,136 @@ public void OnPluginStart() { // PrintToServer(""); } +void ShowRepMenu(int client, int targetUserid) { + Menu menu = new Menu(RepFinalHandler); + menu.SetTitle("Choose a rating"); + char id[8]; + Format(id, sizeof(id), "%d|1", targetUserid); + menu.AddItem(id, "+Rep"); + Format(id, sizeof(id), "%d|1", targetUserid); + menu.AddItem(id, "-Rep"); + menu.Display(client, 0); +} + +public int RepPlayerHandler(Menu menu, MenuAction action, int param1, int param2) { + /* If an option was selected, tell the client about the item. */ + if (action == MenuAction_Select) { + static char info[4]; + menu.GetItem(param2, info, sizeof(info)); + int targetUserid = StringToInt(info); + int target = GetClientOfUserId(targetUserid); + + if(target == 0) { + ReplyToCommand(param1, "Could not acquire player"); + return 0; + } + + ShowRepMenu(param1, targetUserid); + } else if (action == MenuAction_End) { + delete menu; + } + return 0; +} + +public int RepFinalHandler(Menu menu, MenuAction action, int param1, int param2) { + /* If an option was selected, tell the client about the item. */ + if (action == MenuAction_Select) { + char info[8]; + menu.GetItem(param2, info, sizeof(info)); + char str[2][8]; + ExplodeString(info, "|", str, 2, 8, false); + int targetUserid = StringToInt(str[0]); + int target = GetClientOfUserId(targetUserid); + int rep = StringToInt(str[1]); + + if(target == 0) { + ReplyToCommand(param1, "Could not acquire player"); + return 0; + } + + ApplyRep(param1, target, rep); + } else if (action == MenuAction_End) { + delete menu; + } + return 0; +} + +public Action Command_RepPlayer(int client, int args) { + if(client == 0) { + ReplyToCommand(client, "You must be a player to use this command."); + return Plugin_Handled; + } + if(args == 0) { + Menu menu = new Menu(RepPlayerHandler); + menu.SetTitle("Choose a player to rep"); + char id[8], display[64]; + // int clientTeam = GetClientTeam(client); + for(int i = 1; i <= MaxClients; i++) { + if(i != client && IsClientConnected(i) && IsClientInGame(i) && !IsFakeClient(i)) { + Format(id, sizeof(id), "%d", GetClientUserId(i)); + Format(display, sizeof(display), "%N", i); + menu.AddItem(id, display); + } + } + menu.Display(client, 0); + return Plugin_Handled; + } else if(args > 0) { + char arg1[32]; + GetCmdArg(1, arg1, sizeof(arg1)); + char target_name[MAX_TARGET_LENGTH]; + int target_list[1], target_count; + bool tn_is_ml; + if ((target_count = ProcessTargetString( + arg1, + client, + target_list, + 1, + COMMAND_FILTER_ALIVE, + target_name, + sizeof(target_name), + tn_is_ml)) <= 0) + { + /* This function replies to the admin with a failure message */ + ReplyToTargetError(client, target_count); + return Plugin_Handled; + } + if (args == 1) { + ShowRepMenu(client, GetClientUserId(target_list[0])); + } else { + char arg2[2]; + GetCmdArg(2, arg2, sizeof(arg2)); + int rep; + if(arg2[0] == 'y' || arg2[0] == '+' || arg2[0] == 'p') { + rep = 1; + } else if(arg2[0] == 'n' || arg2[0] == '-' || arg2[0] == 's') { + rep = -1; + } else { + ReplyToCommand(client, "Invalid rep value: Use (y/+/p) for +rep or (n/-/s) for -rep"); + return Plugin_Handled; + } + ApplyRep(client, target_list[0], rep); + } + } + return Plugin_Handled; +} + +void ApplyRep(int client, int target, int rep) { + char[] msg = "+rep"; + if(rep == -1) msg[0] = '-'; + + LogAction(client, target, "\"%L\" %srep \"%L\"", client, msg, target); + if(rep > 0) + CShowActivity(client, "{green}+rep %N", target); + else + CShowActivity(client, "{yellow}-rep %N", target); + + char activatorId[32], targetId[32]; + GetClientAuthId(client, AuthId_Steam2, activatorId, sizeof(activatorId)); + GetClientAuthId(target, AuthId_Steam2, targetId, sizeof(targetId)); + DB.Format(query, sizeof(query), "INSERT INTO `notes` (steamid, markedBy, content) VALUES ('%s', '%s', '%s')", targetId, activatorId, msg); + DB.Query(DB_AddNote, query); +} + public Action Command_AddNoteDisconnected(int client, int args) { if(lastPlayers.Length == 0) { ReplyToCommand(client, "No disconnected players recorded."); @@ -87,8 +219,9 @@ public Action Command_AddNoteDisconnected(int client, int args) { public int Menu_Disconnected(Menu menu, MenuAction action, int client, int item) { if (action == MenuAction_Select) { - menu.GetItem(item, menuNoteTarget, sizeof(menuNoteTarget)); - PrintToChat(client, "Enter a note in the chat for %s: (or 'cancel' to cancel)", menuNoteTarget); + int style; + menu.GetItem(item, menuNoteTarget, sizeof(menuNoteTarget), style, menuNoteTargetName, sizeof(menuNoteTargetName)); + CPrintToChat(client, "Enter a note in the chat for {yellow}%s {olive}(%s){default}: (or 'cancel' to cancel)", menuNoteTargetName, menuNoteTarget); WaitingForNotePlayer = client; } else if (action == MenuAction_End) delete menu; @@ -101,7 +234,7 @@ public Action OnClientSayCommand(int client, const char[] command, const char[] if(StrEqual(sArgs, "cancel", false)) { PrintToChat(client, "Note cancelled."); } else { - int size = strlen(sArgs); + int size = strlen(sArgs) + 1; char[] sArgsTrimmed = new char[size]; strcopy(sArgsTrimmed, size, sArgs); TrimString(sArgsTrimmed); @@ -109,9 +242,9 @@ public Action OnClientSayCommand(int client, const char[] command, const char[] GetClientAuthId(client, AuthId_Steam2, buffer, sizeof(buffer)); DB.Format(query, sizeof(query), "INSERT INTO `notes` (steamid, markedBy, content) VALUES ('%s', '%s', '%s')", menuNoteTarget, buffer, sArgsTrimmed); DB.Query(DB_AddNote, query); - LogAction(client, -1, "\"%L\" added note for \"%s\": \"%s\"", client, menuNoteTarget, sArgsTrimmed); + LogAction(client, -1, "\"%L\" added note for \"%s\" (%s): \"%s\"", client, menuNoteTargetName, menuNoteTarget, sArgsTrimmed); Format(buffer, sizeof(buffer), "%N: ", client); - CShowActivity2(client, buffer, "added a note for {green}%s: {default}\"%s\"", menuNoteTarget, sArgsTrimmed); + CShowActivity2(client, buffer, "added a note for {green}%s: {default}\"%s\"", menuNoteTargetName, sArgsTrimmed); } return Plugin_Stop; } @@ -126,6 +259,19 @@ public Action Command_AddNote(int client, int args) { GetCmdArg(1, target_name, sizeof(target_name)); GetCmdArg(2, reason, sizeof(reason)); TrimString(reason); + if(args > 2) { + // Correct commands that don't wrap message in quotes + char buffer[64]; + for(int i = 3; i <= args; i++) { + GetCmdArg(i, buffer, sizeof(buffer)); + Format(reason, sizeof(reason), "%s %s", reason, buffer); + } + } + + if(reason[0] == '\0') { + ReplyToCommand(client, "Can't create an empty note"); + return Plugin_Handled; + } int target_list[1], target_count; bool tn_is_ml; @@ -139,7 +285,11 @@ public Action Command_AddNote(int client, int args) { sizeof(target_name), tn_is_ml)) <= 0 ) { - ReplyToTargetError(client, target_count); + if(target_count == COMMAND_TARGET_NONE) { + ReplyToCommand(client, "Could not find any online user. If user has disconnected, use sm_notedisconnected"); + } else { + ReplyToTargetError(client, target_count); + } return Plugin_Handled; } if(args == 1) { @@ -261,19 +411,29 @@ public void DB_FindNotes(Database db, DBResultSet results, const char[] error, a static char noteCreator[32]; CPrintChatToAdmins("{yellow}> Notes for %N", client); int actions = 0; + int repP = 0, repN = 0; while(results.FetchRow()) { results.FetchString(0, reason, sizeof(reason)); results.FetchString(1, noteCreator, sizeof(noteCreator)); TrimString(reason); if(ParseActions(data, reason)) { actions++; + } else if((reason[0] == '+' || reason[0] == '-') && reason[1] == 'r' && reason[2] == 'e' && reason[3] == 'p') { + if(reason[0] == '+') { + repP++; + } else { + repN--; + } } else { CPrintChatToAdmins(" {olive}%s: {default}%s", noteCreator, reason); } } - + if(actions > 0) { - CPrintChatToAdmins(" {olive}%d Auto Actions Applied", actions); + CPrintChatToAdmins(" > {olive}%d Auto Actions Applied", actions); + } + if(repP > 0 || repN > 0) { + CPrintChatToAdmins(" > {olive}%d +rep\t{yellow}-rep", repP, repN); } } }

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 literal 0 HcmV?d00001 diff --git a/plugins/l4d2_population_control.smx b/plugins/l4d2_population_control.smx index f4c947ba86bc8f759d06c4ada06aefcd7772f38f..d221b5b65fd29db2a5ad7c974e6324f06d32001f 100644 GIT binary patch delta 6505 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 j&i>_+(gTk_Utg&Y+F;5NqFn+B>B#rVxyN4cPw diff --git a/plugins/l4d2_tank_priority.smx b/plugins/l4d2_tank_priority.smx index 01b89743785115404e912d6a8d10fcf012bf06c2..28a3b4d89c92eac244527e18fbc03f5c75269e3b 100644 GIT binary patch delta 7456 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 Ni};o7oc|y0{{b2ZvK{~c delta 7472 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 diff --git a/plugins/l4d2_turret.smx b/plugins/l4d2_turret.smx index 57af84f6a8bc045e9003595ba6bb7c11cefd72ee..0d9f62a80d25b3f741574202d510cfc66dc9f15f 100644 GIT binary patch literal 22450 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 diff --git a/plugins/sm_namespamblock.smx b/plugins/sm_namespamblock.smx index 3f6bd556ae09ce8a8470875a60c0b2876d48bcc7..bb0d2360236c594b3eefad7394b09af30d80a670 100644 GIT binary patch delta 4852 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 aMi*q|ev#1^B;`qA;o+YSDE}97RJ1PHZ?7r< delta 4851 zcmVu?Y16e~^U0vWRX-_>tTOh$IWUS1H3V)5**-GdR#8`LRjk6Q^@=}ISDdCww9rG3QuNScT~s{rMCCLp=dp?>r>Ifm;^*7% zb@!Xj}xOWxYjDowW z;BG0nIR*Dv!PQ2W=GH5?4h7e*f8b6iI7h*qRdCY^ZbrdfRd6>I++79tP{Fa-(p-yz z+pOUBD7Ya7mr-!172LFfyQtu172H(?cT>ULQE+n#?va9HHA{1?3a(wjbtt$!3a($l zjVQPi3NEMMPAj-`3T|4#T~u(h3ht_cyP@E2E4VoYx1iwa7e_z3kD!8J8 zJFDO>D7aY#cU{5VQE(3xT>Ub|nxo)46x==q_nLysDY!EVZd$=zQgGK5+-(JSU%|~Q zxcXYfUP{4rE4Y3IH>%(q1$RNgT~=_nm*CzOZYKP%ll?%xD7}|O#XDQOa5qWrdg+}d zB6OdDj8#Zyg~+R2xR*)pf75kAI#D5BdAu;^>H_z9$sLix)JX1kr8HyWo%07x^MWGH zaDC-`G^w3xr1UA=^MWV2UmLXT{F5h7J_UT4-XB&5eL;FJt+0NhTtf^@cswhFgNgJef?f4a-1{-?Ot!BN<2 zz%S7}yq@__lVrOTc20zSFBG;mh!VUftgmdxUjKW2!zz@qUg}fgE{MMBp*=@)d0k%* zg{xHO2GK_CONzO`8L5wZLhE>>!hV$W zA4%=Rr1n@V<-gS4YvH57cF(s-W>om85qy}glVBbDa7 z?IqWR_Q$`yavc~xU+8Yy!>%%Q2YOJJ`UHZXNf(Ss(#_Rc>B893S(}T z%5{>5fA36mb|yL!J74P9!8%^t)`fo^U0u*`-@W~%-8;I(pZ(mYUbJ8M=`$^ZFePvw zWKiM{8qNVD>69#E*a6t2J8HaH%36ldqaD-fJ~N+B7Se-R+c64;MPc&hTgDm5IC zWgVl}G;_Xt$}v25UnXgJ?%|ASIV^~C+_ci3fBSGL@9Pib%%mJ{*s-#OiNL?V;AEYt zz`wUJku#+5eI_Lw_>UPWt_u8zO)HpyBF({6P+!e>m(cZb&{P2WeRNF*Gcv+>tvfRPcyLl zgl{^D3BxVt&`Ht{6dd2ptH9mdptw7*e{b&ZGjpaT+`Q=AjiNZF6@=sdu6^W({T?-n zn1_t?fvk~38l?i|HEcM%2;41N(RB-(cHN=~uA67i-J<1Ox5!>{Q`Ycf*7Ng#+s^}T zKM%P5Jlt7Q#z2i$%hzFXwMXVJ1M9!us*hSwH{4BJjl7=GJ$A!R+%47_Z}e=;5O zWNADRbkic;&hC)TtDCIz>L}~Hy2?7Q&a%#{yR7rtV6l$3g{QCF+6&9c*{9C9a&N!NBCV8iyfHh3pEoXi_~ zDw8Zs7TG%kLjN=sT-P^WJWSvauWFlqew|$xi*=Cz1D}|b+ zw-$4yiEP2mvjrQq4#;LmH)I#2m`hF>)>yVMZu)yA+ub2`F*`rzIoZr|f0Plj1slR5 zfPT2|w|5b_>m4$|JtSOzi+c?9Xk#&r^Mt%bi7?}MC!+=4XWC3XaI0dfzbV`H0! zT!K7=bYKJNK(0a-AU$|#8#xQP38}}6#t>v0au>258{8A?SoNts)u;MYlYt5rf9^9- zNE?%NuiA!{P1n&M@#=;hBbgtdKRRwoC+aqCO4n_&@h|MxH;r=pyPkrNSTE+jT1$9w&}3G*)vrPDm{~RbfZF8Lr)gcdL{{rHwBF`WfKeM#jDl%(XBU(-^zchVlR(Alz~Ke?va>hQ`lh z(4Eoy;y`c@6X*CDKX)+#*$9c%@v|&+hT=yUKYMYI@pB(P2F%p)bMC)}v_61*lhTC5 zBaF2{wnAQp3_@Oy@cWUUhx|O`S0L9Re+l^z@}H0uQN~&!FF?8=FG2bsuRuNn8HXH7 zPWI)pM!~V!;a3L-$A(9ae-0cz$lb^G_l+Dm%ErcwNoUMGe8HXG?;G&Gg}Eea7T9>! zvK^Wd*&AlIFp`BMKjr@Lkl5b6Ygb~}vG%`NO6HjFNF{A!*eKXp2OY+2$Lga0I$2_8 z=gyAAkd-YseVL>)V(v}n={JtW8W#rAEJ?_+>||+t+^|?*K0P)pe}3B7n{udhe9~h_ zjbd(U*!}f{*;a}P`(gXvLjA{v+&}|VW>>+|+3|7aP*qZH3$e6WaC$8>nMT!NqLrLq@;Uu-(UfWk5!$=#SqQf%BM6aMhQ~4t6H_cPLO78#U z4P1xJw1JkHa9a~?$506ZznF=jzyo%;o&)xQ2tB_l>wb@1YS>9LbR)4H|_BC*%HrA1IL@<;ip3e_L`gFa{1IQ$-`7T)Xsr zR73% z8x{r(8{R$Y{+2ho&rFr_H1s=r!;kA2H$Ij&?39&t?Sm!JFs8-40b8L2z_b%&fjB8OXP7sf?-bfT7 zC{uVlBJtRp#8Av-lrhhdyfLAVcl30ei!{=aHab2`D+8+UE-|!x(CYCevDDDALf2Ei zE|wfxe^%&-JuNx3^iUW&y1QR2L1(dCJj3`BL}^hRI`(IXC5hr}6iZUA$dmYbQI2(D ziJ>EYw9L@4Jz8q$EFLX4M;Kpnew^`Tht59H(nCMZzbufJpc3QD5G|p!6w&80XgQ*# zla{2PV|-cq0^>^)9Sx-A>6aK^qJEX}W$G&93rp2k7+YYh5Qdg{xw>;-wOFphy3#)|LsV*-)nDDuf~5rUBlQ<0>8T~;3$dj;J+Uh;pt{k zRK)*Abm?u?LNquw8Gbgz__59KL+Mi+xkqu?Zsgju{oB;{QP1_E?|S6B=6zQXBOdcy zD`MX9_!i$qaZk9ec0b%!SKp@HOBcQC%WDZ~FMe9|LD2d_>=jaLc_9yu*0+{wd=hc=!fz7x2$$lNjY6 zc_{+_9C#l17r;xvd%zpOZvy9{+>*%x{+dP%+H8(Co4~(e{KEq@LUO>r1D*rkr%fjC zThvCtzX#p}y8RpDACPH*Iep0Zh53J=5f1!Ee;U~}ye-cH|B3NS<=>$`0RA)0SincX z$H4DWzr`8*7vL7)zcPN=nm$642L2oH4DjD+b^`tf@G5Yg@e9rWMb-oSZ^kbwFHrvj z|A+BQ#&r1p1n>#9=ZNOc?r-38Db-*HUJ@7nm1Mm{?8M0mACxCOy`50ONJ_~Hco5pj% zZs11X&-k51t^qrNcY$5N$H470wlR*ofm`Tu9{Mt*^DPON^hm1qYV?*cmncCX~Cf8j-e zGb{NE*rS#FqK4kY=a_bZg90ak^bUFvNS7LB1l|)k*CY=7ui_UM(yRF4{0po2OWr(i z8{?M~>C($+Grt&7Z00Y9=bM9zaxXG|0d5!7qlK>qwZJ_T9@tCu2lmlC*TUz*mNgvL z1NT$8fd?2rC`B)obXcmN+TkgVf8D?VDhKe>G@k%pp?a_7hv|#JLyTXFq8$J=KE0H- z0Efxj%3oxAfUi=$fX8TF5I8IFGVnOHufWH^*Jxg76PE-8cDM1D-RU;I)40*bFAv^r zbMFqYdq6r4*Yq_1fLA||j@q3Aj#GXDuK?+UE*<8gi-2^o;tjEizF%QAe~wE!O@xaG zy?4ohF0C{RU5n7IVZlX`$d{vhn?+kOwlVGAN{M_eq@>q+w+U&3<|}DsJ}4=Fxskv4 zyNyAMASpYJ$J`0WwWL7V;{S;uP)_h}ac!GOFC_gDf`4U5C|O^}x5@C_(d8?*Uw21? z`}c?-db?lcR?!5}DKSRxe>d>8nI!tQti+;Dv7+ZgO1gTaeN~tO-8s@@{H~DpzObKb zZDPmp1j-MDvE8Oo|GA%V;U=X44F%>4pJlc;6jYnuOF>=tF2`v`1m>3CYJ0}|N(_vyHQet4B zLooaWFfm%NFfb(1m{$Z7qZ^G?(HJg{iNS`(`e;ljg^6*Gjx|SPTp6?-tzFQ6Vey^NM{H10B7XSUl_@HZz;a#SOv5Q+mC@_A-k0pYXHS zL@&RkyrJZO$;OeXl2^<@Euo#GK`T0;?GW{pGLy&oUyHu#aGWL;f8wW~Hd^AfKmJw3 zQSdQ|FkQ6w-xD~nIg^J3P8J65O!j22kGLU2VQ1ri9#_vFP7Az&$=;J6LIpHD zq5RKK?EMs^dYLL=bSKN05V3&gCuIZPGRS5;fB_Bwm*_r^=w6!WzLV%ai0J;7_&$m5 zI+6Z*JsMav(+6=_%XV7Jc3d;ETQhQAqY*o)7Cot!IB^jhv37Z#Wv3mk+6rp5y6Vu6{kz)D!)cUa(W#-U)! z|N0T*0LpOyXsa|980Y`|SaARkIDkPMfPO)*Wm>ppUbtmlxMga%Wk1W(qH@1U0>2)6Qheqcg@a0d!mm6Sik`=5Z!AM-ACX65^(@W zIDj5$0O;I5Hq1l)HXN>@BoMzXV#*T+B0$7OOgtN0sf%)q)|IxoHU=U!1Ew9nMfZ>5 zK&XL9yOp~Bsc!*2NGDmrj^*DceBp4LtxyN9OX+-$nNc?GQ7RmBhjFZ zp;%|dFZn{rHzx%mN_Xpb?L4avCAAyZq7-|yPuTR^DayMaA`HvTa*_%-qB5a*zaNAO zqO;!%)OVWuo%pOMcfL9{bWJ?e>j{Zp`&$K7Im+g_$TgI<$zRny#ETD(PKla#itY#Dw%m7t`qAXeZ zrTYN4rr8qPW(B^dHzyrPF~(HncRR^T_Zha$SprW64myxV%#!@?_Cn=l6xZhJ#LCG7 zINV{xQENK;i}{yFEMtlMPfl2CMv_KPm~amZRlOYs`AX;9nlI*L1CNZ8LM|3GB^yKD z%w@kQWG81NW&d=?`RCn;TB+jQQU$lKY-D|r$w65=N9KOnHdKRfl<3unPm-h`sV)Uh zttwrYwe@JiVAZ&!&KmcSxI4Wbs{#Ac_;%_h=UF2^RJDeZPJjiK^DL~Br}w$;ar2SB zUAL+%$yMVF_3EgNWMf_YwZsTr!RQj-`a#L}!;TT340yf-mof8E|XRO{wy`ApO2JUvR*iMSfop6+e$P0THRXs^$`8h%w6gSs35 zPSB<-Z8?WOzL93_=65_3D(PLjj~cp3^ehoPD?8~Wb5d$c|K-_wUGF3-x8M=g7yT_@ zcatEQKf8lnb-h}b;+m)WZGBqC8|n7K=yz~ooWK~jjT~nASz6|_AKjcBx@M5v?z(nE z>PoI7sez^Qc~56O7nV!~-C?jWlbuO>cf|I;%~9KHWJt-xtC9j1eny!(o%1E}0U>$k zXO}wgz;eR9IBVg=3l%q%O_m}Y(dm?hoH}-4FKsc%huhrKFR|;JiF1+^k*{HrN z`M`F2H&>@{?vmOq)!-LgRV5jw1tdy)Ad$TP0_L zyR49}#@l%%%0jY{`QQ4^>F14WC8Ve%e`#=pYFN_f{dq+swAn6xE8I)4q=RB`zx*-- z6Tt?;Kf@w!`*qW#v75a!^f@$ncAf@4{?D5Q>OwK?Qlt{J??Xbk=c6OS7?{{)GKEDc zfagJYKf4KiJ8BS?BwREbnDokHCS5X6p5Hy(&*XLNNH=>vypk8;3FVyA4eC@VTT$vo zU3vosqzmsUJ{%O$wxvh^`G?P&T^*SX_oQOZ;d06bzm68{_cIgDvm&8>uPX#>!- z@u{?`mY=l8+7?+y1tg0d?(bb~Sr>ClTaUf@o?Y131TQ|dC@+FHnpZM8;E}vNwIV|wHYgu>t zX8k~A`RS3>OoOlM99J_?KtCQLV0gOF%N{{&yxZ&@cnuABo(rbiy#GTB_vn-oB>&z| z_&X>^xK3g>x2`rib(|euSher%WBO~bl3;J{>>{-4!uI->+vywQP29lM-ZyhL)%|^y z)xa08ElK0M&lEd*nXVX?Ep;~GvG)jlx0U@qA2(F?AJG9?B;#D$SAP8kGF7k`@xydu z{eZ8raobgS>OmcsjLmbYKf?p}3!ML)ws`FY7&dJy)6Pe|R#|yg4E08aI-yQHOlo@d z5`N2y$e-ly;m)K3^-7(f3J)cu0-_a?iwy`)Z+y;{ZHM8bt0%}B;!vfG~> zS%U!2gs7ci?J=4=J2ulUqM%JRJ&;0~aK%OzL-Nm;g~BsHs?}AIA{2k70B0)l02J`h zc5>V5pgNgIA}?X$$aUVLBhFj}9cuF7D{7a+&E^%`zSb<^E~wvBmEP1ON>4Ur{sP@h)ju8hp!`lK}BKmP*8%9{}~+@R)@UQm1Se($MIdNswBhmu6O zv`@NCn)|{Xjoult+03(r#qvzG$&6OJ?x79_O^lpVO0;glmwe zZZ@{Gb!$Ld#B*CPm51PJ6^wAY%`1o10b`Q;Bz_TPl1LiF!k{=n4@c|$VG(kq$V4o(fe z)B9L@l?bmS?@v8Usiyjch+B%g_ZbnJQA#;t-xL_QG-Opl?e3ln=#B&_03GaGJ>CD!_se|h%&e-_8RfHH$D{{ z9ed5Gi+6XdJ%o_)Ot&F@MGoFNugsL|<=B947vlAh=KXxs8M_mvIK@TX&Q0CL#9ptw z*1Q?zpi`K51z6lV2b}9^uHtiS6zv8IT>xEKP?cK8A6yyHhAyV9bjV#J8=SQn_z70~=kL=l-^oE}M7O8G2ls@ryK)Ab-q1l8^ikja`mNz=8JA z<9R5F{fY>An3eW#@Nbp-gp1M4o*6Vd4q`6vM<-4RB=alsM*&YJQHn=_?VdT6dnb@D zPpCBuDmmHDZ%vBRPcoq+V2KD{L-eDmX3n8nV*#ZrxI6NZ}>-ww@@JrKF1xbmG2p ztH^}~)%Rr}j4~%CO!aMQVf@6uFjwu|us{DEL(5Sl6sK-_AwLfF#K^(wvqodUx$eajLG%)tOICaVle``3TC70dM4%Oa)iQUbC}% z@Z2}YUQ1|YbKf`ryn4S6^I$>s3uas~i;+K$3--R9Wu`cNlrGH(`!{jTT>tJG@i9I5 zQT0}a;L(i*l|OKsX~Xddu)iue|Q>Enznr zBcypTk8Aj$nu|&Y~v4KLD8LYMjSczsocXOuSX{mU|OVH=h?B> zddvoA>R->wZb;YV{;J$N78zXNYM_U5I#-`@Gp=$!ZW*eQ3)UV|Kn4f@#}KlIuN3CY zfs$qi0MW&{p}Ya13-NjsRa&4bP7Xc|qo=xAL6f`R<{UFav+d~xL}uv>g&{37ul_To zG|U87oD`>E&uW&iHgrkVvR^2mIlenrkGpquxF_McH_iTeqrR>Xgzj@)e+$uDmcG;_ zgwC|$&ukd*j^b3ov-aJgCC3KDqHQ7)C8;<68GWPuF*|&;rdMpb}qI*cUdK4uGKeF3DxQUWK zPK%U3N~7;gj1%v#^d_V_9z@l53JM-dAu9K6rArx?qbm3N(2NJ8*XZho!OO>PZ5>cO zAJ>`H(bYNr!2(W%2!DV4u&8kCLvib3jj-C-bGT5~ME$PJ|I7TK*l4dxZg~amaxp?2 zkCA7eu4Mk6b1tgi%a^$6;$@U}B8EW0xFSgiMAD`s@Y&?sEB~<9zPcJD`Jb015ABW> zhsBg#;y$}`9jo~G7mwh>{|;T_<2ZiP(5_X-ycF$TYZPKoWn{nAWJ}DfteX^9h>LpoZzWM|OI8n9~?ax$%R!;_k zeoyrVM9=Xh-W8q5!hcAdSujLTaqd;BuL_H6=^tMf?1Bh~f*pohhX-NXUGE8cQvEBw zxdtl-E<36e75$atcKUq}RJ7a*jfj+ps?V-GJt=`*=FkA^4fAQYa~qHc5K#lx0)tA| zjl#PG(qxe%6ACBNi9`W6VY3z|8WnPNT?MrQQn>DN*v2vi13N!EcEX(j-=M(;-CJvb z1&8WtCCBsti#+nvig*E6!C(!c%H*(XksjqH=R0vr4o`_w3Dv3y&4=KfR8vhMuR|uv z5%&kS(YgXqh#+HEz7{L#A*A{`SEdn?&ymVpu~MGuSN#^%rjcdofuce*jnyPgyf5$` z<;d|K?uJk=4_*E&)0awjshtJBzc^Fs)Lo_t&DX0q{Cg2=Y~h(C#N$z~8~B}j?$Lp9 zt8oBOZT$!X>ug^d>j-`~SakXNZgr#3X?SMcUnB13In9~phlhtntM>gzjzl5Tm^jO# z-PI1Dl_WwewLoCCyOBi)uP7#G@dIChExdOT74GN&`hZbvVm;sK~+ z`i7Pak*hFyC#LjWFY&m9S>ARdcz1L%=9uYrks$$5q8{d(uM$k!!O7>Z~M|yBdnVDs*>z5Ka z#*3IaXRJ?`5@j>lw@+{l+N;wEaE^WMco#K}Zc@rvf2AU2fy%PAt`MTG@qNrO)oqj8 z3$8R z`yhxrB>IrajqY;M{Qjt6V~NuUekA=cc5!#k8V1v@#ro74y5ZA%+Qaoc@rzn0+8J50M9kKX`nEu%2Hc zm>D;b$!!3MvtBtDN@Ow#Au>5>nL;<+M7nPPp?VvSOddm>na3`DSa0?DMyu8qdU24U zgxL>fup)_hyvnn60{UtuM6$vY5)56T z0KrqcsPcGdjthvKm-VD-DExfVkiP1oO#j3z>bx!e5g|u++|lC4l@s34u#bzukRksp z=S%M@wXS&otep^rWx@VF!NcCm;Eb;AZI2$AN8Hk4Y+;!E*N`P}{T6SOcqzjk(~-<$ z>n?`@=OHY@{Q|&j)yKB-X~ji)0wK=0gUs^_F?zIk@1mV?59`rfMn7?f?T1=!as*1J z&N?SYSK1GOHDq1Q;{1&Hf&32u^hTqqKgaQP7%Q;0Ln+@;OFK5nvHBq|pv^P!viwAT z^U~hTG4ynWa~Z~q0(gzh`9r!^d*v=AgNkS^K(Y%q2K=g4mL_wGHPgF><_ z7`^o`ZukyA9r7MvrEXfrML_6juK9j)7bLY@*JR~7 z_^kZW*G22{&Gas4aFeb6gq}`Up!BAT98}xo~zbNlU)P>Ddr}MS4&u_9-yAC4lbL)BsvnqJ=C!K+l z{m){{N~%qW1MmaTRE9IAsCQ^NK+?6;P0s;Ez0|f9o$j)9%Lb|dJz%@&2>M)dxNOnT#JUb@~^yl+9XWRG%K4>v_WCrqi*ed)O)tZ<8 z$eb<1Y&4)VgFkxloqqkF)409t#^&X-jUk4zTB=E|qfb}HvB6dI3lmvy9-$m3Al)?u z?H#!J*Vy&=Z(`n(NA%?#I-Gx8zWKx0pf!Ir&X)#)3C9<$)$6Dcf4W2UQsEhg3|kWmf^`w8iqF>Qa3F~odm~Q z-)`{6_7^8k!fQ#b@g`ZfQNoo>Jc#>u>H&95uob(S97DmTrjRfG#0Kqey&eFbd$ZmY zECqfXYM$EfIoW@>(x7+wx0|ln{YpMsf;sMx!818=SFjEJ?$u)HCdjq|CLznXiZBTl zO4Dy0-F(DJjInjn{xtsS)6;Q4LUw3Mwj6ur7-QvoKViLhN$F6$Kh-}|w+W!^6ES7) zrHD_LE2wKpXs4AlWEN^{x&9n4eA-qn%E-W5f zgnQyqoUal4%__EfyqAKyGZmFjGa16!To!!#X&fy@4PINp@+Pa zZsD@DocWugQ}v&VLAgozvw_0eVh17lRqjkECTT5X!j;_9zb8*w_-*MUpXj)(?1g)4 zY@8FA6Ibp0Gt@Q0=b2%AwQDE%UfnN?b=u|aO8+@eR>yCeb zzR1u!TyiLEHl=>44UK)1UuEoA<0$XJT2M_t>>Ul^X;}_Xz7wF!wfvP&wGif>D5Vj) z>UQxl5}5zNpLC=*_i$eIp9jKnooNtcc_#7 zJl90b`)y9X%Iy?XbnKu#2N;w{IR~r!2GAj!+-nLYBy?hW9aOdD9W`4>QX&U~sGrS2 z0~iF?yGvAG>rxC>BX!yM3$CAEm=M#M3VfHH0NE>WW;r(&7SOQ=I?Z2+U8{z0@7OCtAX3=z_;D=t-#%SQ@-Y7D=Mg_+V`|~ zgq)D(s+(y!ij(s1gq%BCmt%5&7raiB$TOCvEn~JYrKQYGAkZC5m6g)x7NHzQ=Dozy z_a8Yy(X4Xrvl{Q?jkMq{KXM!ueUVC6g1zzpe)nf*AuI8>vJkPE+^JIR0eKbc!x(E3 z8f^=`^o|!I$xhvRt#+ylb!m%~y(GoGlA%i1y;VS(M0@qWu$sdk{t}ia?CuCltIxr>_w0o-Y&3MB=2=EF8@k~}U^kaY@9OIBHiyz!G3%ZJj)`Eks~B418!Grt zc=orud1|`)eAmNn>JDn(-@$&=d-bZN%kxx`-7<-U+AljLIrWi0sMJX+nY4o3zMLDt z$5VZ)3X65mWXpEqU7p^wUfLhs&JjGAu}&oz(+C%IqI8}-IJKr~hrRz07;xRyeZ_P@ z0E1*!I*+~=zplwJ$`Im@=is#6#`obF`z?~Z()z1Asr0qF`papPrlh2ehNPrYEp_$3 z-20Cf1|tELn#l#{Rns^te-ro(OwwokDb-34v|$D%g6~M)=t2dHf)HKp76;pcb>_s~ zVW4syz>)J*4)0b|QE4+EHV`*()j&G%;8bYVQqQcd82?6>>AOvcuN(sug*vF}tcmu$ zz1to6Ds8Tn3q!SRBror` z6O=2rnrR`Vdm%-SK1pv_W8u6lsgn58 z_#>|E;n_Rcq4-iqT=3<{Pld;=9l9Rb^AGmaqt+iOH-!WU9>}3R0)LO2YX@>0{#iWu z&bO(AF}Csl1;U2K`3*Q9ZLl6fcG7;e{JZ7m^Vh5w8R-%`ww*X8CY5-XJJV_GfE(L% z&-qloPD`CMB+^+I$a&G6C2z{a>2(7-_y*S3KMtFSx6x})MVURw;O%*+@AoVqs`z8e zTv&TROoDgKb7wOzBErOx%npJ}3(AP0t z`k#qpgz9l}3bb8Qm6i62gxLIcojoi1W>A)NX&KYOF4&&}N)l7k?MW<`EE zQFB7z}Y>dH5^Rx!Wl}hu*2F67^hbou-pF=}ak*4GR8sl!FEZ^wJT|cto997Q1 zL+QQoraQXf5aivj##bB(tyl=2P4$1=$+QW~!u+Qeh-3f32eoe@BatC$VpopBOycHU z0%xoHpLWEns~*q3$$1YWR43n=xPcQjYO?->skC}j=0qDHViP4TYgrF; zg(cJ1-^?X>x9#7zEUJ0F-TnRz^`=*ugmtm5Dlkm&-6_$l#2&MKFPHM#%vHY`CW^9c zV&$8y3(&!#>Q9LiBanGur(XxBa~GEK5>*J<$5&Dbokx?ipJb{>diiVH-dEOU0u7g> zNGtERW2LuGZG8)t@)TfN+i(`*-6hM&2v+Au#c2|D|_F((#To$-5U2P@t5mw9CUA zxP%4t`_gM6kzz&#HFW`j)C|}cm)YN4f@9q)(x?3Czk)j_bLst}c;(ItI^HqIz?0Lm z)L^(t-xu$=>x5HSRc`i0H17PdP#V7QZ^nMUJ;T0I_CK!*@O=J@j} zPfu;`Ju3IA-ThWO*o@ObMWXI|V{Dn@?vl#Iv6obxHSar^cS$hKqNh?NvZK$4X--}u z^E$BX@h4AMtys(PD+USxgJG7^rues<$RNzVP-*dPdqK@4rzop_ zokx&y(q9h>udK>p9pZRj4oh2xJ3!Oh{$BnXCYzsYE)74- z%Oxorz1Y2we4wou=z`F#^KBzK#}EY4=RFqwyFJpo8L+vmrH8Y-S+9BpE^g1dvs=cq zyPdJPl)E6%oIunP{Y95-S0=(2Sj=l&8&ZFI=qD3-;?k4Ta28tLoKTQ~_+t?kxx)W* z8m|GtuiN$2Kpil;f8uY*h|--Y@i(MGO;!!Se)7n6n-QZJt8gAGoKHdm0#D^Wgly;2 zSjNy4`xN`X4CeDJp6cNJ@lWve9(yZ8wM9FFf#`A~(jte!KxR3yiurgXSWH&VIY~%j zmCf3{+kbEz{q(X{A@=@T*YZ;89!>y*!#8R3dk$%mP;V2GP{NDnUR|1dpae2uJlGRA z-aW1hMlXs_vRfQe9r_%Rv#;Hs^u)Wf{E4poITflF<0IlH^HD0^uk=n$Pv}C|pxB>< zE68X!zjrQZ#X=#hvJ@&q$-aBZyS^(^jR6h^fFwhONTnDL%ylKo-tF~ww@H8f@H7Zs z`)gH7r`g})>6PvRRK`QZ4!=Zg=$A7vx)}6Q;4Rf6`=014y?q5hb$9 z2wBoR)xoNO@)h&Fj3t|NQL+YvU(})+33un~ys^p;TS%N98D4*Tt`*AlHXhS$jyWBl z^aHNW-@a5UThj6FUMs2+9mFgvKlttZj|7bF1LvxH8#S%n&-$LN1Y`~@+woBSS8w%m zbpFm@*c+)TYxmaI4~@?L__9$56eGgRMzcfx&LQ&Y;4;hDbKNwX$K6zi0OtL_7HmJG zwz(yn!GA1FBjt<@NvN7LJIr+t&pkX=d=lNP-}1EGSzk38e87olE7Z+jIa(ZL*}s-~ z;on-sYjqxgDciPkMNmnGBuEaeTyi1|a#Nz#*Oq9~4o`uZbm3Bzy=g04Ehh7zI5BCn z>R7Qo4=Rx5DBtpl+4JCUuc7VCuARXg1-|HYl&m(U!_iAETYpc<6ddmjY94E=Be<^l zGJcSHfBgrG^T}X=SJksC=CCmsj@3YLP*B1MPj}`o!Dueu`nm<$!EtGiMjRIADA#$YG+o#kH>=UQejpWkv4BQGnWz3 z9e2$}R_~n6e$gc2KCq+$T+L%w99v+<`Es`JyM z%WpaA`*B?Bb1djDEUeswsBIZHwvP5CG&@3xbm5vE83<@1q&XZkWeNq_SPp%#uWUAC zR<1;3M+tZPJD|sPCqd7z|1>$YL$F()I!DRRCpXogQZ5vw83K-Yc>r`6}e&o8r(Z=Zff!X_egKS{o@e2q+zi4?y$`b1eH*e zoRUm1a-;MY7P@`qYoZ3CAxdg@g|u9Ss9}T+^aU#5s05pT)jd_>VIjG`#2tpq`w-0A zQ}^Y$#W6)Rbnm=FwkGjJuAwroeE+jS!#`SO9+G-n&~n`*PZxu!SN1q!dC$KQ73~+T z`yy=-+r{O@o8gshq(yZ3s=-G?rq2tQEAAb&r;G=kOUGwV{em7WK7XC9QhBm$eoXvS zD$<78Dxgtt3y^ZB=>9xvMpq&w{DV7g8|AcMG<)yj`f~F6SdWsSIZaBc!kZ>4BFXHP zO~;mSL|4g+x=;%R4nAc0QZEF5GwrwHnan@dx0Aid;H~?WhMnNz@ahE_A7-C}I&+Iz z5BIrauiV)M8BVhx&Qe=MN!(f7x8F7jk}{WMwX33Ct!_ z&GdU2(fv&t?S%kpv+<}_>G*@%|B>|IHGhA9=H-x6GU%bs5GQ+uAA7ZxcXz0$`lPnm z!-6@4W>f^g+uH9@)U!ykecImzwJJu`lRCpd>B(MuZgXR=fc!Oy*{JbNRMic%?rJzf3=eFczJYw-bboSofJ z$tJrrO86^J3krD4m*|nm`K2eZ12W>D$<(MCIQcwwTNTN8XfK|8C$%+m9o0do@ zd(tup#n+>eRbSit>PQB(JxKuSM&+plq^)a2axwx7I@Uv$FGK!XA^55p$__GP!-e0@ zjict}PrT$<)u`(tLYq%0cY|1-#zh|`x_=<|Vl6HA*VZGU$XjzS7Wo}m5;jXrONw8x z@%tt`SngjXCQvOPZ_O#H5*uh3u(;+FU5N$M4ImkWV(Ur#heLQJ4NyMd7XA#vzi;yv@0GaLud8Z%;Z`#afF-$NqQ+eQD?2njf{!qO_rbnzM>^}t>qdt8fCOkE ziw4%oMZYK>c4?k#!8gH38%P3`H^=M)u{pfo`lCkrIq$h2qqx z%Ebyw;(b-&CnaL4dQNT~G*5$LjzPE`_yx1t>csAksadWiX=5-g&@c9Em4GlmwGbeUM6@@K9C|C4VFhR`>r>Mtlu*|* z6%mXx2a&qP(ky;~G?yC)nl?>NTG(d*~o=d>^e2@i8n`FxwF_vv<69yYL=X}Ok0E+xK=9e!8s#oIOIyf8G#QZoG#vFGIm+62PHe$ECw3W(!T}--?KMB z`@JfOZ>(oEy@qLUT+L9rrnJV-pKS}alq(gh+WYC{LVIEowXQmI_I{rdkK^u5N9Svv zgIpM9>-}(Bo*0l;w^&(Qg%i7Yz6{1T>6#ij#OBK}$Nv?JA+`KA@*|PPqRA2dVzofa zsi*UJxf*z=t(bm(JVi|Z_(F!}#d?RIb+h5p@}zmc&nuo5HOaHKA?^CsU}|i)A2VNv zj+pYB2WV;>*xx5_oA-4!#||ARv2#=$K^okahb>&UuM}xLX}5KJzVt9VhezhCMtqqh ziTGCrU3sh=`Q`_v5m+;?gU#i09v&$EX#V~KI_n#GFiQ=sO6eyAy4zN-ksKB)MlF$4 zlTBDoy*mJz^>TkW_ps>oY^I&^yV-fmFfTx&6#+^;svIiz3Y~*v~j$8@>8Up(2|Ys zxzq3?464?$shlP|xdx~YBjp94wujSxP)O#2BkmawtouYds5o}fy9cbJF?u;3VH04I z;LE?+r1~07zni`1?Nsp>U9-Q1Ft&+jPQ|;7MF`Y$TA6O1cbH3F4-T$1`Ny?y>2w0= z?yWmbqP((MR%Eh(&g6)uJf*^s~E6b(takKjSvB1dyZ{ ze;P2hTC>42^}+VkDt3DxpMtSwcW|&%^7H!8X~HLrfTy{lwcjpnvSmj~miy=%s7#t0 zntID=cK(sa0$4qPkpPKv5yFS8P17$OLUgF?NI>-~(I@~zyL1#F`cz%`BKVuS&8`H_ zC}w`iA4oDb(plq{+G_DK?H`_Tz<0KXmsyj2e`3GGkY>06M7{Ni-(mRDwCZ5>K-r`# zs9=F|Fib+HBzVm|Puagz{#7Kv<5J@NE>akrqYP%JW6%RbQV2d3a%&i2xntGfy5bzh zRo>mIZ|>o|Qjm7auy+*XKV-^X3yzoTq+Iqtq@wKh}FfQXrtg zj6pJ)&Nj}S_Aj)J&HU*nY!=ijs~b!W>8HlXG`1ch<0)>9%0eCugL+H_()oL_fA~Ta z(}Yi`yZJSepSa%{r&-|gA;Mcci)KyJ#O(9fW_mFYU$6v~jr*+P*^Y2s71%UDPyE`H z7b?h$9<}ApGA0y`8H;@5tM!$ks6 z_)N^Qz9-AXkn|H-LP-5uAOkRYjV=NXZuhjOmWB7HV?iX=7jTj(fQSL;Q^?Bz011TQ z%!fhVpIhn1X2e58&*m%`(Kt_ z85YD@$F9We+kal_9NivtdS(%S)V256Y7w2j+9rvN+VFVxWKf18(!2N65nErTh{uO@m+~gTURQ0T!wYsn^_32{id;WaeHAq zQzXmLA|MxEf%OT)bq7pu-9^DCy45%0h7Oug%>1|#b?0;Gxw+qt~W z#?#xY4=#4Y-M7Js-v_oAc2lgJP9>4JR;OuZ;fw%5A@_FA+{Ok-LUu%3wuS{D=$HW`=7FViaBl^7IF zsk;R3&hR!hzq|-q)(y|x5v=3)OCB^;at+UDvCy-|#7@y>3+eC8`t?xjmc$J=CB)3@&yISd<(t|_}UgD((A zY-fg~NG{L}O-%m&{iV(lM1y4bW-+GtYCbMM_G^1M8`*{9df52O`>}}`KF-uBgCa7# zrSfGa`cE6dAEl@R4E%IQI(dp1Du{cn=2|+AxSB;Slx4*!R;ptuk8A zdSGsF)>79U0e6n+5>`CdGIZE+=00R)l{ttwoFJMYj~d~qtki!7TL`1NWp1SE-3R??#T1dW&Yeb^`*C(Xv7;DVX{3@jX78R*YxRw5W8L)2Lh_9d96czaTD6R+{U2{KU)Y`L;MAk@hh{yLi{eC=v>`<;8Oh*-!YqhM)C1p@8o>N6otijkq3HI^s9< zx_(a+l;b_GgPyIYG&&nlpJM6i?S6~h7u~HnS+A=l;8y8=QzbR-gl}$o%(uiUSTv@t zrfbOI_#)%-sT9kk`VYnhPh#n^mw~)r=hx;>^*@#?^v$x5{5<;7nv)6|l4l1L7-n6} zM|9xNumP@ku;paF^!)gIE-MF!i>ax${hu?Z2`=;`fQuJ$J%#h(d;{l+R-dfI)mYR`!ZrhubE|QD9`yjT%S#X>$2P( zq1)9p?}2>!={7^s)R%qqWWxFuBl>e4_H!Drx^8+TY3Hv*KW5--INRrcGaZ zIHq{gk}5E5RvO%`o9i_HJVi+q^Ul)3aw?F52{(PVvj>yY@$whreru~2rydbTR?Z7| z>rvEeO!lEc+c(lFM!PFI+?%@*Cq|18`m}b6wIAR5#n70x547^cZF{&x(Is)A8 z8L6=Qxb=J9inJy=GpBbOByMm2_C|+`d#rF6DI9sO!+>>g6kL!I`IcQ(k$ic}x%6$9 zF5SlU&+bOP(_OC3;l}Jnf|{$E_;oGr-B}N+>3<}cejR?S+oc`!8n~v=V=KzTHfVRt z2m)lZ>6$?v^nSTvE`X}!U1JYLtP|B0N z%uvPkTvBn(Mx#0=m)>#z(@e=NmJlOJs|sbC5%-dpzcmPBqVxbI0WMat;Q>!ww|AUq7D!v(|r>;zqo+>yFw;sj?U`8@y*x@eQc9DlW-IMyp%z#GZ>GnU`HZ`D3= z6Ld^*hb`|g9YApdQw8~sn6DG^x}71IO1x_n$ZtxG`i zN&g$}i(yeC9)k~bT$Lu=?g#f(RKm9L{t7bC2@{nID+lJ2M4t?Xm@bNF!$YKUaKmHx zt$CMO%Y49R^1fVM`N0n%x%Xq7{wyrgt`pQ|oVK$u_UTWv`2WqO)QWNe78%zIUp^;+ z1zF=S^%?1}@mJR5gKjrb`gEfZSkaR=KhPJuAjid|M+js5zaH*No6=ySe zZIr9|@YW$Ec%@ zR0&w&#&iC}&AV}nnE^_fDZw18SpLkp$J0gF9Bv(x)E#^!5`nY+b)M8}Ixx`c?RZ|3 zrUIGk?vxPpS#colEmP#nHmM=ZQ_oBLURu&fqP6tX6P=cs=!&g;-(OZVCmLzPpb#}8 z+0(}0&CP6F2jfk=Q-iVO*p-9LI{C9U<1<^^kekMv#>P`J-qmN!%vu&{g0srx{9Xj( zA7gTQhHciTjIqV<AZhv1917O8>@Wg0%3pd`ZuTWKhPENe$$C~_W^6BGtaa!Zl9}-jLjz^+PE0F| zH_jn_LD~z1mwEm93R-&?+$nz&T5Ak%&Kr-<8+vwz1wl6FiV*ElL!f)Bkd;^}L>gaa zQJIp~7GDTt9FxmMlirG70ethJ{{hZVYWz{*PyFbzZnNSPv|^3H*GN#)39)@% zT=c}|Ii$&0=w}X}8g!PA@Cli*P5AKG$QSJNLia{vtnR54tDVD%Z*;j?6Y~K#>T0LB zR+YxTa$=%XWVKVROZ>&SHo~(Dm)m2aRF_>**b*Y8;pBo^GW=1if2U%yk+t#vUk6tn z57qbnjlsw^M22PY4y3=r;n2z1_Z(T^Z z)2qvJnNx#e$r>(BLgpKu*&W;K^Cs8T{+mgc7Mba~u4XgyU69_Dmg(8;4!PZh-#W{k zNp)A6UNEsxvvZ4mRHwqv{W9D6lE$M#@v~_5dp`s?Ql46V-1sNEi)Fj<(M4DztgwKe zyPtbzdJp%y2*5rlNuXc#I1vt;q92M=$Ci z5FvXWAHYwsp0s=RbZCQg5IyP1027?Lq@6lS%*yX8?EkHlR2?cL3Ub%9;JfWoLa(*U zp_Kl1IebK*Ab|+Q+A}Cny$Yn4-IA1AZ)bbQG&%LF9fWHq&$!FUM^0@MC4t97rip2r zItkF&LCUeIUs7kd{A`Pv$4O^%r+(+rpKocccG6taU1@Dg`=)*ZHz-*H&RyW_zv03f z-)7!iYnR8mtNpm~8TWYPkvL+_hg0}be>IM{ugfXy199l~Oo>f>>JS$3oNNU2t4&C) zgV=TB8oCU-CjITZ-#B=P7b#+e)mHsJ;{qYWM!*doPT|OKhwg!fQNymO6$OvYray)z z)6w!CRNorh7Gx!fjq-p~_;G$MPMiu6RAr+N8M58`D04mm?JnLPke-m*?t|t}oj#EF zkQA-L6;Sy(g;R(qPi4_++#uCO-b3>=B_Wk;hf))B*G`OxP?MaUeA?wPY4ezEUQ5Np zMqlnJS1+eqcU_D#mvDCA$2a(wzH>ThM`zN$3#)hpIExsWEItuZ)y?X_ZPm*^NE3J8{iEW6>k2dY!N)y((1{B?DiBirZ+6TOvBv;51`wmJe;RJxu7BW0 zCM)S~-2t>~T*8%fsi$0HXskG5-;+zYy5*U;yZS!xd`)Q=;U=_YuqxJGUiiym*HDZ{ ziWK5t#!fZFh1a}mz0poJqB32o=-@ulgR1yUYBtF7FBc--IClDed8}gPjl1yUurF58nCvBwIW6 z3BgZk0fy9rXVz^k8@FOx-W@ele{OE%*i3_LriF*wT7u8Ex3t`fwaO7arQ!ZXkEd>K zT>o`o`C$WX8|zZ0eXhaza|2E1!$#}Nztcq@HijQ2pnG=^VZGmRquasvZkRf zC&4wzjR_S-{bO@i>l>+gB!|tByEUp!x+!%8#HXZ&h^$~CqfeR|nmKhP<)6IvCJ4sM z^w*0AoTy(boG1To*(u*$2JaN{)D0oN08-xleC(KDJn`JQ>la&|ZI$kSwYK=#PXl*K zbV)A2OeSWa*zLQXo&HR^%ws%MhvYlhQT$n^X%YZtBxmr0%b$6Hxs6%L7kDBP#HI3F zBdFGY_8B)dI=ObZDbAss>6qGNvLSJ~^XwuHNY(eNXI>?{D`DVbWEQHps~m+%G?wLr zT^7E1A;^(fb52h9f#7QVs^*N^GbV%1GF2vnc05>OvK|;5By8-C&qpvIqYCi%`E)9uOT&loK^mEJZ9KKqxT*KF?=N{Ce$>p9H`s1Go zuP+AiW6+%n-WYmvnJfh@F2kkCHU^?f1wFyg<3iX%G_W)<_1r$)=Ibk=F9&}k|Gj!| z{3Z<}Na7(0J-26a#~%Yyffh(H#S7<@MU|Bv*ToZ93ezrH~azMu_D#s~wsn(AF1YhP1{6@x8RJLFJ>0A$Ryov(afX_-E<@sdKs_ykrFVV z629Lv&$YRcvA?(_M>bRlpGxP5WV>7{*F$PnX`J75DOun2!C5E4zQVO% z&tfBteVK&j+XPHmDP^GvK_ z=qIzYy2?2ylTvT>@AZE^Eq|!l`d#xvU_;UL%qN~Io*nZ-x#k?g()fz{72R;vzCae< z%KjU#jBL9W1Nw4}90tu7aUE!0-v0UU9|gYeV}p^~R@%80x0TrX@Jrt^erdV@XV$$N zXILiOmqL!r0FD1xCZwVj#hnA6tXZpOjhAM+|8aaI(|Dd`Vp)j%xBjQ|h{vN!AFNi- zPd_Qf_7(;XSVfkEty)T-8Rr<1pOUjyOCSG?68-G0L??#02Vzq3NR=_6?munLQVM=C+0<oBe zItL`|Ww3w+%2zfn$~B>UcV1=4ED!~p4fe4>O!1(H^x?C>iq4aJL$X)UB=bNTaFS^Z zwA2yCI+?IC>Na#eHLxbvDx1R&yP`??JeH3McSAEz-7m;**7GdL&sh6BU{&9oM(ZWA zZywm8NZ|^*!A~~aqcCt+Er3Bsn6sgMvKr151 z-e?UKVt7J7t$WO_%&q`3H>T88m*n;CGiB^dcG5T>N%-AoyBjBlj)Get*1H|>8sLx4 zh`SvSSg%C$8&B3n@Euc`qc*C0h#*xJueppqnydH(*ev3F1^4vg{HU zRo8Wfm9Trs=OM#G8Gv+|sLb1@5Zrz&`{sQgh@Fi~XBg|M35sKL)J~B!O&NRxBY1TM zBfUMGEVEh0;_Mm1g4$$v6|yg;$xaFDgz;zGfmk~$QaBOq%7+H;%-cnYd%b0RMgyWS zTTFD!mL?C7$5l&FV&$qTg^ba{8aA7Ao8bdzlt)W}Esf*i730^6mWVy3U6NsOh*@puP@ zIXpCgKjX?L23qV0ex_&=kU<9>K{7^uaTxYFEumSL<^KU%{>L&x^ZKnb?1|b1o#-FA zF#f2@vFjZa8n^Q5O5v=^&g*NtP0V|k~DUjITB(Grn>JciOUu3ozE^E zgjaFX0Qn5%4+rS^t|$fwV^|@}V5OXjb?7m)i!8Oo)$}%D42M|ilLW-c9lKq3=PmQfR^zpiw3w{rK@Id47Q|(SnOe17%h(uz~f7%8Mlm& z!B98?He*l4ESesl-WZA+1vV$2V*Cr}irI9A3J47_%^*w{(f!P#Ks3Pd0DRMF7Zd}g zUDb?+GwOrzO(3HYUYb*gz-RUVCK@1}xwc`c)L6%{SO@l3lcSDj9^-B1+&`Zku0YfM zGHXv5U8$7n-Tdoq=C=Vl5$u`(?g)Ou83pi)*1gz#^@%KStXzB{`@g zBGYEpg@<)!6(43JNS52Tb8_a&oUyTfgvzc-NvnAq-i13j$J_Q-gMPMh5Q?JCv_hVL{=9tcF3a2i~MlFksW-IYjaZ@8M7IRatXfWM{&q zuls};{EW-I5bqDmB|!Q^M! z1fg8cRwUmcq1!^VM0s$x`4dn&nV`z%uH7e+E);*YHz)rAm)e4Wcf<_(0<&k?-$3RQ zuD7{ef!88jc~{6pK-Jm9{n#p=H~Jawt@=Yf2h3ARC;F}mwFt61qx+*`4f;05u*W^) z_Ps=&O`hlG`x&~ysk6$IaFv*IeG?b*@8Cnj1U3QBvzXw%OgZ<~ndWqo8(hFcG(`+89{0MxL@mtazO6e!+RU{trwgXPj z&#RC|s~Rz;Rr#7>fK$O`uFcTZ((^(ZV~UrHcl_C6_;)G`5IbiyNScPR8{Cr9zoxEi zJBmX3ZdC3$Vricc8>(K7&q;PBb!&KJU!t+j7tG5>XW1hdB5f5T*FL` zSw&g>%ek+DB%!%uf9XR%-0Z-2$wjG2!)+&Nip_I~pZH8uGf`b{) z>ik%^Tu+?)7eez`7_=u2>W7FN2!}4GK>ZQ*RkP|tkZ|U_l=-@}x%Qi+YZodfZ)C^l zEaQU#kfKSJZ0s6SoxnUl7UWm@huQMW@Hw9Em|hhplKe+Fg~Q^2shdArlycnyqzoG1 zX1w+DZ%X*MkWy4)vA(bgfYQ~-Ri143su+yJO=o6#lfw*m9?H4wQxOl&GGOER+3Bkd zkSIW9D~fIM@fu2|=5i+I0CtV7j(^@7J0Cvem*|HzWfHMdBK;Yg3co7!ypqXj><27| zsq)(4*#Y2Ke<0I9${P1ldk~zZ8F~y=#;k?oe8T@=j#Ugu7gNJ=VRwsTAXIO88CUKh z5XJIBc(4yuajnghwUKoq-5pLwk+h5ZH~0hrQ_t2|BberIk#v+rNIJwkm?;yu@O7ld zJ!wXtp88WWQIzby^T#7tmpKBA1(TvxL`cUfD7_lKT5G*EW-sO#p<~ufzSWiu{sm_J zXSB`OA?w}1Rl5GNY;m+JmxLaZJ|H^^yetbl81N$yqmf{IjMBiRO&3{=7v?uCc>S#t ze1d5hu(B?7SU2xXNQ~Z)ii|j6fD9V_U{8B2wqA@bI-8TPaOl_2l4 zWJhcy7zdkZBklnR4=3Paho27s1ee7Bfj9WMQSLO!FC&4v1ITS}#`99%1Uo)&h7$3Y ztiK(Fo4Yd+Cs~@QkKFd^kCRN_*GC3Uvp;h(leiqbCUW+=QSBw zU&5x^JNzM(b+b8dxHPKa@ZONi7hQ{^mAu3r9_@YQ-&f1iarzBQd^0jDqT;7Sy!$Ys zxZf{2es`3X&TAliaN)Pkj;Iu>ntF3c#y|S`ZqMiRA;m9Ure>9s^b5-wiCS2u3Zv7? zm%HC&VZInB9{i|8F5-GlvXbv3X;e+qOKL6l!OR5PD=*081y}BWwrFI`BpWsXqj4_^ zqk%B!B(iM^I<_#RfA~lfReGYp^KGH!bh7hG;tLjqkuom?PT4Z(gH=wFaFxEj{>M5gCxCO%7Tfnm)6Mi@6ixOB?(x4ot-6>!-Hx@! z#O{i_ox}y+wId&W&8tRKUn zzcv2&dQ3Ai>lPAzb`l%XR&&VX-OXB4Ci{KdRvCJqUKbsEReO&ZScc6Cl5(nY^Q0RB zA>{Sa9#jk$@7*q9X%F`GE*B#bE!R}iHPXrI%`eEuga!Lh#`d^quY)wmj6i@93`Nu9 ztJpRbeZZtRyNxhA+nYR~kK}#eiT*hM#BYKOcQDMW^iNKYL4qzZmuaINMU{0buxTeI zxa&}WNU*_Mz3b4tw{n>r07kgLR7*M8m#6IpL&;$zxOlFf`96jCu!qMd8oNsB>>sqM z&(b$F@So}>ZfI45!3L)Le+fKow@CS}S~}g%j>A{OW)^s=!Qr7eJ@`>l`s#7j zBh=NX^!669CewY+;)8(3D^cm%B!f5l3#{YezZgD%bsYWclzFY?dL(||@{CME_v!Kb$ajQ_K?xr zP=5MIV8HZE7A(}B*ZQ9MGrS+3eG;;6T;-Sx;N)4cSdBj}7vHN#&Kg5#<9TO>=n zQ$#V`Tg&i>ILH9K#|mpRN+9{JpwrCV`-y-`jpzXImaTKP9GTzX^;@ri6MJ}YiBHDQ>dSO zVdhg3`sM2iGs98S68hhdblN0I&?+abg;OlG_Gp@KdW5Dk)Seayql+xh-il6k>0OpW zDSXM=hp=ef*&EW2!#WR<)AkAaicsl>2K?!?bgZLzUPtTxtlhEtnwKx25j^qNSKD&% zSbcfr7Rt&K7{fjc@M%La#R#o@Cq6HNZt{Hule?xfn*FH!(TC&Hijyh{lLrQ*2GO=#H2Fv^onzj2G&U_lQ85I5r7}-+y7dWJ(tuGeq zb_^=ETBTw3lXqjU92=SFzljx3hMyhRFQ$oy!iP?AjHu&(yDhNUboL==NMq#W@ori< zS}fN6AJZ~_9IT8DnLpM_494s}Lja3y`%aRSj}b#kUkxN^g&Pb|i!zRCSHaH0@u$j% z7nZ>yreX>c4{V6WC!14NUn9!2%%PK-%ZYZ&SByF`{g(qj)=A9#A#BD~i%Fw%;FM03#mgw&d567D+PBXmgPb^wZ@*v-$B9JTx zGc)(F-kx%D8N>yor1{^KccM&0F1l^yNfU*3>~zQqcZh?9GN5DpV>XZymFf>4fe@L zU4%kvhpJQ90(LG28-sLv9%Jj=)fSvlHNf;xB+)BwVqlA}mG8I>#C>+S3yh}R{15uk z?%L9rtmaG)!6GEaXg(W@g>zsd)FnmE>pVENQJH((8nRT7jpk0t+w?lGeR{huHp#D6 zO8>Ra1Lt$(ii!KVNxzIu4 zs$R~i*sMd<+mBbN?VQUcE+!3z-Tj+3vIyO7;}ALzq%^T_5ZjvV z=G}vAPHNAv-DA7*H&xFYk+bkn7YS1XSI;}b|alb9m=U8VkNK#}VYsYZ?Yui#2aQ;Sa~ z713D~O-0*Jk#En6pg-YnUlQVobj96duXtU@U-|3WEjTJWn6$JYqHNyYT#2-R}0SrVo=Va@{KO z;fWNXZz2b{xd_<FIybAPg+NMOp{3`%$5tbVojdeU*0 z9ddFtzAJW`8y5`-@5sIG`QECYZ&X@TkjT4>p0l z+)v>d7y)N43~6eQ#>)(rZ#RbEmo8W%^S%YziK@O22Q0&i#jO?7HEUQ!-<3Y*ef4nw zGa3rk;^}GUEsr%_FL-Sf>~!WMThqaRuiCejjT_$XIe!>T(p8%OV}>obnd*KiS;x)f zYNU^7gHa&t#o}B2^`xDlY+YBK_5W1QXDz-328D=i3^dxD4LXUpKhv)|Q(rYH%=}vy zhzLmyA-xd!n$BNi!RV$um2*vI{{Mktt z*Z$^oGJTO8Sg&&g6&pQ%uk*n$<57{M2nwfBy_%%nFqIgA=yghEYd%eUw^{JJVHRMQ zE?THYo>w%nep{Yw^@1GfzyHS^oBg1CGN=3rBFBa}%QIPK4E}B|6@-kewl_%dc^nEZ zla>qdiLuMR7^sjb(q3}?H{YdyT@r`l-<<=xBcEsY{AZ$2U6jqIEvSE8I6*L$ahT(p zDb&U2(?xCVTJ^GTvN}({{g#jCy3AgZyx$m4{@Kf-S)wa#@zY!3nY(9gq|?06H)I&s ztZ(+!4V82L2ptLkb`#K9qrr67m&Oi;tEFnZn-+@W4FiLB$itHzB0BcBgPr1MTO+g= z>~u30`f-RnFP|A~LGpR9@vt-?LKx3 z`=O)pOOFa9qA|O_gafO52}Z(|GPO93fqOeZ0^4HR(vOSwVmpb>c`W182vgZGL#{Id) zsP{AJtQ@W9ldB zI;vLJ%-KR^BTaqF|&z0ccpuCO-u`y%g4s|xKnomzHoLZ1k}$BMw2 zPJY<%L+~rGjL~Pf8B;}abUilJ?vveud`!t3vnq_?8(<23b$xIP5U^^01*=I6DV#-6 z#z-P~{p0)UC5{2G4D!u0;ar15v%F2nwWMopX^|s3-9(cxV>$cd-Z>#-@)z+a?(TJ| zN}7Sw>lSb8n*wB)3HexIn4_vkL{ZX{ICB|DpjV>bnmphfbJ&uYni1&)z+?4}w>ZfV zYVB3^tY#miSj+Pk>7dOn-DL)|zYvm=x1nbcH05B>7`<_j7rdc$urQekx(-06?j$(h zq zbRPvgf8Y)Ed(~~~oi8K-*NdCpxS9Ve_KAQ|2BLcH$^)ATccBMrIAMj@`~Sax%iNyI zrdpK9TvYa=yQAnsSM2qwSE=;^S*TuL7VzlmlN~Ia%kIQD^JT2nutWIP4ytcHhP33R zas8LbiiqkrkYLNZbvwbN1w6}_u*=| z?u9e)I)*3l8e2I#LDQW$R*=He;w@fjh}+kaM1iRv%KzoK&g%%zjpZ)ts6g@sp5EWV zQ=Z3B<;DlsvU_bYnY-;yIol3@J6O?4rjI{{5cn&V5zhBa8e69c#mZ4drsj)T6XQs| z`!-xh^=exOi@YQLgouxGdXGItL)^X>1q2rLdryU2>|3f)YPu0u9K8OOE57jIU$KW$ zHb}slVzB5Xd6Bx6e`S22%c#>}7ij_4u+WyG>-PF{G{4xw=TR%lqor4;OAU90LvAoq zUv{39>@4I;81!rY37JtrfE8ZIS#Th9c{9JXK8@hNx3(@=-YBy8UHJUc?j@s+L$UXU zRSE+pXq!2R=$^=85m`&qqJ(+y1liu{sPoLP@~buP$WTq(Ux9e*s2SI>jef5;3l2|n z<*M&H^RCtkxp{+zo8-59s}?@+)1^V*LpUy#TpGhYezUX3@v?G$L^nh~a5FV%>4M~6 g8q`&71bV&Ay*^A%rpG9wSQ*hHW_AQ_iKR*WALGr!fdBvi literal 24344 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