les 5 - conditionelen
Les 5 ging over conditionelen, ofwel if else
structuren.
De presentatie van deze les vind je hier: Javascript les 5.pdf
In de syllabus staat een uitleg geschreven over if else
structuren
En de code van deze les:
//variabelen om de positie van onze bal in op te slaan
let balX = 0;
let balY = 0;
//variabelen om de muispositie die we aanklikten op te slaan
let targetPosX = 0;
let targetPosY = 0;
//2 boolean variabelen om bij te houden of we al op de geklikte positie zijn per as
let targetReachedX = true;
let targetReachedY = true;
function setup() {
//plaats hier de code die maar ÊÊn keer hoeft te worden uitgevoerd
createCanvas(600,600);
background(200);
//zet de bal in het midden
balX = width / 2;
balY = height / 2;
//zet het doel standaard in het midden van het scherm
targetPosX = width / 2;
targetPosY = height / 2;
}
function draw() {
//plaats hier de code die continue herhaald moet worden.
//check of de bal positie op de x-as kleiner is dan het doel
background(10,20,200);
//als we de bal nog niet op de juiste x-positie hebben gezet
if (targetReachedX === false) {
//check of de bal links van het doel staat
if (balX < targetPosX) {
// console.log("De bal staat linkser dan het doel");
//beweeg de bal naar rechts
balX = balX + 1;
} else {
//anders, beweeg de bal naar links
balX = balX - 1;
}
}
//als we nog niet op de y-as op het doel zijn
if (targetReachedY === false) {
//en de bal is hoger dan het doel
if (balY < targetPosY) {
// console.log("De bal staat rechtser dan het doel");
//beweeg de bal omlaag
balY = balY + 1;
} else {
//anders, beweeg de bal omhoog
balY = balY - 1;
}
}
//als de x positie van de bal gelijk is aan de x-positie van het doel en targetReachedX was nog niet waar
if (balX === targetPosX && targetReachedX === false) {
console.log("X as klopt! Stop met x beweging");
//houdt bij dat we op de X as al klaar zijn
targetReachedX = true;
}
//als de y-waarde van de bal op de y-positie van het doel staat en targetReachedY nog false was
if (balY === targetPosY && targetReachedY === false) {
console.log("Y as klopt! Stop met y beweging");
//houdt bij dat we op de X as al klaar zijn
targetReachedY = true;
}
//teken de bal
ellipse(balX,balY,30);
}
function mousePressed() {
//dit wordt uitgevoerd zodra de muis ingedrukt wordt
console.log("de muis is geklikt!");
//zet de targetpositie gelijk aan de huidige muispositie
targetPosX = mouseX;
targetPosY = mouseY;
console.log(targetPosX, targetPosY);
//nu meoten we gaan bewegen dus zeggen we dat we op beide assen het doel nog niet bereikt hebben
targetReachedX = false;
targetReachedY = false;
}