PROJET  JAVA 1999

Cécile FRANCOU et Sophia GALLARDO

vous presentent ......


! ! ! ! LE TRAP TRAP BISOU ! ! ! !


 

 

I) But du jeu:

- le garçon, doit attraper la fille et lui faire un bisou (c'est-y pas mignon??)avant que celle-ci n'atteigne la sortie... (la flaque d'eau). De plus, il doit eviter la petite "be-bete" (qui est en fait... Bart Simpson!) qui se deplace dans le labyrinthe. Si elle touche le garcon, celui-ci disparait et reapparait n'importe ou dans une case innocupee du labyrinthe (la tete en bas et les pieds en haut).

Si il arrive a faire un bisou a la fille, la fille rougie et un coeur s'affiche à la place du garcon.

- la fille doit atteindre la sortie le plus rapidement possible pour gagner la partie. (Si la fille atteint la sortie, la sortie disparait avec la fille et le garcon pleure) Elle a la possibilite de se defendre en decrochant le gant de boxe pour pouvoir donner une baffe a son adversaire dans le cas ou elle se sentirait en difficulte. Si elle arrive a frapper le garcon avec le gant de boxe, celui-ci disparait et réapparait n'importe ou dans le labyrinthe mais dans une case vide avec les pieds en haut et la tete en bas.

Bien sur, plusieurs autres options du même genre pourront se rajouter au jeu par la suite...

II) Les options du jeu:

NB: A chaque nouvelle partie le labyrinthe est différent ainsi que la place des joueurs, la "be-bete", la sortie et le gant de boxe.

 

 

III) Deplacement des joueurs:

- Les touches de déplacement du garçon sont les 4 fleches du clavier + la touche entree pour le bisou.

- Les touches de déplacement de la fille sont F1 (gauche), F2 (haut), F3 (bas), F4 (droite)+ F12 pour la baffe.

Il est à noter que le bisou comme la baffe ne peuvent être activés qu'à condition que les joueurs soient cote à cote ou bien sur la meme case.

IV)Outils et concepts utilises:

- JDK 1.1.6

- Threads

- Observer/Observable

- notion d'héritage

- javadoc (du jdk1.2.1)

V)Le programme:

Labyrinthe

Chaque nouveau labyrinthe genere remplit un tableau de booleens (1 si la case est un mur, 0 si c'est un chemin). Le labyrinthe est toujours different a chaque nouvelle partie.
Interaction C'est la classe qui fait le lien entre le labyrinthe (l'interface) et les joueurs.

Personnage

Cette classe permet de créer un personnage dans le "Trap Trap Bisou" qui n'est pas forcément un joueur.
Joueur elle implemente runnable car chaque joueur est un Thread.Chaque joueur est carctérisé par une position.

(Elle hérite de la classe Personnage)

Fille Cette classe hérite de la classe Joueur.
Garcon Cette classe hérite de la classe Joueur.
FenetreDuJeu C'est la Fenêtre dans laquelle se déroule le jeu (menu en haut, jeu au centre et scores en bas...)
TouchesClavier

(Package "objets")

Cette classe permet de définir les touches du clavier de chaque joueur.
Cell

(Package "objets")

Case du labyrinthe : caractérisée par des coordonnées en x et y.
Decors Classe qui construit des objets dans le labyrinthe. Ces objets sont caracterises par une position.

(Pour l'instant, les objets sont : le gant, le coeur)

Apropos L'apropos du menu
Aide L'aide du menu
Start Fenêtre de démarrage du "Trap Trap Bisou!" (elle contient le main)
AffichageScores

(package "scores")

Cette classe s'occupe de la mise a jour des scores. (elle herite de la classe Observable)
Message

(Package "fenetres")

Elle permet d'afficher un message dans une petite fenêtre. (Utile pour dire quel joueur a gagne)

Personnaliser

Cette classe permet d'afficher une fenetre qui demande a l'utilisateur de personnaliser les dimensions (nombres de cases en longueur et en hauteur) du labyrinthe.

Bete

Cette classe permet de générer une "be_bete" qui se déplace aléatoirement dans le labyrinthe et, quand elle touche le gacon, l'envoie n'importe ou dans le labyrinthe (avec la tete en bas et les pieds en haut)

 

Commentaire: Nous nous sommes efforcées de structurer au mieux le programme apres avoir fait une analyse au brouillon. Nous avons essayé de faire un code évolutif et de bien commenter le programme de manière à pouvoir étoffer le jeu facilement.

On peut rajouter :

 

VI)Procédure d'installation:

- Les sources sont sous format ".zip": *Télécharger le code ici*

Dézipper le fichier dans un repertoire que vous aurez creer.

- La javadoc est disponnible à partir du fichier suivant: JavaDoc

- Le demarrage du jeu se fait par la commande "Java Start".

- Sélectionner dans le menu "Jeu" ->"Jouer".

NB: Il nous reste 1 bug graphique sur la dernière ligne et la dernière colonne où les mûrs sont légèrement coupés... (quand le joueur entre des dimensions paires) cependant nous avons essayé plusieurs fois de le corriger : il semblerait que nous n'y pouvons rien...

 

D'autre part, il demeure un probleme point de vue graphique : quand le garcon ou la fille gagne, si ce n'est pas dans le courant du dernier jeu de la partie, le jeu ne nous montre pas le coeur(car le garcon a fait un bisou a la fille) ni "le garcon" en train de pleurer (car la fille est sortie). Nous avons essaye de mettre des "Sleep()" et des tests pour corriger ce problème mais sans succès.

 

retour page d'accueil