Je cherchais un moyen d'implémenter le saut de mur dans mon jeu xna, mais je ne trouve aucune information à ce sujet, quelqu'un pourrait-il m'aider?
xna
2d
c#
platformer
dbomb101
la source
la source
Honnêtement, j'aurais juste fait une vérification par points. Donc:
Vous pouvez changer le y pour dire y + sprite_width / 2 (ou - selon votre système de coordonnées) afin qu'il vérifie à gauche du milieu votre sprite au lieu du haut (ou du bas). C'est ainsi que N implémente des vérifications de murs pour les sauts de murs (dernier paragraphe) .
Après cela, vous devez décider à quel point vous voulez que votre mur saute. Si la vitesse verticale de votre saut dépasse l'horizontale avant que le joueur ne puisse à nouveau atteindre ce même mur, vous ne pourrez pas sauter le même mur et retomber progressivement vers le bas (comme dans les jeux Mario avec saut de mur ). Si vous permettez à l'horizontale d'être suffisamment faible pour que le joueur puisse revenir au mur, il / elle pourra progresser vers le haut du mur (comme dans Meat Boy).
Une autre approche non mentionnée est celle de Super Metroid. Dans ce jeu, lorsque vous êtes contre un mur, si vous vous éloignez de ce mur, une très courte animation "se déplacer hors du mur" sera jouée. Si vous sautez pendant cette animation, vous ferez un saut au mur. (Super Metroid permet également à un joueur de grimper sur un mur en utilisant des sauts de mur, mais cela nécessite un peu de compétence (en fait, tout ce qui concerne le saut de mur dans Super Metroid nécessite un peu de compétence ...).)
la source