Adorei o curso, o Guilherme ensinou muito bem, sem reclamações. Eu senti que aprendi muito com as atividades. Fiz algumas modificações em relação ao projeto do curso e gostaria de compartilhar:
Em ralação ao erro do oponente que era baseado na pontuação, de forma que o ponto era facilitado assim que o oponente estivesse ganhando, eu fiz uma variável chamada dificuldade, assim o numero que for inserido nela será acrescido ou decrescido (isso eu coloquei aleatoriamente) dando uma diferença no eixo Y entre o oponente e a bolinha. Caso o ponto seja marcado, esse valor acumulado é dividido por 2 voltando a bater na raquete do oponente e repetindo o processo (esse valor eu deixei visível no console.log). O valor é acrescido e decrescido toda vez que ocorre uma colisão, seja no jogador ou no oponente. Se o oponente marcar um ponto, esse valor receber um acrescimo (ou decréscimo) extra para facilitar um pouco mais.
Ao dividir o valor acumulado por 2 no momento do ponto, a bolinha ficava presa na raquete do oponente, então criei uma variável chamada chave que quando o ponto é feito ela é acionada, quando a chave está acionada e a bolinha estiver de volta ao lado do jogador, a divisão então é feita e o eixo Y do oponente é ajustado para voltar a acertar a bolinha.
Modo multiplayer, criei uma variável chamada automatico que recebe true acionando o modo automático, quando a tecla para cima ou para baixo for pressionada (o Jogador se movimenta com as teclas W** e **S), automatico se torna false acionando então o modo manual, ao pressionar a tecla Barra de Espaço o modo automático volta a ser acionado.
Clique aqui para acessar o projeto.