Exercice du lundi n°5 : Chasse aux zombies

Exercice du lundi 03 novembre 2014, par Gyncoca.

Enoncé

Nous allons donc simuler sur une carte, la chasse aux zombies !
Pour cela nous avons besoin de 3 types de personnes :

  • Les zombies : ils se baladent et cherchent à manger des gens ;
  • Les victimes : des humains innocents, ils sont nuls et donc se font manger ;
  • Les chasseurs : ils chassent et tuent les zombies.

En plus de tout ce beau monde il nous faut un terrain de jeu, ici ce sera une carte de 20x20 donc de 400 cases où chaque case pourra contenir un zombie, une victime, un chasseur ou rien. Lors de la création de cette carte, il faudra placer aléatoirement tous les protagonistes.

Entrée

Pour cette simulation, nous devons prendre 4 paramètres en entrées x, y, z et t :

  • x : le nombre de zombie ;
  • y : le nombre de victime ;
  • z : le nombre de chasseurs ;
  • t : le nombre de tours de la simulation.

Si x + y + z est supérieur au nombre de personnes que peut contenir la carte, une erreur est envoyée.

Simulation

La partie se divise en 3 grandes parties le mouvement, les attaques des chasseurs et les morsures des zombies.

Mouvement

Tout le monde doit se déplacer sur le terrain s'ils peuvent se déplacer mais de manière différente :

  • Le zombie : il essaye de se déplacer d'une case (haut, bas, gauche et droite), il n'est pas capable de se déplacer en diagonale il est trop bête ;
  • La victime : elle ne bouge pas sauf si elle est a coté d'un zombie (haut, bas, gauche, droite et diagonale) cette direction est aléatoire à cause de l'effet de panique ;
  • Le chasseur : il se déplace d'une case (haut, bas, gauche, droite et diagonale) afin de chercher et tuer un zombie.

Attaques des chasseurs

Une fois que les déplacements sont tous effectués c'est aux chasseurs de passer à l'action. Ils essayent de tuer des zombies à une case de lui (haut, bas, gauche, droite et diagonale). S'il y a 1 zombie, il le tue, s'il y a 2 zombies il en tue 2 mais s'il y en a plus il ne peut pas en tuer plus de 2.
Quand un zombie est mort il faut le retirer de la carte.

Morsure

Les zombies attaquent toutes les personnes à une case de distance (haut, bas, gauche et droite) pour les transformer en zombie.

Données

On veut avoir des informations pour préparer les prochaines invasions de zombie :

  • Le nombre de "single kill" par un chasseur ;
  • Le nombre de "double kill" ;
  • Le nombre totale de zombies tués ;
  • Le nombre de victimes mordus ;
  • Le nombre de chasseurs mordus.

Travaux réalisés

Commentaires
Pseudo Le 16 décembre 2014 à 22h44
Fait d'abord bouger puis attaquer pour que les chasseurs soit efficaces !
(*(void *)0) = 0 Le 17 décembre 2014 à 18h34
CÉ TREAU NULLE