From de303c5825874f4392a9b6e7cd97fcd4c169d8da Mon Sep 17 00:00:00 2001 From: Andrea Manzi Date: Sun, 25 Oct 2026 18:17:01 +0100 Subject: [PATCH] Suoni d'ambiente sintetizzati (vento, acqua, uccelli, grilli, campane) col loro volume in Pausa; la fessura in primo piano: si cerca col fascio della torcia il quadro e gli occhi (lavoro di Codex). La foto del palio leggibile da nginx, e un test che lo controlla per tutti i file serviti Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_018ks2K99uqCZjAxvy7Rdj1R --- README.md | 7 ++ assets/closeups/palio-2007.jpg | Bin 0 -> 57557 bytes docs/IMMAGINI.md | 4 + docs/STATO.md | 17 +++++ index.html | 5 +- src/engine/game.js | 43 ++++++++++- src/engine/render.js | 6 ++ src/engine/soundscape.js | 132 +++++++++++++++++++++++++++++++++ src/engine/storage.js | 3 +- src/engine/torch.js | 89 ++++++++++++++++++++++ src/main.js | 88 ++++++++++++++-------- src/story/soundscapes.js | 23 ++++++ src/story/story.js | 39 ++++++---- style.css | 3 + tests/browser.mjs | 39 +++++++++- tests/helpers.mjs | 15 +++- tests/multimedia.browser.mjs | 127 +++++++++++++++++++++++++++++++ tests/multimedia.test.mjs | 102 +++++++++++++++++++++++++ tests/storage.test.mjs | 2 + tests/story.test.mjs | 29 ++++++-- video/collaudo.mjs | 10 +++ video/partita-completa.mjs | 10 +++ 22 files changed, 732 insertions(+), 61 deletions(-) create mode 100644 assets/closeups/palio-2007.jpg create mode 100644 src/engine/soundscape.js create mode 100644 src/engine/torch.js create mode 100644 src/story/soundscapes.js create mode 100644 tests/multimedia.browser.mjs create mode 100644 tests/multimedia.test.mjs diff --git a/README.md b/README.md index bf24add..7cda718 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,12 @@ python3 -m http.server 8000 # poi http://localhost:8000 Clic = azione più sensata (parla, guarda, vai); clic destro o pressione lunga = guarda; un verbo scelto vale per il clic successivo. Spazio salta la battuta, i numeri scelgono nel dialogo, Esc annulla il verbo. +Il libro dell'oratorio si apre e si sfoglia con clic o tocco; Esc lo chiude. Nella fessura della Fortezza, +la torcia segue mouse o dito (anche trascinando): si cercano i dettagli tenendo brevemente la luce su di essi. +Si possono usare anche le frecce, oppure Invio per cercare il prossimo dettaglio. «Torna fuori» permette di +riprovare; dopo il ritrovamento, «Continua» conclude il capitolo. +Il volume dei suoni ambientali e del fruscio delle pagine si regola in **Pausa → Ambiente ed effetti**. + ## In Docker ```zsh @@ -64,5 +70,6 @@ make down npm test # logica, storia coerente, soluzione percorsa dall'inizio alla fine npm install && npx playwright install chromium-headless-shell npm run browser # partita completa con clic veri in Chromium, salvataggio, telefono +npm run browser -- --media-only # libro, torcia e audio: controllo mirato desktop/telefono ``` diff --git a/assets/closeups/palio-2007.jpg b/assets/closeups/palio-2007.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d3ce635f43a56c3f5ae0d746ecad797774f05fde GIT binary patch literal 57557 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 literal 0 HcmV?d00001 diff --git a/docs/IMMAGINI.md b/docs/IMMAGINI.md index 190d528..4ba389e 100644 --- a/docs/IMMAGINI.md +++ b/docs/IMMAGINI.md @@ -1,5 +1,9 @@ # Da dove vengono le immagini +- `assets/closeups/palio-2007.jpg`: copia della foto `assets/raw/palio-2007-foto.jpg` fornita da Andrea + il 24 ottobre 2026. Usata nel primo piano della fessura; il renderer mostra soltanto la tela tramite + le coordinate `story.closeups.fessura.crop`, senza modificare la foto originale. + Da controllare **prima del primo push**: quello che è nella storia di git, una volta pubblicato, resta pubblico anche se poi lo si cancella. Le foto originali (`assets/raw/`) e i prompt (`prompts/`) sono esclusi da git e non sono mai stati committati (verificato il 2026-10-23); qui si parla degli sfondi ridisegnati in `assets/scenes/`, che invece diff --git a/docs/STATO.md b/docs/STATO.md index b924854..905472d 100644 --- a/docs/STATO.md +++ b/docs/STATO.md @@ -18,6 +18,23 @@ Online su 50037.manzolo.it tutto fino agli effetti ambientali di Codex. Aperto, ## Dove siamo arrivati +- **Multimedia (25 ottobre, modifiche locali)**: il libro sfogliabile già presente conserva immagini, battute e + riapertura dall'inventario; il fruscio ora segue il volume degli effetti, non quello delle voci. + Nuovi paesaggi sonori sintetizzati con Web Audio (`src/engine/soundscape.js`, profili in + `src/story/soundscapes.js`): vento, acqua, uccelli di giorno e grilli di sera, campane, bicchieri, + gocce e scricchiolii distanziati. In **Pausa → Ambiente ed effetti** si regola il volume, salvato nel browser. + Muto, pausa e pagina nascosta fermano anche i suoni già avviati. + La **torcia nella fessura** apre un primo piano: mouse, tocco/trascinamento o frecce spostano la luce; + Invio aiuta a cercare il prossimo dettaglio. Pietra → palio → occhi; la musica si abbassa durante la ricerca. + «Torna fuori»/Esc permette di riprovare; soltanto dopo gli occhi «Continua» avvia la conclusione. + Nessun progresso parziale viene salvato. La tela usa la foto vera del 2007, ritagliata durante il disegno. + Controllo mirato: `npm run browser -- --media-only`; il collaudo normale include anche queste prove. + Verificati `npm test` e `npm run browser`: soluzione completa, salvataggi, libro su desktop/telefono, + torcia con mouse/tastiera/tocco/trascinamento, pausa e muto, segnale Web Audio senza saturazione. + Schermate in `/tmp/regolo-shots/media-*.png` e `/tmp/regolo-shots/05b-fessura-*.png`. + I copioni video sono aggiornati ai gesti richiesti dalla torcia; il montaggio audio da file continua a + includere solo musica e voci (gli effetti Web Audio non vengono esportati dal copione). + - **Ambienti animati (25 ottobre)**: alle prove già presenti (bandiere del campeggio, fascio di luce nella Pieve, ombre al Bosco ai Frati) si aggiungono 51 dettagli nelle altre 35 scene. Configurazione in `src/story/ambience.js`, richiamata da `story.js`; nuovi disegni in `src/engine/ambient.js`: diff --git a/index.html b/index.html index 9bf4def..9dc39e5 100644 --- a/index.html +++ b/index.html @@ -19,7 +19,7 @@
- + @@ -73,6 +73,9 @@