Høstspill i Scratch

Like før påsken 2021 havnet vi i hjemmeskole pga smittesituasjonen i området. Da laget jeg et påskespill som ble veldig populært hos elevene mine. Nå er det høst, og etter å ha plukket alle de ni eplene fra epletreet mitt, bestemte jeg meg for å lage et høstvariant av påskespillet.

Krav til spillet:
Fallende epler, skal fanges i en kurv som kan beveges til høyre og venstre ved hjelp av piltastene. Eplene skal ha ulike farger, der de ulike fargene gir ulik score. Og de skal dukke opp med ulike, tilfeldige tidsrom, og falle med ulik fart. En klokke skal telle ned fra 60 sekunder.

Variabler
I dette spillet skal det brukes en del variabler. Jeg ønsker at elevene skal få en forståelse av hvordan variabler fungerer i dataspill, her både til poengscore og tid.

Kompetansemål matematikk etter 5.trinn:
– lage og programmere algoritmer med bruk av variabler, vilkår og løkker

Bryte ned i små oppgaver
Spill en runde med spillet foran elevene. La dem bruke litt tid til å analysere hva som skjer. Bryt deretter spillet ned i mindre oppgaver sammen med elevene, og finn ut hva de skal begynne med. Husk at deler av koden kan kopieres og gjenbrukes flere steder.

En versjon av spillet finner du her https://scratch.mit.edu/projects/582184141

Steg 1 – Finne bakgrunn
Finn en passende bakgrunn og sett inn.

Steg 2 – Sett inn kurven og få den til å bevege seg
Fjern katten som alltid er tilstede i nye program, og hent inn kurven fra galleriet. Når brukeren trykker på venstre pilknapp skal kurven bevege seg til venstre og tilsvarende til høyre. Juster farten ved å endre x-verdien.

Steg 3 – Sette variabler for poeng og tid
Vi trenger en variabel for å registrere poengene, samt en som styrer klokken. Vi oppretter disse, og setter dem til henholdsvis 0 for poeng og 60 for tid når det grønne flagget trykkes og spillet starter. Disse variablene skal vises og gjelde for alle objekter.

Steg 4 – lage en klokke som teller ned
Vi lager nå en klokke som teller ned fra 60 til null. Dette gjør vi ved å lage en løkke, som venter et sekund for hver runde. Når den kommer til null, skal den stoppe alle skript i programmet.

Denne koden kan kobles på nullstilling av variabler. Test ved å trykke på det grønne flagget og se til at klokken teller nedover.

Steg 5 – få et eple til å falle
Vi skal arbeide med et og et eple. Derfor henter vi kun inn et eple fra galleriet, og legger kode på det. Deretter gjenbruker vi koden på de andre.

Når programmet starter (det grønne flagget) skal den skjule eplet, og deretter ved tilfeldig tid lage en klone av eplet som faller mot bakken.

Når eplet nå dannes som klon, skal det vises helt oppe i bildet. X-verdien skal være tilfeldig, mens y-verdien er fast. Deretter skal det falle mot bakken. Det faller ved endring av y-verdien. Jo høyere negativ y-verdi, jo raskere vil det falle til bakken.

Eplet skal så falle helt til det berører kurven eller bakken. Da skal klonen slettes. Treffer det kurven, skal det gis et poeng.

Steg 6 – testing
Håper du har testet programmet ditt underveis, og sett at de ulike delene fungerer. Nå er det på tide å se til at programmet så langt fungerer.
– Teller klokken ned
– Faller eplene jevnt og med ujevnt mellomrom
– Forsvinner eplene de når de skal
– Får du poeng når du fanger eplene

Steg 7 – et nytt eple med annen farge
Vi skal nå få epler med en annen farge til å falle. For å spare tid lager vi en kopi av det det røde eplet vi laget i sted. Da blir koden tatt med og vi må bare inn og gjøre nødvendige endringer.

Følgende endringer må gjøres:
– endre farge på eplet til grønt
– tilpass tilfeldig tall det skal ventes før et nytt eple dukker opp
– endre antall poeng du får på grønt eple
– få eplet til å falle litt fortere enn det røde

Foreta samme testing som for det røde eplet.

Steg 8 – enda et eple med annen farge
Vi trenger et tredje eple med en annen farge, denne gangen gult. Vi bruker samme teknikk som på det grønne ved å kopiere det røde eplet, før vi går inn og gjør nødvendige endringer.

Følgende endringer må gjøres:
– endre farge på eplet til gult
– tilpass tilfeldige tall det skal ventes før et nytt eple dukker opp
– endre antall poeng du får på et gult eple (kanskje minuspoeng?)
– få eplet til å falle saktere enn det røde

Foreta samme testing som for det røde og grønne eplet.

Steg 9 – telle opp antall fangede frukter
Vi skal legge til et ekstra element som teller opp antall fangede frukter. Til det trenger vi en variabel som vi kaller antall. Den nullstilles sammen med de andre variablene.

I koden hvor eplene fanges av kurven, skal det telles opp med en for hver gang et eple fanges.

Steg 10 – ti frukter gir en gullmynt
For å gjøre det enda litt mer spennende, så skal du få en gullmynt for hvert 10 eple som fanges, uansett farge. Finn en gullmynt-clipart på nettet, eller lag en selv i tegneprogrammet.

Skjul mynten når programmet starter. Legg inn en «gjenta for alltid» blokk, som kontrollerer for når antallet epler fanget overstiger 10. Da skal den lage en klon av mynten.

Siden det er mulig å fange mer enn 10 epler, må variabelen antall nullstilles når den har laget klonen. Vi må også passe på at den ikke legger myntene oppå hverandre. Derfor har jeg laget en variabel y- som styrer dette. Y-verdien må endres for hver gang det lages en klon.

Når klonen skal vises, velg et sted å plassere den, og finn en passende lyd til visningen.

Steg 11 – test spillet
Det er tid for å teste spillet. Fungerer alle elementene? Faller eplene med ulike fart? Får du ulike poeng avhengig av fargen? Får du mynter når du har fanget 10 epler? Mye som skal fungere og henge sammen.

Utvidelser
Her er muligheter for mange utvidelser, og her er noen som elevene kan prøve seg på:

  • få kurven til å se ut som om den har epler etter hvert som den får epler
  • fjern eplene fra kurven når du får 10 epler, altså en gullmynt
  • legg inn et lilla eple, som bare kommer veldig sjelden. Det lilla eplet skal gi 10 sekunder ekstra tid
  • legg inn helsemåler. Begynn med 100%. Når du plukker epler av ulik farge, skal helsen gå ulikt ned
  • legg inn kode som gir deg 5 poeng for hver gullmynt

Lykke til. Her er eksempel på prosjektet: https://scratch.mit.edu/projects/582184141

Legg igjen en kommentar

Fyll inn i feltene under, eller klikk på et ikon for å logge inn:

WordPress.com-logo

Du kommenterer med bruk av din WordPress.com konto. Logg ut /  Endre )

Google-bilde

Du kommenterer med bruk av din Google konto. Logg ut /  Endre )

Twitter-bilde

Du kommenterer med bruk av din Twitter konto. Logg ut /  Endre )

Facebookbilde

Du kommenterer med bruk av din Facebook konto. Logg ut /  Endre )

Kobler til %s

Blogg på WordPress.com.

opp ↑

%d bloggere liker dette: