jean-voila / sqrt100

🧟
https://jean-voila.github.io/sqrt100/
3 stars 0 forks source link

Ptit soucis avec les zombies sur la map de debug #22

Open GoDoco opened 1 month ago

GoDoco commented 1 month ago

j'ai remarqué que les zombies flottent au dessus du sol je me dis que ce qui pourrait régler le soucis ça serait de les ajouter en enfants du CSGBox responsable du sol mais je ne préfère pas essayer pour ne pas bousiller le bazar

jean-voila commented 1 month ago

Oui c'est normal, c'est dû au fait que la classe Ennemy possède un paramètre booléen _canMoveUpAndDown pour déterminer si l'ennemi concerné peut suivre le joueur verticalement et horizontalement ou juste horizontalement.

Chez les chauve-souris ce paramètre est à true et il est à false chez les Zombies (qui ne peuvent pas voler). Le problème quand j'ai implémenté ça est que je n'ai pas bien pris en compte la gravité. J'ai essayé de l'implémenter à la volée momentanément en affectant le vecteur Velocity pour faire tomber l'ennemy avec la force _gravity, mais je crois que j'ai mis ce paramètre gravity trop faible, ce qui fait que les Zombies tombent en réalité, mais très (trop) doucement.

(Noter que les Zombies commencent toujours sur le sol, mais leur hauteur est affectée si ils suivent le joueur sur une rampe et n'en retombent plus par la suite, ce qui cause l'anomalie)

Il faudrait faire en sorte que la variable gravity soit commune au joueur, peut-être en l'enlevant de la classe Player et en l'affectant au WorldEnvironment (avec [Export])

GoDoco commented 1 month ago

je vois et ça réglerait pas le soucis si on mettait les ennemis en enfant des noeuds pour le sol et qu'on active "Transformation->Aimanter l'objet au sol"

jean-voila commented 1 month ago

j'ai pas l'option affichée sur mon Godot, mais teste au pire et tu nous dit si ça marche

image
GoDoco commented 1 month ago

image

je parlais de ce bouton là mais azy je vais essayer

jean-voila commented 1 month ago

Il me semble que les boutons sur le haut de l'éditeur correspondent à des outils d'édition et pas au jeu

À mon avis, "aimanter au sol" veut dire "coller l'objet au sol quand tu le déplaces avec ta souris", un peu comme quand tu es sur Powerpoint et que tu déplaces une forme, et qu'elle se colle dans l'axe du milieu (voir ci-dessous, "alignment guides") image

GoDoco commented 1 month ago

t'as raison j'ai essayé ça n'a rien changé