mirror of
https://github.com/tiennm99/nntv.git
synced 2026-07-15 16:19:51 +00:00
Asset review + regeneration - Regenerate keyart-palace.png to remove STUDIOSWAG watermark - Regenerate keyart-portrait.png as true 16-bit pixel art (was 3D/cinematic) - Regenerate vi-welcome.mp3 as a 31KB short line (was 808KB misplaced story) - Generate 10 missing VI voice lines (levelclear, princess-help, princess-run, gameover, 6 act intros) in Vietnamese_kindhearted_girl - Replace broken PHASER logo + 16x16 favicon with proper NNTV wordmark + 32x32 rabbit sprite - Add UI scene backgrounds (scene-menu/story/guide/settings) for in-app use - Add 6 keyart images (1280x720) + portrait (1024x1024) + poster for store/social - Delete orphan assets: bg.png, nntv-generated-sheet.png, scraps/sketch.napkin - Add MANIFEST.json + MEDIA.json documenting the asset corpus BGM integration - New src/lib/bgm.js: HTMLAudioElement BGM manager with 600ms crossfade, per-track loop, autoplay-blocked fallback, persistent sfxMuted/bgmMuted/ bgmVolume in localStorage (key: nntv-audio-settings) - App.svelte scene router picks the track per scene; L12 uses the climactic chamber track, all other Game scenes use the levels loop - audio.js: setMuted/isMuted now mirror bgm.js so GameHud's SND/MUTE button silences both SFX and BGM (master toggle) - Settings.svelte: new Audio panel with SFX toggle, BGM toggle, BGM volume slider (0-100%, disabled when BGM is off); bilingual - MainMenu/StoryIntro/Guide/Settings: top band scene backdrops at ~0.5 opacity - New i18n keys: audioSettings, sfxLabel, bgmLabel, volumeLabel, on, off, muted, sound (en + vi) - GameHud label localized (SND / MUTED) Tests: 180/180 passing. Build: clean (139KB JS / 28KB CSS gzipped).