Pomyślmy trochę.
elif platform.system() == "Linux":
os.system("aplay -q {}&".format(sound_file))
# Mac
else:
os.system("afplay {}&".format(sound_file))
To podejście jest złe, ponieważ uruchamiasz podproces i jak narazie nie masz nad nim kontroli (nie możesz go zamknąć). Tak się po prostu nie robi. Co jak ktoś na Linuxie nie ma polecenia aplay? Muzyka się nie odtworzy.
Lepszym rozwiązaniem jest użycie zewnętrznej biblioteki.
https://linuxhint.com/play_sound_python/
Instalacja playsound:
pip3 install playsound
(Jeśli nie masz pip3, użyj pip)
Użycie:
from playsound import playsound
playsound(SciezkaDoPliku)
Zamiast ścieżki może być po prostu nazwa, jeśli oba pliki znajdują się w tym samym katalogu. Proste, wieloplatformowe, działa i masz pełną kontrolę nad muzyką w grze. Po zamknięciu procesu funkcja się po prostu zakończy i nie będzie muzyki. (Jak się zagłębisz w dokumentację to znajdziesz też jak zatrzymać, podgłośnić itd.)