Haai
- Haai
- Het begin
- Toevoegen en verwijderen van codeblokken
- Het instellen van de omgeving
- Dingen verplaatsen
- Alle sprites
- Vis op afstand bestuurbaar
- Vissen!
- Score bijhouden
- Uitdaging: het spel winnen
Haai
In deze beginners les maken we een spel met een haai!

Ga naar https://scratch.mit.edu om Scratch te openen.
En klik daar op
Aan de slagofMaak.
Dit materiaal is een bewerking van de les Haai op Raspberry Pi Projects.
Het begin
![]()
Klik op de Scratch kat in de sprite lijst. De kat is nu de huidige sprite.
Kies de
Gebeurtenissen categorie in het code blokken palet, klik op hetwanneer op ⚑ wordt geklikt blok, en sleep het naar het huidige sprite paneel.
wanneer groene vlag wordt aangeklikt
Ga nu naar
Uiterlijken bij de het code blokken en zoek dit blok:
zeg (Hallo!) (2) sec.
Klik erop, houd de muisknop ingedrukt en sleep hem naar het huidige sprite paneel en laat de knop los.
Nu het tweede blok ook in het huidige sprite paneel staat, verbind je het aan de onderkant van het eerste blok door erop te klikken en het onder het eerste blok te slepen zodat ze aan elkaar vastklikken, zoals dit:
wanneer groene vlag wordt aangeklikt
zeg (Hallo!) (2) sec.
Klik nu op de groene vlag en kijk wat er gebeurt!
Toevoegen en verwijderen van codeblokken
Geweldig! Je hebt je allereerste Scratch programma geschreven. Tijd om wat meer te leren over hoe je code in en uit Scratch kunt krijgen! Scratch code bestaat uit blokken zoals deze:

Je vindt alle blokken in het palet met codeblokken, onderverdeeld in verschillende categorieën op basis van wat ze doen.
Het verwijderen van codeblokken die je niet wilt gebruiken in je programma is eenvoudig! Sleep ze gewoon terug naar het palet met codeblokken.
Pas op: door je blok naar het codeblok paneel te slepen, worden alle blokken die onder dat blok hangen ook verwijderd. Zorg er dus voor dat de blokken die je wilt houden losgekoppeld zijn van het blok dat je wilt verwijderen. Als je per ongeluk blokken hebt verwijderd en ze terug wilt halen, klik dan met je rechtermuisknop en vervolgens op de Ongedaan maken optie om alles weer terug te krijgen. Of toets Ctrl + Z tegelijk in.

Nu je weet hoe je code kunt verplaatsen en dingen kunt laten gebeuren, is het tijd om een programma te maken waarmee de Scratch Cat in een cirkel kan lopen!
Zorg dat je de kat sprite geselecteerd hebt in de spritelijst, en sleep dan de volgende blokken in het sprite paneel en verbindt ze met elkaar. Je vindt ze in de
Gebeurtenissen enBeweging categorieën.
wanneer groene vlag wordt aangeklikt
neem (10) stappen
Klik nu op de groene vlag boven het Speelveld.
Je zou de kat in een rechte lijn moeten zien lopen… niet precies wat je wilt, toch?
Opmerking: als je te vaak op de vlag klikt en de kat loopt uit beeld, dan kun je hem terug slepen!
Zet het draai blok aan het eind zodat de kat in een rondje kan lopen. Het zit ook in de
Beweging categorie.
wanneer groene vlag wordt aangeklikt
draai (15) graden naar rechts
Dit blok zorgt ervoor dat de sprite 15 graden van de volledige 360 graden draait die een cirkel vormen.
Het instellen van de omgeving
Scratch heeft een bibliotheek met achtergronden en sprites die je kunt gebruiken om je project er geweldig uit te laten zien.
Selecteer het Speelveld.

Klik op het Kies een achtergrond icoon.

Kies dan je favoriete onderwater achtergrond!

Geweldig! Maar nu heb je natuurlijk een kat onder water, en katten zijn daar meestal geen grote fans van. Maar dat kun je oplossen, want je kunt de kat veranderen in een haai!
Selecteer eerst de kat sprite en klik op de Uiterlijken tab.

Klik dan op Kies een sprite
![]()
Selecteer deze haai afbeelding en klik op OK.

Verwijder nu de kat uiterlijken door ze stuk voor stuk te selecteren en op
xte klikken.

Nu heb je een haai - uitstekend!
Dingen verplaatsen
Op dit moment beweegt je haai in een rondje, en het zou veel gaver zijn om hem aan te sturen met de pijltjestoetsen. Hier je hoe dat moet!
Begin met het verwijderen van alle code die je hebt voor de haai.
Zoals je vast al geraden hebt, heb je de
Zoek deze keer dit blok op en sleep het naar het huidige paneel:
wanneer [spatiebalk v] is ingedrukt
Klik op de kleine pijl (▼) naast
spatiebalk. Je ziet nu een lijst met alle toetsen waaruit je kunt kiezen.
Je hebt vier van de
Om je haai te laten bewegen, verbind je deze blokken op de volgende manier aan de beweging blokken:
wanneer [pijltje links v] is ingedrukt
neem (-10) stappen
wanneer [pijltje rechts v] is ingedrukt
neem (10) stappen
wanneer [pijltje omhoog v] is ingedrukt
wanneer [pijltje omlaag v] is ingedrukt
Let op: -10 betekent ‘ga 10 stappen terug’.
Klik nu op de groene vlag om je code te testen.
Nu beweegt je haai naar voren en naar achteren, wat heel gaaf is, maar hij gaat nog niet omhoog of naar beneden. Als je kijkt bij de
Neem twee
wanneer [pijltje omhoog v] is ingedrukt
verander y met (10)
wanneer [pijltje omlaag v] is ingedrukt
verander y met (-10)
Als je nu op de pijltjestoetsen klikt, beweegt je haai over het hele speelveld!
Het spel herstarten
De haai beweegt nu over je hele scherm, maar stel je voor dat dit een spel is: hoe herstart je het dan, en wat gebeurt er aan het begin van elk spel?
De haai moet weer op zijn beginpositie komen als een speler het spel start. Ze beginnen het spel door op de groene vlag te klikken, dus je moet de x- en y-coördinaten van de haai veranderen als dat gebeurt.
Dat is best wel simpel! Het midden van het speelveld is 0 en 0 in x en y coördinaten.
Je hebt alleen een
Sleep een
wanneer op groene vlag wordt geklikt blok naar het huidige sprite paneel.
wanneer groene vlag wordt aangeklikt
Zoek dan het
ga naar beweging blok en zet het vast aan je vlag gebeurtenis blok.
wanneer groene vlag wordt aangeklikt
ga naar x (0) y (0)
Stel zowel de
xalsycoördinaten in op0in het ga naar blok als ze nog niet op0staan.
Klik nu op de groene vlag: je zou nu moeten zien dat de haai weer in het midden van het speelveld staat!
Alle sprites
Nu heb je een haai die je kunt laten bewegen met de pijltjestoetsen. Gaaf! Hoog tijd om wat vissen toe te voegen die hij kan vangen.
Klik op de Kies een sprite knop en kies een vis uit het scherm dat geopend wordt.
![]()
Als je vis een beetje groot is vergeleken met je haai, dan kun je Grootte gebruiken om beide sprites het juiste formaat te geven!
![]()
Verander het getal achter
Grootteom de sprite groter of kleiner te maken.
Geweldig! Later zul je code toevoegen om de vis zelfstandig te laten bewegen, zonder dat de speler helpt. Je speler zal de haai aansturen om te proberen de vis te vangen.
Achterstevoren?
Het ziet er een beetje gek uit om de haai achterstevoren te laten zwemmen. Net zoals jij je liever omdraait in plaats van achteruit te lopen, wil de haai zich ook omdraaien in plaats van achterstevoren te zwemmen. Gelukkig heeft Scratch hier een blok voor!
Gebruik een paar
richt naar graden blokken uit de Beweging lijst en voeg ze als volgt aan de haaicode toe:
wanneer [pijltje links v] is ingedrukt
richt naar (-90) graden
neem (10) stappen
wanneer [pijltje rechts v] is ingedrukt
richt naar (90) graden
neem (10) stappen
Verander bij het aantal stappen in de
beweging blokken de-10in10.
Als je de haai beweegt nu je de
richt naar graden blokken hebt toegevoegd, zul je iets raars zien. De haai draait niet helemaal goed!
![]()
Het probleem is dat de haai begon, zoals alle sprites doen, met de ‘helemaal rond’ draaistijl, en wat je nodig hebt is de ‘links-rechts’ stijl.
Zoek in de Beweging categorie naar het blok
maak draaistijl .
Voeg dit blok toe aan de herstartcode van de haai, en maak als volgt de draaistijl
links-rechts :
wanneer groene vlag wordt aangeklikt
maak draaistijl [links-rechts v]
ga naar x (0) y (0)
Vis op afstand bestuurbaar
Oké, hoog tijd om de vis zelfstandig te laten zwemmen. Hiervoor heb je een nieuw soort blok nodig: een
Selecteer je vis sprite.
Sleep een
wanneer groene vlag wordt aangeklikt
herhaal
neem (10) stappen
Klik nu op de groene vlag en kijk wat er gebeurt!
Tjonge, die vis botste tegen de zijkant van het Speelveld en ging véél te snel voor je haai.
Eerst moet je de vis langzamer laten gaan. Dat is vrij simpel, je moet een pauze inlassen als de vis 10 stappen genomen heeft. Er is een
wacht (1) sec.
Voeg het
wacht blok toe aan je code binnen hetherhaal blok, en verander het getal naar0.5:
wanneer groene vlag wordt aangeklikt
herhaal
neem (10) stappen
wacht (0.5) sec.
Je kunt verschillende getallen bij
De vis beweegt nu, maar je wilt ook dat hij omdraait aan de rand van het Speelveld. Ook hier is een
Zoek het
keer om aan de rand blok en zet het onder hetwacht blok.
Natuurlijk betekent dit dat je vis ondersteboven gaat zwemmen, dus heb je weer een maak draaistijl nodig.
Werk je code bij door de draaistijl van de vis
links-rechts aan het begin van de sprite code toe te voegen:
wanneer groene vlag wordt aangeklikt
herhaal
neem (10) stappen
wacht (0.5) sec.
keer om aan de rand
De vis beweegt nu vooruit en achteruit, maar alleen in een rechte lijn - de speler kan nu met de haai wel heel makkelijk de vis pakken! Je moet de vis minder voorspelbaar maken.
Je weet van een vorige stap al hoe je een sprite kunt laten draaien, dus daar begin je mee.
Voeg een
draai toe aan de zweminstructies van de vis, en klik op de groene vlag.
wanneer groene vlag wordt aangeklikt
maak draaistijl [links-rechts v]
herhaal
neem (10) stappen
draai (10) graden naar rechts
wacht (0.5) sec.
keer om aan de rand
Al beter, maar nog steeds te voorspelbaar. Het moet willekeuriger worden. Gelukkig kan Scratch willekeurig voor je uitvoeren! Je hebt een nieuw blok nodig, een
Zoek het
willekeurig getal tussen blok en sleep het in het getalvakje van de graden.
wanneer groene vlag wordt aangeklikt
maak draaistijl [links-rechts v]
herhaal
neem (10) stappen
draai (willekeurig getal tussen (1) en (10)) graden naar rechts
wacht (0.5) sec.
keer om aan de rand
Let op: je kan het laagste en hoogste getal veranderen dat gekozen moet worden, maar de standaard waarden (1 en 10) zijn zeer geschikt voor dit spel, dus je mag ze ook laten staan.
Klik op de groene vlag om de code uit te voeren!
Cool! Volgende stap: pak die vis!
Vissen!
De haai beweegt, de vis zwemt, maar ze reageren niet op elkaar: als de vis in de bek van de haai zwemt, gebeurt er niets. Hoog tijd om dat te veranderen!
Eerst moet je weten of de vis de haai aanraakt. Hiervoor heb je een
Voeg het
als...dan blok toe aan deherhaal lus van de vis sprite, onder hetkeer om aan de rand blok.
Sleep het
raak ik blok boven in het vlakje van hetals...dan blok, en klik op het kleine driehoekje om de naam van de haai sprite te selecteren. Als je die naam niet verandert hebt, zal datSprite1zijn.
wanneer groene vlag wordt aangeklikt
maak draaistijl [links-rechts v]
herhaal
neem (10) stappen
draai (willekeurig getal tussen (1) en (10)) graden naar rechts
wacht (0.5) sec.
keer om aan de rand
als <raak ik [Sprite1 v]> dan
Uiteraard heb je net een
Je kunt de vis laten verdwijnen, alsof de haai hem heeft opgegeten, door het
Zoek het
verdwijn blok inUiterlijken en zet het in hetals...dan blok:
als <raak ik [Sprite1 v]> dan
verdwijn
Als de haai nu de vis pakt, verdwijnt de vis definitief. Dat is niet zo mooi.
Zet het
verschijn blok uitUiterlijken helemaal aan het begin van de vis code, zodat je het spel kunt hervatten.
wanneer groene vlag wordt aangeklikt
verschijn
maak draaistijl [links-rechts v]
Dat is al beter, maar je wilt niet dat de speler het spel moet herstarten zodra er een vis is gevangen!
Werk je code bij in het
als...dan blok om het er zo uit te laten zien:
als <raak ik [Sprite1 v]> dan
verdwijn
wacht (1) sec.
ga naar x: (willekeurig getal tussen (-240) en (240)) y: (willekeurig getal tussen (-180) en (180))
verschijn
Als de vis verdwenen is, dan wacht hij, beweegt, en komt weer te voorschijn. Het lijkt alsof er heel veel vissen verschijnen, maar het is slechts één sprite die beweegt!
Dat is pas een spel! Maar je hebt nog geen manier om de score bij te houden, of te winnen. Ook dat kun je oplossen - in de volgende stap!
Score bijhouden
Om bij te houden hoeveel vissen de speler vangt, moet je iets hebben om de score in op te slaan, een manier om erbij op te tellen, en een manier om opnieuw te beginnen als het spel herstart wordt.
Ten eerste: de scoren opslaan!
Ga naar de
Variabelen categorie en klik opMaak een variabele.

Vul
scoreals de naam in.

De Score variabele wordt weergegeven in het speelveld.

Nu moet de variabele elke keer bijgewerkt worden als de haai een vis pakt, en opnieuw beginnen als het spel wordt herstart. Beide zijn vrij simpel om te doen:
Pak uit de
Variabelen categorie demaak [mijn variabele v] [0] enverander [mijn variabele v] met [1] blokken. Klik op de kleine pijltjes in de blokken, kiesscoreuit de lijst, en zet de blokken in je programma:
Code voor de haai
wanneer groene vlag wordt aangeklikt
maak [score v] (0)
maak draaistijl [links-rechts v]
ga naar x: (0) y: (0)
Code voor de vis
als <raak ik [Sprite1 v]> dan
verander [score v] met (1)
verdwijn
wacht (1) sec.
ga naar x: (willekeurig getal tussen (-240) en (240)) y: (willekeurig getal tussen (-180) en (180))
verschijn
Gaaf! Nu heb je zelfs een score.
Uitdaging: het spel winnen
Kies een score waarbij de speler wint, en laat iets leuks gebeuren als ze die score halen.
Laat de haai de speler feliciteren, laat een ‘Jij wint!’ sprite te voorschijn komen, of speel muziek af!