Estive procurando uma maneira de implementar salto de parede no meu jogo de xna, mas não consigo encontrar nenhuma informação sobre isso, alguém poderia alguém por favor me ajudar?
xna
2d
c#
platformer
dbomb101
fonte
fonte
Eu honestamente teria feito uma verificação de ponto. Então:
Você pode alterar y para dizer y + sprite_width / 2 (ou - dependendo do seu sistema de coordenadas) para que ele verifique à esquerda do meio seu sprite em vez da parte superior (ou inferior). É assim N implementa verificações de parede para pular de parede (último parágrafo) .
Depois disso, você deve decidir o quão firme você quer que sua parede salte. Se a velocidade vertical do seu salto ultrapassar a horizontal antes que o jogador possa alcançar a mesma parede novamente, você não poderá subir na mesma parede e voltará gradualmente ao fundo (como nos jogos Mario com salto na parede) ) Se você permitir que a horizontal seja fraca o suficiente para o jogador voltar à parede, ele poderá progredir na parede (como no Meat Boy).
Outra abordagem não mencionada é a de Super Metroid. Nesse jogo, quando você estiver contra uma parede, se você sair dessa parede, será exibida uma animação muito curta "movendo-se da parede". Se você pular durante essa animação, fará um salto na parede. (Super Metroid também permite que um jogador suba uma parede usando saltos de parede, mas isso requer um pouco de habilidade (na verdade, tudo sobre pular paredes em Super Metroid requer muita habilidade ...).)
fonte