MakeCode Arcade – Schietspel Galga

MakeCode kennen we vooral voor het programmeren van de micro:bit. Er zijn echter veel meer mogelijkheden van MakeCode. Één daarvan is Arcade. Met programmeerblokjes (of Python of JavaScript) bouw je hiermee leuke games die je kan spelen op je laptop, of een meowbit of via een QR-code op je mobiel.

Ik heb de Engelse tutorial van het schietspel Galga vertaald en er een pdf van gemaakt.

Dit is de Nederlandse vertaling (met kleine aanpassingen) van de tutorial op de Makecode site.

In dit spel word je aangevallen door de vijand. Met de pijltjestoetsen kan je deze ontwijken en met op de spatiebalk kan je pijlen op de vijand afschieten. Als jij door de vijand wordt geraakt verlies je één van je drie levens. Als je de vijand raakt met één van jouw pijlen dan verdien je een punt.

Je kan dit spel spelen op je laptop, een Meowbit of op je mobiel.
Via een link of een QR-code kunnen anderen jouw spel op hun mobiel spelen.

Stap 1

Ga naar https://arcade.makecode.com/ en klik op New

Stap 2

Voeg een sprite blok toe en geef het de naam spacePlane.

Teken de spaceplane sprite. Deze hoeft er niet precies zo uit te zien als het voorbeeld. Stel de afmetingen linksonder in op 32×32

Zo kan jouw ruimteschip er uitzien:

Stap 3

Met het blokje set uit de groep Sprites zorg je er voor dat spaceplane niet uit het scherm kan vliegen.

Stap 4

Met het blokje set life to uit de groep Info stel je het aantal levens in:

Stap 5

In de groep Controller staat het blokje move waarmee de sprite kan worden bestuurd.

Stel vx en vy in op 200. Dit is de snelheid waarmee de sprite beweegt.

Stap 6

Voeg uit de groep Controller het blok on button pressed toe en zet hierin een set sprite blokje.

De pijl kan er zo uitzien:

Even proberen

In de simulator aan de linkerkant van het scherm kan je testen of het tot nu toe werkt.

Stap 7

Met het blok on game update every 500 ms uit de groep Game zorgen we er voor dat er iedere halve seconde en vijand-sprite (bogey) komt.

Zo kan de sprite bogey (vijand) eruit zien:

Stap 8

Aan de bogey sprite koppel je nu het blok set the velocity. Door vx een negatieve waarde te geven zorg je ervoor dat de aanvallers van rechts naar links gaan.

Stap 9

Met het blok set … position zorg je er voor dat de aanvallers vanaf de rechterkant (180) op een willekeurige hoogte tussen 0 en 120 verschijnen. Het blok pick random vind je in de groep Math.

Stap 10

We voegen nu een gebeurtenis (event) toe waarmee wordt gekeken of het ruimteschip door een aanvaller wordt geraakt. In de groep Sprites staat hiervoor het blok on sprite … overlaps ….

Stap 11

Met het blokje destroy (groep Sprites) zorgen we ervoor dat de aanvaller van het scherm verdwijnt.

Je moet zelf de naam otherSprite als variabele toevoegen.

  1. Klik hiervoor op het witte pijltje in het rode blokje.
  2. Klik op Rename variable …

Stap 12

De aanvaler is nu verdwenen, maar jij raakt ook één leven kwijt met het blokje change life by uit de groep Info.

Stap 13

Je wilt natuurlijk ook graag weten of de pijlen (Projectile) die je afschiet de vijand raken. Dit doe je met een nieuwe gebeurtenis (event):

Stap 14-15*

*Op deze manier komt de beschrijving overeen met de Engelstalige tutorial

Met destroy … verwijder je de aanvaller van het scherm, je kan hier nog een leuk fire-effect aan toevoegen.

Stap 16

Met change score by uit de groep Info krijg je er één punt bij.

Klaar!

Het hele programma ziet er nu zo uit. Veel plezier met het spelen.

Link naar het gebouwde spel

Het uitgewerkte project staat op https://makecode.com/_hWXaqm76bW0u

Download pdf

[wpfilebase tag=file id=105 tpl=chris /]

Kopiëren?

Dit werk valt onder een Creative Commons Naamsvermelding-NietCommercieel 4.0 Internationaal-licentie.

Je mag het dus overal voor gebruiken, zolang je er maar geen geld mee verdient of voor vraagt.