39 lines
1.3 KiB
C++
39 lines
1.3 KiB
C++
// Stubs d'`Audio` i `Resource::Cache` per als smokes que enllacen
|
|
// entitats amb so propi (`mummy.cpp` carrega + dispara `mummy_hurt.wav`).
|
|
//
|
|
// Linkar `audio.cpp` i `resource_cache.cpp` arrossegaria SDL_mixer/Ja,
|
|
// el sistema de paquets, el carregador de GIFs, etc. — la mateixa
|
|
// explosió de dependències que `hole_player_stubs.cpp` evita per al
|
|
// Player. Aquests stubs deixen `Audio::get()` retornant `nullptr`
|
|
// (els call-sites comprovem aquesta condició abans de tocar el so) i
|
|
// fan no-op `Resource::Cache::loadSound`.
|
|
|
|
#include "core/audio/audio.hpp"
|
|
#include "core/resources/resource_cache.hpp"
|
|
|
|
auto Audio::get() -> Audio* {
|
|
return nullptr;
|
|
}
|
|
|
|
void Audio::playSound(const std::string& /*name*/, Audio::Group /*group*/) {
|
|
}
|
|
|
|
void Audio::playSound(const std::string& /*name*/, Audio::Group /*group*/, float /*speed*/) {
|
|
}
|
|
|
|
namespace Resource {
|
|
|
|
auto Cache::get() -> Cache& {
|
|
// Heap-leak deliberat: el destructor de Cache requeriria els
|
|
// deleters de Ja::Music/Ja::Sound (a resource_types.cpp) que el
|
|
// smoke target no enllaça. Mai destruïm la instància — el procés
|
|
// mor abans i el SO recupera la memòria.
|
|
static Cache* instance_ = new Cache();
|
|
return *instance_;
|
|
}
|
|
|
|
void Cache::loadSound(const std::string& /*name*/, const std::string& /*file_path*/) {
|
|
}
|
|
|
|
} // namespace Resource
|