xxxxxxxxxx
83
var paddle;
var ball;
var bricks = [];
var playingGame = false;
var youWin = false;
function setup() {
createCanvas(640, 480);
paddle = new Paddle();
ball = new Ball();
for (let i = 0; i < 20; i++) {
bricks.push(new Brick());
}
}
function draw() {
background(255);
paddle.display();
ball.display();
if (playingGame) {
paddle.update();
paddle.checkEdges();
ball.update();
ball.checkEdges();
}
if (ball.meets(paddle) && ball.direction.y > 0) {
ball.direction.y *= -1;
}
for (var j = bricks.length - 1; j >= 0; j--) {
if (ball.hits(bricks[j])) {
if (bricks[j].r > 20) {
bricks[j].r = bricks[j].r / 2;
} else {
bricks.splice(j, 1);
}
ball.direction.y *= -1;
} else {
bricks[j].display();
}
}
if (ball.pos.y > height) {
playingGame = false;
ball.pos = createVector(width / 2, height / 2);
}
if (bricks.length === 0) {
youWin = true;
playingGame = false;
}
if (youWin) {
textSize(32);
fill(0);
noStroke();
text("You win!", width / 2 - 50, 80);
}
}
function keyPressed() {
if (key === "a" || key === "A" || keyCode === LEFT_ARROW) {
paddle.isMovingLeft = true;
} else if (key === "d" || key === "D" || keyCode === RIGHT_ARROW) {
paddle.isMovingRight = true;
} else if (key === "s" || key === "S" || key === " ") {
playingGame = true;
youWin = false;
if (bricks.length === 0) {
for (var i = 0; i < bricks.length; i++) {
bricks.push(new Bricks());
}
}
}
}
function keyReleased() {
paddle.isMovingLeft = false;
paddle.isMovingRight = false;
}