Begynder Scratch Spil Blokprogrammering

Asteroids

Vi laver asteroids, et spil hvor man flyver et rumskib og skyder og undgår asteroider i rummet.

Hvis du ikke har prøvet det før, så gå ind på https://freeasteroids.org/


Start

Først skal vi starte på https://scratch.mit.edu/

Tryk på “Find på” i toppen

Find på knappen

I stedet for katten skal vi lave et rumskib.

Så gå ind på “Kostumer” fanen øverst til højre

Kostumer fanen

Slet katten ved at trykke på slet

Slet knappen

Brug nu tekst værktøjet

Tekst værktøjet

Tryk i midten og skriv A

A i midten

Du skal sikre dig at den er helt i midten

A helt i midten

Sidst skal du rotere den så den peger mod højre. Det er vores fremad.

A peger mod højre


Næste

Nu skal vi tilbage til kode fanen for vores rumskib.

Find en “når der klikkes på start” blok, under Hændelser (gul), og sæt den ind i kodevinduet.

Start blok

Derefter find en “gå trin” blok, under Bevægelse (blå), og sæt din ind under, så de klikker sammen.

Gå trin blok

Så find en “for evigt” blok, under Kontrol (orange), og sæt den rundt om, den blå blok

For evigt blok

Hvis du starter spillet nu ved at trykke på det grønne flag så flyver dit skib fremad.

Lad os hellere kunne nulstille skibet når vi starter igen.

Så tag en “gå til x” blok, sæt den ind i toppen, og skriv 0 og 0 i de hvide felter.

Gå til, for evigt og gå trin blokke

Nu kan du se den flyve frem hver gang du trykker start.

Men vi vil gerne selv kunne indstille farten løbende i spillet.

Så vi går ind under Variabler og laver en ny variabel som vi giver navnet fart.

Lav en variabel

Variabel form

Derefter trækker vi den nye variabel “fart” ind i stedet for “10” i trin blokken

Fart erstatter 0  i trin blokken

Så skal vi under Hændelser have fat i “når du trykker på mellemrum” blokken, og sætter den ind i kodevinduet.

Derefter skal vi ændre så det er pil opad i stedet for mellemrum der aktiverer blokken.

Når du trykker på pil opad

Så skal vi have fat i “ændre fart med 1” blokken under Variabler og sætter ind under pil opad blokken

ændre fart blok under pil opad

Du kan nu sætte din fart op ved at trykke på pil op på tastaturet!

Vi skal så sørge for at vi nulstiller farten når spillet starter

nulstil fart på start

Og til sidst skal vi også lige kunne sænke vores fart.

Det gør vi ved at kopiere eller gentage de blokke for at øge farten. Vi bruger bare pil nedad og -1.

Sænk fart blokke

Nu skulle dit rumskib kunne flyve frem og tilbage ved at trykke pil op og ned

Se alle blokke her:

Alle blokke


Tilbage Næste

Nu skal vi have rumskibet til også at kunne dreje

Under bevægelse findes der en drej blok, den sætter vi ind i bunden af vores for evigt løkke

Drej i bunden af for evigt

Du kan nu se skibet dreje rundt hele tiden

Men vi også gerne kunne styre dette. Så vi skal have lavet en variabel mere, der skal hedde “drejefart”

Ny drejefart variabel

Det skal vi så også nulstille, og bruge i stedet for tallet i dreje blokken

Nulstil og dreje variabel ændringer

Så skal vi også lave nogle blokke til når vi trykker på højre og venstre pil, at vi så sætter drejefartvariablen op eller ned.

Blokke til at indstille drejefart

Prøv nu at flyve rundt ved forsigtigt at bruge piltasterne!

Alle dine blokke burde nu se sådan her ud

Alle blokkene


Tilbage Næste

Nu vil vi gerne lave skud til rumskibet. Først skal vi lige tegne et.

Så vi går kigger nederst til højre og klikker på kat ikonet og så Tegn for at lave et nyt sprite, som skal være vores skud

Tegn nyt sprite

Zoom så ind ved at trykke nederst til højre på lup ikonet med +

Zoom ind knap

Når vi har zoomet lidt ind, vælger vi vores pensel værktøj

Pensel værktøj

Så vil vi gerne have en anden farve, jeg vælger en lyseblå farve i Fyld. Du kan også vælge pink.

Lyseblå farve

Derefter trykker jeg ovenpå midter ikonet så jeg er sikker på at mit runde skud er i midten. Det er vigtigt når den skal bevæge sig.

Blå cirkel i midten

Til sidst omdøber vi lige rumskibets og skuddets sprites. Så bliver det nemmere at læse.

Så vi ændrer navnet i “Sprite” feltet på begge

Gamle navne

Så at de hedder Rumskib og Skud.

Nye navne


Tilbage Næste

Nu vil vi gerne gøre så skud bevæger sig

Så vi skal sikre os vi er på kode fanen for Skud

Her skal vi bruge “når jeg starter som klon” fra Kontrol (orange)

Når jeg starter som klon blok

Så skal vi sætte skuddet til at starte ovenpå rumskibet.

Det gør vi ved at bruge “gå til (tilfældig position)” blokken, og sætte værdien til rumskib.

Gå til rumskib blok

Så skal vi få den til at pege i samme retning som rumskibet så den kan flyve den vej

Så vi bruger “peg i retning” blokken, fra Bevægelse

Peg i retning blok

Men vi skal også finde rumskibets retning. Det gør vi ved at finde “[baggrund] af (Scene)” blokken, og vælge rumskib i stedet for Scene

Baggrund af scene blok

Derefter vælger vi retning i den anden boks, og sætter den ind i “peg i retning”

Retning indsat i blokken

Så skal vi bruge en for evigt og gå 10 trin blok og sætte under

For evigt gå frem

Nu skal vi indsætte en “hvis blok” fra kontrol så vi kan gøre noget ved skud der ryger ud af banen

hvis blok

Vi skal så finde en 6 kantet blok i registrering der hedder “berører (musepil)” og indsætte den i hvis blokken.

Registrer berører blok

Den skal så have værdien “kant”, så den aktiver hvis blokken når den rører kanten

berører kant blok

Så skal vi finde “slet denne klon” og indsætte den i midten af hvis blokken

slet denne klon blok

For at oprette disse kloner skal vi gå over på rumskib.

Det er vigtigt du går over på rumskibet og sætter koden på den!

Her bruger vi en “når du trykker på mellemrum” blok, og så skal vi finde “opret en klon af (mig selv), men ændre det til skud

Opret klon af skud når tryk på mellemrum

For at bestemme hvor hurtigt den skyder, indsætter vi så en “vent (1) sekunder” blok, og ændrer værdien

Skyd med vent sekunder

Prøve at skyde for at se om det virker!

Til sidst kan du skjule den orignale skud ved at trykke på Skud sprite og skjul visningen

Skjul skud sprite

Og finde vis blok, så vi viser klonen, ved at indsætte det under “når jeg starter som klon”.

Vis klon

Prøv at skyde med dit rumskib og test om det stadig virker.


Tilbage Næste

Nu skal vi lave vores asteroider

Først skal vi tegne en. Det gør vi ved at klikke på tegn ny sprite

Tegn ny sprite

Omdøb den gerne lige til Asteroide

Omdøb til asteroide

Så vælger vi linje værktøjet

Vælg linje værktøj

Så laver vi en form med takker. Du må selv bestemme hvordan din asteroide ser ud.

Form med takker

Så vælger vi Fyld værktøjet

Fyld værktøjet

Vælg eventuelt en fyldefarve og tryk i midten af formen for at fylde farven.

Fyldt asteroide med farve

Så har du en asteroide vi kan kode i næste trin


Tilbage Næste

Vi vil gerne have at mange asteroider “spawner” i spillet

Start med at åbne kodefanen på asteroiden, og find en når der klikkes på start blok.

Når der klikkes på start

Så skal vi finde en for evigt blok og sætte ind

Indsæt for evigt

Derefter en gå til blok, og skriv 250 og 250 for at den skal flytte sig til øverste højre hjørne

Gå til hjørne

Så skal vi bruge opret en klon af mig selv blokken

Opret en klon af mig selv

Så vil vi gentage det her 3 gange mere, brug evt. højreklik og kopier

Højreklik kopier

og sæt ind igen

Sæt ind

gentag så vi har det 4 gange. Og skriv forskellige X og Y værdier ligesom på billeder.

250, 250 er øverst til højre

-250, 250 er øverst til venstre

-250, -250 er nederst til venstre

250, -250 er nederst til højre

4 gange blokkene

Til sidste vil vi have en vent 1 sekund, imellem hver gang vi skal vente imellem af oprette asteroider. Sæt det til 2 eller mere.

vent til sidst

Tjek om du nu får oprettet asteroide i hver hjørne!


Tilbage Næste

Nu skal vi have asteroiderne til at bevæge sig.

Ved siden af vores “når der klikkes på” kæmpe blok, så laver vi en når jeg starter som klon blok.

Ny starter som klon blok

Så vil vi gerne have den venter når den starter, i 0.1 sekunder

Vent 0.1 sekund på start

Derefter vil vi gerne sørge for at den er vist.

Vis på start

På samme tid vil vi lige skjule den originale på start

Skjul originalen på start

Så vil vi gerne have at den peger en tilfældig retning, så start med en peg i retning blok

Peg i retning

Og så indsæt en vælg et tilfældig tal, og sæt det mellem 1 og 360

Tilfældig retning

Så skal den også gå fremad ved at bruge for evigt med gå 1 trin blokkene

For evigt gå 1 trin

Test nu om spillet virker ved at asteroider flyver rundt!

Asteroider flyver rundt


Tilbage Næste

Så vil vi gerne kunne smadre asteroiderne ved at ramme dem med skud.

Det gør vi ved at indsætte en hvis blok i bunden af for evigt på asteroidens klon blokke

Hvis blok

Derefter finder vi en berører (musepil) blok, sætter den til Skud, og indsætter i hvis blokkens 6 kantshul

Berører skud

Til sidst indsætter vi en slet denne klon

Slet denne klon

Prøv nu at skyde asteroiderne og se om de forsvinder!


Tilbage Næste

Nu mangler vi at kunne tabe i spillet når vi bliver ramt af en asteroide

Så vi skal over i Rumskibets kode

Her indsætter vi en hvis blok

Hvis blok

Som skal have en berører Asteroide

Berører asteroide

Og hvis det er sandt, så skal den aktivere den stop alle blokken

Stop alle


Tilbage Næste

Du burde nu have et spilbart spil, selvom der stadig er tilføjelser at lave

Din kode burde se sådan her ud på rumskibet

rumskib kode

Det burde se sådan her ud på skud

skud kode

Og sådan her på asteroiden

asteroide kode


Tilbage Næste

I stedet for at asteroiderne går i stykker med det samme, kan de gå i stykker først i stedet.

Så gå ind på asteroidekoden

Her skal vi bruge en ændre størrelse blok fra udseende, og sætte de til minus 40, og sætte den under “hvis berører skud”

ændre størrelse

Så skal vi sætte en hvis blok ind imellem ændre størrelse og slet denne klon

hvis blok imellem

Derefter skal du finde en “større end” blok under operatorer og sætte ind i hvis blokkens sekskant

hvis blok med større end

Så under udseende kan du finde “størrelse” som angiver asteroidens nuværende størrelse.

Den sætter du ind til venstre, og så skriver du 40 til højre

størrelse over 40

Til sidst så indsætter du 2 opret en klon af mig selv inde i hvis blokken

opret kloner af mig selv

Prøv at køre spillet og skyd nogle asteroider!


Tilbage Næste

Måske har du lagt mærke til at mange asteroide ligger i kanten og ikke kommer ud

Hvad med at vi laver noget kode der får dem til at skifte retning!

Under asteroider, lav en ny Når jeg starter som klon blok

asteroide klon

Og så indsæt en for evigt blok

for evigt blok

Derefter en hvis blok

hvis blok

Så skal vi have en berører kant blok

berører kant

Så tag peg i retning og kopier din tidligere vælg tilfældig!

vælg tilfældig retning

Til sidst så vent i 5 sekunder i toppen af for evigt blokken

vent 5 sekunder

Tjek nu om dine asteroide flyder bedre rundt!


Tilbage Næste

Har du tænkt på at lave point?

Så overvej at lave en variabel til point.

Find det sted hvor Skud rammer en Asteroiden og sletter den, og så ændre point med 1 før du sletter.

Prøv selv!


Tilbage Næste

Find “spil lyden” under Lyd

spil lyden

Prøv at vælge optag, og lav eller find en lyd der skal være når man dør.

Sæt den ind der hvor man taber!

Gør det samme for når du skyder, eller når du rammer en asteroide!


Tilbage
login