Arbetar med kontroll, sensing och operatörer i skrapan

Vad du ska skapa

I den tidigare handledningen arbetade du på ett projekt för att få en krabba att kasta en katt runt skärmen och lägga till rörelser, utseende och ljudeffekter.

I den här delen fortsätter vi arbetet med projektet och lägger till lite mer Kontrollera, Sensing och Operatör blockerar för att lägga till mer interaktivitet för projektet.

Vad du behöver

För att slutföra denna handledning behöver du:

  • ett gratis konto med Scratch
  • en webbläsare med tillgång till Scratch (jag rekommenderar att du använder en modern webbläsare som Chrome, Firefox, Safari eller Opera för bästa upplevelse)

Komma igång

Vi ska arbeta med projektet som skapades i den sista delen av serien. Vi använder de tillgångar och skript vi har skapat hittills och lägger till mer.

Beroende på om du arbetade med den handledningen finns det två sätt att komma igång för den här handledningen:

  • Öppna projektet du skapade för den sista handledningen och gör en kopia av det.
  • Remix det projekt jag skapade för att stödja den sista handledningen.

Alternativt kan du bara fortsätta arbeta i samma projekt som du redan skapat. Så här gör du var och en av dem (du behöver bara göra en).

Duplicera ditt eget projekt

Öppna Skrapa och gå till det projekt du vill duplicera. Se till att du har klickat på Se Inside knappen så att du kan se projektets arbete.

Klicka på i verktygsfältet Arkiv> Spara som en kopia:

Skrapa öppnar din nya kopia. Byt namn på det och börja arbeta med det.

Remixing My Project

Logga in på Skrapa och gå till sidan för mitt projekt om rörelse, utseende och ljud.

Klicka på Se Inside knappen för att se projektet:

Klicka nu på remix knapp. Scratch kommer att spara en kopia av mitt projekt som ett nytt projekt i ditt konto. Byt namn på det och du är bra att gå!

Göra någonting händer om ett villkor är uppfyllt

Du har redan lagt till en typ av kontrollblock till ditt projekt: slingan. Du har lagt en evigt loop till katten och krabben sprites för att få dem att fortsätta att upprepa samma åtgärder, och du lade till en repetitionsslinga till sjöstjärna för att få det att upprepa en åtgärd ett visst antal gånger.

Nu kombinerar vi en Kontrollera blockera med a Sensing blockera för att få något att hända om ett villkor är uppfyllt. Villkoret är att katten och krabban röra och det som kommer att hända är att katten kommer att mäta.

Klicka på din Cat sprite och redigera det skript du redan har skapat för det. För tillfället har du en Ljud blockera på plats (spela ljudmjuka). Vad du behöver göra är att bifoga det i en Kontrollera blockera för att göra katten mjuka när den rör på krabban.

Under nästa kostym blockera och vänta 0,2 sek blockera, dra i om då blockera från Kontrollera block. Sätta spela ljudmjuka blockera inuti den slingan och se till att vänta blocket är under det.

Ditt skript kommer att se ut så här:

Gå nu till Sensing blockera och dra rörande ? blockera in i rymden inuti om då blockera. Från rullgardinsmenyn i rörande ? blockera, välj krabba.

Nu när du klickar på den gröna flaggan och rör musen runt, kommer katten bara att mjuka när den rör krabban.

Låta användarkontrollen hur katten reagerar

Låt oss nu lägga till lite mer interaktivitet för projektet. Istället för att katten ska mäta när det rör krabben, låter vi användaren välja det ljud katten gör.

Vi gör det genom att lägga till en Sensing block (the fråga block) och använd sedan två villkorliga loopar i kombination med Operatör blockerar för att svara på användarens svar.

Sedan lägger vi till två villkorliga loopar (Kontrollera block), igen kombinerat med Operatör block, för att definiera ljudet som spelas när katten rör musen.

Låt oss börja med att fråga användaren vad katten kommer att säga när den berörs.

Fråga användaren en fråga och svara på den

Klicka på din kattsprite och redigera det skript du redan har skapat för det.

Under när den gröna flaggan klickade blockera, dra i fråga blockera från Sensing block. I rymden skriver du 'Ska katten mja eller skrika när den är knuffad av krabben?'.

Nästa gå till Kontrollera blockera och dra en om annat blockera under fråga blockera.

Gå till Operatör blockera och dra = blockera till utrymmet i om del av om annat blockera. Gå nu till Sensing blockera och dra svar blockera in i det första utrymmet i = blockera. I det andra utrymmet i = blockera, skriv 'meow'.

Därefter från Utseende block, dra den säg - i 2 sekunder blockera inuti det först om slinga. Skriv 'meow' i rymden i det blocket.

Ditt skript kommer nu att se ut så här:

Dra nu en om blockera inuti annan del av din om annat blockera. Upprepa processen ovan med det om blockera, ersätta "meow" med "scream".

Hela skriptet läser nu som så:

  • när den gröna flaggan klickade
  • fråga Ska katten mjuka eller skrika när den är knuffad av krabban?
  • om svaret = möga då
  • säg mia! i 2 sekunder
  • annan
  • om svar = skrik då
  • säg skrika i 2 sekunder
  • evigt
  • peka mot muspekaren
  • flytta 10 steg
  • nästa kostym
  • om du rör på krabba då
  • spela ljudmjuka
  • vänta 0,2 sek 

Så här ser det ut på din skärm:

Ställa in ljudet baserat på användarens svar

Nästa steg är att ändra ljudet beroende på användarens svar.

Det första vi behöver göra är att lägga till ett annat ljud till kattsprite.

Fortfarande med katten vald, klicka på Ljud fliken och klicka på Välj ljud från biblioteket ikon (vänster hand). I biblioteket väljer du ett skrikljud (du hittar det i Mänsklig sektion). Klicka på ok knappen och ljudet kommer att läggas till kattens Ljud Ruta.

Nu kan vi använda det ljudet i vårt manus. Gå tillbaka till skript panelen och redigera avsnittet av manuset som innehåller om man rör på krabba blockera och spela ljudmjuka blockera.

Redigera det så att det innehåller dessa block i följande ordning:

  • om du rör på krabba då
  • om svaret = möga då
  • spela ljudmjuka
  • annan
  • om svar = skrik då
  • spela ljud skrik-kvinnlig

Du måste använda en om annat blockera och an om blockera från Kontrollera block, två = block från Operatör block och två svar block från Sensing block.

Ditt skript kommer att se ut så här:

Det börjar bli stort! Om du vill lägga till några kommentarer för att hjälpa dig att identifiera vad varje avsnitt i skriptet gör, högerklickar du bara på manuset och väljer Lägg till kommentar från snabbmenyn.

Nu när du klickar på den gröna flaggan och svarar på frågan, kommer katten att göra det ljud du väljer.

Observera att om du skriver in ett annat svar än "meow" eller "scream", fungerar skriptet inte korrekt. Eftersom det finns en väldigt stor risk för användarens inmatningsfel kommer vi tillbaka till det senare i serien och underlätta för användarna att välja ett av två svar.

Sammanfattning

Genom att lägga till några kontroll-, sensor- och operatörsblock till vårt projekt kunde vi inkludera en del interaktioner. Användaren bestämmer nu vad katten kommer att säga när den nippas av krabben, och lämpligt ljud spelas när detta händer.

I nästa del av serien fortsätter vi med att arbeta med det här projektet, lägger till variabler och data så att vi kan hålla poäng och tid på spelet.