From 113811bc843788c269d1d8c7c3026742ef58ffbd Mon Sep 17 00:00:00 2001 From: "Zed A. Shaw" Date: Fri, 8 Nov 2024 13:18:43 -0500 Subject: [PATCH] Got some new sounds and camera shake came back but has a bug. --- assets/combat_enemy_hit.mp3 | Bin 0 -> 8300 bytes assets/combat_miss.mp3 | Bin 0 -> 5228 bytes assets/combat_player_hit.mp3 | Bin 0 -> 1968 bytes assets/hit.wav | Bin 150630 -> 0 bytes assets/loot_gold.mp3 | Bin 0 -> 14828 bytes gui.cpp | 24 +++++++++++++++++++++--- gui.hpp | 1 + meson.build | 2 +- status.txt | 2 ++ tests/sound.cpp | 10 +++++----- 10 files changed, 30 insertions(+), 9 deletions(-) create mode 100644 assets/combat_enemy_hit.mp3 create mode 100644 assets/combat_miss.mp3 create mode 100644 assets/combat_player_hit.mp3 delete mode 100644 assets/hit.wav create mode 100644 assets/loot_gold.mp3 diff --git a/assets/combat_enemy_hit.mp3 b/assets/combat_enemy_hit.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..a888f17e675605ffda621c3c3fbf5d319ae6302f GIT binary patch literal 8300 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 literal 0 HcmV?d00001 diff --git a/assets/combat_player_hit.mp3 b/assets/combat_player_hit.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..76e6c4bd7d2f657848afd99b532d232c5a0c4164 GIT binary patch literal 1968 zcmezWdrAre0T7Xymkw0I55#N?4D1^iV$r~Cbg&BzJU|B@(7}H+0JKZQ$I;i-SkKb3 zh-C)Mg`x^7Yz(~&j7vc7_>#j?2$LA9^#9*mAmLx%%D}+Ez`(1pfPs;vXQtf_L6DbB znt_CZ00#rVWL5mn%iom#y_^5rc;f#5RvdzV_HzH{@8J3W>+rk(f4OF;I7hm8il z;&89qYiU9Di$B&UIoTy0n+~47#v-zInL|ebd+y)4Z6e1uP7rA9;`md@nek6q&A~Kh zS!~-BBQJfWDHk6~Pu;5GWxyz!xWp#Cmqo(+s8RXdpeMcje%tDfs7QQ@bUYiIJ;jUd z*Hi_3|{_(lTk*LL(nAjWH(b|wENn|PO$}BdnQ!6gl<{C(s$KOE1AD_vzC{Y zhA1&IvPm;=yejdM-Lcte_mcMhRW;X_D7^NPD-W4)&1=@CV?X&@&Gn}CT;_`3sWL~) zslB5)_>8cL=oH=C#WUl2U+yf~>v?&7&ZR>bpHBsGZ2WQb;S#R}fs1BLu)5sUQ?-jfu1h_o#pORR z|Nd^^SRQltU$#dBDE%B@VBnnM-8$zmFy#Q#PXhysi*tx!o8M$6&L#)O75kkoX?pBk zb>P&zt42*hp2v5bTI#c^aaYerGq(wj>vSAHbZF@`8=g~oBqFY{PFN>KhDY7;nz~`H zzVzgGZc73T)jAgBJ{E9l_@Mlyhi^LPXcFOF>hDP!^SRRwJH}4Y`QeGPA>Tpay4wP_O;jN)b?NB{{PS8#aljmn(tfj zg}qT?iIJwNlcs8Fh=ylm?@^AXrlz(hA|fI}TwK~8Sy})8|FO{j$AW|L7lQX`XzqWo zXphMK|0gu^|NlS4#U%|ZF7!-8QGpCXW);bRfZqSVLsEV;e2Udf_}DD`0~G!Y42&Fe zA}haq1c!eUF#Jijla3nx|4vEy$G~bC8SyVoK?s_DI4abG=S*k-7DwRpLr3S(+^YY- zMN%H|e_&@g$8Z2r-U8zbi2ea%3mA1K4GfgU7s&jF{T~<@>VYPK%X5hNzzT~h<^upT Cade;n literal 0 HcmV?d00001 diff --git a/assets/hit.wav b/assets/hit.wav deleted file mode 100644 index 83af3f4c5405991bc757fde380570ff1c20a9ebd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150630 zcmd?QS5Ott7d6^5C(b$K41x#}B}q^e1BemDgaI=~#E6O_KXcBQ6%!^@k^vPJ#4IKd z1Bxg?(t#5=Ij5O@{eM;8^R2qCcjlqHdb)P)S-ZPx?bW-J5=M=hmx!a}Vbe#Zu3F#A z1|fv~dq>TOE$shx{(sso->`ax`~SIL1_Yx%mB3jw*k%qEC=8Mte{{p1%VU{Az=^+ zA`)&;Fo}ZcB+y96At8%|t0eePP;G*(Mz~>u878=91ezKCnBYGn1e)Ni85SAA(f|jH zkZXcXCirWB00X4z;fw($nBcSlOnPwrHc9TaQftOg!v;FcE3bU;(Xd?k$31I+}_{~1@q8Wp_K z!ACPN^e|WoH{>u=3z=F-R>3hPSSet*@_#e^&2UW%?Mi4?zy%f5YGAGghN|I%3ihbM zLk@8=2$KO#0+roxKmrkRn4tz2J^1~zFM(AOxGI5{Qs@@LZxL*j09y=)MX*!`=k@SZ z4@Nam3Ro(HJU;Z51E~S74#p`!(FM~wK_`Zba(FI-3_0W};F=8b1yC;lqY&!&FrE(v z89da$7X>f`;NAg_B1jg(n=UX)fRsa;5O#ONTNRwu!4Wk)6hpWat_c8dh2@>#*bUv? zpcKIm9#HMjQv}X@_}B<3EwDriEF~_!TjGq z@}SWOK3eeWhO0aX?}lb2h?QWkf+#-R{S7aFL6{I0h~cFW#&$zWCujsvXM%Ycis^(4 zRp20kFw&6=@K%`D2CqAzK?G6%ugh1p^18^k-}R6OcX<-3bq*G0FIt^ z!^#fGkV35pK6XJyD>%tPPl1OPqNETbfky&x=D~|jI4^?nBB<|zPyu9!V7Us0h~d9K z5cUHe2w;N_B4rTQ3G_~2w!wuakT=8GZrCn_y{)iG0~0Z{N(;R^AgUJV-$9^&cz|Ff zwEcy|c4$??BsqBU;cy3hZh))?@Rh+{E!;N(Qwo7C5Yi6UB*2xyB|hZ-h3XC%E{Aw6 zd{aYN2fS_o^&i;P42N1^atn-W1%(W5=pjP_NCdAna76@DTHrPh>^opVH+)n=wF2D! zEru>QD27oo*r$LvIcU3Jy%gv=xT%6g25|Wo@!w!-0D=!L0_ZJ-QZ<}6LA(^EcKi~4kb|RTD$wxZh!QX}_>jQEP>>c}8)0P=3}B)}SF}S3Ne!@62^Z;T4-L5kWGZ2S z40=moiVUg@Fvbk$5n5q@_f3E`LnjMOvPa8x;Ld|&B}`?Z_jd>oBy?1jFbk z?cX3m5frQ?VHrY2CfI|cPb^erf=V6i!jTsX9WVo_fb}{^q@$fyD3FW9B+R0tO*rDK zU>?9*Dg9q$Y|wXv1{z?J0d~{TdM9+x6K!=zaZX5Khb}sx3Et?e2byY$UULzfi)L7$TXv|K zg?|47!4<9Ti9R}^7q%$H7X6~3d6uZ#6HV!jN?nni6$)pfS2pO8H*)tvJzdZz2lSnb zw*K=l7w4_Ab9(GC~X>4~y^QLkX6?t_jxqpOan-3xv2MIpV>V-F5qQkvhYU>LQrxbTI7i)`l8%$G&Bf3?1TLJqDB2tP85m@NBMn`RX>zJ z2(6Aocl)A)?&!4_S`~#}4L}28QRpbtH4x4BM%pN(9D}CEqB#-hLJSg&M8}7sCozaN z1P$qrtfEowaJ08S${2!1#iKU^QPd!`FA>>HL@VP_*C3QL3FRlDn33oot;z0>P7Fc0 zqfur8+LVO0C7`L1XkZ|^G7LSOj@Z-Dl_6;QaI`xC?MXlt@rX4V4H=DU6VQqYNH75f z3_z_Bh!u|lCZLVuQ0OFdVm#^^g=z<(<`JlS2J)DQXj4&b5-OU6`j11Or=dYhP{}eB zm4q0x(8PIY>k`zm92qyEe(7lUG?X_U6|X_X%TZ<;YFL7vEkfZ*XxJiDxDqYRLPe=) z-3pX55jBiJI}_3NRJ0=nxuznYWb||rs-J)g79-D8v~?0n8HA3-p}5KD^8yqw4qfp? ziH_)QAM|M`V)Q_{3J}O(9TzSAw^M9Ta2J$S!tDZh`352@fL;x$+hM{S=!}MxsbGO1 zl>?KSs7w=etB~?LNj-3*LVPG@KB+%R?h=`eQu8cpb9Jrh_66gmPU9B7KJ%D{E8>-X zduN>VxNToi8j+Xy`qF}mb6@A3z14Eo`Nf&wg7cZQ+E^Rt8?1 z)$>ZM)29{-y&V27)}=&?le1e&d4GoguK(froAdPN>198k%=$BSc+=!L&0FnS9<{b5 zp6k33E_l16`-epKV}Zt{-rVar3!d49iQIM@y!OicX5wm5(D1b_V@j;XmQGH*2QnLFE2B)WvJR6Gv#rzR$UtM+}{B8S{Yi z$;aYRlbNogmKZA=~e+I5{O~a zp||i@a_4ZWGqR|w@lj{;sjiz|T|FE-p`Ay|Z`;${e(iSWm1f@KJN&Vhl45^xK1&qW zC99?@KHcbU?$veG*zu^7_vC2Th1Vk2R|2x4EAG9-{-W&3J4w_>#qJDE#RQ{zk3lNY zebJhPAtY^-!SA>Fd$DrsTluc_GOIP+yJz#Y=Q}4})m(I%}tOomtQo zTq8Qys~ex)T~a3=86d9uEn9L!+8iQDijlECNhd8-&fBd@(Z~nAmVN3cU(-WAEJte6 zOQsnmYkG+XTZyk`N&Kuu{2cy?Ctcvzb#gH;y|n$;vNnNFdwg>T-q4n4m1@ zb^Doa8T9e5+44SC9%Jn#cbz^>bC{f9Z+*wv6xH)dd9TAA4O|=o9PV8(HF|{p!IgaUZwTeNBl=V7J|uqt@#WatDngJ~wdkTnPP4tZs+- z$#Y%i2W4VkRm^A^zf0USTl{rjS5xxVy0be|P?VFG@=+#10qp`rN*B`fk0${ihoq%-r|*_~!C{N6K1W zmzT9Yy%bmeI^}7{*JqzUzZ@L@a^8?P&zD!>n?7#e_x^|G<6)>-+Wuu>(3j4jTI0I! zc@uxWG5@J^`ZFf2QIyp{t8cnFwiJ2d-mJa1S51%8raPO6Yo^Pu$h;ibw~zW0i*9yPOJdILQe8|VY5dM3Jh2PUcD%Q_(3&>IPG-jOq3Q_LgChNMhisHZfv8ACJlu-OJx zucw94MMR1FVX+pD@SM?z&(U!0$f38CBS}!4gf4g=$`^G6rqNH3IIa? zh-3}GbcFT-+(0NCfJEpg1u6e>1PZGDIY7c-933Q~6i3!1gwoJyGZfO0n;E?5=%xuy z(ou{Fv~={>2nh^y)(CqTXvIG%fPqqtaOnSx#4r%|A33KZo(ZR@9>9%Iv1qR}t^B?2gQA>Drt ze%b>a@I?3H(BARr=VAP}6pvho7T-geO8R0ShRy?<9E8SQq4x=73?Gd*xG*{&vPQjN zT%F9g^M<`{69<27d1R2)U4d1t#Oi5_RguD)b;qh`xn*vN<&`NmrLp$L1c$Zd_Hv#> zMW>^9ij#M@vur?*Z$I2F;;xOB?t9OA#&&xTx$BGf3)pA${epVO)cYi@3V3nWKl#3I z{Mp`r)_ERy>}5C9_hY;l=Z4pgL%xc4zCwxjm&?6ANB15w&8x4zm-&#-+&ezib9$HB zc_$t4$zSf<;OA?O^(AxsJVN_46$DJY9hhAaR4_m602Q332#y;NW>XP#<5{1h-}>NZ zLJA8)%US}wFZ%7h5~R8rva36&Y(>b9XW=uNB0gLV_u3rcUfs{%9R2Iczzr*h$^wU- zh>s=ghpE2Ar}N^x50BXQdG!3HqqFaf@jWq)5RHql9OF2B?4;navKNU*dnLXTj9pul zc=y)$38wMyM^0FKGO0g4rR(aXMHeRXQ>L!CIAsKX%3N~l(b~zUk52xwaZ193skn6N ztH+ZA118^YpBxsMw2eKr{_Pa{jl_dpV`gGwr~Vq-=S9Ms$g%H5qf2rVR6(P6FBls( zVWP~O=zk~CO*B$JGyZAMQPX#i&{YiSJ$y*~x|k)0;-4IhKb#liylTj>&v7RVv5N`^ zulFDPck4j!oc?pBMeBC-pSWib?eXC6!=i6=MTOA9ZP$f6QPGN$sIqqUsaBF|?!P^nzpl?-H@Lq1<@BV!j^$#jn`&*Iz$7cISy$?9LKPaPj(2Ui6wq*t_ ziS2WuH00}}Fz%J$YeW6Z&iKu)3VLn``up8~l$~FJ+`svee@wmaou|DMvw9uw=bg04 zuX9fCL)o5tmU{wQY(wIcHXyfr*HI5kA?t`z`pJ!2b@ONI=vg{)^*Q0w#sp{ zi_7o^NA^=IKNk)uv-Avi+#c)nYpH!lxt*tj&6^FD&Kldb?audT_DNf9`XzGx&e%-G zT>LjV{O-0??6Enz$>zUzmW9byU;J!C?H#ykJ8q!;{5AGZFIhX;Thb?4uJ_<>`^0(Q z!%{q)V;#)w9cOW&$fhBWyXYKky*qtnUuNG2bhlt!7(uUpi)HXgr=c|Z6B_+ECKX~; z7Febi6k1Zx60!N)u+awUki?{Uq^&=qbv|LV)2JW+RFyqYpAOQN+eXpcy0KeV<(eWY`xrq#lyHP)5CfGg^-<#Q(s9^B*)J1DsHSF}hf=<%l`vZ?vr z4a@6_+1T0sp)*au`;B+(c-S^v*_QfH zbTvhkeV|2rp6^^F{&}an=)JhkAQ-bwbTV9YzEP_ACXE&gpQm(B&FT&~BwE!fDq7z? z?=(MTiC}r1aMK21#RusfKV{89X=}Y~S+=sLpDH(9c{x~OD3)|jRK7Z>yl$&bPSTX- zX}9iBg}#@pcr2T0FP$GORual_J2hoom9SiLvqQEuOnWk3ElO2i8lbQ0&~M&g#Lw$l z?iztubK|3V=6I^TTb~!H|ME(EE!hzG$GG0d5O%?E@0I!HYw|#>exb@>`OP$Qf@#Gw zl<^s3>_iQZsBIbeRww#AH^iwx-V$bbIny?r_)}%kYddG+EcV2E9Q+NJ(T8(yjzt`0 zv5QG$y`YVxma5g8LPAES>w3R*VcKSRbqy%^J}X;DV9DNHuttW?H_29^@w;8Wc%@@XOVXJI+ z4796GwJug!Pjh#zDs~Xww0n2U@y14nc`=T&w>nB(oUD#H>`ixFe8MIFxl>}HYvooU#*8rEGl|g`RuYyx3Uhs#pxMoakkTH^8xFW;SOgOI9Oh> z&3Ct7vE9){YQH1EwrZP$x5oaE#%h<|_QM{Rgj~D84r`f=Vk*u-*e`ZU-U+gYopS*`GLn7hy+uh#nED;w5ar{+rzneT0upLHA?<&d+E$vZoqcR=e>hZS z+7g4QMPM8+ve#lgVQ)q3F|1DUC=$7*QHiQ0g-#0UDrhnR&(C0Wrkj( z-=55f?WWHba#;r~E}mdbsAKg>rn%;$Q(pAt+lVJd_W6EH3TH0&WgeP_kI`V-vkX}i zqh=*-*Ib7IUTsAkd;?NlF9kx%xXq&wiR>@{9f?`>$QG@f{Fuv((C zIjaBt-MG5RczT<*!>n#MYrlnQ+yXW21JxJTDmE=vrA${DpDJ6Xsy6i34rObzCaJ0q zX==o}|EB8wTl8&hhV>JTb-qS&ni*4>7Ze%pvq`^Kr0Y%nfsy)?_w|+s^#MZ-{Rfk$ zE~8pMs`??>oJa1yK^?C|m1iJKZQ8#}_x`7Gw~;EWhporV+%)Y~QuB3~@ts2daHW1k zfpJrjarjeH!BMi}KdRuOF^aF>biw%hnCT3dhFKcR`WT;mHYUdDS4uRaC#yn7s*n7q z-E~3r{<-{ij?#Lea*~7k=o6iPlJ1IRy4BeT2iPIuHI z*>|n<+Y-qNo-DAxbcRauJ60Z?tJqd1@AX=tVk!P4NuQ@m6I8MxV-)43il!5aMTceX z-{o$<6j#qne=nAlH_0N4r4A#+(F4Tm2TCt>OBTxo(|Np>eH}m7bglT>_2OvzF1(f6 z##<&3xFrd~`|}C+&Q*T=1tTQ;=1V5b;ip{Y*&OCi`z{LHE_99Piu=QhUdQ|D!8;-0 zU5V%_+{f#~`X{6F<{jnXi#sx|wFDA>x0zZL-ks&ju1#iM0G;REz*GL_?;b7q=^-5X zl7H$NZ=(?tMy&fZ{eqE0rjJ+`Y>8X-|2VyIao9 zX^B_2t$x$8t-YE5v&HPzawP9>hg(tnK-P7LVd4ZSdc`%;xS@ zjem%y?IT-Kv;Q8lYdXECA@W+&ivf)mhyT2o(X?w}^SU#Cv0lw@gw1XK9fs??jHT_@ zHn%?C*gUPe(XO?5)Pa^K)_+@OH7~Pl{e7#=QPaBrU~Ap_R`#pEy=g7if;tw)@#k*q zDu9mrpW7`?w|`pK!MezMTGEzV*SyWC<@o-Vaqi8JESestHa|Gs%30nrr}(dbY{%}( z4vAA+!Mo-kt$)+s@VNK86kB+1o$X`yb=77HX4iFk=C^Zp@P_*eQceiAob7tCu_G^| zz4d2De6NnT$*q*J<6$|U9or>!;!ztrZUuF$JJab;3gG5qBhqT@dZ#g=xMUmE0=-%3UX-D4(UXOvDt+zV4b)AQ6J4CS^?}K@%;?AtiU8A}> z*6ixYUdMO2$UpU8*XW$isiB=~pYpf==C`W5R$A~cR|y)<34-49BMgF#IpWdo;{BCf zJKlGGpCLHWUnq$cdFBh%uSGc~kzkuZGf}YEN)*QJ<}DL$QwUDih(`1hju_2fu}9GM zL9oeNv{fSd6)2qiMzHaY$N>}29Nk@wgf5A~^z+>ZI1)jDxW9$iIzv2J)2+BB9CKLs z_o`??t;iTEo-s!}HCE(XBVWE5y}u(kutjkGZs(f|Jf{_1;Y$VmTm=8bqLWMc>#aqcJkg=$ zqK)?jS!Mj&LSY(1I2yR)&i%h64A zroZ^LP?WX4`}RD^BYR2O&ThBi-Gof!?kl>SEw;{+Hf|92O%Y92cBALgpjyd*3Q>5t zXl$miw6~}tT%gu-UuePSNji1II^*tiexB3SFi*HNR`kAG;JaVw zxIvhhBedKnI+7(?-7cJaUg&;QXmLkqrRj41DEL?<3fv+NTrT4xIle&pq*ko1mYxY! zY`(7e)g-H2CVO~S=C)C`JzwUvO!nJfvg=9rwvXat2W3>IVsNT_ysxbNu$-w;9GI!- zt(UJZQ)aJG@?Xi#Zh=CD_$}%Q+jWTWc7A2caWT3ExX|- zsrf4Yt(2ZVD*5zT667jAeMP+AU;gKdq|;mSC{}W}QgU&NIR8iYk8m-;7q>qYUv!g> ztCy`lB&&~>b}p2z^H+?Wrc~{ep9_%$e2_$RO1Gy=?T<)3wUR@c?yl7Cq?GQ%eZ*4? z;*fpf1;@L621wFnvL$KKWv9i$V|S+U)96Asv&euOSd{kt&03l z`6*1f_qkGUuiWddw(!*3P1bM!r8#0&_j1w?eP?pGYYIsJO&o0y26Dwe=cV#W(p^nT|atm%35fS*E-K<2y$(?Vnl_4&O$Q7mLX$ zTxwtzxpxPYJ7LR8kjs2<>7a^wpnl`Q_77P#5v)(5?VZ5L1LHgD9GzlarIy;E52LVu z$5PfasHZnb_gHF41-daBW9FeVsW9&%Ri972PlF@==rIosoDT6R@Ro-+E~ULL#B8RZ zd1aWefR-FVyHtW5{f1YGaYrSl*noeTiqF1}Q6!3%WAoP0)C5g96gP0NCB2YE1=jo) zpZx|CkHrRQ(Dkb*CQ zQI)bnDSe?Nx2QZet1c~8actB(9n`!J>Vi=1-J@!!R@DuGI%kWfs8T~L)LxFz7_wER z-fBjmR)uTMW~lC(mDX#O^_7ZlcZJbbwbH24W~m?O)tE%-+abR%P>>&$GfI^eeC5Y% zRqbBY_k87-<4W!%m0g{3-bH1Nh79V|}Dwu1TlVD4mkk zn?2PDl#=eIEWe~&vR8R`w5q1JI*zRgKci8E!B=JmCb3TO&-XDUATl12MV>K=<5Y9tvNX<3-;;uD$is{B*BB2_MT8!9ikBfIA)cj&2fx~jZX zDG#@hU4AJiDwICW%INi~0|pfpsJvFL$SP4*omP@D$|=(of<LJhji%=fRrw}$&x6`CSG18# zO(RQvI!_tlq;ya!{dLOhW2&(GN?y65xL7$SP9>h8obRtR3|Cx?QtpgV-xI0Lo|>#* znvqSK&4)CtXSK(dXix3bB-X1(r)z%h(`F>-*lyb6n6?Vnhv(|2e$?7uQP-W)D97v8 zS7^`MYNhtNf~UIGPqdQZy7f7_yP>-2p1P4V{n%W?no#3;2O}D0JT=NVQ*PK{Yg}M$ zIOeOL`cON0yLOgHd-sseI8OH>S^NBnCc9GeOs`q;ToW0pjn!y`>ohk@G|W)#z!+Wo zUR`dcc7jAZd4z6jseZ#vO($tBvUt%O?vWNE19S?_wY5}?qyyv z!#sW-^>!M(N(Z7F)dMyw2ic}k{!^&j4r*{R4BHMb_EVvM$@OC>VF>lQ)m%8l^f$zO z*PnFwX&N}j^oM31T4WZ@H1~UJ+&jWBs$RePh~dya8@~3vM zhmKsND^1p!?esHq^w+)hZeO(J=e6x>U9wuYK3$t0puN+nS(2umldKInqv3XIT!OSF zvG%UDZqIei_mk@E0(C-->dq5o+$MEIoTkxEGo(SCH%+s8f_4w4+nA}dIia;4r&*n> z8TVepJ*Q=#*WKf3H|1)URBFz7>f(=SQ*LPBy$*s6%R6-M?rA-Fx=6b5jZ%L#PS>r{ z?oQVk-E})J=^6&>3+r^D(OP+}+S*-{8K>P!Y42od-@n(s5a_1f)L-@054x(qsW(I} zGKfYP(ry`EPBz%A)TdYIh91)nJfvw`pj~dEJ@Q$-PpUS5&_u;(y_vd$s!bx-SZK&zLmN`mM40$CLV#_GSs7<%{_Cm=(1hR*O^n-r}ZAEsAc(YamG)_ZC>n{*Rj>N{=pyal@JXLTQ) z^e3DQSC{KU@95?X)AykCJB7N%dj0WOV=mtiRBw=U7;euoru{a=1sacCG9CyrJ~(BF z-EM@{rZM5BgR_kdQ;dxJCbwvF)df?DkLko1bKh$wbkmrEnG2rDlv{?4cTIVtO`OF>MWFG|B;(u|qXaW;_-JZMGrhGnn;E3$ zkNNfybD#~?Z!jFX0?b%+E*mxMK6Pf7DT_mW2T^C@sBieWpGmpoy zQ&?UxHdl|odV@FYqpdxGCnH=MO&d3r=6ep$iNp`Sz+Rs19V7H&VfQoe zEl;qKB6QFN>w1gT$}s&n{JSs4T#2>Pap42}ek3iS3J)4VOFBY}GU3eav_;XhCJPz} z@Y}_BWI3&&jy5utmgz;`D5R++w6lxoYlhN)s%ZoBX*b>IPF#A&M|!WXbe}PF_i*}^ zW_m9RhFC(kx1*rvTfO+y2!*>TWe;IS?1_t{mBYgs6qz%J_7}4A5BYV-g+v&|& zj8)-`D+P3ibozfL+DBK0?h`}ThcP6BF?k$wmXLXIJ8R4)*3wHXYBq~xvsRs9rk62g zGg(F#*6Y!1({OgdZ|40l=HOkd2NT&I?aa~ztXmV<=X$b_UT1%`BL@2uJ%12;2XGpn z6LpK&bMLSRBoU7ZBD_EQLN{|5izWHXJY&Opp3JIVz}{NGdi#Mncrx>B4s)KGk+Y0( z-HtVKJu7J}t6j`=@?rLy!+f}$wbGUye3yOWI;(CJ>-`Yc!y0C^oEh-%h~XUxV42?zmL=3mHWw=n-Iw{^|F`_bEt8>_S z>8$BBtSJ)Kv@G^{Ct}7M_N+qo#d3DkYc_2pv2Had;vRc&2)p__u``xq_l>9vBwno~ zo|drxEe6+{#K6m(#Gl04Tq5)uF=`BFR~u(>0~htQm_MGgcsgft4A=V;cg!^IPD^gh zPfq4$&e#g#%R6@RR^sDEB5XY2JcD@Ei;!~JZKv5X9}edr;b}z#oFhg#a;!O=fC-!# z1BjE=?3&T+C`aO43Gsa~@tn_I;=^_v&3?9m$h*V|C5da}iEkD}O+3MFB^U~#<`oe( zgMD-_Te5|i;KU)*IQSCI&0J1_6Q@{0X!3}(yF}4RPM>OyzKYntgxDIxzI>a#u%4at zmoQEs+Gi0<4iQy1*;zZ-i5~1TGb2~8i-l4Vb zDv_5%y!%2dS;=X1jqk_(?=AQ0C9e7pr_TXyVj|ui`7iax1%k7?dO)C z|brymq3yb*{>}A}y>o|SBavmpgW3JN`IZRl|0=$YwbaldOrYNo>D#*2kf&U4K~iN>)oB_Tj#4 z*Bh*_Gg%!ESgTI5j{RWHVzG{FV-XD2rZFrXVtH+1c7J8QyTcru&-AZgT>ZqjbC{{> z%NlT*xyi&F)y{f#nDzTU>-8}fFM%cc%6#yZ`Mf_XAf0t=CG&a+^L!$+ZVn^AoN?*| zb9fM|M-;2gmi6r?t4AbzOelNp1$MiLoqe56-^vdD!S>-0En4=qv&1DC5nD<)CJ~pS zh+V%3o+W3pCvo#EaeE;LZW1ZSiLL!O={6kted4M!#}L4I;K3P?!Lcvlq`u;0?&Xwp zavtVzxT865hjE__=O$Eg@^U%l0%BS%yOcq=UL-8siIs2I18`!rn0>X1MK58M>Dk4$ z#P%cXae3@+5B6{u_S9Q!sUy381#77R|}Z5aZKfG=AmcIG!tX+dxo(uGv*ER`!{B{7xN9lw8>){zcT&Gm_2SW zuYP5o@MQAuFgA{3UK_$J*}>=%(uW!74x!AwVa(Wt4C8f%^eSWZ4u^y{I4!&$&$# zzoSKY(Z_wDX~O7N+~`FfG~P*CN*T?LL;nW!UUTW)%V@lGT1F?mu$A6$lxD1Xg)@K zj2SLhLFNm^4ltx}C=bmCWSX+O8qhF_!Yv8DZ| z!8$%*DKqfe68uj&e&Qp}sKC>#X%o!&G&P<&f_8QQ-onGGGjW%FIIwBa1TF0%9u|rJ zT8A^9;RpVe$PdByZp9Nu;}LJLwr}|O%QSTl+NV)?5#X*xv=eoB?NIz|86Fx+8}|f1 zRE=LBL$mu2PmjloFX3bF;3KuT%@Uev4^8bztL}r3?~ivJ#%JxoX9nZir5NuC_US!# z^r9Bo??7+QAk}MhO@q8b(dW$&)dKT}px~uw>|4OCL7V`kI#?I{ zzsi4$DEMAU9jK#b7*}!#!%d1=KyDayL^G7EqCs zsX__)T}%$0MJ*Rml}jlFM$K4AE%&5So{`5n)OrIsIgV=R0kUUQzme4Ex8&l!)Sxp| zm4pmkOn%-$PHrQu-cjp6K%@|~YoKB^ENF+wY3P{*jcq}`xv1a)cE%0AJqB~Ti&Sn{ ziT*Iq?kaTA3VZktmEA&DZ=(reXtg_1t6}Xm_<9OhGk|^?mj8jx z2jICIOdkY8ia|UDT$zyN4CcR7pPq2+J9zz~lv0vGz~un=NvCr6lFnIVc_g{%Bxx?B z){LjF_aOh?BSU*bkHs)9gAycC14F5?f5_~E)EORia~kF3L>5Jmw^B)m7?KHOmJHdP2D~O8&kpS0~MA`S&yd% zRFKoUNPaf8cRRH>ms-D=`q+;WNT@STXb!;G)o^+;xTL}c8qn`jP5*MY2-trTPCS8w zAHik}V%hGE{0hoABYU@b541_HB64D=ak)`^CrdzGBiW%waRu@)+A= zi$|`+f1StP&ckBAU{$NIQy;J=Y51&o{75Rk(-pr57-Jc}O@&$gMKLvy!bS6F|12ZN z4d`woTH}E`FU0A-cw8|yXBp=E0qg9C2Rh@UA7dfUvG+eP$wd5!C2s!+b6{b&EHTY2 z%r66bX@Rff;H#>!UVE|fD(v7#EOapT<`kAZ3?I1$4?K&zUBHRIcwz~y6VWvJmLWx?FWxW>SJ~r}hGG4@ zF`slSK!OGj#iBo9`9CqmS2Q95IYnZnLah53_M#s9c?mz4jBkp@`BLoGXRO~&9KVV8 z7>N5J{QM)VIRRhz4HqrK!=~Z=as0|Rj8=dZTjFzu;votwy%I}ViC>Z8DgWVuS6KZ5 zEM*+lqZtct#FOOsxk9`n61RSh?f-y4JCQezTP5TB3$U`|*w#nb%~hD2038p;f9%1>JisEOv2$LSE)*Ak z#XEwrGm+?c0SY*RzWhSg*RakGY*N?1suFBE13x$$^GU>PpCHc!wB{DtRg1iEY|}@S z|9`gX5d}CTBjp_Ir8Bl76OA!ad)`qa?4Y@WN+^V{OW=4cEc{LlolU6-a6JdlN`N7Q zM;WMdIRb<yc4S97qx$ruIq3QR-~U>;Y>XA*hZzdI0X_z}Gv_cnmBHsD7)c z2rGC>fYTqU6sVp(VfJ%MGn+bogp%!}#=aoc9psnEl>1^*T4g@hK!)kb3w_AC9i-Ze z@_j_s@yLncR7NBD;sTj>oE%k8I@yqI7fGi!s-lcK?@2vRptu5Z{4;W(4^{A!3_e92 z@`V_Z`uUpL&_-Q61HQxI$tH@OKs`Q6704*JzHspz*tw$cXJFq(J!z-Lw84F6WUxhJ zSD~Imn^Q9>oNp^FDot3d1vTT7@l8Pps(HMavccEISN5E((${YSOb z!~K7kL;pg)3f}&Lu4;(1r6okja=K`vC9wm4|9s2%1t`cGc$CL1ZdyKX7O2b`k`qat{Fkvai-a}$;3GG?7X=$+RT}1 zJV%X;(3RtKe~c+U(45SzyPIj96XxAhX6s;$e^0Nh)G}#WESGJZsnsglb_cCrl>L6A zdhTkm9(Lv=+qHpxa#<$@*g@CSMCi4D=;?emd7loQqWh0)+zh)q+)moA{Xf#psymbH zjM;Y0t5(X{?Qh$;BW+Baojl%#cCsI)*cJQi+u^pwJ$;m>C7RfP5bK|&uX*gQOdV6f zE-!1B&eGU0ot8tphv~kp8t{weyRNgx=Zc}Rmw8}J?z5)jc=MpNMhw$B-AqEdw^t9dF5avk zVdnHVPnVg5K4$&T-q%7*j!3gdy$900Z&Wn(2b)*%GObqcwG*X57`dqndk* zZd<2sHPpyhGwiWxu~&~K>PL&U`(sU+Wv9Pkn>NvuPTG90o*t^5Z*$?h$*}m#&tg~0@`Jy&&qDJ)8BZ-=Co`yHn2gP(mSuIdr zqpxa>qBfzCj>)Ot^~?GLC1{j-qP4~j?V79yA~m#?hHlegTeSTk^^Df&Se>~<*DTi) z1$0bDBk!9lIkaxPN&3NCq_es6z+Am%y00;ljvC*`kAn}HC-=fYdg?r7mbZ^R+-g@Dt&sp=qT{GaA`Ea_Kx6Cy4(^ppO+Ot}DgiaW(7k224+d3^p zSFhADy|lMSXLr#$Q98K3maC?@D(ajeI(3__@2hcRwZm>b8LRU;=#vK8@3bCVrB~}{ z`Xap)VzsmF9BeNK*w`bQT0;MsU{0Pg^ zCr0YSrn>p48K$QFd>wd4`!3KgL=UBzbHz1xQ;n{vgUV~Uak};+?HZ-C>T71GR{B)0 z?bIHVH6}$@C1|Win-iskN*UftCv<5HL*SqSRjaoTft8LbY zW3}O24LYg*g>2=!dgJdp5+B0o7ANNY=4Z>BbBXM3-;TlUyPF*dTdJ+s8lykoni z+FLtq?F`#txee-UmzJ~_JK2;zw&`e_e!zCzVyo}7=WDo?6I^V(%e&1zJL?|qaq+Qk zUf-;H(UJA8ev}(K+Fd#562Eeu@$P0vS8|+NyxmRz&P~1V!q>UrelGfb*K(KZf51&U z$k~u@HkNkv`j=H7Hu z_Pf+wF5?q-?u6U?z~xMHH;%ijd!6^TOZAs~d1QAvne8thUw5xPcm0b?YBjlCU7oxu zF@bU+L~@77kzlFPL>3K}oy{fBbC+_*T`n!bRb^@^sZmBARg?Lp<%4pPSx=;|4DKhb zdrGC2GNrb336)lF%DE0Qy16WDC577iuG~_-wnRqA*eT*SM*4-x58;yBMd~z^i(&F{ z7YXov#UCy$yUC*{32QAA+sfM6QZiX0CQH-+dDcyCHkJz$Q|Or-Q~|CY?o=w5iN$BZC`B zjxb4RAgjWqXgdjQBfXl*=k>DM3$(2xCkxBPU)+uS(j`RFelK~##M?lIRF$VCB(01b zuOMwoN>q>>3zq(6r9vU8S@6Xck9b{H-=3s=l2TAQc;u%*u?3||A-P;ewpNe;-`*0k zJ4jMX$>SojEl`RS6i*>}o?nvlN@f9hTu=f6B`#1_<(H%RrO}J#5>xZYiU3*cFL!cD zhMyGhlTojTzsOI{`Qpzn;xEqSlB||QIYrbtKN06#b~h*A!1w6uoMm79Rd)2vXOCabXRpjI_cG6~OTRpTua>Xk%VT86U-wqZo_u+{?D%ry{}8h? z{HM&nuKrub|25&iE%aM5vjzbK5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009IL zKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ i1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R;Z<0{;TjE$z+# diff --git a/assets/loot_gold.mp3 b/assets/loot_gold.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..1caab86962873bca185cee50d49dff2e8468ae9a GIT binary patch literal 14828 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 VLNPo-ssH=?yZ`H;{(scr{{nOg%xnMv literal 0 HcmV?d00001 diff --git a/gui.cpp b/gui.cpp index 7f57121..79e2399 100644 --- a/gui.cpp +++ b/gui.cpp @@ -39,7 +39,11 @@ GUI::GUI(DinkyECS::World &world, Map& game_map) : $renderer($canvas, $map_screen, $screen) { // this needs a config file soon - $sounds.load("hit", "hit.wav"); + $sounds.load("ambient", "ambient_sound.mp3"); + $sounds.load("loot_gold", "loot_gold.mp3"); + $sounds.load("combat_player_hit", "combat_player_hit.mp3"); + $sounds.load("combat_enemy_hit", "combat_enemy_hit.mp3"); + $sounds.load("combat_miss", "combat_miss.flac"); resize_map(BASE_MAP_FONT_SIZE); } @@ -114,21 +118,24 @@ void GUI::handle_world_events() { if(damage.enemy_did > 0) { $log.log(format("Enemy HIT YOU for {} damage!", damage.enemy_did)); $log.log(format("-- Enemy has {} HP left.", enemy_combat.hp)); - $sounds.play("hit"); + $sounds.play("combat_enemy_hit"); + shake(); } else { $log.log("Enemy MISSED YOU."); } if(damage.player_did > 0) { $log.log(format("You HIT enemy for {} damage!", damage.player_did)); - $sounds.play("hit"); + $sounds.play("combat_player_hit"); } else { + $sounds.play("combat_miss"); $log.log("You MISSED the enemy."); } } break; case eGUI::LOOT: { auto &loot = std::any_cast(data); auto inventory = $world.get(player.entity); + $sounds.play("loot_gold"); $log.log(format("You found {} gold. You have {} now.", loot.amount, inventory.gold)); } @@ -185,6 +192,16 @@ void GUI::run_systems() { System::death($world); } +void GUI::shake() { + for(int i = 0; i < 10; ++i) { + int x = Random::uniform(-10,10); + int y = Random::uniform(-10,10); + // add x/y back to draw screen + $renderer.draw_screen(true, x, y); + std::this_thread::sleep_for(1ms); + } +} + void GUI::render_scene() { $screen.Clear(); $map_screen.Clear(); @@ -194,6 +211,7 @@ void GUI::render_scene() { } int GUI::main() { + // $sounds.play("ambient"); create_renderer(); run_systems(); diff --git a/gui.hpp b/gui.hpp index b7bb703..b6880be 100644 --- a/gui.hpp +++ b/gui.hpp @@ -59,6 +59,7 @@ public: void draw_screen(bool clear=true, float map_off_x=0.0f, float map_off_y=0.0f); void run_systems(); void save_world(); + void shake(); int main(); }; diff --git a/meson.build b/meson.build index 19a4486..57d6711 100644 --- a/meson.build +++ b/meson.build @@ -1,4 +1,4 @@ -project('lcthw-utilities', 'cpp', +project('roguish', 'cpp', default_options: [ 'cpp_std=c++20' ]) catch2 = dependency('catch2-with-main') diff --git a/status.txt b/status.txt index 0ce0bb9..6ff4992 100644 --- a/status.txt +++ b/status.txt @@ -2,6 +2,8 @@ NOTES: TODO: +* draw_screen doesn't do x axis offset render +* Can std::any be defaulted to a noop in the events? * Save file isn't saving gold. * Inventory needs to be better, but need some kinds of "weapons" or other loot to get and not just gold. * Run the ansi_parser on the whole UI so I can use colors and other glyphs. diff --git a/tests/sound.cpp b/tests/sound.cpp index a39e4de..8d65979 100644 --- a/tests/sound.cpp +++ b/tests/sound.cpp @@ -12,10 +12,10 @@ TEST_CASE("confirm basic functionality", "[sounds]") { SoundManager sounds("./assets"); - REQUIRE_THROWS(sounds.load("hit", "badfileDOESNOTEXIST.wav")); - REQUIRE_THROWS(sounds.play("hit")); + REQUIRE_THROWS(sounds.load("bad", "badfileDOESNOTEXIST.wav")); + REQUIRE_THROWS(sounds.play("bad")); - sounds.load("hit", "hit.wav"); - sounds.play("hit"); - sounds.playAt("hit", 1, 1, 1); + sounds.load("combat_miss", "combat_miss.flac"); + sounds.play("combat_miss"); + sounds.playAt("combat_miss", 1, 1, 1); }