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/
Først skal vi starte på https://scratch.mit.edu/
Tryk på “Find på” i toppen

I stedet for katten skal vi lave et rumskib.
Så gå ind på “Kostumer” fanen øverst til højre

Slet katten ved at trykke på slet

Brug nu tekst værktøjet

Tryk i midten og skriv A

Du skal sikre dig at den er helt i midten

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

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.

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

Så find en “for evigt” blok, under Kontrol (orange), og sæt den rundt om, den blå 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.

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.


Derefter trækker vi den nye variabel “fart” ind i stedet for “10” 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.

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

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

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.

Nu skulle dit rumskib kunne flyve frem og tilbage ved at trykke pil op og ned
Se alle blokke her:

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

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”

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

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.

Prøv nu at flyve rundt ved forsigtigt at bruge piltasterne!
Alle dine blokke burde nu se sådan her ud

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

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

Når vi har zoomet lidt ind, vælger vi vores 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.

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.

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

Så at de hedder Rumskib og Skud.

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)

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.

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

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

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

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

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

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

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

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

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

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

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

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

Prøv at skyde med dit rumskib og test om det stadig virker.
Nu skal vi lave vores asteroider
Først skal vi tegne en. Det gør vi ved at klikke på tegn ny sprite

Omdøb den gerne lige til Asteroide

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

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

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

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

Så har du en asteroide vi kan kode i næste trin
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.

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

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

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

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

og sæt ind igen

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

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.

Tjek om du nu får oprettet asteroide i hver hjørne!
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.

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

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

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

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

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

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

Test nu om spillet virker ved at asteroider flyver rundt!

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

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

Til sidst indsætter vi en slet denne klon

Prøv nu at skyde asteroiderne og se om de forsvinder!
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

Som skal have en berører Asteroide

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

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

Det burde se sådan her ud på skud

Og sådan her på asteroiden

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”

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

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

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

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

Prøv at køre spillet og skyd nogle asteroider!
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

Og så indsæt en for evigt blok

Derefter en hvis blok

Så skal vi have en berører kant blok

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

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

Tjek nu om dine asteroide flyder bedre rundt!
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!
Find “spil lyden” under Lyd

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!