Jeu des moutons
Description
On veut écrire en javascript une version du casse tête de "saute-mouton". Le jeu est le suivant. On part d'un plateau contenant des moutons et des cases vides:
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Les règles sont les suivantes
- le joueur a gagné quand tous les moutons de droite sont à la place des moutons de gauche, et vice-versa, donc quand on a la disposition :
- Un mouton peut avancer vers une case libre (mais pas reculer). Un mouton peut sauter (vers l'avant) par dessus un autre mouton.
À faire
Écrire, en javascript, le code pour implanter le jeu des moutons.
- Un clic sur une case qui contient un mouton permettra de savoir que c'est celui-ci qu'on veut déplacer - le mouton en question sera sélectionné (on pourra, par exemple, passer la case du mouton sélectionné en rouge)
- Un second clic, sur une case vide, demandera de déplacer le mouton sélectionné vers cette case. Le déplacement n'aura lieu que s'il respecte les règles.
- On aura un bouton "reset", qui remettra le casse-tête à zéro.
- Quand le joueur aura gagné, on l'affichera dans une div
Conseil : conserver dans une Array globale le contenu des différentes cases. Quand le joueur joue, il faut alors faire deux choses : mettre à jour l'Array, et modifier l'affichage en utilisant le DOM. L'avantage est que l'Array est beaucoup plus simple à manipuler, pour tester qu'un mouvement est possible, ou que le joueur a gagné.
Par exemple, le tableau [0, 1,1,1,0,0,2,2,2,0] pourrait représenter l'état initial du jeu. L'état
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
sera représenté par [0,1,1,0,1,2,2,2,0].