Arbeider med kontroll, sensing og operatører i skrape

Hva du skal skape

I den forrige opplæringen jobbet du med et prosjekt for å få en krabbe jage en katt rundt skjermen, og lagt til bevegelse, utseende og lydeffekter.

I denne delen fortsetter vi å jobbe med dette prosjektet og legge til noe mer Styre, sensing og Operatør blokker for å legge til mer interaktivitet for prosjektet.

Hva du trenger

For å fullføre denne opplæringen må du:

  • en gratis konto med Scratch
  • en nettleser med tilgang til Scratch (jeg anbefaler å bruke en moderne nettleser som Chrome, Firefox, Safari eller Opera for den beste opplevelsen)

Starter

Vi skal jobbe med prosjektet som ble opprettet i den siste delen av denne serien. Vi bruker eiendommene og skriptene vi har laget så langt, og legger til flere.

Avhengig av om du jobbet sammen med den opplæringen, er det to måter å komme i gang for denne opplæringen:

  • Åpne prosjektet du opprettet for den siste opplæringen, og lag et duplikat av det.
  • Remix prosjektet jeg opprettet for å støtte den siste opplæringen.

Alternativt kan du bare fortsette å jobbe i det samme prosjektet du allerede har opprettet. Slik gjør du hver av disse (du trenger bare å gjøre en).

Dupliserer ditt eget prosjekt

Åpne Skrap og gå til prosjektet du vil duplisere. Pass på at du har klikket på Se innsiden knappen slik at du kan se prosjektets arbeid.

Klikk på i verktøylinjen Fil> Lagre som en kopi:

Skrap vil åpne din nye kopi. Gi nytt navn til det og begynn å jobbe med det.

Remixing av prosjektet mitt

Logg inn på Skrape og gå til siden for prosjektet mitt om bevegelse, utseende og lyd.

Klikk på Se innsiden knappen for å se prosjektet:

Klikk nå på Remix knapp. Skrap vil lagre en duplikat av prosjektet mitt som et nytt prosjekt i kontoen din. Gi nytt navn til det, og du er god til å gå!

Gjør noe skje hvis en tilstand er oppfylt

Du har allerede lagt til en type kontrollblokk til prosjektet ditt: løkken. Du har lagt til en evig løkke til katten og krabbe sprites for å få dem til å fortsette å gjenta de samme handlingene, og du la til en gjentagelsessløyfe til sjøstjernen for å få det til å gjenta en handling et sett antall ganger.

Nå kombinerer vi en Styre blokkere med a sensing blokkere for å få noe til å skje hvis en tilstand er oppfylt. Forutsetningen er at katten og krabbe berører, og det som skjer vil være at katten vil jevne seg.

Klikk på Cat Sprite og rediger skriptet du allerede har opprettet for det. For øyeblikket har du en Lyd blokkere på plass (spill lydmow). Det du trenger å gjøre er å vedlegge det i en Styre blokkere for å gjøre katten meow når den berører krabbe.

Under neste kostyme blokkere og vent 0,2 sek blokkere, dra i hvis da blokkere fra Styre blokker. Sett spill lydmow blokkere inne i denne sløyfen, og sørg for at vente blokk er under den.

Skriptet ditt vil se slik ut:

Gå nå til sensing blokkerer og drar rørende ? blokkere inn i rommet inni hvis da blokkere. Fra rullegardinlisten i rørende ? blokk, velg Krabbe.

Nå når du klikker på det grønne flagget og beveger musen rundt, vil katten bare jevne når den berører krabbe.

La brukeren kontrollere hvordan katten reagerer

La oss nå legge til litt mer interaktivitet for prosjektet. I stedet for å gjøre katten meow når den berører krabben, lar vi brukeren velge lyden katten gjør.

Vi gjør dette ved å legge til en sensing blokkere spørre blokk) og bruk deretter to betingede sløyfer kombinert med Operatør blokkerer for å svare på brukerens svar.

Da legger vi til to betingede sløyfer (Styre blokker), igjen kombinert med Operatør blokker, for å definere lyden som spilles når katten berører musen.

La oss begynne med å spørre brukeren hva katten sier når den berøres.

Spør brukeren et spørsmål og svare på det

Klikk på katten sprite og rediger skriptet du allerede har opprettet for det.

Under når det grønne flagget klikket blokkere, dra i spørre blokkere fra sensing blokker. I feltet skriver du «Skal katten mjøte eller skrike når det er nippet av krabben?».

Neste gå til Styre blokkere og dra en hvis - ellers blokkere under spørre blokkere.

Gå til Operatør blokkerer og drar = blokkere til plassen i hvis delen av hvis - ellers blokkere. Gå nå til sensing blokkerer og drar svar blokkere inn i det første rommet i = blokkere. I det andre rommet i = blokk, skriv 'meow'.

Deretter fra Utseende blokker, dra si - i 2 sekunder blokkere innsiden som først hvis sløyfe. Skriv 'meow' i rommet i den aktuelle blokk.

Skriptet ditt vil nå se slik ut:

Dra nå en hvis blokkere inne i ellers delen av din hvis - ellers blokkere. Gjenta prosessen over med det hvis blokkere, erstatte 'meow' med 'scream'.

Hele skriptet vil nå lese slik:

  • når det grønne flagget klikket
  • spør Bør katten mjøte eller skrike når det er nippet av krabbe?
  • hvis svaret = meow da
  • si meow! i 2 sekunder
  • ellers
  • hvis svar = skrik da
  • si skrik i 2 sekunder
  • for alltid
  • pek mot musepekeren
  • flytt 10 trinn
  • neste kostyme
  • hvis du berører krabbe da
  • spill lydmow
  • vent 0,2 sek 

Slik ser det ut på skjermen:

Stille inn lyden basert på brukerresponsen

Det neste trinnet er å endre lyden avhengig av brukerens svar.

Det første vi må gjøre er å legge til en annen lyd til kattesprite.

Fortsatt med katten valgt, klikk på lyder kategorien og klikk på Velg lyd fra biblioteket ikon (den venstre hånden). På biblioteket, velg en skriklyd (du finner den i Menneskelig seksjon). Klikk på OK knappen og lyden blir lagt til kattens lyder ruten.

Nå kan vi bruke den lyden i skriptet vårt. Gå tilbake til scripts ruten og rediger delen av skriptet som inneholder hvis du rører krabbe blokkere og spill lydmow blokkere.

Rediger den slik at den inneholder disse blokkene, i denne rekkefølgen:

  • hvis du berører krabbe da
  • hvis svaret = meow da
  • spill lydmow
  • ellers
  • hvis svar = skrik da
  • spill lyd skrik-kvinne

Du må bruke en hvis - ellers blokkere og an hvis blokkere fra Styre blokker, to = blokker fra Operatør blokker og to svar blokker fra sensing blokker.

Skriptet ditt vil se slik ut:

Det begynner å bli stort! Hvis du vil legge til noen kommentarer for å hjelpe deg med å identifisere hva hver del av skriptet gjør, bare høyreklikk på skriptet og velg Legg til en kommentar fra snarveismenyen.

Nå når du klikker på det grønne flagget og svarer på spørsmålet, vil katten gjøre støyen du velger.

Merk at hvis du skriver inn et annet svar enn "meow" eller "scream", vil skriptet ikke fungere skikkelig. Siden det er en veldig reell risiko for brukerinngangsfeil, kommer vi tilbake til dette senere i serien og gjør det enklere for brukerne å velge ett av to svar.

Sammendrag

Ved å legge til noen kontroll-, sensor- og operatørblokker for prosjektet, var vi i stand til å inkludere noe interaksjon. Brukeren bestemmer nå hva katten vil si når den er nippet av krabben, og riktig lyd spilles når dette skjer.

I neste del av serien fortsetter vi å jobbe med dette prosjektet, legger til variabler og data slik at vi kan fortsette å score og tidspill spillet.