Hi! I am working on a Pong Game for school and wanted to add another ball when you get 5 points. The problem is, when you loose with the second ball, the game dosen’t restart. Can you help me? (the notes in the code are in Portuguese, sorry).
boolean gameStart = false;
boolean porcos = false;
boolean localizar = false;
float diam; // variável de tamanho dos animais/bolas
float xVACA, yVACA, moveXVACA, moveYVACA; //variáveis vaca
float xPORCO, yPORCO, moveXPORCO, moveYPORCO; // variáveis porco
float xPlat, yPlat; //variáveis plataforma, localização
float larguraPlat, alturaPlat; // variáveis plataforma, tamanho
int pontos; //pontuação
//variáveis de imagens dos animais/bolas
PShape vaca;
PShape porco;
PFont fonte;
PImage fundo;
void setup () {
fundo = loadImage ("fundo.jpg");
size (400,600);
pontos=0;
fonte = createFont ("fonte.ttf",40);
vaca = loadShape ("vaca.svg");
porco = loadShape ("porco.svg");
xVACA = width/2;
yVACA = height/2;
//xPORCO = random (width);
//yPORCO = random (0,40);
moveXVACA = 3;
moveYVACA = 3;
moveXPORCO = 5;
moveYPORCO = 5;
diam = 80;
larguraPlat=150;
alturaPlat=50;
xPlat = width/2; //onde começa coordenada x da raquete inferior
yPlat = height-(alturaPlat/2 + 20); //onde começa coordenada y da raquete inferior, com uma distância do final da tela
} // fim setup
void localizar () {
xPORCO = random (width);
yPORCO = random (0,40);
} // fim localizar
void draw (){
fill (255);
background (fundo);
textFont (fonte);
text (pontos, width/2-5, 56);
rectMode (CENTER);
fill (0,255,50);
noStroke ();
rect (mouseX, yPlat, larguraPlat, alturaPlat);
xPlat = mouseX;
shapeMode (CENTER);
shape (vaca, xVACA, yVACA, diam, diam);
if (gameStart) {
xVACA = xVACA+ moveXVACA;
yVACA = yVACA + moveYVACA;
if (xVACA >= (xPlat - larguraPlat/2) && xVACA <= (xPlat + larguraPlat/2) &&
( (yVACA+diam/2) >= (yPlat - alturaPlat/2) || (yVACA) >= (yPlat - alturaPlat/2) || (yVACA+diam/4) >= (yPlat - alturaPlat/2))) {
moveYVACA = -moveYVACA;
moveXVACA = -moveXVACA;
xVACA = xVACA + moveXVACA;
yVACA = yVACA + moveYVACA;
pontos = ++pontos; }
else if (yVACA < 0) {
moveYVACA = -moveYVACA; }
if (xVACA < 0 || xVACA > width) {
moveXVACA = -moveXVACA; }
if (gameStart && pontos >=5) {porcos = true;}
if (porcos) {
shapeMode (CENTER);
shape (porco, xPORCO, yPORCO, diam, diam);
xPORCO = xPORCO + moveXPORCO;
yPORCO = yPORCO + moveYPORCO;
if (xPORCO >= (xPlat - larguraPlat/2) && xPORCO <= (xPlat + larguraPlat/2) &&
( (yPORCO+diam/2) >= (yPlat - alturaPlat/2) || (yPORCO) >= (yPlat - alturaPlat/2) || (yPORCO+diam/4) >= (yPlat - alturaPlat/2))) {
moveYPORCO = -moveYPORCO;
moveXPORCO = -moveXPORCO;
xPORCO = xPORCO + moveXPORCO;
yPORCO = yPORCO + moveYPORCO;
pontos = ++pontos; }
else if (yPORCO < 0) {
moveYPORCO = -moveYPORCO; }
if (xPORCO < 0 || xPORCO > width) {
moveXPORCO = -moveXPORCO; }
} // fim porcos
}//fim gameStart
if (yVACA+diam/2 > height || yPORCO+diam/2 > height) {
gameStart =false;
pontos = 0;
porcos = false;
localizar = false;
}
} //fim draw
void mouseClicked () {
gameStart = true;}