Werken met Control, Sensing en Operators in Scratch

Wat je gaat creëren

In de vorige tutorial werkte je aan een project om een ​​krab een kat achter het scherm te laten jagen, en voegde beweging, uiterlijk en geluidseffecten toe.

In dit deel blijven we aan dat project werken en voegen we er nog meer toe Controle, sensing en operator blokken om meer interactiviteit aan het project toe te voegen.

Wat je nodig hebt

Om deze tutorial te voltooien, heb je nodig:

  • een gratis account bij Scratch
  • een webbrowser met toegang tot Scratch (ik raad het gebruik van een moderne browser zoals Chrome, Firefox, Safari of Opera aan voor de beste ervaring)

Ermee beginnen

We gaan werken met het project dat is gemaakt in het laatste deel van deze serie. We gebruiken de items en scripts die we tot nu toe hebben gemaakt en voegen er meer toe.

Afhankelijk van of u met die zelfstudie hebt gewerkt, zijn er twee manieren om aan de slag te gaan met deze zelfstudie:

  • Open het project dat u voor de laatste zelfstudie hebt gemaakt en maak hiervan een duplicaat.
  • Remix het project dat ik heb gemaakt om de laatste zelfstudie te ondersteunen.

Je kunt ook gewoon doorgaan met werken in hetzelfde project dat je al hebt gemaakt. Hier is hoe je elk van deze doet (je hoeft het alleen maar te doen).

Uw eigen project dupliceren

Open Scratch en ga naar het project dat u wilt dupliceren. Controleer of u op de knop hebt geklikt Zie Inside knop, zodat u de werking van het project kunt zien.

Klik in de werkbalk op Bestand> Opslaan als een kopie:

Scratch opent je nieuwe exemplaar. Hernoem het en begin eraan te werken.

Mijn project remixen

Log in op Scratch en ga naar de pagina voor mijn project over beweging, uiterlijk en geluid.

Klik op de Zie Inside knop om het project te bekijken:

Klik nu op de Remix knop. Scratch slaat een duplicaat van mijn project op als een nieuw project in uw account. Hernoem het en je bent klaar om te gaan!

Iets gebeuren als aan een voorwaarde wordt voldaan

U hebt al één type besturingsblok aan uw project toegevoegd: de lus. Je hebt een lus voor altijd aan de kat en krabsprites toegevoegd om ervoor te zorgen dat ze dezelfde acties blijven herhalen, en je hebt een herhaalde lus toegevoegd aan de zeester om het een bepaald aantal keren een actie te laten herhalen.

Nu combineren we een Controle blokkeren met een sensing blokkeren om iets te laten gebeuren als aan een voorwaarde is voldaan. De voorwaarde is dat de kat en krab elkaar raken en het ding dat zal gebeuren is dat de kat zal miauwen.

Klik op uw Cat-sprite en bewerk het script dat u er al voor hebt gemaakt. Op dit moment heb je een Geluid op zijn plaats blokkeren (speel geluid miauwen). Wat je moet doen, is dat in een Controle blokkeren om de kat te laten miauwen wanneer hij de krab aanraakt.

Onder de volgend kostuum blok en de wacht 0,2 seconden blokkeren, slepen in de als dan blokkeren van de Controle blokken. Zet de speel geluid miauwen blok binnen die lus, en zorg ervoor dat de Wacht blok is eronder.

Je script zal er als volgt uitzien:

Ga nu naar de sensing blokkeert en versleept de aandoenlijk ? blokkeren in de ruimte binnen de als dan blok. In de vervolgkeuzelijst in de aandoenlijk ? blokkeren, selecteren Krab.

Als je nu op de groene vlag klikt en de muis beweegt, zal de kat alleen miauwen wanneer hij de krab aanraakt.

De gebruiker laten bepalen hoe de kat reageert

Laten we nu wat meer interactiviteit toevoegen aan het project. In plaats van de kat te laten miauwen wanneer het de krab aanraakt, laten we de gebruiker het geluid selecteren dat de kat maakt.

We doen dit door een sensing blok (de vragen blok) en gebruik vervolgens twee voorwaardelijke lussen in combinatie met operator blokkeert om te reageren op het antwoord van de gebruiker.

Vervolgens voegen we twee voorwaardelijke lussen toe (Controle blokken), opnieuw gecombineerd met operator blokken, om het geluid te definiëren dat wordt afgespeeld wanneer de kat de muis aanraakt.

Laten we beginnen met de gebruiker te vragen wat de kat zal zeggen als hij wordt aangeraakt.

De gebruiker een vraag stellen en erop reageren

Klik op de sprite van uw kat en bewerk het script dat u er al voor hebt gemaakt.

Onder de toen de groene vlag klikte blokkeren, slepen in de vragen blokkeren van de sensing blokken. Typ in de ruimte 'Moet de kat miauwen of gillen als hij door de krab wordt gesmoord?'.

Ga vervolgens naar de Controle blokkeert en sleept een als - anders blok onder de vragen blok.

Ga naar de operator blokkeert en versleept de = blokkeren naar de spatie in de als deel van de als - anders blok. Ga nu naar de sensing blokkeert en versleept de antwoord blokkeren in de eerste ruimte in de = blok. In de tweede ruimte in de = blok, type 'miauw'.

Vervolgens, van de looks blokken, sleep de zeg - gedurende 2 sec blok eerst daarbinnen als lus. Typ 'miauw' in de ruimte in dat blok.

Uw script ziet er nu als volgt uit:

Sleep nu een als blokkeren in de anders gedeelte van uw als - anders blok. Herhaal het bovenstaande proces hiermee als blokkeren, 'miauw' vervangen door 'schreeuwen'.

Het hele script leest nu als volgt:

  • toen de groene vlag klikte
  • vraag Moet de kat miauwen of gillen als hij door de krab wordt gesmoord?
  • als antwoord dan miauwt dan
  • zeg miauw! gedurende 2 seconden
  • anders
  • als antwoord = schreeuw dan
  • zeg schreeuw gedurende 2 seconden
  • voor altijd
  • wijs naar de muiswijzer
  • verplaats 10 stappen
  • volgend kostuum
  • als je dan Crab aanraakt
  • speel geluid miauwen
  • wacht 0,2 seconden 

Zo ziet het eruit op uw scherm:

Het geluid instellen op basis van de gebruikersreactie

De volgende stap is om het geluid te veranderen afhankelijk van het antwoord van de gebruiker.

Het eerste wat we moeten doen is een nieuw geluid aan de kat-sprite toevoegen.

Nog steeds met de kat geselecteerd, klik op de Sounds tab en klik op de Kies geluid uit de bibliotheek pictogram (de linkerhand). Selecteer een schreeuwgeluid in de bibliotheek (je vindt het in de menselijk sectie). Klik op de OK knop en het geluid wordt toegevoegd aan de kat Sounds paneel.

Nu kunnen we dat geluid in ons script gebruiken. Ga terug naar de scripts deelvenster en bewerk het gedeelte van het script dat het als je krab aanraakt blok en de speel geluid miauwen blok.

Bewerk het zodat het deze blokken bevat, in deze volgorde:

  • als je dan Crab aanraakt
  • als antwoord dan miauwt dan
  • speel geluid miauwen
  • anders
  • als antwoord = schreeuw dan
  • speel geluid schreeuw-vrouw

U moet een gebruiken als - anders blokkeren en een als blokkeren van de Controle blokken, twee = blokken van de operator blokken en twee antwoord blokken van de sensing blokken.

Je script zal er als volgt uitzien:

Het begint groot te worden! Als u enkele opmerkingen wilt toevoegen om u te helpen identificeren wat elke sectie van het script aan het doen is, klikt u met de rechtermuisknop op het script en selecteert u Voeg commentaar toe uit het snelmenu.

Wanneer u nu op de groene vlag klikt en de vraag beantwoordt, maakt de kat de door u gekozen ruis.

Merk op dat als je een ander antwoord invoert dan 'miauwen' of 'schreeuwen', het script niet correct zal werken. Aangezien er een zeer reëel risico bestaat dat gebruikers invoerfouten maken, komen we hier later op terug in de serie en maken het voor gebruikers gemakkelijker om een ​​van de twee antwoorden te selecteren.

Samenvatting

Door enkele besturings-, detectie- en operatorblokken aan ons project toe te voegen, konden we wat interactie toevoegen. De gebruiker bepaalt nu wat de kat zal zeggen als hij door de krab wordt afgeknipt en het juiste geluid wordt gespeeld als dit gebeurt.

In het volgende deel van de serie blijven we aan dit project werken door variabelen en gegevens toe te voegen, zodat we de score en de tijd van het spel kunnen behouden.