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

Class Method Details

.on_play_musicObject



14
# File 'lib/rgame/engine/audio_bus.rb', line 14

def self.on_play_music = @on_play_music

.on_play_soundObject



13
# File 'lib/rgame/engine/audio_bus.rb', line 13

def self.on_play_sound = @on_play_sound

.on_stop_musicObject



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_musicObject



21
# File 'lib/rgame/engine/audio_bus.rb', line 21

def self.stop_music = @on_stop_music.emit