Introduksjon til blokker i grunnen

I den siste delen av denne serien så vi på eiendeler i Scratch-backdrops, sprites, kostymer og lyd. Etter å ha opprettet noen eiendeler, må du få dem til å gjøre noe, noe som er hvor blokker kommer inn.

Blokker er linjer eller blokker med kode som du drar inn i prosjektet ditt for å lage et skript. Hver aktiv kan ha mer enn ett skript knyttet til det, og hvert skript kan ha så mange blokker som du trenger. 

Når du blir mer erfaren med Scratch og begynner å bygge mer komplekse prosjekter, finner du at skriptene dine kan bli ganske lange og komplekse, så det er viktig å finne den mest effektive måten å lage skript og de mest effektive blokkene på. Dette er en god ferdighet å lære om du bruker Scratch som utgangspunkt for å lære deg selv eller andre hvordan du skal kode, som å skrive ryddig, effektiv kode er viktig.

Senere i denne serien vil jeg dekke hver blokkblokk mer detaljert og demonstrere bruken av dem via prosjekter, men i dette innlegget gir jeg deg en rask oversikt over de forskjellige blokkblokkene og hva du kan gjøre med dem.

Bruke blokker i grunnen

Hvis du vil bruke en blokk, velger du bare aktiva den gjelder, og drar den deretter på skjermpanelet.

I skjermbildet nedenfor kan du se prosjektet jeg opprettet i den siste delen. Dette prosjektet har noen sprites, men ingen skript ennå. 

For å begynne å lage et skript, klikk på aktivaen du vil at den skal gjelde for (enten scenen eller et sprite), og dra deretter de relevante blokkene inn i skriptpanelet til høyre. Hvis du vil legge til flere blokker i et skript, drar du nye blokker inn i stedet i skriptet der du vil at de skal vises. Du kan legge til nye blokker over eller under eksisterende blokker.

For å legge til flere skript, bare dra en ny blokk i skriptruten, men vekk fra eksisterende skript (er).

For å fjerne en blokk fra et skript, bare dra det til venstre, vekk fra skriptpanelet. Merk at du bare kan gjøre dette for bunnblokken i et skript eller en blokk som er egen: Hvis du drar en blokk unna skriptruten som har andre blokker festet under den, vil alle blokkene under den bli slettet også . Hvis du vil gjøre dette, velg blokken umiddelbart under den du vil slette, og dra den bort fra skriptet. Dra deretter blokken du vil slette (dvs. den nederste) bort fra skriptruten, og dra blokkene du flyttet bort igjen på plass.

Du kan også slette blokker ved hjelp av snarveismenyen, som du får tilgang til ved å høyreklikke på en blokk. Det samme gjelder som med å trekke blokker unna: Hvis du sletter en blokk som har andre blokker under den, slettes disse blokkene også.

Du kan også bruke snarveismenyen til å legge til kommentarer i skriptene dine, duplisere dem eller få hjelp på blokken du har høyreklikket på.

Typer blokk i grunnen

Scratch gir deg ti kategorier av blokker, som hver inneholder et antall blokker du kan bruke til å gjøre lignende jobber. Disse er:

  • Bevegelse
  • Utseende
  • Lyd
  • Penn
  • Data
  • arrangementer
  • Styre
  • sensing
  • Operatør
  • Brukeropprettede blokker (eller Flere blokker)

La oss ta en titt på hva hver av disse kategoriene inneholder.

Bevegelsesblokker

Bevegelse blokker er det du bruker til å plassere sprites på scenen eller flytte dem. De er mørkblå. Du kan bare bruke bevegelsesklokker med sprites, ikke med scenen.

Bevegelsesblokker inkluderer følgende typer bevegelser:

  • Flytter sprites.
  • Slår sprites.
  • Å lage sprites peker i en bestemt retning eller mot hverandre.
  • Gjør sprites flytte til et gitt punkt på scenen, til en annen sprite eller musepekeren. Denne bevegelsen kan være øyeblikkelig ved hjelp av gå til blokker eller gradvis ved hjelp av glid blokkere.
  • Endre x- og y-koordinatene til sprite på scenen, enten ved å endre den fra den nåværende verdien (endre x / y av) eller ved å sette det til et fast beløp (sett x / y til).
  • Gjør spriteen sprette hvis den treffer kanten av scenen.
  • Endre stilen som en sprite roterer.
  • Angi en sprite s x eller y koordinater eller retningen der den er på reise for å bli vist på scenen.

Disse høres veldig enkelt, men de er grunnlaget for mange spill og animasjoner. Vi bruker bevegelsesblokker i et eksempelprosjekt senere i denne serien.

Ser Blokker

Utseende Blokkene er fargede lilla, og de kontrollerer hva dine sprites og bakteppe ser ut, hvor store de er, og om de vises foran eller bak andre eiendeler. Ser blokker inneholder også blokker som lar deg vise tekst.

Ser blokker kan brukes med sprites og bakteppe, selv om det er noen som bare gjelder sprites. Hovedtyper av Looks blokk er:

  • Blokker for visning av tekst, enten for en fast periode eller for ubestemt tid. De si blokker vil vise tekst i en taleboble, mens synes at blokker vil vise det i en tankeboble. Du kan kombinere dette med andre blokker som data- eller sensorblokker for å vise verdiene lagret av disse blokkene i stedet for statisk tekst. Du kan bare bruke disse blokkene med sprites.
  • Blokker for å vise eller gjemme sprites, som du ikke kan bruke med scenen.
  • Blokker for bytte av kostymer (sprites) eller bakgrunner (scene). I hvert tilfelle kan du bytte til en definert kostyme eller bakteppe, eller til neste kostyme eller bakteppe. Dette kan kombineres med en sløyfe når du vil gjentatte ganger bytte kostymer eller bakgrunner, og sparer å legge masse og mange blokker.
  • Blokker for å endre fargeeffekter eller fjerne dem. Du kan enten endre fargen med en verdi eller sette den til en fast verdi. Bruk disse blokkene med sprites eller bakgrunner.
  • Blokker for å endre størrelsen på sprites, nyttig for å zoome inn i effekt. Du kan endre størrelsen til et fast beløp eller med en prosentandel. Du kan ikke bruke disse blokkene med scenen.
  • Blokker for å flytte sprites (ikke scenen, som alltid er på baksiden) bakover eller fremover, ved hjelp av lag. Bruk disse til å skape en effekt av ting som beveger seg mot betrakteren, kanskje kombinert med størrelsesblokker.
  • Blokker for å vise kostymnummer, bakgrunnsnavn og / eller størrelse på et sprite på scenen.

Utsiktsblokkene er veldig nyttige for å skape animerte effekter, og kan brukes til å skape noen kraftige effekter når de kombineres med kontroll- og hendelsesblokker.

Lydblokker

Det neste settet med blokker er den rosa Lyd blokker. Hvis du lærer en gruppe barn å kode med Scratch, finner du snart at disse er veldig populære!

 Blokkene kommer under disse kategoriene:

  • Blokkerer for å spille eller stoppe lyder, inkludert lyd fra biblioteket og de som du laster opp eller tar opp.
  • Blokker for å spille trommelyder og notater for et spesifikt antall beats, eller å hvile for en rekke beats.
  • Blokker for å endre eller angi volum eller tempo og vise dem på scenen.

Bruke lydblokker legger til en annen dimensjon i animasjonene og spillene dine og kan bidra til å forbedre brukeropplevelsen, for eksempel hvis du legger til lydeffekter som samsvarer med hendelser i et spill.

Penneblokker

Du kan bruke den grønne Penn blokker for å lage interaktive spill hvor brukeren kan tegne på scenen. Kombiner pennblokker med hendelses- og kontrollblokker for å lage interaktive tegneapplikasjoner, enten alene eller som en del av et spill. Du kan også bruke noen av blokkene på andre måter, for eksempel ved hjelp av klar blokkere for å fjerne skjermen når du flytter opp et nivå i et spill.

Penneblokker inkluderer:

  • Blokker for å rydde scenen.
  • Blokker for å flytte pennen ned og opp slik at den vil eller vil ikke trekke på scenen.
  • Blokker for innstilling og endring av pennens farge, skygge og størrelse.

Du ser hvordan du bruker pennblokker i et arbeidet eksempel senere i denne serien. Merk at bare klar blokk kan brukes med scenen: resten er kun for sprites.

Datablokker

Datablokk kan du lage og manipulere data i animasjoner og spill. Du kan opprette to typer data: variabler og lister. Disse kan brukes med sprites og med scenen.

variabler la deg definere verdier for en variabel og deretter bruke den i prosjektet ditt. De er gode for timing spill eller å holde poeng, eller for å definere hvor mange ganger en løkke må løpe. Datablokkene kommer i oransje for variabler og en oransjebrun for lister. 

Når du har opprettet en variabel, ser du et antall variabler blokker:

  • Blokker for å sette verdien av variabelen og endre den.
  • Blokker for å vise og gjemme variabelen.

lister kan brukes til å lagre og manipulere grupperte eller relaterte data.

Når du har opprettet en liste, vil et antall blokker være tilgjengelige for deg:

  • Blokkerer for å legge til, sette inn eller slette verdier i listen, enten som ekstra elementer eller erstatte eksisterende elementer.
  • Data blokker relatert til lengden på listen eller til et gitt element i det, som du deretter kan bruke med andre blokker som operatørblokker.
  • Blokker for å vise og skjule listen din.

Datablokkene tar Scratch til et mer avansert nivå som ligner på mange programmeringsspråk og betyr at prosjektene dine kan reagere på hendelser og brukerinnganger på mange forskjellige måter. De kan brukes med sprites og scenen.

Hendelser Blokker

Den brune arrangementer blokker er grunnleggende for Scratch som uten dem, ingenting vil skje. Hvert skript vil ha en begivenhet ved starten som forteller at skriptet skal løpe. Dette kan være at det grønne flagget klikkes for å starte prosjektet, eller det kan være en hendelse som utløses mens prosjektet kjører. Bruk alle hendelsesblokkene med scenen eller dine sprites: navnet på noen av dem vil endres litt avhengig av hvilken du jobber med.

Hendelsesblokker inkluderer:

  • Alt er viktig når det grønne flagget klikket blokkere som starter alt av. Du kan bruke dette med flere skript i prosjektet.
  • Blokker for andre brukerinteraksjoner, for eksempel en tast som blir trykket eller scenen eller et sprite blir klikket.
  • Hendelser som utløses av bakgrunnen eller en kostymeendring (som er tilgjengelig, avhenger av om skriptet gjelder for scenen eller et sprite). En blokk for å svare på endringer i volum, bevegelse eller timer.
  • Blokker relatert til meldinger: Du kan få en melding til å sende en melding når noe skjer med det, og deretter få en annen melding til å svare på meldingen med en hendelsesblokk. Disse meldingene vises ikke på skjermen: de er interne meldinger i koden. 

Hendelser er nyttige for å lage skript, både når et prosjekt lanseres og mens det kjører.

Kontrollblokker

Styre blokker lar deg kontrollere blokkene i skriptene dine, setter inn betingede setninger, sløyfer, repeter og pauser. De kan gjøre koden mye mer effektiv, og kan være veldig kraftig når kombinert med variabler og / eller operatører.

Kontrollblokker inkluderer:

  • Blokker for pauser: enten venter på en angitt periode eller venter til noe skjer eller brukeren gjør noe.
  • Betingede blokker: vikle disse rundt et sett med blokker for å få noe til å skje hvis en tilstand er oppfylt.
  • Loops: Gjenta et sett med blokker et gitt antall ganger, for alltid, eller til noe skjer eller en tilstand er oppfylt.
  • En blokk for å stoppe alle løkkene.
  • Blokker for å lage og bruke kloner: disse lar deg kopiere en sprite og bruke den gjentatte ganger. Dette er de eneste kontrollblokkene som ikke kan brukes med scenen.

Kontrollblokker er gode for å legge til interaktivitet for prosjektet ditt, så vel som for å skrive mer effektiv kode, en nyttig ting å lære!

Sensing Blocks

sensing blokkene er farget lyseblå. De lar deg identifisere hva som skjer på et gitt punkt og gjøre dine sprites eller bakgrunnsrespons.

Sensing blokker inkluderer:

  • Blokker for å oppdage om elementer (inkludert spidder og farger) berører hverandre eller i en gitt avstand fra hverandre. Du kan bare bruke disse med sprites, ikke scenen.
  • Blokker for å spørre brukeren et spørsmål - du kan da bruke svaret i betingede blokker, for eksempel.
  • Blokker for å oppdage tastetrykk og museklikk.
  • Videoblokker for å oppdage og registrere bevegelser eller spritesetninger.
  • Blokker for timing av kjøretiden til et prosjekt.

Du kan bruke kontrollblokker i spill for å gjøre spilleren tapt når et objekt berører en annen, eller for å oppdage om en sprite beveger seg raskt nok til å krasje gjennom et annet sprite, for eksempel.

Operatørblokker

Operatør blokker lar deg sammenligne mellom eller utføre aritmetiske funksjoner på forskjellige verdier og kan brukes sammen med datablokker eller sensingblokker blant andre.

Operatører inkluderer:

  • Blokker for å legge til, subtrahere, multiplisere og dele en verdi av en annen. Disse kan være datablokker du har definert eller svaret på et spørsmål du har bedt om å bruke en sensingblokk.
  • En blokk for å velge et tilfeldig tall mellom to tall du definerer.
  • Blokker for å identifisere om to verdier er mindre enn, større enn eller lik hverandre.
  • Boolske blokker: ikke, og og eller. Bruk disse til å kombinere verdier i kontrollblokker som hvis og gjenta blokker.
  • Blokker for å knytte sammen andre blokker sammen eller arbeide med bare en del av en blokks verdi (for eksempel første bokstav).
  • Blokker for avrundingsverdier og å identifisere om resultatet av en beregning har en rest.  

Du kan bruke alle operatørblokkene med sprites og scenen.

Flere blokker

Bruk de mørke lilla 'mer' blokkene for å lage dine egne blokker. Disse er nyttige for å gjøre koden mer effektiv. Hvis du har et sett med blokker som du bruker gjentatte ganger i prosjektet ditt, kanskje på tvers av sprites eller skript for ekkospriter, kan du definere en enkelt blokk som inneholder det settet med blokker (eller rutine) og bare bruke det når du vil løpe hele rutinen. Det er litt som å skape en funksjon eller klasse i andre programmeringsspråk.

Her kan du også legge til utvidelser, knytte maskinvare som et piktobord eller Lego WeDo for å legge til fysiske innganger til prosjektet eller kontrollrobotene du bygger.

Sammendrag

Skrape kommer med mange blokker som du kan bruke i prosjektene dine, som kan utvides enda mer når du kombinerer dem eller lager dine egne. Med praksis og fantasi er det svært lite du ikke kan gjøre med disse blokkene.

Når vi jobber gjennom denne serien, fokuserer jeg på forskjellige kategorier av blokker og viser deg hvordan du bruker dem i prosjektene dine.