User Tools

Site Tools


2016_2017:s2:td:td_jeux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
2016_2017:s2:td:td_jeux [2017/03/06 23:02]
blay [Une application]
2016_2017:s2:td:td_jeux [2017/03/13 11:35] (current)
blay [Modélisation et Codage de l'interface graphique Basique]
Line 5: Line 5:
  
 Nous allons créer un jeu de mini-Tennis. Nous allons créer un jeu de mini-Tennis.
-Pour cela, nous sommes "​grave" ​inspiré ​de http://​www.edu4java.com/​en/​game/​game3.html.+Pour cela, nous nous sommes "​grave" ​inspirés ​de http://​www.edu4java.com/​en/​game/​game3.html.
  
 <note warning>​**A LIRE** <note warning>​**A LIRE**
Line 20: Line 20:
  
 Notre objectif n'est pas de vous apprendre à programmer une interface graphique donc les codes correspondants vous sont donnés. Notre objectif n'est pas de vous apprendre à programmer une interface graphique donc les codes correspondants vous sont donnés.
 +
 +
 +
 +
 +<note warning>​Pour la semaine prochaine vous devez préparer le TD suivant qui est la préparation de l'​examen de l'an dernier !</​note>​
  
 ===== Spécifications ===== ===== Spécifications =====
Line 31: Line 36:
   - On veut pouvoir jouer en déplaçant la raquette de la gauche vers la droite ou de bas en haut et inversement.   - On veut pouvoir jouer en déplaçant la raquette de la gauche vers la droite ou de bas en haut et inversement.
   - On veut gérer plusieurs joueurs : en début de partie tous les joueurs saisissent leur nom, puis ils jouent. On affiche le joueur qui a le meilleur score à la fin de la partie.   - On veut gérer plusieurs joueurs : en début de partie tous les joueurs saisissent leur nom, puis ils jouent. On affiche le joueur qui a le meilleur score à la fin de la partie.
-  - On veut gérer plusieurs niveaux de jeu : facile : lenteur du déplacement de la balle; intermédiaire;​ évolutif : la balle se déplace de plus en plus vite; difficile, la taille de la raquette diminue, etc.+  - On veut gérer plusieurs niveaux de jeu : facile : lenteur du déplacement de la balle; intermédiaire;​ évolutif : la balle se déplace de plus en plus vite; difficile, la taille de la raquette diminue, etc. 
  
 **Question 10mn** **Question 10mn**
-    - Dessiner les grands cas d'​utilisation de votre jeu, +    - Dessiner les grands cas d'​utilisation de votre jeu, (Dans le cas 3, proposer votre propre interprétation,​ mais soyez claire)
     - Donner leur des priorités d'un point de vue "​utilisateur"​ (e.g. est-il plus important de jouer ou de stocker le score?).     - Donner leur des priorités d'un point de vue "​utilisateur"​ (e.g. est-il plus important de jouer ou de stocker le score?).
     - Evaluer la complexité de chaque cas d'​utilisation et le temps qu'il vous faudrait. Ecrivez le. Vous vérifierez à la fin du TD à quel point vous êtes prêt ou non de votre évaluation.     - Evaluer la complexité de chaque cas d'​utilisation et le temps qu'il vous faudrait. Ecrivez le. Vous vérifierez à la fin du TD à quel point vous êtes prêt ou non de votre évaluation.
Line 47: Line 52:
 Une Balle se définit par  Une Balle se définit par 
   * un diamètre (un entier), ​   * un diamètre (un entier), ​
-  * une position en x et y+  * une position en x et y (Il s'​agira de pixel donc des entiers...)((La solution proposée qui s'​appuie sur les codes initiaux, n'​utilise pas de classe ''​Position''​ mais vous pouvez très bien en utiliser une dans vos propres classes !!)) 
   * un pas de déplacement en X (deltaX) et un pas de déplacement en Y (e.g. un déplacement deltaX=deltaY et deltaX>0 déplace la balle en diagonale vers le bas de la gauche vers la droite), ​   * un pas de déplacement en X (deltaX) et un pas de déplacement en Y (e.g. un déplacement deltaX=deltaY et deltaX>0 déplace la balle en diagonale vers le bas de la gauche vers la droite), ​
   * déplacer une balle revient à modifier sa position de deltaX et deltaY (x= x+deltaX;y = y+deltaY)   * déplacer une balle revient à modifier sa position de deltaX et deltaY (x= x+deltaX;y = y+deltaY)
Line 92: Line 97:
              - A votre avis pourquoi avons-nous des objets ''​BallUI''​ et ''​RacquetUI''​ ?              - A votre avis pourquoi avons-nous des objets ''​BallUI''​ et ''​RacquetUI''​ ?
       - Chargez les codes correspondant.       - Chargez les codes correspondant.
 +          - Attention dans la classe ''​Game'',​ ajouter en première ligne de la méthode paint : ''​super.paint(g);''  ​
       - Connectez ce code à votre code.       - Connectez ce code à votre code.
  
Line 112: Line 118:
     }     }
 </​code>​ </​code>​
-     * 2 - A présent vous vérifiez si la balle entre en collision avec la raquette et change sa trajectoire ou si elle est passée en dehors de cette zone+     * 2 - A présent vous vérifiez si la balle entre en collision avec la raquette et change sa trajectoire ou si elle est passée en dehors de cette zone, par exemple implémenter la méthode suivante :
 <code java> <code java>
 moveInWithRacquet(getWidth(),​getHeight(),​racquet) moveInWithRacquet(getWidth(),​getHeight(),​racquet)
 </​code>​ </​code>​
-     * 3 - Evidemment dans le jeu il faut appeler votre nouvelle méthode de déplacement de la balle et gérer le cas où la balle sort des bornes avec un gameOver+     * 3 - Evidemment dans le jeu il faut appeler votre nouvelle méthode de déplacement de la balle et gérer le cas où la balle sort des bornes avec un gameOver, par exemple.
 <code java> <code java>
     private void play() {     private void play() {
Line 131: Line 137:
  
 ** Questions : ** ** Questions : **
-   - Comment faire pour accélérer la balle ? Tester.+   - Comment faire pour accélérer la balle ? .... Tester. ​
    - Comment faire pour accélérer la balle en fonction du nombre de fois que vous tapez la balle...?    - Comment faire pour accélérer la balle en fonction du nombre de fois que vous tapez la balle...?
 +   - N'​oubliez pas de mettre à jour votre modèle. ​
    - Complétez votre application pour gérer un niveau de jeu évolutif.    - Complétez votre application pour gérer un niveau de jeu évolutif.
    - Modifier la raquette pour pouvoir la déplacer vers le haut et vers le bas.    - Modifier la raquette pour pouvoir la déplacer vers le haut et vers le bas.
Line 146: Line 153:
  
    
 +<note warning>​Pour la semaine prochaine vous devez préparer le TD suivant qui est la préparation de l'​examen de l'an dernier !</​note>​
  
  
2016_2017/s2/td/td_jeux.1488837776.txt.gz · Last modified: 2017/03/06 23:02 by blay