class

PointClickEngine::Audio::MusicManager

Inherits Reference < Object

Manages background music loading, playback, and transitions

Instance methods

cleanup

Explicit cleanup - do NOT use finalizer as it causes GC deadlocks with Raylib

Source
crossfade_to(name : String, duration : Float32 = 2.0, loop : Bool = true) : Nil

Crossfade to a new music track

Source
current_music

Currently playing music track

Source
current_music=(current_music : Music | Nil)

Currently playing music track

Source
current_track_name

Get currently playing track name

Source
load_music(name : String, file_path : String) : Music

Load a music track from file

Source
music_tracks

Cache of loaded music tracks

Source
music_volume

Global music volume multiplier

Source
music_volume=(music_volume : Float32)

Global music volume multiplier

Source
pause_music

Pause current music

Source
play_music(name : String, loop : Bool = true, fade_in : Float32 = 0.0) : Nil

Play a music track

Source
playing?

Check if music is playing

Source
preload_tracks(tracks : Array(Tuple(String, String))) : Nil

Preload multiple music tracks

Source
resume_music

Resume current music

Source
set_volume(volume : Float32) : Nil

Set music volume

Source
stop_music

Stop current music

Source
unload_music(name : String) : Nil

Unload a specific music track

Source
update(dt : Float32) : Nil

Update music streams and handle crossfading

Source