Oi oi, Pedro! Como você está?
Verifiquei seu código e observei que você colocou a função para o movimento do oponente e do jogador com o mesmo nome, e provavelmente foi isso que gerou o conflito. Olha só
function draw() {
background(0)
mostraBolinha();
movimentaBolinha();
verificaColisao();
mostraRaquete(xRaquete, yRaquete);
movimentaRaquete(); //aqui a função
colisaoRaqueteOponenteBiblioteca(xRaquete, yRaquete);
mostraRaquete(XRaqueteOponente, YRaqueteOponente);
colisaoRaqueteOponenteBiblioteca(XRaqueteOponente, YRaqueteOponente);
}
E aqui as funções de movimentação das raquetes:
function movimentaRaquete() { //mesmo nome
if(keyIsDown(UP_ARROW)) {
yRaquete -= 10;
}
if(keyIsDown(DOWN_ARROW)) {
yRaquete += 10;
}
}
A outra função também possui o mesmo nome:
function movimentaRaquete(){
velocidadeYOponente = yBolinha - YRaqueteOponente - raqueteComprimento / 2 - 50;
YRaqueteOponente += velocidadeYOponente
}
As duas functions tem o mesmo nome, para resolver o problema basta modificar o nome de uma das funções, olha só:
draw()
function draw() {
background(0)
mostraBolinha();
movimentaBolinha();
verificaColisao();
mostraRaquete(xRaquete, yRaquete);
movimentaRaquete();
movimentaRaqueteOponente();
colisaoRaqueteOponenteBiblioteca(xRaquete, yRaquete);
mostraRaquete(XRaqueteOponente, YRaqueteOponente);
colisaoRaqueteOponenteBiblioteca(XRaqueteOponente, YRaqueteOponente);
}
function movimentaRaquete()
function movimentaRaquete() {
if(keyIsDown(UP_ARROW)) {
yRaquete -= 10;
}
if(keyIsDown(DOWN_ARROW)) {
yRaquete += 10;
}
}
function movimentaRaqueteOponente()
function movimentaRaqueteOponente(){
velocidadeYOponente = yBolinha - YRaqueteOponente - raqueteComprimento / 2 - 50;
YRaqueteOponente += velocidadeYOponente
}
Agora o jogo funciona direitinho e sem conflitos, espero ter ajudado!
Um abraço e bons estudos!