JTetris 1.0
Projet réalisé par Kevin Viet et Guillaume Basilico
Introduction
Ce projet consiste à faire un Tétris en Java, en utilisant la librairie
graphique Swing. Pour modéliser la plateau du jeu, nous avons utiliser un
tableau d'entiers à deux dimensions. Les pièces, quant à elles, sont
également modélisées grâce à une matrice à deux dimensions.
Comment jouer ?
Le principe de ce jeu est archi-connu. Il suffit d'appuyer sur les touches
directionnelles : droite, gauche pour faire translater la pièce courante,
flèche haut pour la faire pivoter et bas pour la faire descendre plus
vite.
Configuration recommandée
- Il est recommandé d'avoir au moins la configuration minimum que recommande
Sun, c'est à dire : un 486/DX et au moins 48MO de RAM. En fait, ce jeu est
fluide à partir d'un P200.
Outils utilisés
- Emacs sous Unix.
Techniques utilisées
Nous avons massivement utilisés la technique des Observer/Observable pour la
mise à jour de l'affichage. Nous avons également utilisés le double buffering
pour l'affichage, la sérialisation pour la sauvegarde des highscores. Enfin,
nous avons également utilisés des threads pour le moteur du jeu.
Améliorations envisagées
- Faire un éditeur de pièces (facilement envisageable puisqu'on utilise une
méthode générique pour fair pivoter et translater la pièce)
Sources et Javadoc
Les sources
Remarque
Nous nous étions lancés dans une procédure d'affichage plus rapide (le jeu
tournait parfaitement sur un IPX), malheureusement au prix de quelques bugs
d'affichage. Néanmoins, vous pouver télécharger la classe MonCanvas.java et écraser l'autre version. A vous de
voir !
De plus, en allant dans les menus, on peut mettre le jeu en pause et le
reprendre (pas de raccourci clavier associé, peut-être dans une version
ultérieure...).
Il y a également des options dans le menu des options, mais nous vous invitons
à aller voir de plus près pour plus de détails.
- Enfin, une résolution d'au moins 800x600 est recommandée.
- UltraEdit sous Win32.
- La version de la jdk était la 1.2 sous Unix, et la 1.2.2 sous Win32.
- Faire un mode réseau avec au moins 2 joueurs (à voir avec Gilles dans le
cours réseaux)
- Optimiser le moteur d'affichage (cf. remarque à la fin de la page)
La Javadoc
Les sources et la Javadoc