Ce TP est la suite directe du TP 6.
Il est temps d'ajouter quelques ennemis sur notre Terrain. Ils ne font rien, et ne bloquent pas le joueur pour le moment, mais ils sont affichés.
Faites selon la façon qui vous convient, ou utilisez la façon ci-dessous:
avoir_ennemi_a_position() dans la classe Terrain devrait vous aider. Elle prend en paramètres (en plus de
self) le x et y d'une case sur laquelle vous souhaitez savoir si un ennemi s'y trouve, et la méthode renvoie le premier ennemi sur
la case en question s'il y en a un ou plusieurs, None sinon. Elle sera utile pour dessiner le Terrain, et dans la classe Personnage
plus tard.
Désormais le joueur peut attaquer et tuer les ennemis en se déplaçant vers eux. Les dégâts sont affichés pendant une ou deux secondes. Le jeu s'arrête lorsque tous les ennemis sont vaincus et un message de victoire est affiché. Si le joueur quitte avant, le message de game over est affiché.
Faites selon la façon qui vous convient, ou utilisez la façon ci-dessous:
avoir_ennemi_a_position() de la classe Terrain pour facilement avoir l'ennemi (s'il y en a un) qui se
trouve sur la case de destination du perso joueur quand celui-ci se déplace.
os.system()) et il est donc impossible de lire ce qui se passe (quel
perso attaque qui). Pour corriger ça, utiliser la fonction sleep() du module time. Elle prend un paramètre: le nombre
de secondes à attendre. Quand cette fonction est appelée, le programme se met en pause pour la durée demandée, puis reprend à la ligne suivante
de l'appel de la fonction.