로그인
KO
games/open-lemmings / src / Service / Audio.php · commit 04e2e2a
<?phpnamespace App\Service;use JumPHP\Audio\SoundManager;/** The sound effects and the music: all composed by tools/sound.py (assets/sfx, assets/music). */final class Audio{    private bool $loaded = false;    public function load(SoundManager $s): void    {        if ($this->loaded) {            return;        }        $this->loaded = true;        foreach (['menu_move', 'menu_confirm', 'select', 'assign', 'deny', 'spawn', 'saved', 'boom', 'fuse', 'splat', 'drown', 'brick',            'lastbrick', 'clink', 'win', 'lose'] as $name) {            $s->loadSfx($name, "assets/sfx/$name.wav");        }        foreach (['title', 'play', 'play2', 'play3', 'play4', 'play5', 'play6', 'play7', 'play8', 'play9', 'play10', 'play11'] as $music) {            if (!is_file(\JumPHP\Kernel\Engine::get()->config->path("assets/music/$music.ogg"))) {                continue;   // a tune not composed yet: the level plays in silence            }            $s->loadMusic($music, "assets/music/$music.ogg");        }    }}