xxxxxxxxxx
110
var cars = [];
let slider;
let numberOfCars = 15;
var playerX;
var playerY;
function setup() {
createCanvas(400, 400);
slider = createSlider(5, 20, 10);
slider.position(10, 10);
slider.style('width', '80px');
noStroke();
for(var i = 0; i<numberOfCars; i++){
cars.push(new Car());
}
playerX = width/2;
playerY = height-20;
}
function updateNumberOfCars(){
if(numberOfCars > cars.length){
for(var i = 0; i < numberOfCars-cars.length; i++){
cars.push(new Car());
}
} else if (numberOfCars < cars.length){
cars.pop(cars.length - numberOfCars);
}
}
function Car(){
this.x = random(width);
this.y = random(height - 50, 20);
this.width = random(15, 25);
this.height = random(10, 15);
this.speed = 1;
this.move = function() {
if (this.x > width) {
this.x = 0;
} else {
this.x += random(this.speed, this.speed + 2);
}
}
this.display = function(){
fill(255, 0, 0);
rect(this.x, this.y, this.width, this.height);
}
}
function checkState(carX, carY, playerX, playerY){
if (dist(carX, carY, playerX, playerY) <= 10){
fill(255, 0, 0);
textSize(64);
textAlign(CENTER);
text("loose!", width/2, height/2);
playerX = width/2;
playerY = height-20;
frog.position(playerX, playerY);
}
if (playerY <= 10) {
fill(0, 255, 0);
textSize(64);
textAlign(CENTER);
text("win!", width/2, height/2);
playerX = width/2;
playerY = height-20;
}
}
function draw() {
numberOfCars = slider.value();
updateNumberOfCars();
background(244);
for(var i = 0; i < cars.length; i++){
cars[i].move();
cars[i].display();
checkState(cars[i].x, cars[i].y, playerX, playerY);
}
fill(0, 0, 255);
rect(0, height-10, width, 10);
fill(0, 255, 0);
rect(0, 0, width, 10);
let frog = ellipse(playerX, playerY, 20, 20);
}
function keyPressed() {
if (keyCode === LEFT_ARROW) {
playerX -= 15;
} else if (keyCode === RIGHT_ARROW) {
playerX += 15;
} else if (keyCode === UP_ARROW) {
playerY -= 15;
} else if (keyCode === DOWN_ARROW) {
playerY += 15;
}
}