xxxxxxxxxx
60
var grid = [
[false, false, false, false, false],
[false, false, false, false, false],
[true, false, true, false, true],
[false, false, false, false, false],
[false, false, false, false, false],
];
function setup() {
createCanvas(400, 400);
stroke(0);
}
function draw() {
//add a time and score
var won = true;
for (var r = 0; r < grid.length; r++)
for (var c = 0; c < grid[r].length; c++)
if (grid[r][c] === true) won = false;
if (won === true) {
background(141, 174, 141);
fill(153, 0, 76);
textAlign(CENTER);
textSize(75);
frameRate(40);
text("You did it!", 200, 200);
textSize(20);
} else drawGrid();
}
function mousePressed() {
let col = int(mouseX / 80);
let row = int(mouseY / 80);
flipLight(row, col);
if (isValid(row - 1, col) === true) flipLight(row - 1, col);
if (isValid(row + 1, col) === true) flipLight(row + 1, col);
if (isValid(row, col - 1) === true) flipLight(row, col - 1);
if (isValid(row, col + 1) === true) flipLight(row, col + 1);
}
function flipLight(r, c) {
grid[r][c] = !grid[r][c];
}
function isValid(r, c) {
if (r <= 4 && r >= 0 && c >= 0 && c <= 4) return true;
}
function drawGrid() {
for (var r = 0; r < grid.length; r++)
for (var c = 0; c < grid[r].length; c++) {
let x = c * 80;
let y = r * 80;
if (grid[r][c] === false) fill(155, 50, 74);
else fill(141, 174, 141);
square(x, y, 80, 20);
}
}