24 lines
651 B
C++
24 lines
651 B
C++
#ifndef AUDIOMANAGER_H
|
|
#define AUDIOMANAGER_H
|
|
|
|
#include <SFML/Audio.hpp>
|
|
#include <unordered_map>
|
|
#include <string>
|
|
|
|
class AudioManager {
|
|
public:
|
|
bool loadBackgroundMusic(const std::string& filePath);
|
|
void playBackgroundMusic(float volume = 50.f, bool loop = true);
|
|
void stopBackgroundMusic();
|
|
|
|
bool loadSoundEffect(const std::string& name, const std::string& filePath);
|
|
void playSoundEffect(const std::string& name, float volume = 50.f);
|
|
|
|
private:
|
|
sf::Music backgroundMusic;
|
|
std::unordered_map<std::string, sf::SoundBuffer> soundBuffers;
|
|
std::unordered_map<std::string, sf::Sound> sounds;
|
|
};
|
|
|
|
#endif // AUDIOMANAGER_H
|