Lavorare con il controllo, il rilevamento e gli operatori di Scratch

Cosa starai creando

Nel precedente tutorial, hai lavorato a un progetto per creare un granchio che inseguiva un gatto attorno allo schermo e aggiunto movimento, aspetto ed effetti sonori.

In questa parte continueremo a lavorare su quel progetto e ne aggiungeremo altri Controllo, Sensing e Operatore blocchi per aggiungere più interattività al progetto.

Cosa ti serve

Per completare questo tutorial, avrai bisogno di:

  • un account gratuito con Scratch
  • un browser web con accesso a Scratch (ti consiglio di utilizzare un browser moderno come Chrome, Firefox, Safari o Opera per la migliore esperienza)

Iniziare

Lavoreremo con il progetto creato nell'ultima parte di questa serie. Useremo le risorse e gli script che abbiamo creato finora e ne aggiungeremo altri.

A seconda che tu abbia lavorato con quel tutorial, ci sono due modi per iniziare questo tutorial:

  • Apri il progetto che hai creato per l'ultimo tutorial e ne fai un duplicato.
  • Remix il progetto che ho creato per supportare l'ultimo tutorial.

In alternativa puoi continuare a lavorare nello stesso progetto che hai già creato. Ecco come fai ognuno di questi (dovrai farlo solo uno).

Duplicazione del tuo progetto

Apri Scratch e vai al progetto che desideri duplicare. Assicurati di aver fatto clic su Vedi dentro pulsante in modo da poter vedere il funzionamento del progetto.

Nella barra degli strumenti, fare clic su File> Salva come copia:

Scratch aprirà la tua nuova copia. Rinominalo e inizia a lavorarci.

Remixing My Project

Accedi a Scratch e vai alla pagina per il mio progetto su movimento, aspetto e suono.

Clicca il Vedi dentro pulsante per visualizzare il progetto:

Ora fai clic sul Remix pulsante. Scratch salverà un duplicato del mio progetto come nuovo progetto nel tuo account. Rinominalo e sei a posto!

Fare qualcosa accade se una condizione è soddisfatta

Hai già aggiunto un tipo di blocco di controllo al tuo progetto: il ciclo. Hai aggiunto un ciclo infinito agli sprite di gatto e granchio per farli continuare a ripetere le stesse azioni, e hai aggiunto un ciclo di ripetizione alle stelle marine per farlo ripetere un'azione un certo numero di volte.

Ora combineremo un Controllo blocco con a Sensing blocco per far accadere qualcosa se una condizione è soddisfatta. La condizione è che il gatto e il granchio stiano toccando e la cosa che accadrà è che il gatto miagola.

Fai clic sul tuo sprite Cat e modifica lo script che hai già creato. Al momento hai un Suono blocco in atto (Suona miagolio). Quello che devi fare è racchiuderlo in a Controllo bloccare per far miagolare il gatto quando tocca il granchio.

Sotto il prossimo costume blocco e il attendere 0,2 secondi blocco, trascinare nel se poi blocco dal Controllo blocchi. Metti il Suona miagolio bloccare all'interno di quel ciclo, e assicurarsi che il aspettare il blocco è sotto di esso.

Il tuo script sarà simile a questo:

Ora vai al Sensing blocca e trascina il toccante ? bloccare nello spazio all'interno del se poi bloccare. Dall'elenco a discesa in toccante ? blocco, selezionare Granchio.

Ora quando clicchi sulla bandiera verde e muovi il mouse, il gatto miagola solo quando tocca il granchio.

Lasciando il controllo dell'utente come reagisce il gatto

Ora aggiungiamo un po 'più di interattività al progetto. Invece di fare miagolare il gatto ogni volta che tocca il granchio, lasceremo che l'utente selezioni il suono prodotto dal gatto.

Lo faremo aggiungendo a Sensing blocco (il Chiedere blocco) e quindi utilizzare due cicli condizionali combinati con Operatore blocchi per rispondere alla risposta dell'utente.

Quindi aggiungeremo due cicli condizionali (Controllo blocchi), ancora combinato con Operatore blocchi, per definire il suono riprodotto quando il gatto tocca il mouse.

Iniziamo chiedendo all'utente cosa dirà il gatto quando viene toccato.

Chiedere all'utilizzatore una domanda e rispondervi

Clicca sul tuo gatto sprite e modifica lo script che hai già creato per questo.

Sotto il quando la bandiera verde ha cliccato blocco, trascinare nel Chiedere blocco dal Sensing blocchi. Nello spazio, scrivi 'Il miagolio del gatto o urla quando viene pizzicato dal granchio?'.

Avanti vai al Controllo blocca e trascina un se altro blocco sotto il Chiedere bloccare.

Vai al Operatore blocca e trascina il = bloccare lo spazio nel Se sezione del se altro bloccare. Ora vai al Sensing blocca e trascina il risposta bloccare nel primo spazio nel = bloccare. Nel secondo spazio nel = blocco, digitare 'meow'.

Successivamente, dal Sembra blocchi, trascina il diciamo - per 2 secondi bloccare dentro quello prima Se ciclo continuo. Digita "meow" nello spazio in quel blocco.

Il tuo script ora assomiglierà a questo:

Ora trascina un Se bloccare dentro il altro sezione del tuo se altro bloccare. Ripeti il ​​processo sopra con quello Se blocco, sostituendo 'meow' con 'urlo'.

L'intero script ora leggerà in questo modo:

  • quando la bandiera verde ha cliccato
  • chiedere Se il gatto miagola o urla quando viene pizzicato dal granchio?
  • se rispondi = miagolio allora
  • dimmi miagolio! per 2 secondi
  • altro
  • se answer = urlo allora
  • dì urlare per 2 secondi
  • per sempre
  • puntare verso il puntatore del mouse
  • muovi 10 passi
  • prossimo costume
  • se si tocca poi Crab
  • Suona miagolio
  • attendere 0,2 secondi 

Ecco come apparirà sullo schermo:

Impostazione del suono in base alla risposta dell'utente

Il prossimo passo è cambiare il suono in base alla risposta dell'utente.

La prima cosa che dobbiamo fare è aggiungere un altro suono allo sprite del gatto.

Sempre con il gatto selezionato, fare clic su Suoni scheda e fare clic su Scegli l'audio dalla libreria icona (la mano sinistra uno). Nella libreria, seleziona un suono di urlo (lo troverai nel file Umano sezione). Clicca il ok pulsante e il suono verrà aggiunto al gatto Suoni vetro.

Ora possiamo usare quel suono nel nostro script. Torna al Script riquadro e modificare la sezione dello script che include il se si tocca il granchio blocco e il Suona miagolio bloccare.

Modificalo in modo che contenga questi blocchi, in questo ordine:

  • se si tocca poi Crab
  • se rispondi = miagolio allora
  • Suona miagolio
  • altro
  • se answer = urlo allora
  • suona il suono urlare-femmina

Avrai bisogno di usare un se altro blocco e an Se blocco dal Controllo blocchi, due = blocchi dal Operatore blocchi e due risposta blocchi dal Sensing blocchi.

Il tuo script sarà simile a questo:

Sta iniziando a diventare grande! Se vuoi aggiungere alcuni commenti per aiutarti a identificare cosa sta facendo ogni sezione dello script, fai clic con il pulsante destro del mouse sullo script e seleziona Aggiungi un commento dal menu di scelta rapida.

Ora quando fai clic sulla bandiera verde e rispondi alla domanda, il gatto farà il rumore che scegli.

Nota che se digiti una risposta diversa da "meow" o "scream", lo script non funzionerà correttamente. Poiché esiste un rischio molto reale di errore di input da parte dell'utente, torneremo su questo più avanti nella serie e renderà più semplice per gli utenti selezionare una delle due risposte.

Sommario

Aggiungendo alcuni controlli, sensori e blocchi operatore al nostro progetto, siamo stati in grado di includere alcune interazioni. L'utente decide ora cosa dirà il gatto quando viene pizzicato dal granchio e il suono appropriato viene riprodotto quando ciò accade.

Nella parte successiva della serie continueremo a lavorare su questo progetto, aggiungendo variabili e dati in modo da poter mantenere il punteggio e il tempo del gioco.