Greenfoot

Leerdoelen

In deze serie lessen leer je een spel maken met behulp van Greenfoot. In elke opdracht worden ook een aantal termen van het programmeren uitgelegd. Deze termen (vaktaal) moet je kennen en dus leren.

In images.zip vind je de afbeeldingen die je nodig hebt voor het spel en in sounds.zip de geluiden. Als je het spel alvast wilt spelen kun je een uitwerking downloaden.

Ontwikkelomgeving maken en de eerste stappen in Greenfoot

In deze opdracht maak je de ontwikkelomgeving in orde door Java te installeren als deze nog niet op je computer staat en door Greenfoot te installeren. Daarna volgt er een eerste kennismaking met Greenfoot en Garp. Zie verder de instructie. Heb je afbeeldingen en geluiden nodig, dan vind je die in de web links.

Leer ook de vaktermen die aan het einde van de bijlage staan.

Garp wijkt van het rechte pad af en Gnomus gaat op dievenpad

Garp moet diamanten gaan verzamelen. Daarvoor moet hij kunnen bewegen. De speler moet Garp kunnen sturen. Ook leren we de geheimen van de dief Gnomus kennen. Hoe komt het toch dat hij vanzelf beweegt en een eigen leven leidt?

De wereld wordt steeds gevaarlijker

We gaan de wereld van Garp in orde maken. Garp en Gnomus worden automatisch op de wereld gezet die steeds gevaarlijker wordt. We plaatsen een aantal obstakels in zijn wereld. Verder gaan we achtergrondmuziek maken.

Leven en niet laten leven

Garp en Gnomus leven nog langs elkaar heen. Ze gaan nog over de rotsen en Garp verzamelt nog steeds geen diamanten. We gaan nu eerst Garp diamanten laten verzamelen en daarna leren we Gnomus hoe hij Garp moet vermoorden. En verder zullen ze niet over de rotsen heen kunnen, maar moeten zij er omheen. En, o, ja ... De bommen gaan eindelijk ontploffen!

De buit verdelen

Tot slot moet de score nog worden bijgehouden tijdens het spel en moet aan het eind van het spel een venster verschijnen met daarin de aanduiding of de speler gewonnen of verloren heeft. Verder wordt de score zichtbaar gemaakt en de duur van het spel. De score is het aantal diamanten dat Garp heeft verzameld.

Drie extra opdrachten

  1. Gnomus kan al in de verte zien waar Garp is en vervolgens op Garp afgaan om hem te doden. Dat kun je programmeren met behulp van de methodes int getX() en int getY() van het object Garp. Het object Garp moet dan wel bekend zijn aan Gnomus: getObjectsInRange(100, "Garp.class");
  2. Je kunt het spel ook met zijn twee spelers spelen, waarbij een speler Garp aanstuurt en de andere speler Gnomus. Gnomus wordt op dezelfde manier aangestuurd als Garp maar dan met bijvoorbeeld de toetsen: Z, X, C en S, aan de linkerkant van het toetsenbord. De pijltjestoetsen zitten namelijk aan de rechterkant van het toetsenbord. Als Gnomus een bom raakt, ontploft de bom en heeft Garp gewonnen.
  3. Je kunt het spel ook zo veranderen dat er twee Garps zijn die beide door een speler worden aangestuurd. De Garp die de meeste diamanten heeft verzameld als alle diamanten uit het spel zijn, heeft gewonnen. Als de twee Garps tegen elkaar botsen, dan heeft de Garp met de meeste diamanten gewonnen. Als een van de Garps eerder dood gaat door Gnomus of door een bom, dan gaat de andere Garp door totdat hij of ook dood gaat of alle diamanten die nog in het spel zijn, heeft verzameld. In het laatste geval heeft deze Garp gewonnen. Het bijhouden van de scores moet dan ook aangepast worden.