programmereninhetpovo.nlprogrammereninhetpovo.nl/wp-content/uploads/2016/06/ScratchLes5.docx  ·...

6
Les 5: In de vorige les hebben we de auto laten rijden. Dit is leuk om te doen maar je kun nog overal over heen rijden. Om van de game een echte game te maken moeten we zorgen dat er een doel is. We beginnen met wat er gebeurd als de auto het gras raakt. We beginnen hier voor met een ‘als … dan’ blok, met als vraag ‘raak ik kleur’. klik op het gekleurde blokje en klik daar na op het gras. Als het goed is heeft het blokje nu de kleur van het gras gekregen. Als de auto het gras aan raakt moet de speed op 0 worden gezet. Om de ‘crash’ te laten blijken laten we de auto een paar rondjes draaien. Plaats onder het ‘maak speed 0’ blok een herhaal loop wat 12 keer herhaalt. Zet in deze herhaal loop een ‘draai … graden’ en zet deze op 30 (het maakt niet uit links of rechts om). Om te zorgen dat de auto niet meteen weer begint te draaien nadat hij klaar is met draaien zetten we onder de herhaal loop ‘wacht tot’ hier in zetten we de functie ‘niet’ en hier in kopiëren we de waarneming ‘raak ik kleur “groen”’. Zet dit alles in een herhaal loop en onder een . Om te controleren of de auto wel de track volgt moet gecontroleerd worden of de auto bepaalde voorbij bepaalde punten op de baan komt. We programmeren dit als volgt. Begin met een . Maak hierna een nieuwe variabele aan genaamd ‘laps’. We moeten zorgen dat als we starten ‘laps’ op 1 word gezet, omdat we in lap 1 beginnen. Zet hier onder een herhaal loop die (het aantal laps dat je wil) -1 keer herhaald. Om controleren of de auto de track volgt moeten 3 punten op de track vinden. Het eerste punt bevind zicht aan de binnen kant van de baan op het punt waar de baan het verste naar rechts ligt. Het tweede punt ligt aan de binnen kant van de baan waar de baan het meeste naar onder ligt. En het vierde punt ligt aan de binnen kant van de baan die het meeste naar links ligt. (zie voorbeeld).

Transcript of programmereninhetpovo.nlprogrammereninhetpovo.nl/wp-content/uploads/2016/06/ScratchLes5.docx  ·...

Page 1: programmereninhetpovo.nlprogrammereninhetpovo.nl/wp-content/uploads/2016/06/ScratchLes5.docx  · Web viewPlaats in het script een herhaal loop en zet hier in een ‘verander time

Les 5:

In de vorige les hebben we de auto laten rijden. Dit is leuk om te doen maar je kun nog overal over heen rijden. Om van de game een echte game te maken moeten we zorgen dat er een doel is.

We beginnen met wat er gebeurd als de auto het gras raakt.

We beginnen hier voor met een ‘als … dan’ blok, met als vraag ‘raak ik kleur’. klik op het gekleurde blokje en klik daar na op het gras. Als het goed is heeft het blokje nu de kleur van het gras gekregen. Als de auto het gras aan raakt moet de speed op 0 worden gezet. Om de ‘crash’ te laten blijken laten we de auto een paar rondjes draaien. Plaats onder het ‘maak speed 0’ blok een herhaal loop wat 12 keer herhaalt. Zet in deze herhaal loop een ‘draai … graden’ en zet deze op 30 (het maakt niet uit links of rechts om). Om te zorgen dat de auto niet meteen weer begint te draaien nadat hij klaar is met draaien zetten we onder de herhaal loop ‘wacht tot’ hier in zetten we de functie ‘niet’ en hier in kopiëren we de waarneming ‘raak ik kleur “groen”’. Zet dit alles in een herhaal loop en onder een

.

Om te controleren of de auto wel de track volgt moet gecontroleerd worden of de auto bepaalde voorbij bepaalde punten op de baan komt. We programmeren dit als volgt. Begin met een

. Maak hierna een nieuwe variabele aan genaamd ‘laps’. We moeten zorgen dat als we starten ‘laps’ op 1 word gezet, omdat we in lap 1 beginnen. Zet hier onder een herhaal loop die (het aantal laps dat je wil) -1 keer herhaald. Om controleren of de auto de track volgt moeten 3 punten op de track vinden. Het eerste punt bevind zicht aan de binnen kant van de baan op het punt waar de baan het verste naar rechts ligt. Het tweede punt ligt aan de binnen kant van de baan waar de baan het meeste naar onder ligt. En het vierde punt ligt aan de binnen kant van de baan die het meeste naar links ligt. (zie voorbeeld).

Page 2: programmereninhetpovo.nlprogrammereninhetpovo.nl/wp-content/uploads/2016/06/ScratchLes5.docx  · Web viewPlaats in het script een herhaal loop en zet hier in een ‘verander time

Om te controleren of de auto voorbij deze punten komt zet je de volgende code in je herhaal loop. Begin met een ‘wacht tot’ blok. Zet hier in een ‘groter dan’ functie. Zet in het eerste vak hiervan de x positie van de auto en in het tweede vak de x positie van het eerste punt. Plaats hier onder weer een ‘wacht tot’ blok. Zet hier in een ‘kleiner dan’ functie en plaats in het eerste vak de y positie van de auto. In het tweede vak plaats je de y waarde van het tweede punt. Kopieer dit blok en plaats het er onder. Vervang de y positie van de auto door de x positie van de auto en de waarde in het tweede vak in de x waarde van het derde punt.

Het laatste punt dat we moeten controleren is onze finishlijn. Plaats hiervoor een ‘wacht tot’ blok met daar in een ‘raak ik kleur’ functie en selecteer de kleur van je finishlijn door op de finishlijn te klikken. Nadat we over de finishlijn zijn gereden zijn we natuurlijk 1 lap verder. Zet onder het laatste ‘wacht tot’ blok een ‘verander laps met 1’ blok.

Je kunt nu je game testen.

Zoals je ziet kun je oneindig rondjes blijven rijden maar de teller van het aantal laps blijft op de laatste lap staan. Om na de laatste lap de game te eindigen moeten we een signaal zenden. Zet onder het herhaal blok het ‘zend signaal’ blok en maak een nieuw signaal aan genaamd einde.

Ga naar het script van de finish sprite en begin met een . Omdat we niet willen dat de finish in het begin van de game getoond word zetten we onder het

een verdwijn blok. Zet er ook een blok ‘maak tijd 0’ blok onder

We willen dat de sprite weer te voorschijn komt als we het signaal ‘einde’ krijgen, dus zetten we het blok ‘Wanneer ik signaal einde ontvang’ in onze code en daar onder zetten we het blok ‘verschijn’.

Om te weten of je de high score hebt gehaald moet de tijd worden bijgehouden.

Ga naar het script van de achtergrond. Maak een nieuwe variabele aan genaamd ‘time’.

Plaats in het script een herhaal loop en zet hier in een ‘verander time met’ blok met als waarde 0.1 zodat de tijd in honderdste word opgenomen. Plaat hier onder een ‘wacht’ blok die 0.1 seconde

wacht. Plaats dit alles onder en test het uit.

Om te weten wat de hoogst behaalde score is moeten we een nieuwe variabele aanmaken genaamd ‘high score’.

W gaan weer terug naar de code van de finish sprite en zet onder het ‘verschijn’ blok een ‘als dan anders’ blok. Zet in het vak een ‘kleiner dan’ functie met in het eerste vak de variabele time en in het tweede vak de variabele high score. Als de tijd van de speler minder is dan de tijd van de high score, word uiterlijk 2 getoond en word de high score de tijd van de speler. Als de speler niet de high score heeft gehaald moet uiterlijk 1 worden getoond. Het spel is hierna afgelopen. Zet onder het ‘als dan anders’ blok een ‘stop alle’ blok.

Page 3: programmereninhetpovo.nlprogrammereninhetpovo.nl/wp-content/uploads/2016/06/ScratchLes5.docx  · Web viewPlaats in het script een herhaal loop en zet hier in een ‘verander time

Omdat de high score nu nog op nul staat en dus nooit verbeterd kan worden moet deze omhoog gezet worden. Dit doe je door twee keer op het balkje met high score te dubbel klikken die in het game scherm staat. De eerste keer veranderd die in alleen de waarde van de variabele en de tweede keer komt er een schuif balkje onder te staan. Schuif dit balkje helemaal naar rechts zodat de variabele op zijn hoogste stand staat

Je game in nu af. Zo moet je code er uit zien. Let op sommige waarden kunnen verschillen.

Code van de auto

Page 4: programmereninhetpovo.nlprogrammereninhetpovo.nl/wp-content/uploads/2016/06/ScratchLes5.docx  · Web viewPlaats in het script een herhaal loop en zet hier in een ‘verander time

Code van de finish

Code van de achtergrond

Je kunt hem testen en door anderen laten spelen.