Ecrire un programme qui permette de jouer au jeu du pendu.
Le jeu du pendu est classique. Il faut deviner un mot aléatoire en saisissant une lettre l’une après l’autre. Quand la lettre est dans le mot, elle est mise dans toutes ses places. Sinon, le dessin du pendu s’agrandit. Quand le mot est trouvé, un message indique en combien de coups a été trouvé le mot. Quand le mot n’a pas été trouvé au bout de 10 tentatives, un message indique que vous avez perdu. Pour recommencer une partie, cliquez sur le bouton nouveau jeu.
Application à tester et à réaliser. :
L’IHM est imposé et doit correspondre aux tests ci-dessus avec les zones suivantes :
Le diagramme de classes suivant doit être respecté. Même les noms des attributs/Méthodes/Classes doivent être identiques.
Suivre le déroulement pas à pas du TP.
Créer un nouveau projet "Application Windows Form"
Créer la classe Dessin qui dérive de Panel. Cette classe permet de dessiner le pendu suivant l’avancement du jeu dans un Panel.
2 constructeurs : initialise l’état (0 rien n’est dessiné, 10 tout est dessiné), la position (Location) et la taille (Size)
Ajouter l'évènement Paint au Dessin (Eclair dans le panneau propriété)
Dans la fonction levée par l'évènement Paint, dessiner le pendu suivant l'état du dessin
Rem : pour dessiner utiliser le Graphics du Panel : Graphics g = Graphics.FromHwnd(this.Handle);
g.DrawLine(.......);
Attention, le dessin doit être proportionnel au Size du Dessin
etapeSuivante : incrémente l’état et Refresh le pendu.
raz : remet l’état à 0 et redessine le pendu.
Remarque : ne perdez pas trop de temps sur le design.
Insérer la classe Dessin dans le côté droit de la Form. Pour connaître le code, prenez l'outil graphique et insérer un Panel. Constater le changement dans Form.cs et Form.Designer.cs
Tester votre dessin du pendu en faisant progresser le dessin par des clic sur le bouton Valider.
Créer l’IHM dans la Form en utilisant la classe Dessin.
Créer la classe Pendu. C’est elle qui sert de moteur au jeu.
Le constructeur récupère les paramètres
initialise : ajoute quelques mots dans le tableau listeMots
nouveauJeu : prend un mot aléatoirement dans la liste des mots. Initialise par des points d’interrogation la String evolution
jouer : moteur du jeu. Suivant le caractère saisi fait évoluer le dessin du pendu, la String evolution . Détermine s’il faut continuer, afficher perdu ou afficher gagné.
Finir le jeu en rajoutant la saisie d’un caractère. Mettre le code permettant d’utiliser les deux boutons.
Pour les plus rapides (non représenté sur les exemples). Créer une classe Clavier, que vous afficherez sous la saisie, permettant de représenter les lettres de l’alphabet dans des boutons. Lorsque l'on clique sur un bouton, il servira comme le bouton Valider. Il se alors inhibé Remarque : il ne faut utiliser qu'une seule fonction levée par l'évènement pour tout les boutons