Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Bug] Ao tocar na raquete, a bolinha não muda de posição

Olá! Percebi que neste vídeo 9 aos 7:50 minutos ele diz que "ao colidir, ela muda de direção", porém a bolinha ainda segue no mesmo sentido. Talvez será necessário mais algum código a adicionar. no vídeo, notamos que a bolinha veio de baixo para cima e toca na raquete e segue a mesma direção para cima e toca ao topo da tela, levando é claro, em consideração que ela tocou no canto superior da raquete onde "continuou" o mesmo sentido. Até aí tudo bem, está correto, porém, se fazer o teste, como eu fiz, pode notar que não está mudando de direção. Veja, tente o seguinte teste:

-Quando a bolinha vir de baixo para cima: Posicione a raquete de modo que a bolinha toque no canto inferior da raquete. No pensamento lógico, é para ela mudar de posição, seguindo/retornando seu sentido para baixo e tocar no fundo da tela, mas isso não acontece. Ela continua o mesmo sentido e segue ao topo da tela.

-Quando a bolinha vir de cima para baixo: Posicione a raquete de modo que a bolinha toque no canto superior da raquete. No pensamento lógico, é para ela mudar de posição, seguindo/retornando seu sentido para cima e tocar no topo da tela, mas isso não acontece. Ela continua o mesmo sentido e segue ao fundo da tela.

Tem algum código adicional para que este sentido funcione corretamente que será ensinado? No aguardo, obrigado! ;-)

1 resposta
solução!

Oiê João, tudo bem?

Agradeço por esperar um retorno nosso!

Muito obrigada por apontar esse questionamento em relação a lógica do jogo, é super válido e isso demonstra o quão comprometido e atento você está durante as aulas e nos motiva a olhar por outras perspectivas também.

O exemplo utilizado pelo professor em aula, quando ele se refere a mudança de direção da bolinha, não é referente a fazer o retorno da mesma para a posição inicial, mas sim que, quando a bolinha colidir com a raquete ou na parede, ela mude a trajetória de forma oposta da qual estava direcionada.

Por exemplo: se a bolinha sair do centro inferior do cenário, colidir no canto inferior da raquete ou da parede, o seu movimento será para cima. Se a bolinha sair do centro superior do cenário, colidir no canto superior da raquete ou da parede, o seu movimento será para baixo.

Captura de tela mostrando um quadro cinza, duas barras simulando raquetes nas laterais na cor cinza. Uma sequencia de bolinhas brancas saindo do meio do cenário inferior com uma seta vermelha mostrando a direção para onde ela vai, a sequencia da bolinha continua para cima até encostar no limite superior do cenário. Acima do cenário está escrito: bolinha saindo do centro inferior do cenário. Captura de tela mostrando um quadro cinza, duas barras simulando raquetes nas laterais na cor cinza. Uma sequencia de bolinhas brancas saindo do meio do cenário superior com uma seta vermelha mostrando a direção para onde ela vai, a sequencia da bolinha continua para baixo até encostar no limite superior do cenário. Acima do cenário está escrito: bolinha saindo do centro superior do cenário.

Caso seja feito a mudança, seguindo a sua linha de raciocínio, na direção da bolinha ao colidir com a raquete, para que ela retorne ao seu ponto de partida inicial, isso ocasionaria um loop. Dessa forma, a bolinha não teria probabilidade de tocar em outras posições do cenário, sendo que ao tocar em uma das extremidades das raquetes ou tocar na parede, ela voltaria para seu ponto inicial e depois, voltaria a tocar na raquete ou parede novamente… sem a menor possibilidade de explorar o cenário em sua totalidade.

A estrutura da lógica aplicada pelo professor em aula, é a forma realística em que, quando um objeto está em movimento, tende a permanecer em movimento até que uma força atue sobre ele. Logo, se usarmos a lógica para que a bolinha retorne ao seu ponto inicial, não faria sentido para o nosso jogo.

Se me permite, gostaria de te indicar o curso de lógica de programação para você aprofundar e praticar ainda mais, e curso introdutório de JavaScritp, nele aprendemos os conceitos tipos básicos de JS.

Além disso, quero indicar alguns livros para lhe ajudar a fixar ainda mais o conhecimento.

Espero que tenha lhe ajudado a entender melhor a lógica por trás do jogo Pongo no Scratch.

Caso tenha dúvidas durante o seu processo, estarei à disposição para ajudar.

Bons estudos e a gente se vê!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado! ✓.