Movimento de botão

1 resposta
R

Olá, eu estou fazendo um joguinho de labirinto, e meu problema é que não sei como impedir que o componente que estou usando como personagem, atravesse as paredes do cenário. Já procurei na internet, mas ainda não encontrei nada, alguém saberia como me ajudar?

1 Resposta

TerraSkilll

Sem saber como você representa seu labirinto, fica difícil sugerir qualquer coisa.

Um jeito simples seria fazer um grid usando uma matriz, como num tabuleiro de damas. Algo como:

[
[ 1, 3, 0, 1, 0, 1 ]
[ 1, 0, 0, 1, 0, 1 ]
[ 1, 1, 0, 1, 0, 1 ]
[ 1, 0, 0, 0, 0, 1 ]
[ 1, 0, 1, 1, 0, 1 ]
[ 1, 1, 2, 0, 0, 1 ]
]

Os números 0 representam caminhos válidos. Os números 1 representam paredes. 2 e 3 são início e fim respectivamente. Para verificar se um movimento é válido, veja se a próxima posição é igual a 0.

Se as paredes do seu labirinto tem posições que não podem ser representadas por um grid, terá que implementar algum mecanismo de detecção de colisão.

Abraço.

Criado 11 de novembro de 2017
Ultima resposta 11 de nov. de 2017
Respostas 1
Participantes 2