From a4aea4163a23a9d33b884370fabeaab676b5bb2b Mon Sep 17 00:00:00 2001 From: maka70vv <25.makarovv@gmail.com> Date: Sun, 2 Mar 2025 02:07:26 +0600 Subject: [PATCH] music changing --- GameObjectManager.cpp | 6 ++++-- cmakeaudioplayer/src/AudioPlayer.cpp | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/GameObjectManager.cpp b/GameObjectManager.cpp index 7c111da..fa7af77 100644 --- a/GameObjectManager.cpp +++ b/GameObjectManager.cpp @@ -98,7 +98,6 @@ void GameObjectManager::initialize() { AddItemToInventory("RoomCeramics", testRoomTexture); AddItemToInventory("Cone", testConeTexture); - roomTexturePtr = rooms[current_room_index].roomTexture; } @@ -107,8 +106,11 @@ void GameObjectManager::switch_room(int index){ roomTexturePtr = rooms[current_room_index].roomTexture; + audioPlayer.reset(); // This deletes the current AudioPlayer + + // Reinitialize it + audioPlayer = std::make_unique(); if (audioPlayer) { - audioPlayer->stop(); audioPlayer->playMusic(rooms[current_room_index].sound_name); } diff --git a/cmakeaudioplayer/src/AudioPlayer.cpp b/cmakeaudioplayer/src/AudioPlayer.cpp index e650ea9..d13ca6f 100644 --- a/cmakeaudioplayer/src/AudioPlayer.cpp +++ b/cmakeaudioplayer/src/AudioPlayer.cpp @@ -143,7 +143,8 @@ bool AudioPlayer::playMusic(const std::string& filename) { alSourcei(musicSource, AL_BUFFER, musicBuffer); alSourcei(musicSource, AL_LOOPING, AL_TRUE); // Включаем зацикливание - std::cout << "▶️ Starting music playback...\n"; + std::cout << "▶️ Starting music playback... " << musicSource << std::endl; + std::cout << "▶️ Music buffer... " << musicBuffer << std::endl; alSourcePlay(musicSource); currentMusic = filename;