Ethynd: Dorian

Création d'une classe joueur

1) Ajout des déplacements

Création d'une image qui se contente de se déplacer de haut en bas et de droite à gauche.

Algorithme :
Différent du programme final: plus simple
Si la touche pressée est "haut" => déplacement vers le haut

Inconveniant :
Code long et difficile à réexploiter

2) Ajout des animations

Algorithme :
Avec un système de compteur.
S'éxecute en fonction du nombre de frames par seconde.

Inconveniant de la version 1 :
Code difficile à réexploiter car spécifique au joueur.

Création d'une classe entité

1) Optimisation de la classe joueur

La classe joueur est optimisée pour permettre de la réutiliser plus tard

Création du systéme de constante pour simplifier l'ajout des monstres et des personnages à venir.

2) Création d'une classe entité

La classe entité est créée et devient une superclasse dont vont hériter toute les entités tels que les monstres ou joueurs

3) Création d'une classe Monstre

La classe hérite donc de la classe entité et s'occupe de gérer les IA du jeux.
Les tests sont effectués avec le dragon rouge dans un premier temps.

L'IA dispose de deux actions possibles:

  • déplacement prédéfini
  • déplacement aléatoire

Centralisation des classes

Les classes sont centralisées et héritent toutes de Entite().

Ajout des collisions

Les collisions ont été faites par Sofiane et adaptées aux entités par Dorian

Algorithme :
Avec un fonction pygame :
Assigne un masque à chaque entité. Effectue un test de collisions

ajout des entités

Ma derniere tâche: ajouter les entités présentes dans le jeux

Algorithme :
Dans constantes_entite.py avec des dictionnaires:

  • Annimation: contient les sprites de chaque monstre correspondant à chaque action.
  • Timings: contient les informations relatives aux déplacements, nombre de sprites, etc...
Dans constantes_partie.py avec un dictionnaire qui liste toutes les entitées par niveau et leurs paramètres.

Problème rencontrés

1) les collisions :

Les collisions sont difficiles à gérer.

Avant l'utilisation de fonction pygame, essais de collision à la main.

2) compenser le déplacement caméra :

Comprendre le fonctionnement dynamique de la map pour adapter les entités