xxxxxxxxxx
70
let bulbs = [];
let numBulbs = 5;
function setup() {
createCanvas(800, 600);
textSize(16);
fill(255);
for (let a = 0; a < numBulbs; i++) {
let x = 100 + i * 100; // Calculate x position
bulbs.push({ x: x, y: 300, on: false }); // Add bulb with calculated x, fixed y, and off state
}
// Create buttons
let button1 = createButton('Turn All On');
button1.position(50, 500);
button1.mousePressed(turnAllOn);
let button2 = createButton('Random Light On');
button2.position(150, 500);
button2.mousePressed(turnRandomOn);
let button3 = createButton('One Light On');
button3.position(300, 500);
button3.mousePressed(turnOneOn);
let button4 = createButton('Turn All Off');
button4.position(450, 500);
button4.mousePressed(turnAllOff);
}
function draw() {
background(0);
for (let bulb of bulbs) {
if (bulb.on) {
fill(255, 255, 0); // Yellow color for ON
} else {
fill(50); // Gray color for OFF
}
ellipse(bulb.x, bulb.y, 50, 50);
}
}
function turnAllOn() {
for (let bulb of bulbs) {
bulb.on = true;
}
}
function turnRandomOn() {
let index = floor(random(bulbs.length));
bulbs[index].on = true;
}
function turnOneOn() {
// Turn off all bulbs first
for (let bulb of bulbs) {
bulb.on = false;
}
// Then turn on one random bulb
let index = floor(random(bulbs.length));
bulbs[index].on = true;
}
function turnAllOff() {
for (let bulb of bulbs) {
bulb.on = false;
}
}