From 9099e1230283c2f6af365cf533582094f94451c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=9F=E5=A4=96=E4=B9=8B=E7=A5=9E?= Date: Thu, 5 May 2022 20:18:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=B9=85=E6=94=B9=E8=BF=9Bbgm?= =?UTF-8?q?=E8=AE=BE=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 5 +-- resources/sound/bigchomp.ogg | Bin 0 -> 6323 bytes resources/sound/bomb.ogg | Bin 0 -> 15278 bytes resources/sound/bowlingimpact.ogg | Bin 0 -> 5821 bytes resources/sound/buttonclick.ogg | Bin 0 -> 6238 bytes resources/sound/evillaugh.ogg | Bin 0 -> 15353 bytes resources/sound/mushroomWakeup.ogg | Bin 0 -> 7128 bytes resources/sound/potatomine.ogg | Bin 0 -> 11797 bytes resources/sound/scream.ogg | Bin 0 -> 13959 bytes resources/sound/squashHmm.ogg | Bin 0 -> 5692 bytes resources/sound/tap.ogg | Bin 0 -> 5525 bytes source/component/plant.py | 21 +++++++++++-- source/component/zombie.py | 5 +-- source/state/level.py | 48 ++++++++++++++++++++--------- source/state/mainmenu.py | 6 ++++ 15 files changed, 64 insertions(+), 21 deletions(-) create mode 100644 resources/sound/bigchomp.ogg create mode 100644 resources/sound/bomb.ogg create mode 100644 resources/sound/bowlingimpact.ogg create mode 100644 resources/sound/buttonclick.ogg create mode 100644 resources/sound/evillaugh.ogg create mode 100644 resources/sound/mushroomWakeup.ogg create mode 100644 resources/sound/potatomine.ogg create mode 100644 resources/sound/scream.ogg create mode 100644 resources/sound/squashHmm.ogg create mode 100644 resources/sound/tap.ogg diff --git a/README.md b/README.md index 931dd1c..8562281 100644 --- a/README.md +++ b/README.md @@ -73,11 +73,11 @@ python main.py ``` cmd git clone https://github.com/wszqkzqk/pypvz.git cd pypvz -nuitka --mingw --standalone --onefile --show-progress --show-memory --output-dir=out --windows-icon-from-ico=pypvz.ico --include-data-dir=resources=resources --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libogg-0.dll=libogg-0.dll --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libopus-0.dll=libopus-0.dll --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libopusfile-0.dll=libopusfile-0.dll --windows-disable-console main.py + nuitka --mingw64 --standalone --onefile --show-progress --show-memory --output-dir=out --windows-icon-from-ico=pypvz.ico --include-data-dir=resources=resources --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libogg-0.dll=libogg-0.dll --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libopus-0.dll=libopus-0.dll --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libopusfile-0.dll=libopusfile-0.dll --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libvorbisfile-3.dll=libvorbisfile-3.dll --include-data-file=C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\libvorbis-0.dll=libvorbis-0.dll --windows-disable-console main.py ``` * 其中`C:\Users\17265\AppData\Local\Programs\Python\Python310\Lib\site-packages\pygame\xxx.dll`应当替换为`xxx.dll`实际所在路径 -* 由于仅复制了`opus`的解码器,故要求所有背景音乐都要以opus编码 +* 由于仅复制了`opus`与`vorbis`的解码器,故要求所有背景音乐都要以opus或vorbis编码 可执行文件生成路径为`./out/main.exe` @@ -150,6 +150,7 @@ nuitka --mingw --standalone --onefile --show-progress --show-memory --output-dir * 吹走 * 增加部分音效 * 如爆炸、打击等 + * 自0.6.9已实现部分 ## 截屏 diff --git a/resources/sound/bigchomp.ogg b/resources/sound/bigchomp.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f9d436b416fd13f9da79c279af750ea9364b5262 GIT binary patch literal 6323 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 literal 0 HcmV?d00001 diff --git a/resources/sound/bowlingimpact.ogg b/resources/sound/bowlingimpact.ogg new file mode 100644 index 0000000000000000000000000000000000000000..77eb5d6edfb0a6707770fdeaea1190c4c6440704 GIT binary patch literal 5821 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 WE$zz*5HnzMF1Up_1Fvc|7yJ#f`WnXo literal 0 HcmV?d00001 diff --git a/resources/sound/buttonclick.ogg b/resources/sound/buttonclick.ogg new file mode 100644 index 0000000000000000000000000000000000000000..9ebaa90985812231b012ef4d97199dd4cb4c8f77 GIT binary patch literal 6238 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 L+gfnk4KmD| literal 0 HcmV?d00001 diff --git a/resources/sound/evillaugh.ogg b/resources/sound/evillaugh.ogg new file mode 100644 index 0000000000000000000000000000000000000000..37b10f13fb73445f637e17153049f8b950d2ab2a GIT binary patch literal 15353 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 literal 0 HcmV?d00001 diff --git a/resources/sound/mushroomWakeup.ogg b/resources/sound/mushroomWakeup.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7e5c368751af5380e1c28b3d0eeeec62c1e4afd9 GIT binary patch literal 7128 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 literal 0 HcmV?d00001 diff --git a/resources/sound/scream.ogg b/resources/sound/scream.ogg new file mode 100644 index 0000000000000000000000000000000000000000..109756726c4418694e840cb3121a1b45e968a6c7 GIT binary patch literal 13959 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 literal 0 HcmV?d00001 diff --git a/resources/sound/squashHmm.ogg b/resources/sound/squashHmm.ogg new file mode 100644 index 0000000000000000000000000000000000000000..5b154cad6b13f9ce074b5b1f5888b742d07cc50b GIT binary patch literal 5692 zcmcgQX;f3m(w(p)V1Nh#Bg+g(f~YJ31wjE(6pcc{C4_iEh;c`eB*+ZnL|H^cHWNe! z5M&uaK}A5t5pfFwf?xmAchk)pe_?tGnxF z{gy3sfCYava!EC+B)fKCqcLWfnBCD4+qlXBjL%sBzQP9Lr=KmD^~#xlHRVhU?A6>` z>^Rd)Dfw4(R+-kL3)ySKV>UZ4Ua-hzfrGuhQr-goIJ?-pH*umpAd?N54o(y$*J9_k zi0O$Kwdtq1_wpb(2LtfzAoAuDv}{(Y2{+eaiwV0sB-J_*?@cP>2C>eN>+(WcuiVM! zc8DTq%tx=KKL0fZym+7Zr&GUEL;VLqqlMC2E-rKK~ z5$UZ}<+xYKhu%s&8?@lgxPrddj@o+J&EI|N*!u*N`Bm#H=t!h@t+ zIF&!cqZwdkIaFNoByLPU8d7r-AZ1w_>N;9n3aM+8W^rRzCLxs-9%?yUd<;_h5k!+a zC!!%`S(@)KQlOl1ZL*O2+EoUrf|4g*FDkkrB{~-B@S>n3G;YjVYUVv!Hmz?;cnTFN zr$MS}_{sKZYO4EhXgWO5-*AFU%AV%Z$wzVFxi-n$hD#?4;|5P}(fMBc0;I;SDPOLf zJMFn90G5e3+A7N=JVeQah`W}DhzB)oD@sqL+E$)cBD<0_$5zrYi0n$z-9}H}>hRVk zmp<^DQB@nr+C5)tmWcD#gi5ARSGjNu6r{Cy1OsWM+rio)wMp6-e!h-fk)cR7zFUA*^~1Dnn5j2kn6b|DSMa z+I8qjc&3-S2{Z(HBc!D|hzZ;d*FW8~fG_migZJG-Y{{}}sj+K+Yj@wkneOCF=Q=aE zD;RvLjEBgSn95KRD1)!WN}wpQH^U5LqAHZ}f!7~By-$QJMkOjRW z`c6j|?gcFH*MXk;X4|!7Q`%}M)N!8x9#u*~C8~d4061N_22=?J;%UNHqU`=xuxqPP z0t~D*+;yNSB(kpOk?o*G=_Au(e2MA2+r(1SCC`NyA2|-?AA4jQkrtlkSR#xzg+bE? zKG1WqMKg|j*VU%t7~XaGG%wIpb52=0ZA(RMUc^0;D3^BjXhJ&8cYcX*yB#^Eo0e8q z53>bJgg?7PXuc{403gv}6}c22k>>gn!6%K}OyDIusL$c1dkyC&(rkxwdH#O43EXto z)A0RlLjx#??5(@x-C8>0 z(G`f$5so|%Vbr_dr+Clf95hP{>BIQUBKIHbsM9O6-(`bJH!s!h}S&I-^ z56bL`XXM0(y>&<4ua)pUBs^5gk7V&t#Y7-IhAQQABz%sX&tWo9<|Svy?Ls&*9x9LF zFpeYgI=+M-4~4@R9L5I@QU-HBEy0?@<~4G`lw+SvE-%p zb=#{q&o$I6c-6S>3ZLZ~su*gkuOeQ2J>z=y3}3~hs5u(H~ zB2uM;eL_y(aXyQ%3nipO&8Ude2ctpQ#WGH2O`4Rv{B+Z{t?~S$8i&V?^L4J;6PtG^ z_AzCm>a*+_*B{7^mh4b?%j=VBb~(lLZFwbLM}VhIKfDk&dYh0an^pjv4cM4v6(F>0 z!&|o*z-&el3RNbev{Rhhoe=8yS}6rVT&Rd>KGliZE(xTMQzR55Ac!gzA`(g@Tv!(5 z)}xFbzD&eXP^b(Sgq{QCISjbqA`UA@sp>wR+CC1G1!1~CuV5ExH>Ao8S0D(LQHMxH zoVM|`h@rFWoev$JE47GpDxnlg&4^6OVbr00A{c(yrAljIj&Kwrq_-}TC9_sq1vQVm z)146spNjCIsz9mX3Wk)@#Y13M%0tj`m|s2th;tX03N^z6428lm2&0Z834|7M!uKKy zDU~jYgxRMEq_T1%<;J0`_h^^WL8`(9L2@{X2|gnyk_EXgR7SmWuDm`HgM;q#^;7DHiXlu>Fop7Z5MML%3m#5%qUD;4=_p*_cT3%6E zGq3GtR3#Lywo|wb1j4I>!>W&b3U_Tzq@tc5_5o2Qk}|N#ELnV?aq`K|%lzKS7ve5o z0AdfS0RIEJXTHtHA5}9ltuX+10kBB(x@(b`>9xwTG?NA|P*nhQ7Q+KK*I!**d6M4N z0wBfTk6hLr0FjUeQMM9IQBx@JU%UTg{NL0l>2GuYQ>3EwKga(5wtwgTWz{sp?_W&& zcj5od(*JK&qW^9l7LVaO0MF`Kq#e%U=&&9YKq$eIF}qm>nPM$5@%wSjc%{2W-wRP+$oRB~N+ z$dNknBifFtJA@r)o$G>FY4gP)J1}6et{y1Ta5#Mr9}Dss6w=rE_|D;^#5t@S350oVp$RnYF{;r&^_w@1M&N4D4n3&Ec&M})Rye!m!IRMQXIQ^~-Nq5v%CX3a5 z55ax-N5kP@84Vk(C;<*P^+~4M#F!ca%1<(7?K*Sp3`3XH(%f|C;^i|{^_R}u-tL}V z@VOz$Q$-U$mYK2VI(-@aSMjI5ihxD$qrV*bnmaH{E268V0p!W&54=>7zB4+3ry0uZ zVq-tNJtjT(L)6QL=(K)6*&!d*K$F?Q%ZA4@JU_;Dd+ks6R+!kvk5R|`25N5fg%BTP zKN-8{S-?u##XI`!uEbs5LE`Y5MM( z_-??4`)T|zEjQ1FA$xT*{YTo=b5(f_!4hjvZ*Pnz7F#G!dP86CYyH@;DkP^awnR^? zdqT0>V~xc0h*u)DE%yi2;I6X+xQ}|LzJ3id47K?(@r`*{#$r-qQT)(Sba?T8u}YV{ z(KBnE-p&{8*SouKKAt#YY^!DM<#^J(`J&r*+uO`figOQt1|KBBTgtH)M&oL{Cr%vr z)le%2!HC8(`ubiP2=p?ahdX`YElvv#NpR>?-)8oD%+#(4n;0D?N9p`N$MKWvhraZ0 zOYrCf*+*1A7!lWK&5eyUtPWB))7pq_Q4wGpTR3lgtHPH2hI{5O(I7wBx|iWGf~Xk` zmM8q8hIhygjwX%!f{O6ESKES;CLeBd-(zwzAkDb$=a8gu%b!Xl>yIy_EnC@;JHBsh z!@3d2aIv`YUB&(W)=}JoUxs%Yl#CjT(s~+<`FbOds*5iBJO20_vnk&_hU{}c#Kola zW8EY%SMbrIyS>L<-!2$q%lL&%avRA#*0E}$V8-XW>{TF2{Jx;a`q90mULzS~!i-LQ zr(5P^`oQ-$zr|oWF{)2oUHT{Y?RPk;ArqTa#yE96PY>=TY>jbJBJ! z8mLI0NnEhZ>jo$@dqZGQ{6VhgX_*_6bE={Iw!L=u`Zz!As)(%lJ_Qb|3ylOOj$kVo za5EBUEZv@Sn{oAi$|!r}Y?s6Bcl+#X%MTrSx&N5OlB}(sqTsbS)a;o#NXr^9HoWt5 z{N-~QY|;i&>#xoQ_B8_ba>>H06$J5fqsiO98`!C zi*VCv=~nRK?K}(>4|x6hp4gm)Y`(T&^C;_qzB@3pop^e6yW-m!pPhDgPIA5*4(YXM zjxydu6-Trt4(c5Hs8W>I*4`*FzwkrhXlMxI+Vc%VvA-=Iu=vR>bBmF#&wkedwlJ#` zNl(tX=UG!0rysUb>@dscjLG%c-Ph)EcSief#L~d#BYq|OU#)qsuVx`wvcyDpA(tLY zI}>^#^|f;Zk-gjooD}Z59I6skZqvMNud4m>-@iN85RUKEIKQ~ss^^M$FPIsO6R6*u zg(*-kDk01*#sIUn&F>D)McLZD{VhMvp844G2Oc@0B{&VQFJ_y#0sr;0Q>zXcO7`w6 zD4gt@%x~;XuN=Btp}W^R1+N+$cJG(ldD?I68WyTNyO8#I4W~Z#=0)$-z0$#A4Mv;1 zgb31-4ojXhtE3~YZq>op zwHeX!oK?O;=jn&#DgZnj+lLFk{_%nTlj8=YjO~Or0=wbTg^{OuOZrZ#F59=x<3^|s znxbGGs`+^H+cwXvLFCQO{(H=Ox>gdgC$@3+-GUN~ zSp@6EHIKZlXX3v}zZUg=Leg59(fKT;vW8h&7o9L;NXIvi>+cf3)H7IdPE;^CbYPFY zsoJH7LeJ~&QHzs5#=h0?O<6tfYoID>kv3=3_Sofek6cQ3+>amEuj zb^DS_dtVpRk9(MVuK#onySQVnp3N)m7wYv}dNw+2!tYWW4zbcSi`zDnh{@Kg%+WCQ zC7P(+v42x!PzfllR}Q$CU(R+D=;eB9Xca#E!fs!G8VhCvf{tqObS(k#`Is+}kDoaf Ok^51sDwt!s5&I8;t-jp= literal 0 HcmV?d00001 diff --git a/resources/sound/tap.ogg b/resources/sound/tap.ogg new file mode 100644 index 0000000000000000000000000000000000000000..77657fd0b3eebba7424a58d2501dc60a7a5242d5 GIT binary patch literal 5525 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 PO}kR*Y+wqEzm5L_EFcVJ literal 0 HcmV?d00001 diff --git a/source/component/plant.py b/source/component/plant.py index 90a4110..97bd92a 100755 --- a/source/component/plant.py +++ b/source/component/plant.py @@ -1,5 +1,6 @@ import random import pygame as pg +import os from .. import tool from .. import constants as c @@ -31,7 +32,7 @@ class Car(pg.sprite.Sprite): if self.state == c.IDLE: self.state = c.WALK # 播放音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "carWalking.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "carWalking.ogg")).play() def draw(self, surface): surface.blit(self.image, self.rect) @@ -112,9 +113,9 @@ class Bullet(pg.sprite.Sprite): # 播放子弹爆炸音效 if self.name == c.BULLET_FIREBALL: - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "firepea.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "firepea.ogg")).play() else: - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "bulletExplode.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "bulletExplode.ogg")).play() def draw(self, surface): surface.blit(self.image, self.rect) @@ -501,6 +502,8 @@ class CherryBomb(Plant): self.bomb_timer = self.current_time elif (self.current_time - self.bomb_timer) > 500: self.health = 0 + # 播放爆炸音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "bomb.ogg")).play() else: if (self.current_time - self.animate_timer) > 100: self.frame_index += 1 @@ -564,6 +567,8 @@ class Chomper(Plant): def attacking(self): if self.frame_index == (self.frame_num - 3): + # 播放吞的音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "bigchomp.ogg")).play() self.zombie_group.remove(self.attack_zombie) if (self.frame_index + 1) == self.frame_num: self.setDigest() @@ -658,6 +663,8 @@ class PotatoMine(Plant): self.changeFrames(self.explode_frames) elif (self.current_time - self.bomb_timer) > 500: self.health = 0 + # 播放音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "potatomine.ogg")).play() class Squash(Plant): @@ -709,6 +716,8 @@ class Squash(Plant): self.state = c.ATTACK # 攻击状态下生命值无敌 self.health = float('inf') + # 锁定目标时播放音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "squashHmm.ogg")).play() def attacking(self): if self.squashing: @@ -792,6 +801,8 @@ class Jalapeno(Plant): self.frame_index += 1 if self.frame_index >= self.frame_num: self.health = 0 + # 播放爆炸音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "bomb.ogg")).play() return self.animate_timer = self.current_time else: @@ -1110,6 +1121,8 @@ class RedWallNutBowling(Plant): self.changeFrames(self.explode_frames) elif (self.current_time - self.explode_timer) > 500: self.health = 0 + # 播放爆炸音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "bomb.ogg")).play() def animation(self): if (self.current_time - self.animate_timer) > self.animate_interval: @@ -1197,6 +1210,8 @@ class CoffeeBean(Plant): plant.state = c.IDLE plant.setIdle() plant.changeFrames(plant.idle_frames) + # 播放唤醒音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "mushroomWakeup.ogg")).play() self.mapContent[c.MAP_PLANT].remove(self.name) self.kill() diff --git a/source/component/zombie.py b/source/component/zombie.py index 85ea948..85bad44 100755 --- a/source/component/zombie.py +++ b/source/component/zombie.py @@ -1,4 +1,5 @@ import pygame as pg +import os from random import randint from .. import tool from .. import constants as c @@ -279,7 +280,7 @@ class Zombie(pg.sprite.Sprite): def setIceSlow(self): # 在转入冰冻减速状态时播放冰冻音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "freeze.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "freeze.ogg")).play() # when get a ice bullet damage, slow the attack or walk speed of the zombie self.ice_slow_timer = self.current_time @@ -420,7 +421,7 @@ class Zombie(pg.sprite.Sprite): self.changeFrames(self.attack_frames) # 播放啃咬音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "zombieAttack.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "zombieAttack.ogg")).play() def setDie(self): self.state = c.DIE diff --git a/source/state/level.py b/source/state/level.py index 9314563..54d9be8 100644 --- a/source/state/level.py +++ b/source/state/level.py @@ -73,10 +73,6 @@ class Level(tool.State): elif self.map_data[c.BACKGROUND_TYPE] in {c.BACKGROUND_POOL}: self.bgm = 'poolLevel.opus' - pg.mixer.music.stop() - pg.mixer.music.load(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "music", self.bgm)) - pg.mixer.music.play(-1, 0) - def setupBackground(self): img_index = self.map_data[c.BACKGROUND_TYPE] self.background_type = img_index @@ -195,7 +191,7 @@ class Level(tool.State): self.numZombie = len(self.waveZombies) # 第一波刚刚刷出来的时候播放音效 if self.waveNum == 1: - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "zombieComing.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "zombieComing.ogg")).play() return else: if ((current_time - self.waveTime >= 45000) or (self.bar_type != c.CHOOSEBAR_STATIC and current_time - self.waveTime >= 25000)): @@ -204,7 +200,7 @@ class Level(tool.State): self.waveZombies = self.waves[self.waveNum - 1] self.numZombie = len(self.waveZombies) # 一大波时播放音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "hugeWaveApproching.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "hugeWaveApproching.ogg")).play() return elif ((current_time - self.waveTime >= 43000) or (self.bar_type != c.CHOOSEBAR_STATIC and current_time - self.waveTime >= 23000)): self.showHugeWaveApprochingTime = current_time @@ -282,13 +278,26 @@ class Level(tool.State): self.state = c.CHOOSE self.panel = menubar.Panel(menubar.cards_to_choose, self.map_data[c.INIT_SUN_NAME]) + # 播放选卡音乐 + pg.mixer.music.stop() + pg.mixer.music.load(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "music", "chooseYourSeeds.opus")) + pg.mixer.music.play(-1, 0) + def choose(self, mouse_pos, mouse_click): if mouse_pos and mouse_click[0]: self.panel.checkCardClick(mouse_pos) if self.panel.checkStartButtonClick(mouse_pos): self.initPlay(self.panel.getSelectedCards()) + # 播放点击音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "tap.ogg")).play() def initPlay(self, card_list): + + # 播放bgm + pg.mixer.music.stop() + pg.mixer.music.load(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "music", self.bgm)) + pg.mixer.music.play(-1, 0) + self.state = c.PLAY if self.bar_type == c.CHOOSEBAR_STATIC: self.menubar = menubar.MenuBar(card_list, self.map_data[c.INIT_SUN_NAME]) @@ -521,12 +530,16 @@ class Level(tool.State): self.showLittleMenu = False # 继续播放音乐 pg.mixer.music.unpause() + # 播放点击音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "buttonclick.ogg")).play() elif self.checkRestartClick(mouse_pos): self.done = True self.next = c.LEVEL pg.mixer.music.stop() pg.mixer.music.load(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "music", self.bgm)) pg.mixer.music.play(-1, 0) + # 播放点击音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "buttonclick.ogg")).play() elif self.checkMainMenuClick(mouse_pos): self.done = True self.next = c.MAIN_MENU @@ -535,6 +548,8 @@ class Level(tool.State): pg.mixer.music.stop() pg.mixer.music.load(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "music", "intro.opus")) pg.mixer.music.play(-1, 0) + # 播放点击音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "buttonclick.ogg")).play() return if (c.ZOMBIE_LIST in self.map_data.keys()) and self.map_data[c.SPAWN_ZOMBIES] == c.SPAWN_ZOMBIES_LIST: @@ -592,7 +607,7 @@ class Level(tool.State): self.menubar.increaseSunValue(sun.sun_value) clickedSun = True # 播放收集阳光的音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "collectSun.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "collectSun.ogg")).play() # 拖动植物或者铲子 if not self.drag_plant and mouse_pos and mouse_click[0] and not clickedSun: @@ -601,7 +616,7 @@ class Level(tool.State): self.setupMouseImage(result[0], result[1]) clickedCardsOrMap = True # 播放音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "clickCard.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "clickCard.ogg")).play() elif self.drag_plant: if mouse_click[1]: self.removeMouseImage() @@ -622,12 +637,14 @@ class Level(tool.State): if self.checkLittleMenuClick(mouse_pos): # 暂停 显示菜单 self.showLittleMenu = True + # 播放点击音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "buttonclick.ogg")).play() elif self.checkShovelClick(mouse_pos): self.drag_shovel = not self.drag_shovel if not self.drag_shovel: self.removeMouseImagePlus() # 播放点击铲子的音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "shovel.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "shovel.ogg")).play() elif self.drag_shovel: # 移出这地方的植物 self.shovelRemovePlant(mouse_pos) @@ -786,7 +803,7 @@ class Level(tool.State): self.removeMouseImage() # 播放种植音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "plant.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "plant.ogg")).play() def setupHintImage(self): pos = self.canSeedPlant(self.plant_name) @@ -889,6 +906,8 @@ class Level(tool.State): # 注意:以上语句为通用处理,以后加入了铁门僵尸需要单独设置直接冲撞就直接杀死 # 可以给坚果保龄球设置attacked属性,如果attacked就秒杀(setDamage的攻击类型此时设置为COMMMON)铁门 plant.changeDirection(i) + # 播放撞击音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "bowlingimpact.ogg")).play() elif plant.name == c.REDWALLNUTBOWLING: if plant.state == c.IDLE: plant.setAttack() @@ -952,7 +971,7 @@ class Level(tool.State): def freezeZombies(self, plant): # 播放冻结音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "freeze.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "freeze.ogg")).play() for i in range(self.map_y_len): for zombie in self.zombie_groups[i]: @@ -997,7 +1016,7 @@ class Level(tool.State): zombie.setDamage(1800, damageType=c.ZOMBIE_RANGE_DAMAGE) else: # 用铲子移除植物时播放音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "plant.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "plant.ogg")).play() # 避免僵尸在用铲子移除植物后还在原位啃食 plant.health = 0 @@ -1131,12 +1150,13 @@ class Level(tool.State): self.next = c.GAME_VICTORY self.done = True # 播放胜利音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "win.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "win.ogg")).play() elif self.checkLose(): self.next = c.GAME_LOSE self.done = True # 播放失败音效 - pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "lose.ogg")) + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "lose.ogg")).play() + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "scream.ogg")).play() def drawMouseShow(self, surface): if self.hint_plant: diff --git a/source/state/mainmenu.py b/source/state/mainmenu.py index 99c6fe9..7a2cb88 100644 --- a/source/state/mainmenu.py +++ b/source/state/mainmenu.py @@ -1,4 +1,5 @@ import pygame as pg +import os from .. import tool from .. import constants as c from . import level @@ -108,6 +109,9 @@ class Menu(tool.State): self.adventure_clicked = True self.adventure_timer = self.adventure_start = self.current_time self.persist[c.GAME_MODE] = c.MODE_ADVENTURE + # 播放进入音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "evillaugh.ogg")).play() + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "lose.ogg")).play() return False # 点击到按钮,修改转态的done属性 @@ -125,6 +129,8 @@ class Menu(tool.State): # 确实小游戏还是用的level # 因为目前暂时没有生存模式和解谜模式,所以暂时设置为这样 self.persist[c.GAME_MODE] = c.MODE_LITTLEGAME + # 播放点击音效 + pg.mixer.Sound(os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))) ,"resources", "sound", "buttonclick.ogg")).play() def update(self, surface, current_time, mouse_pos, mouse_click): self.current_time = self.game_info[c.CURRENT_TIME] = current_time