[Python] Scacchi. era: Re: La matrice immortale.
Gabriele Battaglia
iz4apu a libero.it
Mer 9 Lug 2014 09:40:24 CEST
Germano:
Certo, visivamente bisogna rappresentarla, perché in realtà serve anche all’utente
non vedente muoversi in un ambiente, diciamo così, visivo… Nel senso, che
bisogna trovare il modo di rappresentarla facendo in modo che abbia una
visione mentale di dove si trova, quali pezzi ha di fronte e dove può
muoversi… Per questo occorre utilizzare una codifica in grado di stare su una
riga di quaranta caratteri. La riga, muovendosi avanti e in dietro nello
schermo, dà al non vedente l’immagine tattile della scacchiera.
GB: ciao Germano, ed è esattamente questo che sto cercando di fare. Una
rappresentazione testuale della scacchiera. Le case bianche saranno fatte
così: "| - ", mentre quelle nere così "| + ".
I pezzi li rappresento con dei caratteri, così come si fa nella notazione
algebrica internazionale: maiuscoli per i bianchi, minuscoli per i neri... Q =
white Queen b = black Bishop and so forth...
Il mio script è già in grado di salvare una scacchiera, te la copio qui così
vedi con la barra cosa intendo:
Ecco, questa l'ho salvata ieri mentre testavo il mio programma
***
Creato il 8/7/2014 alle ore 12:51 UTC.
-------------La scacchiera--------------
--------------Senza nome--------------
--A---B---C---D---E---F---G---H--
8 | r | n | b | q | k | b | n | r | 8
7 | p | p | p | p | p | p | p | p | 7
6 | - | + | - | + | - | + | - | + | 6
5 | + | - | + | - | + | - | + | - | 5
4 | - | + | - | + | - | + | - | + | 4
3 | + | - | + | - | + | - | + | - | 3
2 | P | P | P | P | P | P | P | P | 2
1 | R | N | B | Q | K | B | N | R | 1
--A---B---C---D---E---F---G---H--
A livello visivo dev'essere un obbrobrio immagino! Aahahahhaa, ma per i miei
mezzi in braille, è ottima.
Se riuscissi a crearla in HTML, invece che in testo, potrei anche muovermici
dentro come faccio nelle tabelle sul web, ci penserò più avanti quando farò la
conoscenza della libreria con cui Python gestisce l'HTML.
Lo script mi serve per tenere traccia delle partite che faccio via E4EC:
www.e4ec.org, un server che permette di giocare via mail.
Per la questione dell'oggetto pezzo. Io direi che avrebbe più senso creare una
classe casa, da cui derivare i 64 oggetti case. Questi oggetti devono essere
consapevoli del pezzo che contengono eventualmente e di tutte le case a loro
adiacenti, o nella medesima colonna o riga, poterle interrogare ed essere
interrogate. Si rischia di scoprire l'acqua calda perchè ci sono già dei
lavori eccellenti in materia, scrivere un motore scacchistico credo sia
veramente ma veramente difficile.
Lo sapevi che esistono i campionati del mondo di motori scacchistici?
Combattono fra di loro e stabiliscono un campione ed una classifica. :)
Che soddisfazione, sarebbe, mettere al mondo una creatura del genere e vedere
come si comporta con le altre! :)
Ciao.
GB.
Maggiori informazioni sulla lista
Python