Le bocce al pallaio contro Mariano: si tiene premuto per la forza, tre bocce a testa, vince il più vicino al pallino; se vinci, «Hai vinto, ti ci porto!» a Brento Sanico (sfondo e Mariano di Codex dalle foto di Andrea)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ks2K99uqCZjAxvy7Rdj1R
This commit is contained in:
2026-10-25 18:59:09 +01:00
co-authored by Claude Opus 5.5
parent 7f0584f0fc
commit c4bac08c02
29 changed files with 528 additions and 13 deletions
+48 -2
View File
@@ -107,6 +107,22 @@ export const story = {
// Primi piani interattivi: libro dell'oratorio e ricerca con la torcia nella fessura.
// Le immagini (Codex, assets/closeups/) hanno l'etichetta e le pagine vuote: titolo e «FINE» li scrive il codice.
closeups: {
// Le bocce al pallaio contro Mariano, il campione (idea di Andrea, 25 ottobre): solo per gloria.
bocce: {
type: 'bocce',
picture: 'assets/closeups/pallaio.png',
names: { player: 'Andrea', cpu: 'Mariano' },
win: [
{ say: 'Aspetta, ci vuole il metro...', who: 'mariano', pose: 'measure' },
{ say: 'Hai vinto, ti ci porto!', who: 'mariano', pose: 'laugh' },
{ set: 'bocce_vinte' },
],
lose: [
{ say: 'Bocciato! Al pallaio comando io.', who: 'mariano', pose: 'cheer' },
{ say: 'Quando vuoi la rivincita, sono qui.', who: 'mariano' },
],
quit: [{ say: 'Già stanco? Il pallaio ti aspetta.', who: 'mariano', pose: 'laugh' }],
},
fessura: {
type: 'torch',
picture: 'assets/closeups/palio-2007.jpg',
@@ -155,6 +171,7 @@ export const story = {
arcu: { name: 'L\'Arcu', color: '#7fb2ff', sprite: 'assets/characters/arcu.json' },
tozzino: { name: 'Il Tozzino', color: '#c8f5b0', sprite: 'assets/characters/tozzino.json' },
barondeduke: { name: 'Il BaronDeDuke', color: '#e0c090', sprite: 'assets/characters/barondeduke.json' },
mariano: { name: 'Mariano', color: '#ffb0a3', sprite: 'assets/characters/mariano.json' },
},
items: {
squama: {
@@ -1424,7 +1441,9 @@ export const story = {
name: 'Il tennis della chiesa',
map: [66, 51],
background: 'assets/scenes/tennis-chiesa.png',
speakers: { tosca: [292, 196] },
speakers: { tosca: [292, 196], mariano: [500, 234] },
// Mariano, il campione del pallaio (sprite di Codex dalla foto di Andrea, 25 ottobre).
people: [{ who: 'mariano', at: [500, 290], facing: -1, idle: 'stand', talk: ['talk', 'explain'], blink: 'blink', every: 4.4 }],
walk: [[0, 360], [0, 300], [200, 290], [420, 268], [640, 258], [640, 360]],
depth: [[258, 0.7], [360, 1.15]],
entry: [320, 350],
@@ -1433,7 +1452,7 @@ export const story = {
id: 'pallaio', name: 'il pallaio', box: [300, 248, 340, 40], at: [400, 300], face: 'up',
actions: {
look: [{ say: 'Il pallaio, dove si gioca a bocce. Qui un punto si discute più di un rigore.' }],
use: [{ say: 'Senza bocce, e senza un vecchietto che misura col metro, non è una partita.' }],
use: [{ say: 'Una partita? Chiedo a Mariano, il campione.' }, { dialogue: 'mariano' }],
},
},
{
@@ -1464,6 +1483,13 @@ export const story = {
{
id: 'al_cancello', name: 'dal cancello verde, verso il posticino della Carza', box: [470, 140, 120, 130], at: [515, 280], exit: { scene: 'carza', at: [440, 290], face: 'left' },
},
{
id: 'mariano', name: 'Mariano', box: [482, 238, 36, 52], at: [455, 300], face: 'right', default: 'talk',
actions: {
look: [{ say: 'Mariano, il campione del pallaio. Gli occhiali in testa, il sorriso di chi ha già vinto.' }],
talk: [{ dialogue: 'mariano' }],
},
},
],
},
// Fra la Fortezza e i cipressi: la stradina fra le vigne, la casa del maestro Bacci, e lassù il Trebbio.
@@ -2095,6 +2121,26 @@ export const story = {
},
},
},
// Mariano al pallaio: una mano a bocce, solo per gloria; se Andrea vince, la promessa di Brento Sanico.
mariano: {
nodes: {
start: {
options: [
{
text: 'Mariano! Facciamo una partita a bocce?', when: '!bocce_vinte', next: 'end',
then: [
{ say: 'Con me? Al pallaio sono il campione.', who: 'mariano', pose: 'explain' },
{ say: 'Facciamo così: se mi batti, ti porto a Brento Sanico.', who: 'mariano' },
{ closeup: 'bocce' },
],
},
{ text: 'La rivincita?', when: 'bocce_vinte', next: 'end', then: [{ say: 'Il campione non scappa. Tira!', who: 'mariano', pose: 'throw' }, { closeup: 'bocce' }] },
{ text: 'Allora, Brento Sanico?', when: 'bocce_vinte', then: [{ say: 'Promesso: ti ci porto. Ma prima ritrova il palio, che senza festa non si parte.', who: 'mariano', pose: 'explain' }] },
{ text: 'Ciao Mariano.', next: 'end' },
],
},
},
},
// Lo "psicologo": il castello ascolta e risponde con un indizio su quello che manca.
castello: {
nodes: {