Pong
Pong is een klassieker en een perfect project om met coderius-play te bouwen!
Laten we eens bekijken wat je hiervoor nodig hebt. Bij elke stap geven we tips hoe je dit kunt aanpakken.
Voor voorbeelden ga je uiteraard naar de Cheatsheet.
De bal
Gebruik een cirkel voor de bal en laat deze bewegen.
Een goede start is bal.start_physics(obeys_gravity=False, x_speed=200).
De batjes
Gebruik een rechthoek voor een batje. Voeg ook hier fysica aan toe, maar zorg dat het batje niet uit zichzelf beweegt: batje.start_physics(obeys_gravity=False, can_move=False).
Maak er twee, zodat je tegen elkaar kunt spelen.
Batje bewegen
Gebruik @play.when_key_pressed om de batjes omhoog en omlaag te laten bewegen met de pijltjestoetsen.
Wanneer scoort een speler een punt?
Gebruik @play.when_stopped_touching_wall om te detecteren wanneer de bal de linker- of rechtermuur raakt. Met wall=play.WallSide.LEFT of wall=play.WallSide.RIGHT' kun je bepalen welke speler een punt krijgt.
Tip: bekijk 5. Gebeurtenissen bij een vorm voor meer voorbeelden.
Score & Reset
Voor de score gebruik je twee tekstobjecten: één voor de linkerspeler en één voor de rechter.
Vergeet niet global te gebruiken in de functie waarin je de score aanpast.
Als de bal een van de muren raakt, moet je een aantal dingen doen:
- Geef de juiste speler een punt.
- Reset de positie van de bal naar het midden.
- Geef de bal weer een beginsnelheid.
- Werk de scoretekst op het scherm bij.
De bal diagonaal laten bewegen
Om het spel interessanter te maken, kun je de bal ook diagonaal laten bewegen. Naast x_speed bestaat er ook y_speed. Probeer bijvoorbeeld: start_physics(obeys_gravity=False, x_speed=60, y_speed=60).
Hieronder een voorbeeld:

Mogelijke uitbreidingen
- Wanneer heeft iemand gewonnen?
- Kun je een batje door de computer laten besturen?
- Hoe maak je een startmenu?
- Power-ups: een groter batje, een snellere bal, of een tijdelijke onzichtbare bal.
- Een duidelijk scorebord.
- Versnelling: verhoog de balsnelheid na elke keer dat een batje wordt geraakt.
- Speltimer: voeg een timer toe die aftelt tot het einde van het spel.