From 8bbcd29c56b6b2c8ed631d6d3d51cf973165dce3 Mon Sep 17 00:00:00 2001 From: Quinn Date: Tue, 25 Mar 2025 11:26:12 +0100 Subject: [PATCH] add place sound effect --- assets/place.wav | Bin 0 -> 6274 bytes src/game/game.c | 1 + src/game/game.h | 1 + src/game/tetromino/placing.c | 2 ++ 4 files changed, 4 insertions(+) create mode 100644 assets/place.wav diff --git a/assets/place.wav b/assets/place.wav new file mode 100644 index 0000000000000000000000000000000000000000..67b8c488253bc52ebacce9d2b47916acca8349e3 GIT binary patch literal 6274 zcmWIYbaTrSW?%?+40BD(Em06)U|?WmU}SJv!@$rH!N|bGAi$84Sd!=^%zy&^|Nr;@ z>;KRHKY+}oq0ZUPxrI}dOOCsfTZq+>wSd)*HJfz?>v7g^tozx%u&rRb&8EP?#A?pE zll3#JAzKdH3bvPQ>g)>avFx+ir*hopIL;}|mB2NZ`!lzQK)V2!z*o))E=#UiTnD+7 zxaGL(xbJgsA)40?h)81*L@?g%1ep@%-V==6T1P$@i4+C0`0ZlR$$2gP^3q1OYRl z9YWT^Q-p+sUrA1u%96e(P%F4d$Wxe6c#*KHNTvw4sH4~`u_@x_5>F&_r5;L6m+qIc zk+zk7DXk*7S1?ZKpWsX(Ghuttm!iidE=sgW)Jv2|2uXdD43bunu90+*{43!h)x|%X zubZ!!?*i{C-Y>lSch_ zdO0#UmvKJj^x$mdH0LVjTF>>CQ-$j==XXwRt|?rlY!}#A*{#{{u<^2+v8S{D;V|bc z^OgOdT>qQ+QG%lEzh0Fy@gwfCzWSEH!F`9 zj~#CZ??oO_-dOJG+@kDT**~%8u`gx6%bv!ufTM(CHOC_kKaK{DO&t3;zj9h}=5WsA ze8DNr<-=Cbwwdi0n;ttWyBT{1dp5@+j$`cK*e9~@V}H$liv25l1N#d03+%ty+*w3e zZCF!StyvRU?OBsq+gL@}tl3o9JlXQtT-bBjc{nUMk~w~IsB@lR`_ER-wt?*tTPxcp zwg+rC*||9$vI}uIbDZN~Q4?3+FFZEw)>%Y-}cMiEO=WuI#1k860yt znEAr_R`Y%1b>&Oo-^|Y@5GOc;>jT$kE)Q;Do@|~YJPN#(ya9Y`_&E5F@yYS)33LlQ z7q}x}E?6UQQNWuknQI%@6_%eYA6Z0L%~`Wpds#QK#0x<6C?6#t3%WB14LkNO|a-&()9e{1~a z`u+CT<)0gVUii80=LLqV3{4C!4DJlI42=w}42v07FtjmrG4wL*XE?%eg5kpd^Zz{= zycv8M9xyy%U}9iqU}nhtpYs3k|AYVc|2Jo_WKjOY{pZu~JHL%;jJAx^7-lidW%$VOli@bQBZij@nG87$aSRCz$qcm& z4Ghf;YyPkLUkzr1!teC|lmCzZ=lRe2|KGov|EK-m@o&Swr2ldMqyFFfcjMp1f7kzC z`w!A>%^=1g&XCBE!jR6O$7sfA$0*Dw#rT=wC&Pb+YKA(7Mg~3xK88~a=NR_l_ys zw;Q)L_Y*dG_HS&u>_!{~9BVmDIdVCcfyIDP@_(vX8}pHJr7CbvElkR&TZvwhHe3-0VE!Jh42BdCqb3@$BZg z$u7eY%`unbKF1Eu|D0zy`MH9))^mO4GUJ}eeU+Pm*Nb;D?*zU_9QvI1IQ6*dxP-al zxb|?dbD!WA=Sk&x$!)|_!;`_gl~(94>PmnK#?-HLXeSahW6#sgbAzXk=Q>X=*K)3hTxYpfvpr$k z!v2xHoMSu3H;xF-8Jssc|8v@Nd2w}e9p{?Jb(V{Z`x4iDwwr9u>~-vE9LqSKas20W z6Pk3(e+VIWgJIANT-^YKNUrV4%V6gzB;5`8=!FgQExc+mcaV+O} z$-&PVz&VjqgENKGkgJeuBUdf=L2ecvN1hg*mF)2x%Q)V0Y~y6)66T8GTE@l1?ZZ8l zyPNwmw=|Cr&lH|)o(()-dD__avB|K9vG=n#avb3J&!NSc$+?`flyd`TFV|Tv9_|<1 z+B|tY(j3Vgt2m}|+~kn8k62Lyq$%hdAddJ|6x&ei8m6{tNt%`RxVf2=EK>alhsA z=3c=)k>@i{D6b>$eBOV&Q+eO>dhi|NmFBy_r_bNUA0n_;z?W+k7c+MZw?0od4=;y1 zMN3aKC2L zV9#e?%l?`@oMSr28x9@LT+aEN_c-Oa0=cJi-{pS7t;v(iW5%n+QOtRWQ;6$3rwi8v zE*`F6E_HPKFP+){*m37ql80+BavesM+iqB#|e&496FqPI6iTxbFy(-aprQG zuqLriU=3&MV%y6W!q&vLk!=s#E4FgB1#G9--m}Yd_;CpT`TJYo-~Yew{!aea@vr8e z)j!>T3jZSi`TcYLckS=Vzq|k1|1;M1%uKnEjv-juspT2)|{`mgU`@{by@sI1D^50>< z{jB;K`ZMZ}Y4L;o$F=WlKdygY@xA(+)~{v1%71zOs{0lEOZ`{& zFXvyzrMeAWHR z^zG!=Z9gS`-ua^=j-1u z>%N@&T>e@0^UBXLpPzl6_c`?Qvd@J-bbjpmUh-Y{`@-)D-{rsSeS7&e`HSe6W1p{n z?)+@~S^o2tPo1CQzYBgp{4MvJ+_wu~9l!nfy8i2iubE$!zOMS3@m1}s-q&|u)_v*v z^6|%}AIE-l{!sYw==?Km1nmzui?Da+xRE#kM|#iKP-QG z|JMA?`Fr8do97yhsCPxv3(zk`1_|6TgG z^KaGPoWB|WSpKX1m;W#RzwUq4|FZu!|IPjz{)e>x8vfUU#fty0`VVUR^#1Sq-}XO@ zA%Y>AVb%W?|Cjzh_wU%h{r}GYJO1y$zrKGm|3&`yfz>Gem;NvM-{GI}zn5R;e+l_= z>~qy;z0aRNE&p`&`x8dCU-Q4b{jvIo(vN%JXMNxN zE$f@&wZ-1Q;$ z1LKE%?|*)s`*qG2>o2!HCxP9R^NHuv>W^DK1bkTbCH{-VmrGwJe);>O^M~6HmLKXr zUVLBiUFpY*@9Vz*`nLC5{Wp#8AHVJVcH`TkZ#mx*f2#g``D5yjh#%5FY`_2hw)5MX zuPI+;zaIJ8^wsezJGdvXfMFTKYKC5hNet5%q8VZt5*U^-tYTQtkj+@iSjPxyv%hEf z!NADa!Z?v}E~5pb6QehyA7eOU0^=QqM-0yyUjBdaKkO6xr|9n?-~NAH`BmlH)vs+| zCw;O1^7=FH=WUz_Pyl0`uAJk?7n~hw*H&d_n+T(d=vP7`P;N_4&Ru+9sRoCYx38| zpL#z({Mht^?dRDalYgxIQS`(5$NBHmzsG%_{yp)#&iB-BI^RBj<@t5(XVKr7zixkT z|2_S8*WZvi`09x8UEDe?R_x`1j(U)_;}%a{vARd;NF&zyBYo zS26G3gn!Nd4*%QnZ{5Fy|Iz=${(t=U>ffV(oBquC)BY#?kHa6WKVg4u|0@4|{O9DK zb$>Senf9ml&xGFvzXN{9{<8Qb{Oj1y1wSi)8vfz^^YS?e_!xD^Sj~q>~99& zzJARG$42o_tDj6iPyT5B;q^oCN9YgvAFsY|``+-~>pR=`3*R!o@qXL%HSp`#FEhWa z`t0@j<)_Y1R-bNttor!yL&FET4>}*tz8CuD|Mkt6t}l(BB|mTc^ypLlC+SbRpU!;D z`S|1G+>g#5Z+~q2DEnRP`;l)&-@boa^DXh4^|y~-mw!F?rQwUwmz$qjJ{f%4{xR_* z^LL+bpTExf>iG5Km;5iHU${T7`Q-cQ^rxavlAjiR^!WJhL+HnE-xhwG{LSIp+ppKZ zwtY4En)FTj+tsfVzBqmP`uXMOxu1hR-~aUV`;6~A-}imX{}%d<HA{; zW&USSuHN-A`6JIqwr?xHdVlTwYWVfWmu;UTKL7k=`H5i^jE2By2#kinXb3O>0M`A} A7XSbN literal 0 HcmV?d00001 diff --git a/src/game/game.c b/src/game/game.c index aea012a..e200097 100644 --- a/src/game/game.c +++ b/src/game/game.c @@ -58,6 +58,7 @@ void game_init(gamedata* const dat) { gt, // time ad, // audio_device audio_wav_load(ad, "korobeiniki.wav"), // music + audio_wav_load(ad, "place.wav"), // place_sfx 0, // timer_music 0, // timer_update 0, // timer_input diff --git a/src/game/game.h b/src/game/game.h index f6c0614..4b42ab6 100644 --- a/src/game/game.h +++ b/src/game/game.h @@ -27,6 +27,7 @@ typedef struct { struct gametime time; audiodevice* audio_device; audiodata music; + audiodata place_sfx; time_t timer_music; time_t timer_update; time_t timer_input; diff --git a/src/game/tetromino/placing.c b/src/game/tetromino/placing.c index ab83bb4..2beec19 100644 --- a/src/game/tetromino/placing.c +++ b/src/game/tetromino/placing.c @@ -113,6 +113,8 @@ void place_update(gamedata* const game_data, input_data const move) { set_shape(game_data->rows, curr_id, game_data->sel_x, game_data->sel_y); // if the shape intersects vertically, write the shape at the current position and return clear_rows(game_data->rows, &game_data->score); // clear the rows that have been completed + audio_play(game_data->audio_device, &game_data->place_sfx); + next_shape(game_data); if (shape_intersects(game_data->rows, game_data->curr_idx, game_data->sel_x, game_data->sel_y)) game_data->run = false;