Imprimer
Catégorie : SAÉ - Développement IHM
Affichages : 1628

Préambule

L'objectif de ce TP est de réaliser un casse brique simpliste en partant du programme "Baballe" présenté en cours. La façon de coder doit suivre les principes MVC, ce qui implique que pour chaque élément du jeu, il doit y avoir une classe de modèle et une classe de vue.

Pour démarrer rapidement et faciliter l'implémentation de ce TP, un canevas de code est téléchargeable : [ ici


1°/ La raquette

La raquette est représentée par les classes :

La partie modèle ne contient au moins comme attributs  :

Le look de la raquette est laissé libre, à partie du moment où la largeur à l'écran correspond bien à width.

Les "fonctionnalités" de la raquette :

2°/ La balle

La balle utilise les mêmes classes que dans le cours.

Les fonctionnalités de la balle :

 

3°/ Les briques

Les briques sont représentées par les classes BrickModel et BrickLook.

A vous de déterminer quels sont les attributs nécessaires dans la partie modèle sachant que :

Le look des briques est laissé libre.

 

4°/ Le modèle général

Le modèle général correspond à la classe Model du cours et contient tous les éléments du jeu, dont la balle, la raquette et les briques. 

Les seules contraintes sur les briques sont :

Pour leur disposition et leur nombre, vous êtes libres. Cela dit, pour tester, vous pouvez déjà commencer par créer une disposition de M lignes et N colonnes de briques, toutes jointives.

 

5°/ La vue générale

La vue générale correspond à la classe View du cours et contient tous les visuels du jeu, dont la balle, la raquette et les briques.

 

6°/ Le contrôle

Les classes de la partie contrôle sont les mêmes que celles du cours, qu'il faut modifier pour prendre en compte les besoins applicatifs.

Il faut notamment arrêter le jeu lorsque la balle touche le mur du bas. Dans ce cas, vous devez arrêter le timer et afficher "PERDU" au centre de la fenêtre.

Il faut également arrêter le jeu lorsqu'il n'y a plus de briques. Dans ce cas, vous devez arrêter le timer et afficher "GAGNÉ" au centre de la fenêtre.