6

Giga is er weer

In de laatste les gaan we weer met Giga spelen. Ze zit dit keer niet in een doolhof, maar in een gezellig parkje, maar… is het wel echt gezellig? Ga maar snel naar Scratch Les 6. Daar staat dit spel:

week6-image1

Wandelen maar!

We gaan Giga eerst laten lopen door het level met pijltje naar links en pijltje naar rechts. Jij weet natuurlijk hoe dat moet he? Zo:

week6-image2

Als je wilt dat ze ook nog de goede kant op kijkt, kun je haar ook om laten draaien, zo:

week6-image3

Let dan wel op de goede draaistijl zoals we bij les 2 hebben uitgelegd!

Dat werkt goed, maar, Giga hapert een beetje he? Dat heb je misschien bij andere spellen ook gezien. Als je op de pijl drukt, duurt het even voor ze gaat bewegen en het is een beetje schokkerig. Je kunt haar ook wat vloeiender laten bewegen, dat gaat zo:

week6-image4

Probeer maar eens links en rechts en kijk naar het verschil. Vergeet niet de groene vlag aan te klikken!
Opdracht: Maak jij het nu af voor naar links?

Als een mesje door de boter

Zo, vloeiend twee kanten op:

week6-image5

Een spring in het veld

Opdracht: Nu willen we ook nog dat Giga gaat springen! Dat moet met de spatiebalk gebeuren. Kun jij dat maken?
Een paar tips:

  • Vergeet niet dat Giga natuurlijk ook naar beneden moet.
  • Twee blokken achter elkaar gaan heel snel. Laat haar even wachten tussendoor.

Ik denk dat je nu zoiets hebt gemaakt:

week6-image6

Dat werkt wel, maar niet zo heel mooi he? We zouden liever willen dat Giga langzaam omhoog en omlaag gaat. Opdracht: Weet jij hoe dat moet? In stapjes omhoog en omlaag dus.

Kijk, zo gaat het:

week6-image7

Op de muur

Je hebt vast al gezien dat er ook een muur in dit spelletje zit. Maar de muur is nog even onzichtbaar. Het is nu tijd om de muur te laten verschijnen!
Kilk op de week6-image8van de muur:

week6-image9

Klik nu in het vakje achter week6-image10

week6-image11
Zo, daar is de muur:

week6-image12

Opdracht: Probeer nu eens op de muur te springen. En er weer af. Lukt dat? Waarom wel of niet?

Dat gaat niet helemaal goed he? Dat komt omdat we altijd evenveel omhoog of omlaag gaan. Dat moet jij gaan veranderen.
Opdracht: Kun je Giga altijd tot de grond of muur laten vallen?
Hint: ze zijn allebei bruin 🙂

Misschien heb je dit gemaakt. Dat is al bijna goed, maar niet helemaal.

week6-image13

Ga eens op de muur staan. Beweeg nu Giga naar links of rechts, zonder te springen.
Wat gebeurt er nu? Die gekke Giga. Ze hangt in de lucht!

week6-image14

Opdracht: Hoe moeten we dat oplossen? Weet jij het?

Het gaat zo:

week6-image15

We moeten altijd vallen, niet alleen maar nadat we omhoog zijn gegaan.

Door de muur…?

Dat gaat goed, maar! Die Giga kan gewoon door de muur heen wandelen!

week6-image16

Dat willen we niet. Ze moet bij de muur stoppen en niet verder gaan. Kun jij het zo programmeren? Laat haar een geluid maken als de muur raakt.
Misschien heb je dit gemaakt:

week6-image17

Dat werkt goed tegen de muur, maar niet op de muur. Want op de muur raakt Giga de muur ook met haar voetjes! We moeten er dus nog iets bij zetten. Alleen als de hoogte van Giga niet hoger is dan de bovenkant van de muur, moeten we stoppen en een geluidje maken.

Vraag: Hoe hoog is Giga op de grond?
Vraag: Hoe hoog is Giga op de muur?

Tip: Klik week6-image46 voor Giga’s week6-image47 aan zodat je het beter kunt zien. Dus ergens daar tussen moeten we niet meer bewegen. Zo gaat dat:

week6-image18

Wat schuift dat?

Zo, dat gaat al goed! Maar, in een echt “Mariospel”, schuift het level steeds op als je naar rechts beweegt. Dat gaan we samen maken!
Klik ook eens aan dat je Giga’s week6-image19 kunt zien.

Als de week6-image19 van Giga 0 is, en ze dus in het midden van het level staat, moeten we het level opschuiven. Dan lijkt het net of ze loopt! “Het level” dat is natuurlijk de muur. Die gaat schuiven. We gaan hiervoor een signaal gebruiken.
Opdracht: Kun jij een signaal sturen als Giga de pijl naar rechts indrukt en de 0 voorbij gaat? Noem het signaal ‘schuiven maar’.
Zo:

week6-image20b

Nu moet de muur nog schuiven. Hij kan natuurlijk reageren op het signaal.
Opdracht: Laat jij de muur 5 stappen naar links nemen als het signaal ontvangen wordt?

week6-image21

Opdracht: Je volgende opdracht is om de muur steeds rond te laten gaan. Iedere keer als hij op het einde komt, zet m dan weer rechts. Weet jij hoe dat moet?

Er komt geen einde aan

Kijk, het gaat zo:

week6-image22

Giga kan nu eindeloos door het level lopen, is dat niet mooi?

Maar het is nog een beetje saai he? Zullen we er een monster bij zetten?
Kies maar een leuk beestje uit! Of iets heel anders natuurlijk. Misschien komt een ballerina jou wel achterna!

Ownee, een bug!

Ik pak een “Ladybug2”, een lieveheersbeestje. Als je het spel even speelt, zie je nu al dat het monster ook moet schuiven bij het signaal, anders ziet het er gek uit. Opdracht: Zet jij de blokjes goed? Denk eraan dat je de blokken van de ene naar de andere sprite kunt kopieren door ze op een sprite te gooien.
Zo:

week6-image23

Maarja… Giga springt nu gewoon over de bug heen. Niet echt moeilijk. We gaan maken dat hij steeds op en neer loopt, zoals een Goomba bij Mario.

Wiebel, wiebel

We doen het samen stap voor stap! We maken hiervoor een variabele. In de variabele gaan we opslaan welke kant we op moeten gaan. Maak een variabele ‘kant’. Zet de kant bij het begin van het spel op ‘links’. Zo:

week6-image24

Nu gaan we Ladybug laten bewegen. Als kant op links staat, naar links. Anders naar rechts. Opdracht: Weet jij hoe? De oplossing staat natuurlijk verder op.

Het moet zo:

week6-image25

De bug gaat mooi naar links he? Typ nu bij het begin naar eens ‘rechts’ in. Nu gaat hij naar rechts! Nu hoeven we alleen de variabele ‘kant’ nog te veranderen als Ladybug de muur of de rand raakt. Opdracht: Kun jij het voor me maken?

Opgelost!

week6-image26

Kijk, dat is een mooi duidelijk programma, vind je niet? Er is maar 1 probleem… Vraag: Weet jij wat? Laat Giga eens snel door het level rennen? Wat gaat er dan mis? Ja, die bug kan soms vastplakken in de muur!

week6-image27

We willen dat hij pas verschijnt als de muur al een eindje weg is. Pas als de muur op x = 100 is mag de bug in beeld komen. Opdracht: Kun jij het maken?

Zo, dat is beter he?

week6-image28

Een doorloper

Het monster loopt al leuk door het spel, maar… ook door Giga. Dat is niet goed. Giga moet gepakt worden. Laat de Ladybug wachten tot hij Giga aanraakt, en stuur dan een signaal: ‘giga is af’. Dat kun je natuurlijk zelf. Het gaat zo:

week6-image30

Stop! Bug time

Als ze het signaal ontvangt, is Giga af. We gaan een nieuw blok gebruiken om het hele spel te stoppen: het blok week6-image31. Het staat bij week6-image32. Laat het spel stoppen als Giga het signaal krijgt, zo:

week6-image33
Tof! Maar… nu stop het hele spel. Giga kan ook niks meer zeggen of geluidjes maken. Stoppen betekent dus niet ‘stilstaan’. Het betekent dat Giga helemaal niks meer doet. Het zou wel cool zijn als we nog iets in beeld krijgen. Dat kan natuurlijk! Met programmeren kan (bijna) alles!

Game over!

We gaan een nieuwe sprite maken: “GAME OVER”. Kijk met me mee.

week6-image34

We maken een nieuwe sprite, maar anders dan anders! We klikken niet op week6-image35 maar op week6-image36. Nu kunnen we zelf een sprite tekenen, de letters”game over”.

week6-image37

Kies daarvoor week6-image38 en klik daarna midden in het grijze vak. Dat is bij de twee gele pijl. Er staat daar ook een klein plusje.
Type nu “GAME OVER” en kies een mooie kleur onderin. Ik heb rood gekozen. Je mag natuurlijk ook iets anders schrijven, maar maak het niet te stout he?!
Klik nu ergens in het veld, en je ziet je GAME OVER staan.

week6-image39

De sprite heeft nu ‘sprite1’. Dat vinden we geen goede naam. Dan weet je toch niet wat het is? Noem de sprite dus ‘Game Over’. Dat doe je bij week6-image8. Klik daarop, dan zie je dit:

week6-image40

Typ de nieuwe naam in bij de pijl en de duw dan op week6-image41. Dat is beter he? Zet ‘Game Over’ maar neer waar je wilt. Opdracht: Nu komt jouw volgende programmeeropdracht: Laat de ‘Game over’ spite verdwijnen als het spel begint, en verschijnen als Giga af is. Zet m op!

Zo moet het:

week6-image42

Een verpletterend succes

Vind je het al een leuk spel? Het is wel jammer dat we die bug niet te grazen kunnen nemen he? Zullen we die bug eens pletten? We maken hiervoor een nieuw uiterlijk bij de bug. Kopieer uiterlijk ‘labybug-b’ door er met de stempel op te drukken. Om de bug staat nu een geel vierkantjes met kleine blokjes eraan. Je kunt de bug plat maken door het gele vierkantje te slepen:

week6-image43

Verander ook de naam in ‘geplet’ bij de gele pijl. Nu moeten we bekijken of Giga de bug van boven of van de zijkant raakt. Dat gaat net als bij de muur, we gaan hun y-posities vergelijken. We beginnen met een week6-image44 blok bij het aanraken in de code van de LadyBug, zo:

week6-image45

Vraag: Wat moet er nu in het lege droehoek blok?
Tip: Ga naar Giga en zet weer een week6-image46bij week6-image47 zodat je beter kunt zien waar Giga is. Maak jij het af?

Zo!

week6-image48

Giga zakt nu alleen door de bug heen.
Opdracht: Kun jij haar echt erop laten landen?
Tip: Kijk hoe je op de muur landt en gebruik daar een week6-image49 blok.

Zo gaat dat:

week6-image50

Is deze bug resistent?

Die platte bug blijft nu rondlopen. Dat is een beetje gek he? De bug moet dus weggaan als hij geplet is. Laat jij m verdwijnen na een tijdje? Bijvoorbeeld een halve seconde?

Opdracht: Maak jij het?
Tip: We hebben al een paar blokjes om LadyBug te laten verschijnen. Misschien kun je die wel “hergebruiken”?

Ik heb het zo gedaan. De blokken van het begin heb ik in een blok gezet “verschijn rechts”, zo:

week6-image51

Dat blok kun je twee keer gebruiken!

week6-image52

Er is alleen nog 1 ding mis… Bug blijft geplet!

Opdracht: Verander jij z’n uiterlijk?
Tip: Dat wil je ook steeds doen!

Dat kun je in het ‘verschijn rechts’ blok doen.
Dan hoef het het niet meer bovenin te doen:

week6-image53

week6-image54

Stop of ik plet!

Nog 1 ding is gek he? LadyBug blijft bewegen terwijl je ‘m plet.
Opdracht: Kun jij m laten stoppen?
Tip: Gebruik hiervoor weer week6-image55, maar zet de waarde nu op ‘geen’. Denk er ook aan dat je kant terug moet zetten van ‘geen’ naar links als de Bug verschijnt. Dat hoeft dan ook niet meer in het begin.

Dit is alle code voor de LadyBug:

week6-image57

Je kunt het natuurlijk helemaal anders maken, met punten, geluidjes of wat je maar wilt. Als je klaar bent, kun je je spel toevoegen aan de Studio. Je bent nu klaar met je training en je mag je een heuse programmeur noemen!!

Licentie

Icoon voor de Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

Scratch: Maak je eigen games Copyright © 2016 by Felienne Hermans is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License, except where otherwise noted.

Deel dit Boek