FIXED SOUND MANAGER AND MAIN
This commit is contained in:
parent
df86633f8e
commit
7c6031a713
|
@ -13,6 +13,7 @@ class SoundManager:
|
||||||
self.music_before_pause_pos = 0
|
self.music_before_pause_pos = 0
|
||||||
self.music_before_pause_song = ""
|
self.music_before_pause_song = ""
|
||||||
self.music_is_paused = False
|
self.music_is_paused = False
|
||||||
|
self.music_next_request = False
|
||||||
|
|
||||||
self.music_pos_delay = 0
|
self.music_pos_delay = 0
|
||||||
|
|
||||||
|
@ -25,20 +26,31 @@ class SoundManager:
|
||||||
self.time = self.tick * delta
|
self.time = self.tick * delta
|
||||||
|
|
||||||
if self.music_play_playlist and not self.music_is_paused: # Musique de fond
|
if self.music_play_playlist and not self.music_is_paused: # Musique de fond
|
||||||
if not mixer.music.get_busy():
|
if not mixer.music.get_busy() or self.music_next_request:
|
||||||
|
if self.music_next_request:
|
||||||
|
self.music_next_request = False
|
||||||
|
mixer.music.fadeout(1)
|
||||||
|
print(self.music_playlist)
|
||||||
|
|
||||||
if len(self.music_playlist) == 0:
|
if len(self.music_playlist) == 0:
|
||||||
pass
|
pass
|
||||||
elif self.music_current_song == "":
|
elif self.music_current_song == "":
|
||||||
self.__music_play(self.music_playlist[0])
|
self.__music_play(self.music_playlist[0])
|
||||||
else:
|
else:
|
||||||
just_played_index = self.music_playlist.index(self.music_current_song)
|
if self.music_current_song in self.music_playlist:
|
||||||
if len(self.music_playlist) - 1 <= just_played_index: # Dernier son de la playlist / la playlist a rétréci entre temps
|
just_played_index = self.music_playlist.index(self.music_current_song)
|
||||||
|
|
||||||
|
if len(self.music_playlist) - 1 <= just_played_index: # Dernier son de la playlist / la playlist a rétréci entre temps
|
||||||
|
self.music_current_index = 0
|
||||||
|
self.__music_play(self.music_playlist[0]) # Recommence depuis le début de la playlist
|
||||||
|
else:
|
||||||
|
self.music_current_index = just_played_index + 1
|
||||||
|
self.__music_play(self.music_playlist[self.music_current_index]) # Joue la musique suivante dans la playlist
|
||||||
|
|
||||||
|
else: # Song removed from playlist, no idea what was the index, starting again from start
|
||||||
self.music_current_index = 0
|
self.music_current_index = 0
|
||||||
self.__music_play(self.music_playlist[0]) # Recommence depuis le début de la playlist
|
self.__music_play(self.music_playlist[0])
|
||||||
else:
|
|
||||||
self.music_current_index = just_played_index + 1
|
|
||||||
self.__music_play(self.music_playlist[self.music_current_index]) # Joue la musique suivante dans la playlist
|
|
||||||
|
|
||||||
|
|
||||||
def music_get_volume(self):
|
def music_get_volume(self):
|
||||||
|
@ -84,7 +96,7 @@ class SoundManager:
|
||||||
def music_remove_from_playlist(self, song_path: str = None, index: int = None):
|
def music_remove_from_playlist(self, song_path: str = None, index: int = None):
|
||||||
if song_path:
|
if song_path:
|
||||||
index = self.music_playlist.index(song_path)
|
index = self.music_playlist.index(song_path)
|
||||||
if index:
|
if index != None:
|
||||||
self.music_playlist.pop(index)
|
self.music_playlist.pop(index)
|
||||||
|
|
||||||
def music_start_playlist(self):
|
def music_start_playlist(self):
|
||||||
|
@ -92,3 +104,6 @@ class SoundManager:
|
||||||
|
|
||||||
def music_stop_playlist(self):
|
def music_stop_playlist(self):
|
||||||
self.music_play_playlist = False
|
self.music_play_playlist = False
|
||||||
|
|
||||||
|
def music_next(self):
|
||||||
|
self.music_next_request = True
|
||||||
|
|
|
@ -19,7 +19,7 @@ class Game(Engine):
|
||||||
self.load_boss_fight_assets()
|
self.load_boss_fight_assets()
|
||||||
self.spawn_mobs()
|
self.spawn_mobs()
|
||||||
|
|
||||||
self.DEBUG_MODE = True
|
self.DEBUG_MODE = False
|
||||||
|
|
||||||
self.game_state = GameState.MAIN_MENU
|
self.game_state = GameState.MAIN_MENU
|
||||||
|
|
||||||
|
@ -29,12 +29,19 @@ class Game(Engine):
|
||||||
|
|
||||||
self.event_handler.register_button_area((0, 0, 0.1, 0.1), lambda : print("salut"), 0)
|
self.event_handler.register_button_area((0, 0, 0.1, 0.1), lambda : print("salut"), 0)
|
||||||
|
|
||||||
|
self.sound_manager.music_add_to_playlist(".\\assets\\OST\\Main Title (Y'as pas de boss la donc jpp le mettre pour un fight).mp3")
|
||||||
|
self.sound_manager.music_start_playlist()
|
||||||
|
|
||||||
self.setup_main_menu()
|
self.setup_main_menu()
|
||||||
|
|
||||||
def start_game(self):
|
def start_game(self):
|
||||||
self.game_state = GameState.NORMAL
|
self.game_state = GameState.NORMAL
|
||||||
self.menu_manager.hide()
|
self.menu_manager.hide()
|
||||||
|
|
||||||
|
self.sound_manager.music_remove_from_playlist(".\\assets\\OST\\Main Title (Y'as pas de boss la donc jpp le mettre pour un fight).mp3")
|
||||||
|
self.sound_manager.music_add_to_playlist(".\\assets\\OST\\Bruit de foret pour yannis.mp3")
|
||||||
|
self.sound_manager.music_next()
|
||||||
|
|
||||||
def setup_main_menu(self):
|
def setup_main_menu(self):
|
||||||
"""Crée les éléments du menu principal."""
|
"""Crée les éléments du menu principal."""
|
||||||
menu = Menu()
|
menu = Menu()
|
||||||
|
|
Loading…
Reference in a new issue