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!