fiz o código no sublime então ficou bem diferente do instrutor, deu tudo certo só não consigo fazer o oponente errar.
colei o código aqui e quando clico em editar ele aparece, mas para o público não está aparecendo, pq será?
fiz o código no sublime então ficou bem diferente do instrutor, deu tudo certo só não consigo fazer o oponente errar.
colei o código aqui e quando clico em editar ele aparece, mas para o público não está aparecendo, pq será?
O professor colocou um erro de acordo com a diferença no placar, mas queria tentar algo mais justo, de tipo, uma hora você marcar ponto se ficar acentanto sempre. Então eu fiz o sistema usando um desvio aleatório, que pode ir aumentando de acordo com o número de raquetadas (ou seja, quanto mais prolongar, maior a chance do oponente cometer um erro). Primeiro eu fiz uma variável (let) para contar as colisões. Depois uma desvio (let) para gerar um número aleatório, aumentando o parâmetro de acordo com o aumento das raquetadas/colisões.
function colisaoRaquete(x,y){
colidiu = collideRectCircle(x, y, eRaquete, aRaquete, xBolinha, yBolinha, raio);
if (colidiu) {
velocidadexBolinha *= -1;
raquetada.play();
contadorColisao += 1;
desvio = random(-10,10)*contadorColisao;
}
}
Assim, eu adicionei o desvio no movimento do oponente:
function movimentoOponente(){
velocidadeOponente = yBolinha -yOponente - aRaquete/2;
yOponente += velocidadeOponente + desvio;
}
E se alguém fizer ponto, o desvio volta a zero:
function marcaPonto(){
if(xBolinha < 8){
pontosOponente += 1;
ponto.play();
contadorColisao = 0;
}
if(xBolinha > 592){
pontosPJ += 1;
ponto.play();
contadorColisao = 0;
}
}
*Sobre colar o código e não aparecer, não sei. Eu abri aqui o "inserir bloco de código" q fica no cabeçalho do editor do forum e colei o código desse post.