Spel: PONG

Pong: uitbreidingen

Als je de vorige 4 stappen goed hebt doorlopen en gemaakt heb je in principe een werkend spel. Er zijn alleen nog uitbreidingen die je kunt programmeren die het spel ‘mooier’ en/of beter speelbaar zullen maken. Een aantal mogelijke uitbreidingen zullen bij deze stap uitgelegd worden. De code zul je zelf moeten schrijven!

  1. Op dit moment heb je de grootte van het speel scherm aan het begin ‘hardcoded’. Dat betekend dat je van tevoren gekozen hebt hoe groot het speel scherm is (800x600). Het is natuurlijk mooier als je de grootte van het speel scherm laat afhangen van de grootte van je browser window. Hoe je de grootte van je browser window krijgt moet je zelf opzoeken (TIP: zoek op ‘processing’ en ‘innerHeight’ of ‘innerWidth’).
  2. Heb je eenmaal de maximale grootte van je browser scherm gekozen voor je speel scherm zal je zien dat de bal en bats eigenlijk best klein zijn. Verander de code zo dat de grootte van de bal en de bats aangepast wordt aan de grootte van je speel scherm (TIP: neem voor de hoogte van je bat en of diameter van je bal een bepaald % van de hoogte van je speel scherm).
  3. Een spel moet op een gegeven moment een winnaar hebben. Zorg ervoor dat er in je code op een gegeven moment een winnaar is. Bijvoorbeeld als een speler de 10 punten heeft gehaald.
  4. Het kan ook leuk zijn om het spel iets moeilijker te maken voor een speler mocht hij/zij bijna gewonnen hebben. Zo kan de speler die achter ligt makkelijker terug komen. Denk bijvoorbeeld aan het feit dat de snelheid van de bat omlaag gaat als de speler 8 punten of meer heeft. Zorg dat je dit in de code zet (TIP: if(score2>8){bat2Speed /= 2;}).
  5. Elke keer dat er nu een punt gescoord wordt gaat het spel meteen door. Dit kan lastig zijn. Zorg ervoor dat als er een punt gescoord is het spel gepauzeerd wordt totdat er op een toets (bv spatie) gedrukt wordt. TIP: declareer een variabele ‘pauze = 0’ en zet in de draw() functie alle code ‘binnen’ een if-statement. Alleen als de waarde van pauze gelijk is aan 0 zal het spel gespeeld worden anders krijg je tekst op je scherm te zien ‘Het spel is gepauzeerd. Druk op spatie om door te gaan!’.
  6. Zorg ook dat je op je scherm te zien krijgt wie er gewonnen heeft. TIP: if(score2 == 10){ text("Player 2 has won! Press space to start new game!", 300, 180); }.

Dit zijn een paar mogelijke uitbreidingen van de code. Je kan vast meer uitbreidingen verzinnen. Mocht je tijd over hebben mag je deze ook implementeren (=in de code zetten). Dit zal dan bonuspunten opleveren!