Module: RGame::Engine::AudioBus
- Defined in:
- lib/rgame/engine/audio_bus.rb
Overview
A global, always-present audio bus: gameplay emits audio facts here (decoupled from any actual playback), and an AudioDirector turns them into sound. A module rather than an instance so any node can reach it without wiring.
Class Method Summary collapse
- .on_play_music ⇒ Object
- .on_play_sound ⇒ Object
- .on_stop_music ⇒ Object
- .play_music(id) ⇒ Object
-
.play_sound(id) ⇒ Object
Emit shims so callers say
AudioBus.play_sound(:boom)rather than reaching through the signal. - .stop_music ⇒ Object
Class Method Details
.on_play_music ⇒ Object
14 |
# File 'lib/rgame/engine/audio_bus.rb', line 14 def self.on_play_music = @on_play_music |
.on_play_sound ⇒ Object
13 |
# File 'lib/rgame/engine/audio_bus.rb', line 13 def self.on_play_sound = @on_play_sound |
.on_stop_music ⇒ Object
15 |
# File 'lib/rgame/engine/audio_bus.rb', line 15 def self.on_stop_music = @on_stop_music |
.play_music(id) ⇒ Object
20 |
# File 'lib/rgame/engine/audio_bus.rb', line 20 def self.play_music(id) = @on_play_music.emit(id) |
.play_sound(id) ⇒ Object
Emit shims so callers say AudioBus.play_sound(:boom) rather than reaching
through the signal. The signal is still the subscription seam (AudioDirector).
19 |
# File 'lib/rgame/engine/audio_bus.rb', line 19 def self.play_sound(id) = @on_play_sound.emit(id) |
.stop_music ⇒ Object
21 |
# File 'lib/rgame/engine/audio_bus.rb', line 21 def self.stop_music = @on_stop_music.emit |