Più emozione all'arrivo della festa: «Mahhh... è l'INGORGOOOO!!!», da sola, e la voce che lo grida due volte (Andrea)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GiECd9Quo9nEdXyjXYF8ma
This commit is contained in:
2026-10-30 23:11:51 +01:00
co-authored by Claude Opus 5.5
parent 721df30937
commit 94902edc57
8 changed files with 15 additions and 8 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
+7 -3
View File
@@ -3439,9 +3439,13 @@
"file": "andrea-366c066d68.mp3", "file": "andrea-366c066d68.mp3",
"sec": 2.28 "sec": 2.28
}, },
"andrea|Ma... è l'Ingorgo! Le console, la gente, le spine della birra!": { "andrea|Mahhh... è l'INGORGOOOO!!!": {
"file": "andrea-bc7d5f4dc0.mp3", "file": "andrea-5694cd3779.mp3",
"sec": 7.5 "sec": 3.74
},
"andrea|Le console, la gente, le spine della birra!": {
"file": "andrea-a6bceec795.mp3",
"sec": 2.57
}, },
"andrea|Il palio può aspettare una sera. O no?": { "andrea|Il palio può aspettare una sera. O no?": {
"file": "andrea-24e5ac53da.mp3", "file": "andrea-24e5ac53da.mp3",
+3 -1
View File
@@ -345,7 +345,9 @@ export const story = {
type: 'incanto', type: 'incanto',
swap: [{ set: 'ingorgo' }], swap: [{ set: 'ingorgo' }],
complete: [ complete: [
{ say: 'Ma... è l\'Ingorgo! Le console, la gente, le spine della birra!' }, // Più emozione (Andrea: «MAHHH E' L'INGORGOOOOO!!!!!»); la voce legge la versione di tools/pronuncia.json.
{ say: 'Mahhh... è l\'INGORGOOOO!!!' },
{ say: 'Le console, la gente, le spine della birra!' },
{ say: 'Il palio può aspettare una sera. O no?' }, { say: 'Il palio può aspettare una sera. O no?' },
], ],
}, },
+1 -1
View File
@@ -36,7 +36,7 @@ try {
await page.screenshot({ path: `${out}/2-fasci.png` }); await page.screenshot({ path: `${out}/2-fasci.png` });
await page.waitForFunction(() => game.closeup?.t > 2.5, null, { timeout: 5000 }); await page.waitForFunction(() => game.closeup?.t > 2.5, null, { timeout: 5000 });
await page.screenshot({ path: `${out}/3-coriandoli.png` }); await page.screenshot({ path: `${out}/3-coriandoli.png` });
await page.waitForFunction(() => !game.closeup && game.state.flags.ingorgo && game.speech?.text.includes('Ingorgo'), null, { timeout: 5000 }); await page.waitForFunction(() => !game.closeup && game.state.flags.ingorgo && game.speech?.text.toLowerCase().includes('ingorgo'), null, { timeout: 5000 });
await page.screenshot({ path: `${out}/3b-festa.png` }); await page.screenshot({ path: `${out}/3b-festa.png` });
await page.evaluate(() => settle(game)); await page.evaluate(() => settle(game));
// La festa, scena per scena: lo sfondo di notte, e la musica di più console insieme. // La festa, scena per scena: lo sfondo di notte, e la musica di più console insieme.
+2 -1
View File
@@ -20,5 +20,6 @@
"Imposto": "Impòsto", "Imposto": "Impòsto",
"Libici": "Lìbici", "Libici": "Lìbici",
"mancano": "màncano", "mancano": "màncano",
"console": "consòl" "console": "consòl",
"Mahhh... è l'INGORGOOOO!!!": "Maaaa, è l'Ingorgo! L'Ingorgooo!"
} }
+2 -2
View File
@@ -129,10 +129,10 @@ export async function run(d) {
await musica(H); await musica(H);
// 4. Il giro della festa: Andrea si accorge della festa camminando fra la gente (la seconda battuta si salta), poi una // 4. Il giro della festa: Andrea si accorge della festa camminando fra la gente (la seconda battuta si salta), poi una
// console per posto, a stacchi veloci. // console per posto, a stacchi veloci.
await p.waitForFunction(() => !game.closeup && game.speech?.text.includes("Ingorgo"), null, { timeout: 10000 }); await p.waitForFunction(() => !game.closeup && game.speech?.text.toLowerCase().includes("ingorgo"), null, { timeout: 10000 });
await d.cue("festa"); await d.cue("festa");
await p.evaluate(() => { game.queue.length = 0; game.walkTo([200, 300]); }); await p.evaluate(() => { game.queue.length = 0; game.walkTo([200, 300]); });
await p.waitForFunction(() => !game.speech?.text.includes("Ingorgo"), null, { timeout: 20000 }); await p.waitForFunction(() => !game.speech?.text.toLowerCase().includes("ingorgo"), null, { timeout: 20000 });
await p.evaluate(() => { game.queue.length = 0; game.speech = null; }); await p.evaluate(() => { game.queue.length = 0; game.speech = null; });
await sleep(300); await sleep(300);
for (const [scene, da, a, brano] of [["via_antica_posta", [330, 345], [300, 290], H], ["piazzetta_comune", [260, 350], [300, 300], L], for (const [scene, da, a, brano] of [["via_antica_posta", [330, 345], [300, 290], H], ["piazzetta_comune", [260, 350], [300, 300], L],