diff --git a/assets/characters/bertovo.json b/assets/characters/bertovo.json new file mode 100644 index 0000000..9c492fb --- /dev/null +++ b/assets/characters/bertovo.json @@ -0,0 +1,70 @@ +{ + "image": "bertovo.png", + "height": 120, + "frames": { + "stand": { + "x": 0, + "y": 0, + "w": 53, + "h": 120, + "ax": 27.4, + "ay": 120 + }, + "blink": { + "x": 55, + "y": 0, + "w": 52, + "h": 121, + "ax": 26.1, + "ay": 121 + }, + "talk": { + "x": 109, + "y": 0, + "w": 79, + "h": 121, + "ax": 31.3, + "ay": 121 + }, + "explain": { + "x": 190, + "y": 0, + "w": 58, + "h": 121, + "ax": 30.2, + "ay": 121 + }, + "laugh": { + "x": 250, + "y": 0, + "w": 54, + "h": 122, + "ax": 28.6, + "ay": 122 + }, + "chalk": { + "x": 306, + "y": 0, + "w": 55, + "h": 121, + "ax": 25.0, + "ay": 121 + }, + "shrug": { + "x": 363, + "y": 0, + "w": 91, + "h": 122, + "ax": 45.4, + "ay": 122 + }, + "cheer": { + "x": 456, + "y": 0, + "w": 58, + "h": 125, + "ax": 31.0, + "ay": 125 + } + } +} diff --git a/assets/characters/bertovo.png b/assets/characters/bertovo.png new file mode 100644 index 0000000..07536db Binary files /dev/null and b/assets/characters/bertovo.png differ diff --git a/assets/closeups/gp/porno.png b/assets/closeups/gp/bini.png similarity index 100% rename from assets/closeups/gp/porno.png rename to assets/closeups/gp/bini.png diff --git a/assets/closeups/gp/brauda.png b/assets/closeups/gp/brauda.png new file mode 100644 index 0000000..303325a Binary files /dev/null and b/assets/closeups/gp/brauda.png differ diff --git a/assets/closeups/gp/formula.png b/assets/closeups/gp/formula.png index cc1c3bf..5edc986 100644 Binary files a/assets/closeups/gp/formula.png and b/assets/closeups/gp/formula.png differ diff --git a/assets/closeups/gp/gianno.png b/assets/closeups/gp/gianno.png new file mode 100644 index 0000000..9264f81 Binary files /dev/null and b/assets/closeups/gp/gianno.png differ diff --git a/assets/closeups/gp/rally.png b/assets/closeups/gp/rally.png new file mode 100644 index 0000000..172e621 Binary files /dev/null and b/assets/closeups/gp/rally.png differ diff --git a/assets/closeups/gp/spy.png b/assets/closeups/gp/spy.png new file mode 100644 index 0000000..37b01d7 Binary files /dev/null and b/assets/closeups/gp/spy.png differ diff --git a/assets/closeups/gp/typhoon.png b/assets/closeups/gp/typhoon.png new file mode 100644 index 0000000..f8457ff Binary files /dev/null and b/assets/closeups/gp/typhoon.png differ diff --git a/assets/closeups/gp/yuri.png b/assets/closeups/gp/yuri.png new file mode 100644 index 0000000..682f527 Binary files /dev/null and b/assets/closeups/gp/yuri.png differ diff --git a/assets/scenes/mini/via-liguri-magelli.png b/assets/scenes/mini/via-liguri-magelli.png index bf2c508..f5923a3 100644 Binary files a/assets/scenes/mini/via-liguri-magelli.png and b/assets/scenes/mini/via-liguri-magelli.png differ diff --git a/assets/scenes/via-liguri-magelli.png b/assets/scenes/via-liguri-magelli.png index 52402ee..3db9d71 100644 Binary files a/assets/scenes/via-liguri-magelli.png and b/assets/scenes/via-liguri-magelli.png differ diff --git a/assets/voices/andrea-0b28b74cdb.mp3 b/assets/voices/andrea-0b28b74cdb.mp3 new file mode 100644 index 0000000..89f8aeb Binary files /dev/null and b/assets/voices/andrea-0b28b74cdb.mp3 differ diff --git a/assets/voices/andrea-28610c8178.mp3 b/assets/voices/andrea-28610c8178.mp3 new file mode 100644 index 0000000..60d782d Binary files /dev/null and b/assets/voices/andrea-28610c8178.mp3 differ diff --git a/assets/voices/andrea-2eaaaffa37.mp3 b/assets/voices/andrea-2eaaaffa37.mp3 new file mode 100644 index 0000000..b1a0469 Binary files /dev/null and b/assets/voices/andrea-2eaaaffa37.mp3 differ diff --git a/assets/voices/andrea-728f589a77.mp3 b/assets/voices/andrea-728f589a77.mp3 new file mode 100644 index 0000000..8371e32 Binary files /dev/null and b/assets/voices/andrea-728f589a77.mp3 differ diff --git a/assets/voices/andrea-8b3082981a.mp3 b/assets/voices/andrea-8b3082981a.mp3 new file mode 100644 index 0000000..b771a5e Binary files /dev/null and b/assets/voices/andrea-8b3082981a.mp3 differ diff --git a/assets/voices/andrea-a3364fd72b.mp3 b/assets/voices/andrea-a3364fd72b.mp3 new file mode 100644 index 0000000..90ea925 Binary files /dev/null and b/assets/voices/andrea-a3364fd72b.mp3 differ diff --git a/assets/voices/andrea-ae928089b9.mp3 b/assets/voices/andrea-ae928089b9.mp3 new file mode 100644 index 0000000..bcd6a69 Binary files /dev/null and b/assets/voices/andrea-ae928089b9.mp3 differ diff --git a/assets/voices/andrea-b9a784137e.mp3 b/assets/voices/andrea-b9a784137e.mp3 new file mode 100644 index 0000000..16a0472 Binary files /dev/null and b/assets/voices/andrea-b9a784137e.mp3 differ diff --git a/assets/voices/andrea-c64bb3be5a.mp3 b/assets/voices/andrea-c64bb3be5a.mp3 new file mode 100644 index 0000000..82aa1dd Binary files /dev/null and b/assets/voices/andrea-c64bb3be5a.mp3 differ diff --git a/assets/voices/andrea-c6670ffb48.mp3 b/assets/voices/andrea-c6670ffb48.mp3 new file mode 100644 index 0000000..4b4d004 Binary files /dev/null and b/assets/voices/andrea-c6670ffb48.mp3 differ diff --git a/assets/voices/arcu-6ba2f5285a.mp3 b/assets/voices/arcu-6ba2f5285a.mp3 new file mode 100644 index 0000000..2a1d2b1 Binary files /dev/null and b/assets/voices/arcu-6ba2f5285a.mp3 differ diff --git a/assets/voices/bertovo-03564e5a92.mp3 b/assets/voices/bertovo-03564e5a92.mp3 new file mode 100644 index 0000000..ba88c2c Binary files /dev/null and b/assets/voices/bertovo-03564e5a92.mp3 differ diff --git a/assets/voices/bertovo-4d4d630038.mp3 b/assets/voices/bertovo-4d4d630038.mp3 new file mode 100644 index 0000000..37ae13b Binary files /dev/null and b/assets/voices/bertovo-4d4d630038.mp3 differ diff --git a/assets/voices/bertovo-5e771069ff.mp3 b/assets/voices/bertovo-5e771069ff.mp3 new file mode 100644 index 0000000..24733c4 Binary files /dev/null and b/assets/voices/bertovo-5e771069ff.mp3 differ diff --git a/assets/voices/bertovo-6c52f3fa0d.mp3 b/assets/voices/bertovo-6c52f3fa0d.mp3 new file mode 100644 index 0000000..caf14c0 Binary files /dev/null and b/assets/voices/bertovo-6c52f3fa0d.mp3 differ diff --git a/assets/voices/bertovo-7e1952241d.mp3 b/assets/voices/bertovo-7e1952241d.mp3 new file mode 100644 index 0000000..412b00d Binary files /dev/null and b/assets/voices/bertovo-7e1952241d.mp3 differ diff --git a/assets/voices/bertovo-914554e2ce.mp3 b/assets/voices/bertovo-914554e2ce.mp3 new file mode 100644 index 0000000..f048de0 Binary files /dev/null and b/assets/voices/bertovo-914554e2ce.mp3 differ diff --git a/assets/voices/bertovo-a63d2da89d.mp3 b/assets/voices/bertovo-a63d2da89d.mp3 new file mode 100644 index 0000000..82e1f69 Binary files /dev/null and b/assets/voices/bertovo-a63d2da89d.mp3 differ diff --git a/assets/voices/bertovo-a6a09b5b87.mp3 b/assets/voices/bertovo-a6a09b5b87.mp3 new file mode 100644 index 0000000..0b6560c Binary files /dev/null and b/assets/voices/bertovo-a6a09b5b87.mp3 differ diff --git a/assets/voices/bertovo-b582e39e44.mp3 b/assets/voices/bertovo-b582e39e44.mp3 new file mode 100644 index 0000000..24dd181 Binary files /dev/null and b/assets/voices/bertovo-b582e39e44.mp3 differ diff --git a/assets/voices/bertovo-d14be7e027.mp3 b/assets/voices/bertovo-d14be7e027.mp3 new file mode 100644 index 0000000..13dfb11 Binary files /dev/null and b/assets/voices/bertovo-d14be7e027.mp3 differ diff --git a/assets/voices/bertovo-d71d01230d.mp3 b/assets/voices/bertovo-d71d01230d.mp3 new file mode 100644 index 0000000..6989e8d Binary files /dev/null and b/assets/voices/bertovo-d71d01230d.mp3 differ diff --git a/assets/voices/bertovo-f0d200f449.mp3 b/assets/voices/bertovo-f0d200f449.mp3 new file mode 100644 index 0000000..d914031 Binary files /dev/null and b/assets/voices/bertovo-f0d200f449.mp3 differ diff --git a/assets/voices/bertovo-fde93190e9.mp3 b/assets/voices/bertovo-fde93190e9.mp3 new file mode 100644 index 0000000..e7894c5 Binary files /dev/null and b/assets/voices/bertovo-fde93190e9.mp3 differ diff --git a/assets/voices/index.json b/assets/voices/index.json index 49b6696..84ef503 100644 --- a/assets/voices/index.json +++ b/assets/voices/index.json @@ -935,6 +935,10 @@ "file": "andrea-127a90af53.mp3", "sec": 9.37 }, + "andrea|Bertovo, al tavolo di mezzo. Le biglie le mette dove nessuno ci arriva, e poi ci arriva lui.": { + "file": "andrea-0b28b74cdb.mp3", + "sec": 6.78 + }, "andrea|Le stecche del circolo, in fila. Ognuna ha il suo proprietario, e guai a sbagliare.": { "file": "andrea-1eae1a8577.mp3", "sec": 6.1 @@ -1603,6 +1607,18 @@ "file": "andrea-a93c65234e.mp3", "sec": 4.28 }, + "andrea|Di chi è quell'Audi nera?": { + "file": "andrea-b9a784137e.mp3", + "sec": 1.63 + }, + "arcu|Let it be.": { + "file": "arcu-6ba2f5285a.mp3", + "sec": 0.69 + }, + "andrea|Non è mica mia. Mi garba, però, nera fiammante.": { + "file": "andrea-ae928089b9.mp3", + "sec": 4.03 + }, "andrea|«Qui riposa la Ghiacciomobile, che si è schiantata lì.»": { "file": "andrea-a9e7f3f9ad.mp3", "sec": 3.11 @@ -2411,6 +2427,70 @@ "file": "mariano-d65fb6e871.mp3", "sec": 3.42 }, + "andrea|Bertovo! Che fai, giochi da solo?": { + "file": "andrea-2eaaaffa37.mp3", + "sec": 3 + }, + "andrea|Come fai a prendere le biglie dove nessuno ci arriva?": { + "file": "andrea-c6670ffb48.mp3", + "sec": 2.52 + }, + "andrea|Dai, fammi vedere un rinquarto.": { + "file": "andrea-728f589a77.mp3", + "sec": 1.68 + }, + "andrea|Ci si vede, Bertovo.": { + "file": "andrea-a3364fd72b.mp3", + "sec": 1.78 + }, + "bertovo|Da solo? Io gioco contro le sponde. E vinco quasi sempre.": { + "file": "bertovo-5e771069ff.mp3", + "sec": 5.67 + }, + "bertovo|Geometria. La biglia va dove le dici, basta chiederglielo per bene.": { + "file": "bertovo-914554e2ce.mp3", + "sec": 4.82 + }, + "bertovo|E con un po' di gesso.": { + "file": "bertovo-6c52f3fa0d.mp3", + "sec": 1.52 + }, + "bertovo|Te lo faccio vedere? No: lo tiri te.": { + "file": "bertovo-fde93190e9.mp3", + "sec": 3.12 + }, + "bertovo|Le biglie le metto io, nascoste per bene. Oh tirami questo rinquarto!?": { + "file": "bertovo-a6a09b5b87.mp3", + "sec": 5.83 + }, + "bertovo|Occhio alle sponde, fuori.": { + "file": "bertovo-4d4d630038.mp3", + "sec": 1.43 + }, + "andrea|Alla bona, una sponda e basta.": { + "file": "andrea-8b3082981a.mp3", + "sec": 2.47 + }, + "andrea|No, mi tremano le mani.": { + "file": "andrea-28610c8178.mp3", + "sec": 1.23 + }, + "bertovo|Una sponda. Roba da principianti, ma va bene.": { + "file": "bertovo-d14be7e027.mp3", + "sec": 3.6 + }, + "bertovo|Due sponde. Così mi piace.": { + "file": "bertovo-7e1952241d.mp3", + "sec": 2.55 + }, + "bertovo|Tre sponde e niente aiuti. Qui nascono le geometrie celestiali.": { + "file": "bertovo-b582e39e44.mp3", + "sec": 4.86 + }, + "bertovo|Il tavolo è qui. Le sponde non scappano.": { + "file": "bertovo-f0d200f449.mp3", + "sec": 2.92 + }, "andrea|Ingegnere, una partita ai birilli?": { "file": "andrea-dbcf4d1083.mp3", "sec": 2.49 @@ -2675,6 +2755,22 @@ "file": "ing_tozzi-282062c119.mp3", "sec": 3.64 }, + "bertovo|Questo rinquarto era bono!": { + "file": "bertovo-d71d01230d.mp3", + "sec": 1.26 + }, + "bertovo|Le sponde ci sono per qualcosa!": { + "file": "bertovo-a63d2da89d.mp3", + "sec": 1.44 + }, + "andrea|Questo me lo tengo per la prossima.": { + "file": "andrea-c64bb3be5a.mp3", + "sec": 1.82 + }, + "bertovo|Si riprova?": { + "file": "bertovo-03564e5a92.mp3", + "sec": 0.63 + }, "andrea|Laggiù, appoggiato al muro, c'è un angolo di tela dipinta: una strada bianca, e un omino con la maglia rossa e le braccia alzate.": { "file": "andrea-6484641c58.mp3", "sec": 8.67 diff --git a/docs/STATO.md b/docs/STATO.md index 7217fc3..e7d70de 100644 --- a/docs/STATO.md +++ b/docs/STATO.md @@ -18,6 +18,20 @@ Online su 50037.manzolo.it tutto fino agli effetti ambientali di Codex. Aperto, ## Dove siamo arrivati +- **I rinquarti di Bertovo (28 ottobre, modifiche locali)**: variante del biliardo in `rinquarto.js` e + `rinquarto-render.js`, con fisica, mira, carica e suoni del biliardo. Sei posizioni riproducibili dal seme, + diretto coperto da una biglia e almeno una soluzione di sponda verificata con `simulate` per ciascuna. + Un tiro per posizione: punto al primo contatto col bersaglio dopo almeno 1/2/3 sponde (bona/seria/male), + senza prima toccare biglie viola o birilli. Guide: fino alla seconda sponda / 65 cm e prima sponda / nessuna; + vittoria con 3/3/2 punti su 6. Esito del tiro, contatore delle sponde e riepilogo finale persistente. + Integrati primo piano, pannello, aiuto e dialogo `bertovo` con scelta del livello; Bertovo resta senza sprite + e senza scena: **Andrea decide dove collocarlo**. Battute provvisorie segnate `[DA ANDREA]`. + Ripresa verificata con `node --test tests/*.test.mjs` (22 file, nessun rosso, comprese le voci già presenti) + e 14 test mirati in `tests/rinquarto.test.mjs`. Completata l'animazione dei birilli durante l'esito + e nel riepilogo finale: anche un urto appena prima dell'arresto termina la caduta senza cambiare punti o risultato. + Verifica visiva Playwright/SwiftShader ancora da eseguire: in questa sessione la sandbox impedisce l'avvio + del server locale e di Chromium (`Operation not permitted`). Nessun `make voci`, commit o pubblicazione. + - **Briscola all'oratorio (26 ottobre)**: alle tavolate siede «Il giocatore di carte» (segnaposto, [DA ANDREA: chi è], sprite e battute provvisorie di Codex). Parlandoci si sceglie il mazzo (toscane o napoletane) e il livello («Alla bona», «Seria», «A fassi male»), poi briscola a due fedele alle regole, conteggio delle prese a fine @@ -257,7 +271,7 @@ I prompt fissi (stile, scene, foglio sprite) sono in `prompts/STILE.md`, escluso `assets/raw/fortezza-planimetria.png`, satellite in `assets/raw/fortezza-satellite.png`); il tracciato è ricalcato sulla strada dipinta. Disegno `gara-render.js`, test `tests/gara.test.mjs`. I piloti sono dati in `src/story/piloti.js`: una riga per amico, `motore` e `testa` da 1 a 5, colori dalle foto. Corrono Puntella (SR - truccatissimo, motore 6, viola e giallo dalla sua foto, ritratto di Codex, testa «non pervenuta»), il Porno (Andrea + truccatissimo, motore 6, viola e giallo dalla sua foto, ritratto di Codex, testa «non pervenuta»), Bini (Andrea Bini, consenso del 28 ottobre: Italjet Formula giallo, motore 5, ritratto di Codex), Cistola (CR 50 Z), Andrea (Malaguti Fifty rosso e nero), Tozzino (Booster blu scuro, di serie, casco alla Damon Hill di Codex: `prompts/personaggi/casco-tozzino.txt`), l'Arcu (Betino). Col telefono si guida con un dito: premuto è gas, lo swipe indica dove andare sullo schermo (Codex, 28 ottobre). Puntella (Marco Villani) ha dato il consenso il 28 ottobre; chi ha `consenso: null` in piloti.js non corre. Mancano: quanto erano @@ -268,6 +282,8 @@ I prompt fissi (stile, scene, foglio sprite) sono in `prompts/STILE.md`, escluso ponticino della Carza, a sinistra il Trappola. Il campo del Giannini: a destra le villette, a sinistra il Trappola; dal ponticino non ci si va. Via Liguri Magelli: lassù vicino al Betino si torna a casa, laggiù a destra il campo. Da sapere: dove si gira, in fondo al ponticino, per Cardetole [DA ANDREA]. +- Bertovo (Fabrizio Berti, consenso del 28 ottobre) al tavolo di mezzo del Circolo 4 Maggio, sprite di Codex dalla sua + foto (`prompts/personaggi/bertovo-sheet.txt`): parlandoci, i suoi rinquarti (`src/engine/rinquarto.js`, Codex). - Via Liguri Magelli (Street View di Andrea, 28 ottobre), a sinistra dal campo del Giannini: a destra la casa salmone con la tenda del Trappola (il Barrettino, «Vai dal Trappola»: niente interno, [DA ANDREA]), l'Arcu sotto la tenda (scherzo: «ti ho visto du' minuti fa a Campomigliaio» col Betino, poi la sfida del GP), davanti la targa «Qui riposa la diff --git a/index.html b/index.html index ccdfa97..a6337fe 100644 --- a/index.html +++ b/index.html @@ -192,6 +192,10 @@