La musica della Smarronata, di Andrea con Suno: il liscio nello spiazzo, più forte vicino alle coppie che ballano, e la mazurca dentro il tendone (Andrea)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GiECd9RWGMKV7n3K1mdy8T
This commit is contained in:
2026-10-31 12:45:01 +01:00
co-authored by Claude Opus 5.5
parent 5a38e0eafe
commit 4d2278a8f8
6 changed files with 13 additions and 3 deletions
+2
View File
@@ -43,11 +43,13 @@ try {
assert.equal(await page.evaluate(() => game.state.scene), 'smarronata_1993');
await page.waitForTimeout(1200);
await page.screenshot({ path: `${out}/3-smarronata.png` });
await page.waitForFunction(() => [...music.tracks.keys()].some(k => k.includes('liscio')), null, { timeout: 8000 });
await page.evaluate(() => game.act('walk', 'tendone'));
await run();
assert.equal(await page.evaluate(() => game.state.scene), 'smarronata_tendone');
await page.waitForTimeout(1200);
await page.screenshot({ path: `${out}/4-tendone.png` });
await page.waitForFunction(() => music.current?.src.includes('mazurka'), null, { timeout: 8000 });
// I cartelli della polenta e del vino gratis, ingranditi.
await page.evaluate(() => game.act('look', 'cartelli_tendone'));
await page.waitForFunction(() => game.closeup?.id === 'cartelli_smarronata' && game.closeup.t > 0.6, null, { timeout: 15000 });
+6 -1
View File
@@ -693,7 +693,7 @@ test('i file che il Docker copia sono leggibili da tutti (nginx gira con un altr
assert.deepEqual(closed, [], 'file non leggibili da nginx (chmod 644)');
});
test('la Smarronata del 1993: lo spiazzo sotto il ponte fa comparire la macchina, il viaggio, la festa, il tendone e il ritorno', () => {
test('la Smarronata del 1993: lo spiazzo sotto il ponte fa comparire la macchina, il viaggio, la festa, il tendone e il ritorno', async () => {
const g = new Game(story);
settle(g); g.go('ponte_sieve', [250, 320]); settle(g);
assert.ok(!g.hotspot('macchina_ponte'), 'prima del ricordo la macchina non c\'è');
@@ -711,6 +711,11 @@ test('la Smarronata del 1993: lo spiazzo sotto il ponte fa comparire la macchina
for (let i = 0; i < 4000 && (g.closeup || g.queue.length || g.speech); i++) { g.skip(); g.update(0.05); }
settle(g);
assert.equal(g.state.scene, 'smarronata_1993');
// La musica: il liscio fuori (più forte vicino alle coppie), la mazurca nel tendone.
const { trackFor } = await import('../src/engine/music.js');
const fuori = trackFor(story, { screen: 'game', scene: 'smarronata_1993', at: [430, 300], ok: () => true });
assert.equal(fuori[0].src, 'assets/audio/liscio.mp3'); assert.equal(fuori[0].gain, 1);
assert.equal(trackFor(story, { screen: 'game', scene: 'smarronata_tendone' }), 'assets/audio/mazurka.mp3');
assert.ok(!g.travel('piazza'), 'dal 1993 la mappa non porta via: si torna con la macchina');
g.act('walk', 'tendone'); settle(g);
assert.equal(g.state.scene, 'smarronata_tendone');