Hoppehelt
Skrevet av: Geir Arne Hjelle
Introduksjon
Hoppehelt er litt inspirert av musikkspillet Guitar Hero. I Hoppehelt skal man kontrollere flere helter samtidig mens de hopper over fargede bokser som lager lyd. Gjennom spillet Hoppehelt vil vi se litt nærmere på hvordan kloner brukes når man programmerer i Scratch. Vi vil til og med se eksempler på kloner av kloner!
Steg 1: Streken
Vi begynner spillet vårt ved å lage en veldig enkel bakgrunn.
Sjekkliste
-
når @greenFlag klikkes send melding [Nytt spill v]
Steg 2: En hoppende helt
Nå skal vi introdusere hoppehelten.
Sjekkliste
-
Du kan senere lage flere drakter slik at spillet ser bedre ut, men vi vil ikke bruke tid på det nå.
-
Vi vil bruke
sprett
-variabelen til å beskrive heltens bevegelse når han hopper. -
når jeg mottar [Nytt spill v] gå til x: (210) y: (-120) gjenta for alltid endre [sprett v] med (-1) hvis <berører fargen [#00cc00] ?> neste drakt sett [sprett v] til [0] slutt endre y med (sprett) slutt
Sett fargen i
berører fargen
-klossen til samme farge som streken du tegnet på bakgrunnen i Steg 1.
Test prosjektet
Klikk på det grønne flagget.
Steg 3: Bokser med lyd
Vi skal nå lage noen bokser som helten kan hoppe over.
Sjekkliste
Test prosjektet
Klikk på det grønne flagget.
Sjekkliste
-
Prøv spillet ditt igjen. Hva skjer nå om helten springer inn i en boks?
-
spill tone (60) i (0.5) takter
kloss etter løkken som flytter boksen, men før klonen slettes. Bruk gjerne
velg instrument
-klossen til å velge et passende instrument før spillet starter.
Prøv selv
Før vi går videre skal vi se på et par måter vi kan gjøre hver enkelt boks litt spesiell og forskjellig fra de andre på. Prøv å eksperimentere med disse og de andre innstillingene i spillet ditt.
Helt først i skriptet hvor boksen starter som klon, før den vises, kan du prøve noe av det følgende. Du kan endre størrelsen på boksen tilfeldig, for eksempel med klossen
sett størrelse til (tilfeldig tall fra (30) til (100)) %
På samme måte kan du bruke
sett [farge v] effekt til (tilfeldig tall fra (-100) til (100))
til å endre fargen på boksene tilfeldig. Finn også på andre effekter, kanskje ved å bruke flere drakter?
Vi kan også gjøre lydene som kommer når vi har hoppet over boksene inviduelle. Prøv for eksempel å la lengden av tonen være avhengig av størrelsen på boksen.
Prøv tilslutt å endre på hvor ofte det dukker opp nye bokser. Bruk gjerne en
tilfeldig tall fra (1.2) til (3.2)
kloss. Eksperimenter med verdiene i klossen.
Steg 4: Flere streker og bokser
Nå skal vi gjøre spillet ganske mye vanskeligere ved å lage tre rader med bokser.
Sjekkliste
-
Riv løs begge disse to løkkene og legg dem til side. Vi skal bruke dem igjen straks, så ikke slett noe.
-
når jeg mottar [Nytt spill v] gå til x: (-239) y: (-161) sett [er generator v] til [ja] skjul gjenta (3) ganger lag klon av [meg v] endre y med (110) slutt
Bruk den samme utgangsposisjonen som tidligere. Dette vil lage tre generator-kloner med forskjellige y-verdier.
-
når jeg starter som klon hvis <(er generator) = [ja]> sett [er generator v] til [nei] ellers slutt
Prøv spillet ditt. Du skal nå ha tre rader med bokser som flyttes over skjermen.
Test prosjektet
Klikk på det grønne flagget.
Steg 5: Hvor er alle heltene?
Vi skal nå lage de siste to hoppeheltene!
Sjekkliste
-
Endre y-posisjonen i
gå til
-klossen med 110.Endre
m
tilk
itast trykket
-testen.
Prøv spillet ditt igjen. Har du nå to hoppehelter? Virker de som de skal?
Test prosjektet
Klikk på det grønne flagget.
Prøv selv
Oppgaven slutter her, men det er jo fortsatt mange spennende ting du kan gjøre med spillet ditt for å gjøre det enda bedre.
Prøv for eksempel å legge til poeng ved å lage en Poeng
-variabel som du øker hver gang en boks har blitt hoppet over. Du kan også øke hastigheten etterhvert som spillet går.
Prøv å gjøre tonen som spilles avhengig av y-posisjonen til boksen. Dette er litt vanskelig, men blir veldig kult da det høres ut hoppeheltene spiller en liten sang ved å hoppe over boksene.
Forbedre denne siden
Funnet en feil? Kunne noe vært bedre?
Hvis ja, vennligst gi oss tilbakemelding ved å lage en sak på Github eller fiks feilen selv om du kan. Vi er takknemlige for enhver tilbakemelding!