GAME MAKER ONLINE Les 2 / Breakout 18-9-2018 Michel Fiege
Vandaag Klassikaal beginnen met Breakout Vervolgens zelf verder gaan! 18-9-2018 Michel Fiege
Klassikaal http://gm.michelfiege.nl Laat zien hoe je ook alweer de bestanden download en GM opstart Behandel het “titelscherm” -> obj_paddle_title en obj_title Nadruk op: Create-Event. Deze gebeurtenis wordt uitgevoerd als een instantie van het object wordt gemaakt. Over het algemeen gebeurt dit bij het starten van de room. (voor de volledigheid: als het object non-persistent is) 18-9-2018 Michel Fiege
Zelf aan de slag Succes! http://gm.michelfiege.nl Goed lezen Gebruik de plaatjes! Oefenbestanden downloaden In dit geval “breakout.zip” Help elkaar! Succes! 18-9-2018 Michel Fiege
Wat heb je vandaag geleerd? 18-9-2018 Michel Fiege
Objecten & instanties Doel: het verschil tussen object en instantie duidelijk maken. - Er is maar 1 obj_block_blue, maar er kunnen meerdere instanties zijn van obj_block_blue - In de kamer zet je altijd een instantie van een object neer 18-9-2018 Michel Fiege
Overerving & Collision Doel: duidelijk maken dat een botsing met een child-object, óók het event van de parent triggered. Dus: Als we programmeren dat de bal botst met het Parent Block, dan botsen automatisch ook de kinderen met de bal. Waarom overerving gebruiken? Dit scheelt aanzienlijk veel werk, wanneer je bijvoorbeeld 100 verschillende blokjes hebt. 18-9-2018 Michel Fiege
De functie max() Geeft de grootste van twee waarden terug! Voorbeelden: max(4,8) = 8 max(1,6) = 6 max(6,speed-0.3) Snelheid nooit lager dan 6 Doel: eerste kennismaking met het begrip “functie” In dit geval duidelijk maken dat max() 2 invoerwaarden kan krijgen (parameters) en dat de functie het hoogste getal teruggeeft. De functie max() kun je ook slim gebruiken om de snelheid van een instantie aan de onderkant te begrenzen. Wanneer speed-0.3 lager wordt dan 6, dan geeft de functie 6 terug. Is de snelheid van speed-0.3 hoger dan 6, dan is de snelheid simpelweg speed-0.3 18-9-2018 Michel Fiege
(Globale) variabele “Normale” Variabele Globale variabele Hoort bij een object, bijvoorbeeld: speed, direction, x, y van obj_ball Schrijfwijze: obj_ball.speed of obj_ball.x Globale variabele Hoort bij het spel in het geheel Dus niet bij een object Een globale variabele maak je altijd zelf global.level = 1 Doel: kennismaking met het verschil tussen een globale variabele en een “normale” variabele (eigenlijk een klasse-variabele) Normale variabele hoort bij een object (instantie). Bijvoorbeeld de bal met snelheid, richting, coördinaten. Een tweede bal (instantie) kan best een andere snelheid of richting hebben! Globale variabele hoort niet bij een object. - Gevolg: overal in het spel benaderbaar met global. ervoor 18-9-2018 Michel Fiege
Volgende keer… 18-9-2018 Michel Fiege