La fessura nel bastione si nota solo quando le impronte la indicano

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ApqNBvNbNCwXqR2RLo8QJh
This commit is contained in:
2026-10-24 19:59:47 +02:00
co-authored by Claude Opus 5.5
parent e99a424bbd
commit bde9a790e5
12 changed files with 32 additions and 52 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+9 -21
View File
@@ -191,21 +191,17 @@
"file": "andrea-0ffcdd4977.mp3",
"sec": 4.07
},
"andrea|Ecco dove vanno le impronte: dentro questa fessura!": {
"file": "andrea-bf55ca1485.mp3",
"sec": 4.45
"andrea|E lì, alla base del muro, c'è una fessura che prima non avevo notato.": {
"file": "andrea-037b974f0e.mp3",
"sec": 4.82
},
"andrea|Dentro è buio pesto. Senza luce non vedo niente.": {
"file": "andrea-51800429c8.mp3",
"sec": 3.87
"andrea|Ecco dove vanno le impronte: dentro questa fessura, larga quanto un gatto grasso!": {
"file": "andrea-5027e7d124.mp3",
"sec": 5.82
},
"andrea|Una fessura alla base del bastione, larga quanto un gatto grasso.": {
"file": "andrea-464f75cf78.mp3",
"sec": 4.61
},
"andrea|Dentro è buio pesto. E ne esce un'aria fresca da cantina.": {
"file": "andrea-5cb4d0e1ba.mp3",
"sec": 4.25
"andrea|Dentro è buio pesto, e ne esce un'aria fresca da cantina. Senza luce non vedo niente.": {
"file": "andrea-5a7baa436b.mp3",
"sec": 7.17
},
"andrea|Infilarci la mano al buio? Neanche per sogno.": {
"file": "andrea-1615291724.mp3",
@@ -255,14 +251,6 @@
"file": "andrea-302d8996ec.mp3",
"sec": 6.95
},
"andrea|Accendo la torcia e guardo dentro... pietre, ragnatele, buio.": {
"file": "andrea-dc84344445.mp3",
"sec": 5.6
},
"andrea|Non so nemmeno cosa sto cercando. Prima devo capire chi è passato di qui.": {
"file": "andrea-59a49e494b.mp3",
"sec": 5.28
},
"andrea|La Pieve di San Pietro. Il mio rione: noi bianchi.": {
"file": "andrea-43fd5c2b27.mp3",
"sec": 4.46
+5 -15
View File
@@ -357,15 +357,16 @@ export const story = {
{ set: 'indizio_regolo' },
{ say: 'Ma la porta è incatenata da anni. E allora da dove è entrato?' },
{ say: 'Le impronte non finiscono alla porta: piegano verso il bastione.' },
{ say: 'E lì, alla base del muro, c\'è una fessura che prima non avevo notato.' },
],
}],
},
},
// Fine del primo capitolo: le impronte portano qui; con la torcia si vede il palio, e due occhi gialli.
// Fine del primo capitolo: la fessura si nota solo quando le impronte la indicano (squama sulle impronte); con la torcia si vede il palio, e due occhi gialli.
// Il dettaglio che lo fa riconoscere è quello del quadro vero (foto di Andrea, assets/raw/palio-2007-foto.jpg),
// già visto sul manifesto in piazza: l'omino con la maglia rossa e le braccia alzate.
{
id: 'fessura', name: 'fessura nel bastione', box: [486, 266, 30, 38], at: [462, 310], face: 'right',
id: 'fessura', name: 'fessura nel bastione', box: [486, 266, 30, 38], at: [462, 310], face: 'right', when: 'indizio_regolo',
art: [
{ poly: [[490, 301], [493, 288], [497, 276], [502, 270], [507, 278], [510, 290], [512, 302]], fill: '#120c08' },
{ when: 'luce_fessura', poly: [[494, 299], [497, 286], [502, 278], [506, 286], [508, 299]], fill: 'rgba(255, 228, 140, 0.6)' },
@@ -376,20 +377,14 @@ export const story = {
{ when: 'occhi_regolo', rect: [504, 282, 2, 2], fill: '#ffe14a' },
],
actions: {
look: [{
if: 'indizio_regolo',
then: [{ say: 'Ecco dove vanno le impronte: dentro questa fessura!' }, { say: 'Dentro è buio pesto. Senza luce non vedo niente.' }],
else: [{ say: 'Una fessura alla base del bastione, larga quanto un gatto grasso.' }, { say: 'Dentro è buio pesto. E ne esce un\'aria fresca da cantina.' }],
}],
look: [{ say: 'Ecco dove vanno le impronte: dentro questa fessura, larga quanto un gatto grasso!' }, { say: 'Dentro è buio pesto, e ne esce un\'aria fresca da cantina. Senza luce non vedo niente.' }],
use: [{ say: 'Infilarci la mano al buio? Neanche per sogno.' }],
take: [{ say: 'Una fessura non si prende. Al massimo ci si guarda dentro.' }],
open: [{ say: 'È già aperta. Il problema è che è piccola.' }],
talk: [{ say: 'C\'è nessuno?' }, { say: '...' }, { say: 'Solo l\'eco. Spero.' }],
},
with: {
torcia: [{
if: 'indizio_regolo',
then: [
torcia: [
{ say: 'Accendo la torcia e la punto dentro...' },
{ set: 'luce_fessura' },
{ say: 'Laggiù, appoggiato al muro, c\'è un angolo di tela dipinta: una strada bianca, e un omino con la maglia rossa e le braccia alzate.' },
@@ -404,11 +399,6 @@ export const story = {
{ say: 'Domani c\'è il Palio. Stanotte, in un modo o nell\'altro, in quella Fortezza ci entro.' },
{ end: true },
],
else: [
{ say: 'Accendo la torcia e guardo dentro... pietre, ragnatele, buio.' },
{ say: 'Non so nemmeno cosa sto cercando. Prima devo capire chi è passato di qui.' },
],
}],
},
},
{
+4 -2
View File
@@ -407,9 +407,11 @@ test('il Trebbio ha un indizio per ogni tappa della torcia, e la torcia usata tr
assert.equal(new Set(stages).size, stages.length, 'ogni tappa il suo indizio:\n' + stages.join('\n'));
assert.match(stages[0], /Tosca/);
assert.match(stages.at(-1), /luce/);
// Senza le impronte la fessura non si nota: non c'è niente su cui usare la torcia.
const early = new Game(story, { state: { scene: 'fortezza', x: 462, y: 310, facing: 1, inventory: ['torcia'], flags: {}, used: {}, ended: false } });
early.act('use', 'fessura', 'torcia'); settle(early);
assert.ok(!early.state.ended && !early.state.flags.palio_trovato, 'senza le impronte la fessura è solo buia');
assert.ok(!early.hotspot('fessura'), 'la fessura compare solo dopo le impronte');
early.state.flags.indizio_regolo = true;
assert.ok(early.hotspot('fessura'), 'dopo le impronte la fessura si vede');
});
test('ogni posto della mappa ha la sua miniatura (make miniature)', () => {