Gebruikershulpmiddelen

Site-hulpmiddelen


workshops:processing:les_4

Les 4: Object georienteerd Programmeren

Deze week gaan we verder met een belangrijk nieuw concept: Object Georienteerd Programmeren.

Sheets van de les

Videos, tutorials en references

- https://processing.org/tutorials/objects. Uitleg van Processing zelf over objecten en classes.

- https://www.youtube.com/playlist?list=PLRqwX-V7Uu6bb7z2IJaTlzwzIg_5yvL4i. Videos van The Coding Train over object Georienteerd Programmeren.

Opdrachten

Opdracht 1: Penguin

In week 2 heb je een penguin spelletje gemaakt. Pas dit spelletje zodanig aan dat er een nieuwe class Penguin in komt waarin alle eigenschappen en gedrag van de Penguin terecht komen. Zie ook de sheets van deze week:

Indien nodig kun je hier nog de plaatjes downloaden: Penguin images.

Na deze opdracht zou je dus een penguin moeten hebben die rond kan lopen.

Opdracht 2: Penguin wil vis!

Penguins zijn dol op vis en je raad het al: Ook onze Penguin wil vis! Bouw in dat er een aantal willekeurige visjes op beeld verschijnen. Gebruik voor de vissen deze plaatjes: fishimages.zip

Volg de volgende stappen:

  • Maak een class Fish.
  • Geef de Fish een aantal eigenschappen> Een vis heeft een x en y coordinaat, een widht en height en een image en ook een type. Het type is een String. Een vis kan het type tonijn, zalm, garnaal of haring hebben. Afhankelijk daarvan moet hij straks het juiste plaatje tonen.
  • Geef de vis een constructor waaraan je de x en y coordinaat en het type kunt meegeven. Afhankelijk van het type zet je het juiste plaatje in de image variabele.
  • Maak een aantal visjes aan (4 stuks bijvoorbeeld, van elk type 1) en toon deze in het spel op een willekeurige plek.

Opdracht 3: Penguin wil vis kunnen eten!

Om vis te kunnen eten wil je detecteren of de Penguin botst met een visje. Gebruik deze link voor uitleg over collision detection https://www.jeffreythompson.org/collision-detection/.

  • Zorg ervoor dat als de penguin met de vis botst, dat dan de betreffende vis verplaatst naar een willekeurige andere plek op het scherm (anders bots je steeds opnieuw).

Volgende week gaan we aan de slag met lijsten. We kunnen dan een lijst van visjes maken en zo meerdere vissen tonen.

Opdracht 4: Health bar

Als je tijd over hebt en je vind het leuk zou je deze extra uitdaging kunnen pakken: Geef de penguin een variabele health die te increasen en decreasen is. Wat je dan zou kunnen bouwen is het volgende:

  • Zorg ervoor dat na verloop van tijd de health van de penguin afloopt. Je zou bijvoorbeeld een teller kunnen maken die ervoor zorgt dat na elke 60 aanroepen van de draw() methode de penguin een health minder krijgt.
  • Zorg ervoor dat als de penguin een vis pakt dat zijn health met 10 toeneemt.
  • Zorg ervoor dat er een healthbar in beeld is. Dat kan gewoon een rechthoek zijn waarbij je de breedte (en/of de kleur) laat afhangen van de health van de penguin.

Succes!

workshops/processing/les_4.txt · Laatst gewijzigd: door miranda