In een spookhuis heb je 6 lampen en 6 knoppen. Ze doen allemaal iets: sommigen steken 1 of meer lampen aan, andere doen ook een lamp uit. Of een combinatie.
Het is een spel waarbij je moet proberen om alle lampen aan te krijgen met de juiste combinatie / volgorde van de knoppen. Maar welke. Dat bepaal jij.
- 6 knoppen, 6 lampen
- Geen random maar een vaste uitkomst. Zet de oplossing in de code.
- Gebruik de collide2D library om het afvangen van clicks te vergemakkelijken
- Meerpunten voor een tof design
- Het gaat bij deze opdracht om de combinaties van AND, NOT en OR. Deze logica. Check.
- Onderaan de pagina een opzetje.
Doe het beter
- maak zelf een spookhuis-achtergrond met 6 ramen
- maak een design op basis van een bekende televisie-spelshow
- hergebruik een dashboard uit bijv. formule 1, een vliegtuig oid
- gebruik geluiden
Let op
Als je een voldoende wilt, moet je ook de tussen-opdrachten uit de LA1 en LA2 toepassen, zoals eigen functies en collide2d.
Opzetje
Een overzichtelijk hoofdprogramma.
// 6 schakelaars
// elk op false zetten
let switch1,
switch2,
switch3,
switch4,
switch5,
switch6 = false;
// 6 lampen
let lamp1,
lamp2,
lamp3,
lamp4,
lamp5,
lamp6 = false; // 6x
function setup() {
createCanvas(500, 500);
}
function draw() {
background(220);
spookhuis();
knoppen();
lampen();
if (isOpgelost()) {
juichen();
}
}
function spookhuis() {}
function knoppen() {
// switch1
fill("green");
rect(10, 400, 75, 75);
}
function lampen() {
if (switch1) {
fill("orange");
} else {
fill("antracite");
}
square(100, 100, 50); // lamp1
}
function isOpgelost() {
// maak je eigen oplossing
// return (lamp1 && lamp2 && lamp3 etc)
return false; //
}
function juichen() {}
function mousePressed() {
// switch1
// collidePointRect(pointX, pointY, x, y, width, height)
// zie functie knoppen
// knop1
if (collidePointRect(mouseX, mouseY, 10, 400, 75, 75)) {
// geklikt
// switch1 = !switch1;
// lamp1 = doe iets
console.log("knop 1 geklikt")
}
}