Oi, Guilherme! Tudo bem?
Em relação ao primeiro problema pontuado fiz as seguintes alterações no seu código:
Adicionei as condições abaixo à raquete do oponente:
De forma que, a raquete deslizará normalmente sempre que a sua posição y estiver entre 140 e -140. Entretanto, caso ultrapasse esses valores voltará para eles. Ou seja, se a raquete ultrapassar a posição 140 ela imediatamente volta para a posição 138, especificada no código, e se ultrapassa a posição -140 de y, ela volta para a posição -138.
Adicionei também as condições abaixo à sua raquete:
Nela limitei a adição de 10 ou -10 a y (que é o que faz a sua raquete se movimentar) apenas a quando a posição da raquete for menor que a sua posição nas extremidades do plano no eixo y, que correspondem a 140 e -140.
Por fim, para tentar resolver a sua segunda observação, apenas alterei o valor de verificação da posição da bolinha no eixo y para um valor menor (alterei os valores de 229 e -229 para 220 e -220 ) e começaram a computar as pontuações. Segue abaixo uma foto das alterações feitas:
Espero ter ajudado!
Um forte abraço e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!