Refactor, refactor…

Ce fut un gros mois!

Mais qui n’a pas donné beaucoup de résultats visuels.  Je suis passé à travers la phase 1 du  »refactoring » de mon engin, passage obligé si je veux ajouter des fonctionnalités au jeu (genre, heu, se battre contre les méchants, et finir le niveau!).

La nouveauté du dernier mois se retrouve dans l’ajout d’une classe qui sert à contenir les informations pertinentes des objets du jeu pour leur permettre d’interagir entre eux.  Le défi n’était pas tant d’écrire cette classe, qui est somme toute bien simple, mais de détricoter les liens étranges qui unissaient mes différents objets.

Exemple : dans l’ancienne méthode bricolée, une balle de fusil devait donner sa position à l’ennemi qui devait passer l’info à la classe  »level », qui devait ensuite remettre cette donnée à l’objet  »player » pour enfin vérifier s’il y avait une collision entre les deux.  Et je ne parle pas ensuite de réagir à cette collision.

En fait, c’est exactement ce cas qui m’a convaincu qu’il y avait du travail de code à faire avant de poursuivre l’ajout de nouvelles fonctionnalités.

Maintenant, le héros n’a qu’à demandé à la  »classe qui sait tout » ou se trouve la balle de fusil, et le tour est joué!  Une fois tout ça démêlé, j’ai pu avancer pas mal plus rapidement.

Voici donc ce que ça donne.

Notez que la collision entre la balle et le joueur fonctionne réellement maintenant.  Et le comble, le bouclier, des mois plus tard, sert enfin à quelque chose!!

Et oui, il y a effectivement un début de barre d’énergie, mais c’est très  »work in progress ».  Elle n’est pas lié aux dommages reçus par le joueur pour le moment, mais ça ne saurait tarder!

 

Je passe maintenant à la phase 2 du  »refactoring ».  Je m’apprête à ajouter un tas de comportement à mon joueur et à son nemesis.    Ces deux classes devront être d’une propreté exemplaire si je veux m’y retrouver.  Les projectiles, c’est une chose, le combat à mains nus, c’est un autre niveau de complexité!

Qui sait, peut-être, lorsque nous nous reverrons, le boche sera-t-il en mesure de bouger ses pieds 🙂

Bonne nuit à tous