Ir para conteúdo
Fórum Script Brasil
  • 0

Colisão em um jogo


Perroni91

Pergunta

Estou aprendendo Linguagem de programação e me deparei com uma dúvida, já tentei de todas as formas e não consegui. No pequeno joguinho, quando a bolinha encostasse no quadrado, apareceria o alerta dizendo game over e a bolinha voltaria à posição inicial.
Só consegui fazer a bolinha se mover, mas não o resto. Alguém poderia me ajudar com essa dúvida por favor?
Deixarei o código para darem uma olhada.

Obrigada.

 

<canvas width="600" height="400"></canvas>

<script>
	
	var tela = document.querySelector('canvas');
	var pincel = tela.getContext('2d');

	pincel.fillStyle = 'lightblue';
	pincel.fillRect(0, 0, 600, 400);

	var x = 30;
	var y = 20;

	//Códigos do teclado:
	var esquerda = 37;
	var cima = 38;
	var direita = 39;
	var baixo = 40;

	//Taxa de incremento:
	var taxa = 5;
	var colisao = desenhaQuadrado;

	function desenhaQuadrado() {

		pincel.fillStyle = 'blue';
		pincel.beginPath();
		pincel.fillRect(50, 50, 50, 50);
		pincel.fillStroke = 'black';
		pincel.strokeRect(50, 50, 50, 50);

	}


	function desenhaBolinha(x, y, raio) {

		pincel.fillStyle = 'black';
		pincel.beginPath();
		pincel.arc(x, y, raio, 0, 2 * Math.PI);
		pincel.fill();

	}


	function limpaTela() {

		pincel.clearRect(0, 0, 600, 400);

	}


	function atualizaTela() {

		limpaTela();
		desenhaBolinha(x, y, 10);
		desenhaQuadrado();
	}

	setInterval(atualizaTela, 20);

	function setasDoTeclado(evento) {

		if(evento.keyCode == cima) {

			y = y - taxa;

		} else if (evento.keyCode == baixo) {

			y = y + taxa;

		} else if (evento.keyCode == esquerda) {

			x = x - taxa;

		} else if (evento.keyCode == direita) {

			x = x + taxa;

		}
	}

	if(desenhaBolinha == colisao) {

		alert('Você perdeu');

	}

	document.onkeydown = setasDoTeclado;

</script>

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...