Refine Princess Lima for v2 presentation
All checks were successful
Build Org Website / build (push) Successful in 1m2s

This commit is contained in:
gitea-actions
2026-07-30 15:00:45 +01:00
parent a6502b168d
commit 6066f486de
35 changed files with 74848 additions and 141 deletions

View File

@@ -13,6 +13,7 @@
let ambience = null;
let voice = null;
let unlocked = false;
let ducked = false;
function attach(nextScene, region) {
scene = nextScene;
@@ -34,7 +35,7 @@
const enabled = Boolean(unlocked && state && state.settings.soundEnabled);
scene.sound.mute = !enabled;
if (ambience) {
ambience.setVolume(state ? (state.settings.master || 0) * (state.settings.music || 0) : 0);
ambience.setVolume(state ? (state.settings.master || 0) * (state.settings.music || 0) * (ducked ? 0.38 : 1) : 0);
if (enabled && !ambience.isPlaying) ambience.play();
if (!enabled && ambience.isPlaying) ambience.pause();
}
@@ -73,6 +74,11 @@
apply();
}
function duck(value) {
ducked = Boolean(value);
apply();
}
function stop() {
stopVoice();
if (ambience) ambience.stop();
@@ -80,7 +86,7 @@
scene = null;
}
return Object.freeze({ attach, unlock, apply, play, playVoice, stopVoice, suspend, resume, stop, isUnlocked: () => unlocked });
return Object.freeze({ attach, unlock, apply, play, playVoice, stopVoice, suspend, resume, duck, stop, isUnlocked: () => unlocked });
}
root.PrincessLimaAudio = Object.freeze({ create, TRACKS });