• Aucun résultat trouvé

Universit´e Paris Diderot Ann´ee 2010–2011 Environnement de D´eveloppement Projet : Impl´ementation d’un Tetris

N/A
N/A
Protected

Academic year: 2022

Partager "Universit´e Paris Diderot Ann´ee 2010–2011 Environnement de D´eveloppement Projet : Impl´ementation d’un Tetris"

Copied!
3
0
0

Texte intégral

(1)

Universit´ e Paris Diderot Ann´ ee 2010–2011 Environnement de D´ eveloppement

Projet : Impl´ ementation d’un Tetris

Le projet consiste `a impl´ementer un Tetris en Java sachant qu’une base pour l’interface graphique vous est fournie.

1 Pr´ esentation du jeu

Le jeu se pr´esente sous forme d’une grille de 10 cases de large sur 22 cases de haut. Des pi`eces tombent une `a une depuis le haut de la grille, puis s’entassent sur les anciennes pi`eces qui se sont pos´ees en bas. Le jeu s’arrˆete lorsque la derni`ere pi`ece introduite est bloqu´ee en haut.

Chaque nouvelle pi`ece est tir´ee al´eatoirement dans la liste des 7 pi`eces dispo- nibles. Elles sont constitu´ees de petits carr´es qui sont toujours positionn´es exacte- ment sur les cases de la grille. Les diff´erentes pi`eces sont d´ecrites ci-dessous :

Le joueur ne peut pas arrˆeter la pi`ece en train de tomber, mais il peut diriger sa chute avec les fl`eches lat´erales (gauche et droite), tourner la pi`ece de 90 degr´es avec la fl`eche du haut, ou acc´el´erer la chute avec la fl`eche du bas.

Lorsque la pi`ece est bloqu´ee par un obstacle situ´e dessous, les lignes compl`etes sont supprim´ees et les blocs sup´erieurs tombent d’autant de lignes. Enfin lorsque tout est tomb´e, une nouvelle pi`ece apparaˆıt en haut de la grille et commence `a tomber.

1

(2)

Lorsqu’une pi`ece tombe, la prochaine pi`ece qui tombera est annonc´ee dans une fenˆetre situ´ee `a droite de la fenˆetre du jeu.

Le but du jeu est de maximiser le score. Les points sont obtenus avec la dis- parition des lignes. Une ligne compl`ete rapporte 40 points ; deux lignes compl`etes rapportent 100 points, trois lignes font 300 points, et le maximum est obtenu avec quatre lignes compl`etes d’un coup, qui rapportent 1200 points.

Le jeu poss`ede 15 niveaux. On commence au niveau 1, puis le niveau est incr´ement´e progressivement. `A vous de choisir une r`egle pour le changement de niveau. Un niveau d´efinit la vitesse de chute, et donc le temps de r´eaction du joueur. Au premier niveau les pi`eces chutent d’une rang´ee par demi-seconde. Au dernier niveau, les pi`eces chutent au moins 10 fois plus vite. Un bonus est accord´e en fonction du niveau. `A vous de choisir la valeur de ce bonus.

Pour un exemple de Tetris, vous pouvez consulter la page web suivantehttp:

//www.freetetris.org/game.php

2 Travail demand´ e

A partir du code d’interface graphique fourni, il vous faut impl´ementer un` Tetris. Pour vous aider, voil`a quelques indications :

– La grille du jeu pourra ˆetre m´emoris´ee par un tableau de tableau d’entier.

– On aura besoin de fonctions utilitaires telles que : – une fonction de rotation des pi`eces `a 90 degr´es,

– des fonctions testant si la pi`ece peut ˆetre d´eplac´ee `a gauche, `a droite, en bas ou si la pi`ece peut ˆetre tourn´ee (attention une pi`ece ne peut pas sortir de la grille du jeu),

– une fonction testant si une ligne est compl`ete, – une fonction de suppression de lignes,

– etc.

3 Organisation

Ce travail est `a faire de pr´ef´erence en binˆome. Des projets faits tout seul pour- ront ˆetre accept´es. Le projet est `a rendre pour leLundi 16 Mai 2011 (`a minuit au plus tard) par mail `a sangnier@liafa.jussieu.fr.

Dans votre projet, vous devrez rendre l’impl´ementation du Tetris ainsi que quelques fichiers JUnit montrant que vous avez r´ealis´e des tests unitaires sur cer- taines fonctions. Vous devrez ´egalement rendre un rapport de projet pour leLundi 16 Mai 2011qui contiendra :

2

(3)

– Un manuel d’utilisateur (dans lequel vous devrez expliquer le principe du jeu, comment se passent les changement de niveaux, comment le score est augment´e, etc)

– Une description de votre impl´ementation et des choix que vous avez faits (par exemple comment vous avez impl´ement´e la chute des pi`eces ou le tirage al´eatoire de la nouvelle pi`ece) ; dans cette partie vous devrez en particulier fournir au moins un diagramme de classes concernant une partie de votre impl´ementation (ne rendez pas le diagramme de classes de l’interface gra- phique).

Il n’est pas n´ecessaire que le rapport soit tr`es long mais il doit ˆetre concis et bien pr´esent´e. Faites en particulier attention aux fautes d’orthographe.

Vous devrez finalement faire une soutenance de projet de 15 minutes avec pr´esentation `a base de transparents. La date de la soutenance vous sera commu- niqu´ee ult´erieurement.

3

Références

Documents relatifs

Pour la première fois au monde* 1 , le Z 9 permet de vérifier la mise au point d’une vidéo directement sur l’appareil photo et sur le site du tournage, en mettant la vidéo en

Ainsi au mˆeme moment on peut avoir un processus de type I qui parcourt la liste avec plusieurs processus de type S, en revanche si un processus de type D a acc`es ` a la liste,

— Le bon respect de la mod´ elisation (il n’y a pas plus de passagers dans le v´ ehicule que sa capacit´ e, un v´ ehicule attend d’ˆ etre plein avant de partir, le v´

Une impl´ementation hybride o` u le filtre avant est impl´ement´e en bloc dans le domaine fr´equentiel et le filtre de retour est impl´ement´e symbole par symbole dans le domaine

Nous d´ esirons transmettre un octet par protocole compatible RS232 en encodage 8E1 1 : proposer une proc´ edure qui g´ en` ere une s´ equence de signaux compatibles RS232,

Montrez qu’il existe un cercle de centre O passant par les milieux des cˆ ot´ es du triangle ABC, et donnez son ´ equation en coordonn´ ees barycentriques dans le rep` ere affine (A,

On cherche `a inverser la matrice carr´ee n × n M en proc´edant m´ethodiquement `a des ´eliminations par combinaisons lin´eaires de lignes.. 1.1

Dans cette seconde partie, vous passerez ` a l’impl´ ementation de l’arbre des tˆ aches de l’outil de manipulation de cartes. Pour cela, un coeur-m´ etier en sources ferm´ ees