pygame 筆記-8 背景音樂&子彈音效


游戲哪能沒有音效?這節我們研究下如何加背景音樂,其實也很簡單:

# 加載背景音樂
pygame.mixer.music.load(music_base_path + "music.mp3")
# 設置音量
pygame.mixer.music.set_volume(0.1)
# 循環播放
pygame.mixer.music.play(-1, 0)

play的第1個參數,設置成-1表示循環播放。 

 

另一個問題,發射子彈和子彈擊中,也需要聲音,這個必須用另一種方法,否則的話,會把背景音樂給停掉:

_sound_library = {}


# 播放音效(與背景音樂可同時播放,但默認只支持wav格式)
def play_sound(path):
    global _sound_library
    sound = _sound_library.get(path)
    if sound is None:
        temp = path.replace('/', os.sep).replace('\\', os.sep)
        sound = pygame.mixer.Sound(temp)
        sound.set_volume(0.1)
        _sound_library[path] = sound
    sound.play()

封裝一個函數,在需要播放音效的地方,調用即可:

# 播放音效
play_sound(music_base_path + "hit.wav")

  

參考:

https://nerdparadise.com/programming/pygame/part3

 

源碼下載: https://github.com/yjmyzz/pygame_tutorial


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM