Olá, Pedro. Tudo bem com você?
Parabéns pelo engajamento durante a execução do curso, vou pontuar alguns detalhes no seu projeto que acredito que estejam comprometendo o funcionamento do seu código.
É importante nomear as variáveis e funções de forma legível e de acordo com os padrões de boas práticas. Nesse caso, é considerada uma boa prática, nomear as variáveis e funções com Camel Case, que é basicamente começar com uma letra minúscula e a letra da próxima palavra será maiúscula.
Por exemplo:
no lugar de movimentarraqueread(), você poderá substituir para movimentarRaquereAd(),
outra coisa é que não podemos utilizar o ~ : sendo assim, você poderá substituir a colisãoraquetes(x, y) para colisaoRaquetes(x,y)
Além disso, observei que algumas condições e informações dentro das funções estão com pequenos problemas e vou detalhar alguns:
Na sua addpontos() você passou duas vezes o registro dos pontos do jogador:
function addpontos(){
fill(200)
// textSize(30);
text(meusPontos, 240, 50)
text(meusPontos, 360, 50)
}
A função incluiPlacar() do instrutor apresenta os pontos do jogador e do Oponente, vejamos:
function incluiPlacar() {
fill(255);
text(meusPontos, 278, 26);
text(pontosDoOponente, 321, 26);
}
Também a sua função marcarpontos() apresenta a questão da condição. Na sua condição, o xBolinha - raio precisa ser menor que 20 para marcar um ponto para o oponente, e precisa ser maior que 580 para marcar os pontos do jogador.
function marcarpontos(){
if(xBolinha - raio < 20){
pontosDoOponente += 1
}
if(xBolinha - raio > 580){
meusPontos += 1
}
}
A lógica do instrutor é mais simples, basta verificar se o xBolinha é maior que 590 para adicionar um ponto, e se o xBolinha for menor que 10, irá adicionar pontos ao oponente:
function marcaPonto() {
if (xBolinha > 590) {
meusPontos += 1;
}
if (xBolinha < 10) {
pontosDoOponente += 1;
}
}
Vou deixar abaixo o código completo para você visualizar melhor.