diff options
author | Loek Le Blansch <loek@pipeframe.xyz> | 2024-11-07 20:52:06 +0100 |
---|---|---|
committer | Loek Le Blansch <loek@pipeframe.xyz> | 2024-11-07 20:52:06 +0100 |
commit | 827f09031e2d3cc15e956b242774a4566e1403c1 (patch) | |
tree | 5ac1f025afea82ce892272deafcf8918ef518d33 /src/crepe/system/AudioSystem.cpp | |
parent | 1c4156ee127b14760ed3b1a0cd16ad12180c7ac6 (diff) |
more WIP audio system
Diffstat (limited to 'src/crepe/system/AudioSystem.cpp')
-rw-r--r-- | src/crepe/system/AudioSystem.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/crepe/system/AudioSystem.cpp b/src/crepe/system/AudioSystem.cpp new file mode 100644 index 0000000..93c0955 --- /dev/null +++ b/src/crepe/system/AudioSystem.cpp @@ -0,0 +1,24 @@ +#pragma once + +#include "AudioSystem.h" +#include "ComponentManager.h" + +#include "../api/AudioSource.h" + +using namespace crepe; +using namespace std; + +AudioSystem::AudioSystem(SoundContext & ctx) : ctx(ctx) {} + +void AudioSystem::update() { + vector<reference_wrapper<AudioSource>> components = this->compmgr.get_components_by_type<AudioSource>(); + + for (auto component_ref : components) { + AudioSource & component = component_ref.get(); + if (!component.active) continue; + + // TODO: fetch Sound instance from resourcemanager + // TODO: lots of state diffing + } +} + |