User manual

002
003
004
005
006
007
008
Via de controlBall()-functie kunt u nu de bal ook besturen. De knoppen van de joypad
worden daardoor op eenvoudige wijze opgevraagd. De functie
engine.joypad.isPressed(UP) geeft de waarde TRUE wanneer de knop net ingedrukt is.
Vervolgens wordt de y-positie van de bal vermindert met één pixel, wat tot gevolg heeft
dat de bal de bovenkant van het scherm benadert. Op dezelfde manier is er ook de
engine.joypad.isPressed-functie (DOWN). Zo kunnen dus met behulp van de
pijltjestoetsen naar boven en naar beneden de hoogte van de bal beïnvloeden, terwijl deze
zich op het scherm naar rechts beweegt. Als het ene uiteinde van het beeldscherm bereikt
wordt, zal deze opnieuw verschijnen aan het andere uiteinde. Om deze drie functies goed
te coördineren, moeten ze op een geschikt moment worden opgeroepen in de looproutine.
001
002
003
004
005
006
007
008
009
Hiertoe is er in de Arduino de loopfunctie die permanent doorloopt. Via de functie
engine.update() wordt gewaarborgd dat al de motorische functies, zoals de bal tekenen en
evaluatie van de toetsen, werden uitgevoerd voor de volgende ronde. De functie
moveBall() heeft echter nog een andere beperking - het zal slechts alle 20 frames
oproepen. Er wordt dus eerst 20 keer de inhoud van het scherm bijgewerkt vóórdat de
positie van de kogel mag veranderen. De reden hiervoor is, dat de bal anders te snel zou