C'est bien joli de déplacer des pièces sur un tableau de Shôgi. Mais dans le Shôgi, il y a deux joueurs qui s'affrontent, et pour le moment, mon programme ne gère pas du tout ce concept.
J'ai beaucoup déplacé des pièces sur le tablier de Dôbutsu Shôgi jusqu'à maintenant. Pour le moment, il s'agit d'une implémentation où un joueur unique déplace des pièces un peu comme il le veut. Il peut aussi capturer des pièces et les parachuter.
J'aimerais à présent ajouter aux pièces les contraintes …
Dans l'épisode précédent, j'avais extrait une classe Board pour faciliter l'implémentation de la possibilité d'avoir deux pièces identiques à des emplacements différents.
Tout d'abord, je vérifie que cela ne fonctionne bien pas.
Au tout début de mon voyage dans l'implémentation des règles du Dôbutsu Shôgi en utilisant le Test Driven Development, j'avais créé une fonction capture_lion, qui m'avait permis de démarrer.
Cette fonction était une fonction d'attente, et il est temps d'implémenter la condition de victoire de capture du lion correctement.
À l'épisode précédent, j'avais utilisé un Mock Object pour révéler un début d'interface d'une classe Tray représentant la réserve dans laquelle vont les pions capturés au Dôbutsu Shôgi.
Dans cet épisode, je vais effectuer l'implémentation réelle de cette réserve.
Mais tout d'abord
À la fin de l'article précédent, je m'apercevais …
Dans l'épisode « Mouvement et Capture » une erreur s'est glissée dans le programme. Je reviens un peu sur cette erreur, car elle donne une indication forte de ce qu'apporte le TDD et ce qu'il ne promet pas.
Un lecteur (lien cassé) m'a fait remarquer qu'il ne comprenait pas la ligne indiquée …
Dans l'épisode précédent, le système permettait de capturer des pièces sur le tablier d'un Dôbutsu Shôgi. Cela se traduisait par la disparition d'une pièce lorsqu'une autre pièce effectuait un mouvement de capture explicite vers la position de la pièce capturée.
Aujourd'hui, je continue dans cette veine, car la capture au …
Puisque j'ai commencé à implémenter les tests de mouvements des pièces de Dôbutsu Shogi, je vais continuer dans cette veine pour cette session.
Pour le moment, nous pouvons déplacer une pièce d'un ou deux mouvements. Cependant, aucune gestion de validité n'est gérée. Que se passe-t-il si deux pions sont installés …