Split files and refactoring #14

Open
hgruniaux wants to merge 1 commit from port into main
hgruniaux commented 2024-04-05 11:43:07 +02:00 (Migrated from github.com)

Pas encore fini et surtout pas prêt pour être merge. Mais j'aimerais avoir des retours tôt pour éviter que rien ne casse.

Nathan je suis à l'écoute de toute remarque.

Choses faites :

  • Déplacer la gestion des highscores vers un fichier à part. Le reste du code n'a pas besoin de savoir comment les highscores sont sauvegardés, ou comment insérer un highscore à la bonne position. Tout est géré de façon transparente dans highscore.c
  • Déplacer la gestion des monstres vers son propre fichier. Quelques trucs ont été refactorisé dans leurs propres fonctions.

J'ai quelques questions :

  • À quoi correspondent les 5 monstres ? (NBMONSTERS = 5). Je suppose qu'il y a l'ernest, et l'ernest blanc, mais le reste ? Aussi quel spriteID correspond à quel monstre ?
  • Toujours dans monstre, que veulent dire les variables tb et ftb ?
  • Il faudra voir si c'est possible de réutiliser Player même lorsqu'on joue solo.

Je continuerai cette PR plus tard.

(J'ai testé le jeu sur émulateur, et tout marche comme avant). J'ai compilé aussi avec la version 4.2 de PVSNESLIB

Pas encore fini et surtout pas prêt pour être merge. Mais j'aimerais avoir des retours tôt pour éviter que rien ne casse. Nathan je suis à l'écoute de toute remarque. Choses faites : - Déplacer la gestion des highscores vers un fichier à part. Le reste du code n'a pas besoin de savoir comment les highscores sont sauvegardés, ou comment insérer un highscore à la bonne position. Tout est géré de façon transparente dans highscore.c - Déplacer la gestion des monstres vers son propre fichier. Quelques trucs ont été refactorisé dans leurs propres fonctions. J'ai quelques questions : - À quoi correspondent les 5 monstres ? (NBMONSTERS = 5). Je suppose qu'il y a l'ernest, et l'ernest blanc, mais le reste ? Aussi quel spriteID correspond à quel monstre ? - Toujours dans monstre, que veulent dire les variables `tb` et `ftb` ? - Il faudra voir si c'est possible de réutiliser Player même lorsqu'on joue solo. Je continuerai cette PR plus tard. (J'ai testé le jeu sur émulateur, et tout marche comme avant). J'ai compilé aussi avec la version 4.2 de PVSNESLIB
NathBo (Migrated from github.com) reviewed 2024-04-05 11:43:07 +02:00
NathBo commented 2024-04-06 15:44:42 +02:00 (Migrated from github.com)

Ok en fait il n'y a en tout que 5 ernests basiques différents qui respawn après un délai une fois qu'ils sont tués, d'où le NBMONSTER=5
Il faut savoir aussi que les spriteID c'est fois 4
sinon spriteID 0 c joueur
spriteID 1 a 5 c les ernest basiques
6 c'est la rocket
7 le héron
8 le powerup
9 le poisson frétillant (qui s'appelle Mega dans le code psq c pas encore clair ce qu'on veut faire avec et que de base c'était censé être le Mega)
10 et 11 les joueurs 1 et 2 du mode 2 joueurs (g pas utilisé 0 psq je préférais qu'ils soient à côté)

tb c'est la vitesse verticale du perso, ftb c psq ya pas de nombres flottants donc j'incrémente de 1 ftb à chaque frame et quand ftb vaut FRAMESPERJUMPFORCE=5 je mets ftb à 0 et j'incrémente tb de 1

réutiliser Player quand on joue solo pk pas mais ça demande du travail

Ok en fait il n'y a en tout que 5 ernests basiques différents qui respawn après un délai une fois qu'ils sont tués, d'où le NBMONSTER=5 Il faut savoir aussi que les spriteID c'est fois 4 sinon spriteID 0 c joueur spriteID 1 a 5 c les ernest basiques 6 c'est la rocket 7 le héron 8 le powerup 9 le poisson frétillant (qui s'appelle Mega dans le code psq c pas encore clair ce qu'on veut faire avec et que de base c'était censé être le Mega) 10 et 11 les joueurs 1 et 2 du mode 2 joueurs (g pas utilisé 0 psq je préférais qu'ils soient à côté) tb c'est la vitesse verticale du perso, ftb c psq ya pas de nombres flottants donc j'incrémente de 1 ftb à chaque frame et quand ftb vaut FRAMESPERJUMPFORCE=5 je mets ftb à 0 et j'incrémente tb de 1 réutiliser Player quand on joue solo pk pas mais ça demande du travail
This pull request has changes conflicting with the target branch.
  • src/k-fet_invaders.c
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin port:port
git switch port

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff port
git switch port
git rebase main
git switch main
git merge --ff-only port
git switch port
git rebase main
git switch main
git merge --no-ff port
git switch main
git merge --squash port
git switch main
git merge --ff-only port
git switch main
git merge port
git push origin main
Sign in to join this conversation.
No description provided.