Projet 2000/2001
Sur un terrain
apparaissent des billes que le joueur doit faire manger au Serpentin en passant
dessus.
Le Serpentin grandit
lorsqu’il mange une bille.
Il grandit en
laissant immobile l’extrémité de sa queue.
Le but du jeu est de
rendre le Serpentin le plus long possible.
Le jeu se termine lorsque le Serpentin touche le cadre ou lorsqu’il se mord.
II.La programmation du jeu
Le Serpentin se déplace sur une grille bordée par un cadre dans les quatre directions (haut, bas, droite, gauche).
La direction du déplacement est indiqué à l’aide du clavier au moyen des flèches.
Le Serpentin a initialement la taille d’une case.
L’applet est composé de quatre classes d’objet :
1. Terrain
2. LeCorp
3. LeSerpent
4.
LaBille
La classe Terrain
Le jeu a lieu sur un terrain dont la surface est composée de cases rangées en lignes et en colonnes.
Ces cases peuvent être :
une partie du cadre,
une partie du serpentin,
une bille,
ou ne rien contenir.
Cette classe permet les opérations suivantes :
Lire ou modifier l’état d’une case,
Dessiner une case ou le terrain en entier.
La classe LeCorp
Le corps est une position qui peut se déplacer sur le terrain dans les quatre directions
La classe LeSerpentin
Le serpentin se déplace sur le terrain on définit sa direction et on le fait bouger (d’ou les méthodes DefinirDirection et Bouge).
Le serpent indique son état
Deux variables de type LeCorp (Tete ,Queue) compose le serpentin.
La classe LaBille
Une bille occupe une case et au bout d’un laps de temps disparaît si elle n’a pas été mangée par le serpentin pour réapparaître ailleurs
Structure des classes de l’applet
IV.Les difficultées
rencontrées
Dessin du terrain
Pour dessiner le terrain et ses différents occupants j’ai du renoncer à la lecture d’un fichier à partir de l’applet car la lecture s’avérait aléatoire.
Déplacement du serpentin
· Le serpentin sortait du labyrinthe.
Le but était donc de l’empêcher. L’astuce trouvée a été d’entourer le terrain de base d’un cadre
· Après la fin d’une partie perdante le serpentin continuait à se déplacer si on appuyait sur les flèches de déplacement. Pour mettre fin au déplacement dans la méthode (avance )il a fallut mettre une restriction.
Documentation Java Téléchargement (50 Ko)