[Powered by Google Translate] ZAMYLA Chandler: Va bene.
Ciao a tutti, e benvenuti a Scenario 0.
Zamyla mio nome, e sarò portando questi
procedure dettagliate di questo anno.
In CS50, ogni insieme problema è accompagnato da una guida
per cui andremo attraverso set problema della settimana, si parla
attraverso, parlare come iniziare, discutere diversa
tecniche e suggerimenti per rompere realmente il problema messo in
alcune punture gestibili.
Sono anche molto felice di rispondere a qualsiasi domanda che si
hanno sul set problema.
Senza ulteriori indugi, sono contento che tu sia qui, sia che siate
qui di persona o la sintonia in online.
Cominciamo.
>> Così il primo p-set in CS50 -
in realtà, non abbiamo intenzione di entrare in digitazione e la macchina
codice di roba molto ancora.
Stiamo in realtà intenzione di utilizzare Scratch, che è un
programma che ci permette di fare un po 'drag and drop
programmazione.
E così, anche se non stiamo scrivendo, permette realmente a noi
esplorare alcuni dei concetti fondamentali che
useremo durante tutto CS50.
Ora, alcuni di questi concetti sono
elencati qui nella Casella degli strumenti.
Quello che mi piacerebbe fare per ogni procedura dettagliata è presente a tutti voi
con una serie di strumenti che è possibile utilizzare per la procedura dettagliata.
E così, non ti preoccupare.
Andremo su tutti questi termini e tutti questi
teorie durante la procedura dettagliata.
Ora, se si finisce per utilizzare tutti questi strumenti, o semplicemente
alcuni di loro, è davvero bello sapere cosa si sta attrezzata
in grado di affrontare il problema proposto.
>> Quindi, in Scratch, il gergo prima è necessario sapere è che cosa
è uno sprite.
Così ogni oggetto o ogni personaggio, sia esso un gatto un cane
o una palla, si chiama uno sprite.
E così, se voglio, per esempio, due gatti - anche se non sono
identico -
Ho bisogno di fare due sprite separate in Scratch.
E così sprite hanno script associati con loro.
Gli script sono in realtà ciò che si sta andando ad essere edificio -
drag and drop - con i vostri blocchi.
E così ciò che gli script non è una specie di determinare e definire le modalità di
lo sprite si comporta.
Sprites non sono in realtà solo le immagini, perché abbiamo
costumi associata anche gli sprite che tipo di
determinare ciò che lo sprite assomiglia.
E si può avere più di un costume per uno sprite specificato.
>> Quindi, ad un certo punto durante il programma Scratch, come mostreremo
più tardi oggi durante la procedura dettagliata, si può effettivamente
cambiare il costume del vostro sprite per farlo sembrare uno
leggermente diverso o completamente diverso.
E così ci sono tre modi per creare uno sprite in Scratch.
Si, è possibile disegnare il proprio in Scratch di
costruito nel editor di vernice.
È possibile caricare la tua immagine, utilizzare uno dei Scratch, costruito in
i, o, l'ultima opzione, ottenere uno sprite casuale.
Ora, se vi sentite particolarmente fortunato, poi ho
accogliamo favorevolmente per tentare la fortuna e di creare uno sprite casuale.
>> Quindi tutti gli sprite sono immessi sul
la fase di Scratch.
Lo stadio - possiamo trattare come la nostra tela.
E così tutti gli sprite sono immessi sul palco.
E questa fase, ciò che fa si consente a tutti gli sprite
per spostarsi su di esso.
E proprio come gli sprite, lo stadio ha anche script.
E così questi script, per fare la loro sul palco -
è veramente utile quando, ad esempio, si dispone di uno script che non
esattamente si riferiscono a uno sprite specifico, ma piuttosto
appartiene alla più sprite o solo, in generale, qualcosa
che si vuole fare.
Quindi, è possibile inserire questi script sul palco, invece, e che
sarebbe design leggermente migliore.
Ora, mentre è possibile avere più sprite, è bene
tenere a mente che si può avere solo uno stadio.
Ma le fasi hanno anche sfondi.
A differenza dei costumi, come sprite fare, stadi hanno
sfondi.
E ancora, è possibile disegnare il proprio o carica il tuo
immagine da usare come sfondo.
>> Così qualcuno ha qualche domanda prima di andare avanti?
OK.
Sentitevi liberi di interrompere me quello che durante la procedura dettagliata, e
Sono felice di rispondere a tutte le vostre domande.
OK.
Così, quando si avvia il programma di sprite, che cosa avete intenzione di
non è che stai andando a cliccare la bandiera verde.
Ma se non collegare nulla a questo blocco di destra
qui, poi niente è in realtà sta per accadere.
Perché, vedete, che cosa gli script e la fase di necessità di
fare è in realtà sanno di rispondere all'evento -
questo è quello che li chiamano, gli eventi - della bandiera verde
essere cliccato.
Quindi è necessario collegare effettivamente blocchi per la scanalatura al
inferiore di tale blocco bandiera verde cliccato, e quindi l'
programma saprà cosa fare e come rispondere alla
bandiera verde viene cliccato.
>> Beh, che cosa viene dopo?
Beh, abbiamo una pletora di blocchi in Scratch da utilizzare e
dove la carne, in realtà, del vostro programma si trova in questi
dichiarazioni.
E così queste affermazioni sono convenientemente
organizzata in base al colore.
Devi azioni legate al movimento,
suono, sguardi, et cetera.
E così si può vedere è possibile spostarsi tra di loro in
schede nel programma Scratch.
E così, mentre avrai altre cose costruite intorno ad essa,
ciò che le dichiarazioni realmente fare è effettivamente dice al
sprite o la fase di fare qualcosa.
Al contrario solo per dire, OK, quando si esegue questa operazione, il
dichiarazioni in realtà contengono la vera carne di esso.
Diciamo che si desidera eseguire solo una determinata azione, ad esempio
si desidera solo il gatto a miagolare quando una certa cosa succede.
Siamo in grado di approfittare di booleane, che hai imparato nel
lezione uno.
E quindi queste sono espressioni che restituiscono
true o false.
E così questi sono identificati in Scratch dal -
vedete gli angoli alla fine di quei blocchi.
E in modo da avere una varietà di diversi tipi di valori booleani.
Avete "è la più viene premuto verso il basso", "fa 2 più 2
equivale a 5, "o" l'utente viene premuto un determinato tasto sul
la tastiera? "
>> Ora, non si può semplicemente utilizzare questi da soli.
Quello che devi fare è di combinarli con una condizione.
Quindi la condizione c'è nella scheda di controllo di Scratch.
E così convenientemente un segnaposto poco che
mostra la forma del blocco che è necessario mettere in essa.
Quindi, a seconda del contesto della situazione, è possibile scegliere
un valore booleano e poi inserire all'interno della vostra condizione.
E ci si dispone di un'istruzione condizionale.
Se metti istruzioni all'interno di quel blocco, allora avete un
struttura istituita, per cui una volta che una certa condizione sia soddisfatta
sinistra, quindi eseguire l'istruzione.
Sì?
>> STUDENTE: Se una variabile rappresenta un numero, è possibile
utilizzare la variabile all'interno del booleana, come quella verde,
per esempio?
ZAMYLA Chandler: Sì, è possibile.
È possibile trascinare e rilasciare il valore della variabile all'interno del
forma circolare lì.
>> Ora, uno dei vantaggi di computer è la grande potenza
e la velocità con cui si possono eseguire processi ripetitivi.
E così, invece, per esempio, ripetendo una istruzione più
e più e più volte e in realtà scrivendo che fuori - o
in questo caso, in Scratch, trascinando e
trascinamento della selezione -
quello che possiamo fare è incapsulare in un ciclo.
E così, i loop possono essere usati per eseguire sia le cose
infinitamente con un loop infinito, o per un
impostare il numero di volte -
dire, ripetere "salutare" 10 volte o fino a un certo
condizione è vera.
E così ancora una volta, si vede che Scratch è suggerendo che quando
si dispone di una condizione come "ripetere fino a", quindi l'unica
cosa che si inserisce all'interno vi è un valore booleano.
Bene.
>> Così ora, sappiamo che siamo in grado di incapsulare ripetitivo
processi all'interno di loop.
Si può capire perché una cosa del genere potrebbe non essere l'ideale.
Non si adatta sulla diapositiva.
In sostanza, lo fa proprio la stessa cosa più e più volte
10 volte, in effetti.
Si muove 10 passi, dice ciao, si muove di 10 gradini, dice ciao.
Così ora si può vedere che una volta che hanno cicli, qualcosa di simile a
questo è molto meglio.
È più corto, è più piccolo, e compie effettivamente l'
stessa cosa.
Ora, in Scratch questo potrebbe non fare molta differenza, ma
consente di risparmiare in realtà è un po 'di tempo.
>> Così sulla variabile espressione -
si può effettivamente utilizzare le variabili e metterli all'interno di
condizioni.
Come espresso proprio lì, si vede che abbiamo una variabile denominata
"Contrastare", e siamo pari che per vedere se
è minore di 0.
Quindi le variabili sono essenzialmente, direi,
contenitori per valori.
In Scratch, questi tipi di valori possono essere parole o
possono essere numeri.
E così, con queste variabili, che cosa possiamo fare con loro si è
possibile impostare il loro valore.
Così, nel primo esempio qui, abbiamo l'esempio di testo
contenente il valore "Ciao, mondo!" Nel secondo esempio,
si presume che abbiamo già una variabile denominata
"Contrastare", e in questo caso, stiamo cambiando per 3.
Noi stiamo con incrementi di 3.
E poi, nell'ultimo esempio, le variabili possono essere trascinati
da mettere in un'espressione booleana.
>> Ora, quando si crea una variabile, quello che hai da
decidere è se si effettua la variabile per tutte le
sprite nel programma Scratch, o solo per il
specifiche sprite in cui selezionate quando si fanno
la variabile.
E quindi questa è una decisione molto importante da prendere.
E si tratta veramente basso per quello che si desidera che il campo di applicazione
variabile di avere.
Così, per esempio, un esempio di portata locale sarebbe se si
scegliere proprio per questo sprite di avere la variabile.
In modo che significa che soltanto tali sprite sarebbe in grado di
accedere a tale variabile.
Solo che sprite sarebbe in grado di vedere,
cambiarlo, modificarlo.
Se si sceglie di avere una portata globale -
così è se si dice per tutti gli sprite, se
si seleziona l'opzione -
allora ciò significa che lo stadio così come tutti gli sprite
sarà in grado di vedere, modificare e accedere a quella variabile che
che hai creato.
Tutte le domande finora su variabili o altro?
Sì.
>> STUDENTE: Per le variabili, si può avere due variabili di
lo stesso nome, se sono su diversi sprite?
ZAMYLA CHAN: Finché sono gli sprite locali ---
ah, sì, scusa.
Quindi la domanda era se si possono avere due variabili di
lo stesso nome in un programma e se si dispone di due variabili con
lo stesso nome, ma sono entrambi gli sprite locali, così sprite uno,
il gatto, ha una variabile "contatore", nome e sprite due, il
cane, ha una variabile denominata "contatore", purché tali
entrambi gli sprite sono locali, quindi la loro portata non si estende alle
il resto del programma.
E così nessuno degli altri sprite o il
fase si confonderà.
Bene.
>> Così ho detto prima il punto di ingresso, quando abbiamo avuto la
quando il verde blocco contrassegnato cliccato.
E allora di cosa si tratta -
si dice, OK, quando si verifica l'evento che la bandiera verde è
cliccato, questo è ciò che si dovrebbe fare.
E perché non è in realtà l'unico evento
che abbiamo in Scratch.
Abbiamo anche altri eventi.
Così abbiamo, per esempio, quando un tasto
la tastiera è premuto.
E si potrebbe effettivamente scegliere le lettere dalla A alla Z, da 0
a 9, oppure i tasti freccia.
E poi abbiamo anche altri eventi, come ad esempio quando il
sprite viene cliccato.
E così, quando si inizia con questo, si nota la tendenza chiave
è che hanno solo una scanalatura sul fondo, e così
allora che, ancora una volta, le chiavi in ​​voi che non si attacca al di sopra
tale blocco.
Si costruisce da quella e al di sotto.
>> Ora, per esempio, cosa succede se si vuole un evento accada solo
quando, non so, un gatto sta toccando una determinata sezione di
la fase o qualcosa del genere?
Noi in realtà non hanno costruito in
evento per significare che.
Quindi quello che dovrete fare è in realtà creare il nostro evento.
E che si chiama trasmissione.
Così, quando si vuole segnalare che un certo è successo,
quindi si utilizza - nella scheda di controllo, c'è un blocco chiamato
"Broadcast". E così allora, si digitare il nome del
caso in cui si desidera trasmettere, e poi a seconda di quale
sprite o sprite -
è possibile avere più sprite che reagiscono a questo messaggio -
o la fase dovrà gestire la cosa, dovrà
riceverlo, dovrà dire, va bene, ho capito che questo ha
successo, quindi ho intenzione di fare questo con esso.
E così ogni volta che si trasmette un evento, che è con il
fermo restando che ciascuna che sprite o un altro sprite è
andando a ricevere tale evento e rispondere.
>> Ora, l'ultimo concetto, prima di entrare in un esempio reale
di un programma di Scratch è thread.
Thread Così è quando il computer è in esecuzione
processi simultanei contemporaneamente.
Vi garantisco che tutti noi abbiamo approfittato di
discussioni quando ci stiamo guardando un film al tempo stesso
scrivendo un saggio o qualcosa del genere.
Il computer è in esecuzione diverse cose allo stesso
tempo, proprio come Scratch può.
Quindi, come potete vedere in questo esempio, questi due script possono
essere utilizzati per la sprite esattamente lo stesso, perché questi
cominciando blocchi entry point può effettivamente utilizzato
multipli di volte.
Vi garantisco che, probabilmente, la bandiera verde cliccato blocco
sarà uno dei più popolari
blocchi del programma.
Così, qui vediamo che quando la bandiera verde si fa clic, non c'è
un processo in corso, così come quando la bandiera verde è
cliccato, c'è un processo separato in corso.
E così Scratch verrà eseguito questi due contemporaneamente.
E così con questi fili, sapendo che si può effettivamente
avere più di un punto di ingresso -
anche se il punto di ingresso stesso -
che sta per diventare veramente utile se si desidera, ad esempio,
separare compiti distinti l'uno dall'altro.
Bene.
Quindi cerchiamo di guardare in realtà un esempio di un programma di Scratch.
>> OK.
Così ho già fatto un piccolo programma per noi qui.
Così sto solo andando cliccare la bandiera verde per avviare e vedere
quello che fa.
Quindi abbiamo un pesce arancione qui -
un pesce sprite -
sembra muoversi e quindi ripristinare e tornare indietro.
E poi abbiamo una sprite squalo.
E questo sprite squalo può muoversi, può ruotare, che può
nuotare intorno.
OK.
Ecco, questo è tipo di divertimento.
Ma possiamo sicuramente aggiungere di più per questo.
Per esempio, si vede che quando lo squalo è in movimento, esso può
effettivamente ottenere fuori dallo schermo e quasi
scomparire dalla vista.
Quindi vogliamo cambiare la situazione, perché non si vuole che il
squalo di fuggire.
E quindi cerchiamo di fermare il nostro script e quindi modificare lo squalo
script, forse aggiungere qualcosa.
Si noti che in questo sprite particolare qui, per sempre il ciclo
termina con un bordo dritto.
Esso non ha alcuna scanalatura.
Quindi, in realtà questo ha un senso, perché è un ciclo infinito.
E 'l'esecuzione di qualcosa di infinitamente.
Quindi non potrà mai finire.
Anche se ci fosse qualcosa sotto di essa, sarebbe
non arrivare a questo.
Così si sono effettivamente costretti ad introdurre un filo.
>> Bene.
Quindi cerchiamo di aggiungere un altro script.
Quindi ho intenzione di iniziare con questo punto di ingresso di quando verde
bandiera si fa clic.
Quindi quello che voglio fare è continuamente verificare se la
squalo sta per essere a contatto con il bordo.
Ma so che, in realtà, sotto c'è un movimento pulito
piccolo blocco che dice, oh, se sul bordo, rimbalzo.
Quindi, quello che vogliamo fare è continuamente eseguire.
E così ciò che questo "se sul bordo, rimbalzo" fa - in realtà
controlla se sono già al limite, poi riprendersi.
Quindi abbiamo bisogno di trovare un qualche tipo di loop continuo
eseguire questa istruzione.
Quindi, se si guarda sotto controllo, qualcuno ha un'idea di
ciò ciclo si potrebbe desiderare di utilizzare?
Gia '.
>> STUDENTE: Il ciclo per sempre.
ZAMYLA CHAN: Esattamente, sì.
Il ciclo per sempre.
Quindi cerchiamo di tenere traccia che qui, e poi dire, se sul bordo, rimbalzo.
E poi vediamo.
Bene.
Così il pesce si muove come al solito.
E poi, oh -
ora lo squalo non può scappare e rimbalza fuori dallo schermo.
Cool.
Bene.
Così mi è stato guardare dentro
Io non posso - sì?
>> STUDENTE: Come si fa a fare che si applicano allo squalo mentre si muove
ai pesci?
ZAMYLA Chandler: Ah.
Quindi la ragione per cui solo lo squalo rimbalza, a differenza
dei pesci, perché questo script che abbiamo scritto è dentro
lo sprite squalo.
Vedete, qui, lo sprite squalo è selezionata.
Bene.
Quindi cerchiamo di aggiungere qualcosa d'altro.
Stavo esplorando i diversi costumi che
Scratch ha, e ho visto questo grazioso piccolo squalo-chomp.
Così ho pensato che, ehi, beh, forse siamo in grado di implementare la
squalo chomping, per esempio, quando si preme lo spazio.
Sto solo andando a fermare questo.
Bene.
Sì.
>> STUDENTE: Potresti mostrare il - è che sotto Costumi?
ZAMYLA Chandler: Oh, sì.
Così sono andato in costumi, e poi ho guardato sotto Importa.
Ed ecco, Scratch ha tutta una serie di costumi che
si può scegliere.
E così poi c'è un sacco di animali, e poi il
shark ha un paio di costumi ad esso associati.
OK.
Quindi, in questo script qui, io sto già controllando continuamente
nel ciclo per sempre, bene, bene, se la freccia sinistra è premuto,
allora voglio ruotare in senso antiorario.
Se la freccia destra si preme, voglio ruotare in senso orario.
Se la freccia su viene premuto, poi ho
vuole progredire in avanti.
Quindi, quello che possiamo fare è solo aggiungere a questo script, invece di
aggiungendo una separata, perché sono già registrazione
il tema di quali tasti vengono premuti.
>> Quindi cerchiamo di aggiungere uno che dice che se la barra spaziatrice - usiamo la
barra spaziatrice per chomp giù.
Quindi questi freccia tasto sinistro premuto, eccetera, questi sono
nel blu luminoso.
Quindi cerchiamo di andare al Sensing l'azzurro più luminoso, e guardare in basso.
Oh, e qui è uno spazio di tasto premuto.
Quindi, quello che vogliamo fare è avere l'interruttore di squalo per la sua
chomping giù costume.
Questo ha a che fare con il modo lo squalo
sembra, quindi andiamo a look.
E qui ci siamo, comodamente, passare a
costume squalo-chomp.
Ma quando chomp giù, non vogliamo essere lo squalo
chomping giù per sempre, quindi cerchiamo di aggiungere, OK, beh, allora,
dopo chomp agisce, vogliamo che per tornare indietro.
Ok, vediamo cosa fa.
Così abbiamo muoversi.
OK.
Così l'abbiamo chomping.
E 'una specie di chomping rapidamente, però, perché in Scratch,
è loro esecuzione istantaneamente.
Allora, andiamo per il controllo e farlo apprezzare la sua
chomp, aspetta un secondo.
E qui chomp agisce verso il basso un po 'più a lungo prima che vada
tornare alla sua fame.
>> OK.
Quindi sono abbastanza contento con lo squalo ora.
Ma il pesce, quello che sembra stia facendo - è una progressione
paio di passi, infatti, cinque volte.
Si muove a 50 passi.
E poi quello che sta facendo qui, in questo blocco superiore qui è che io sono
dicendo: OK, bene, sta andando ad andare in un certo valore di x.
Per trovare le coordinate, si può in realtà solo mouse
lo schermo, e quindi in fondo -
proprio qui -
ti mostrerà quali sono le coordinate sono.
Così si può trarre vantaggio da questa per inserire le coordinate
che si desidera.
E allora che cosa questa affermazione qui sta dicendo sta dicendo, OK,
bene, il pesce inizia a questo valore x certa e quindi la
altezza può cambiare.
In realtà sto andando a prendere una altezza casuale che rimane ancora
entro i limiti del palcoscenico.
Ed ecco, quello che sto approfittando di è
trasmettere eventi.
Così si vede che questo gestore di eventi è fish1 nuovo.
Così ogni volta che il pesce riceve il nuovo fish1 evento, sarà
eseguire questo.
E poi si vede che dopo si muove in avanti il ​​suo valore insieme
di volte, poi trasmette effettivamente
ancora una volta, OK, nuova fish1.
Invece, che ne dici facciamo in modo che l'unico pesce
continua fino alla fine dello schermo prima si resetta,
invece di tipo di andare al centro di esso.
Così, invece di dire, ripetere cinque volte - perché non fare
davvero sapere quante volte sarà necessario fino a quando non
raggiunge la fine dello schermo, usiamo qualcos'altro.
>> Quindi ho intenzione di separare tutto questo, perché noi
in realtà non vogliono questo.
Per eliminare i blocchi in Scratch, quello che fai è è sufficiente trascinare
a sinistra, rilascio, e quindi viene eliminato.
Se si decide che non si vuole fare questo, allora si può
sempre undelete.
Ma noi vogliamo liberarci di questo.
Quello che vogliamo fare è che vogliamo continuare a muoversi a 50 passi e
pausa un secondo fino a che toccare l'estremità dello schermo.
Così chiunque può individuare un ciclo che si potrebbe desiderare di utilizzare tale
ripete un processo solo fino a quando si tocca lo schermo.
>> STUDENTE: Ripetere l'operazione fino.
ZAMYLA CHAN: ho sentito "ripetere fino a", e questo è corretto.
Quindi sì, ripetere fino a questo blocco avviene anche -
ma vediamo che questo ripetere fino blocco non è abbastanza
completo, giusto?
Quindi abbiamo bisogno di dire, OK, bene, ripetere fino a quando?
Quindi diciamo, bene, bene, ripetere fino a quando il pesce è a contatto con il
bordo dello schermo.
E così ti dico che questo è in fase di rilevamento.
C'è questo booleano toccante.
E così si può selezionare quello che si vuole essere il controllo
che il pesce sta toccando.
Così qui, vogliamo dire toccare il bordo.
E poi vogliamo aggiungere questa interattiva
E così ora, se guardiamo il nostro pesce andare, una volta che tocca il
bordo, si sposterà di nuovo.
Bene.
Quindi sono contento di questo.
E, apriamo HungryShark1.
>> OK, un po 'come un programma di cucina, ho aggiunto un po'
più funzioni.
Così, per esempio, si vede che il pesce è ora realtà
scivolando senza intoppi, a differenza di prima, quando era
tipo di movimento e di arresto, in movimento e l'arresto -
essenzialmente solo saltare pixel impostati.
Ho guardato sotto Movimento, trovato questa dichiarazione planata, e io
detto OK, invece di muoversi e di arresto, in movimento
e l'arresto, ho intenzione di scivolare 70 unità a destra,
ma stare da me stessa posizione y qui.
Bene.
Così abbiamo uno squalo che può chomp.
Cool.
Ma si chiama HungryShark, dopo tutto, quindi cerchiamo di avere il
squalo mangia il pesce.
>> Quindi, come potremmo dire il pesce o dire lo squalo che ha
chomp giù?
Come possiamo comunicare?
Sì.
STUDENTE: Il secondo costume dello squalo,
lo cattura il pesce.
ZAMYLA Chandler: Sì, esattamente.
Così sappiamo che quando stanno passando il costume al
chomp, chomp che abbiamo verso il basso.
Ora, alla fine controlla.
Dire vogliamo che il pesce a scomparire una volta il suo mangiato.
Dovremo comunicare in qualche modo il pesce che
si avrà da nascondere, per esempio, o la scomparsa dalla
lo schermo una volta che è stato chomped verso il basso.
>> Quindi, che tipo di concetto, che tipo di strumento si può utilizzare per
hanno comunicare squalo al pesce, OK,
Ho chomp giù?
STUDENTE: Broadcasting.
ZAMYLA Chandler: Sì, esattamente, trasmettendo un evento.
Quindi cerchiamo di andare a controllare e diciamo broadcast.
E andiamo in onda chomp.
Bene.
Ma una volta che abbiamo trasmesso qualcosa, che sia con la
presupposto che stiamo in realtà sta per avere qualcosa
riceverlo.
E così che sta per essere il pesce.
Quindi diciamo che, quando ricevo chomp.
Ora, quando il chomp squalo giù solo uno spazio vuoto, non lo facciamo
desidera che il pesce a reagire a quelle.
Quindi diciamo che, OK, bene, solo se lo squalo sta toccando il
pesce al momento della chomp -
che quando ci troveremo a fare qualcosa.
Allora, abbiamo intenzione di utilizzare la condizione se, a destra,
perché stiamo controllando se qualcosa è vero o no.
Quindi, se torniamo al rilevamento, allora possiamo
usare qui, se toccando.
E poi qui, scegliamo lo squalo.
Poi sotto look, questo blocco hide -
che ti fanno praticamente il pesce scompare dalla scena.
Faremo lo nascondo, ma vogliamo un altro pesce, giusto?
Il nostro squalo ha fame.
Vogliamo dare più pesce.
Allora cerchiamo di trasmettere anche un pesce nuovo.
OK.
Quindi cerchiamo di vedere che cosa fa.
>> Cool.
Così chomp agisce verso il basso e un altro pesce appare.
Ma questo è un po 'troppo veloce per un altro pesce di andare.
Così facciamo solo aspettare un secondo prima di
in onda un nuovo pesce.
Bene.
OK.
Quindi questo è un processo abbastanza buona di un gioco.
Ma tutti i giochi hanno bisogno di un punteggio, giusto?
Allora, cosa possiamo usare per tenere il punteggio?
Sì.
STUDENTE: Altro -
ZAMYLA CHAN: Già.
Esattamente.
Gia '.
Così si vuole tenere traccia di fondamentalmente come
molti pesci si mangia.
Per fare questo, dovremo fare una variabile.
Chiamiamolo punteggio.
E quindi presumibilmente, dal momento che questo è un gioco che stiamo giocando,
stiamo andando a voler il pesce per essere in grado di -
dire, una volta che la sua consumata può aumentare il punteggio o
qualcosa e poi lo stadio probabilmente hanno a che fare
qualcosa con la piaga pure.
Quindi ho intenzione di scegliere per rendere questo una variabile globale e dire
per tutti gli sprite.
OK.
Così, quando vogliamo aumentare il punteggio?
Quando un pesce è stato mangiato.
E così abbiamo già un processo qui che a che fare
con il pesce viene mangiato.
Quindi cerchiamo di aggiungere questa istruzione qui -
variazione del punteggio di 1.
Cool.
Quindi una volta che si mangia un pesce, il punteggio aumenta.
>> Bene.
Quindi dire che sono stanco di questo gioco.
Mi fermo.
E poi, oh, ho voglia di tornare al gioco.
Voglio iniziare una nuova partita.
Ebbene, il punteggio è ancora in 3, anche se sono
la riproduzione di un nuovo gioco.
Non abbiamo voglia di segnare non per ripristinare, giusto?
Quindi cerchiamo di aggiungere una dichiarazione di quando il gioco è iniziato nel
in scena per dire, OK, bene, vogliamo azzerare il punteggio.
Quindi qui abbiamo fissato il punteggio variabile da 0.
E così ora, ogni volta che si avvia un gioco, il punteggio
avrà inizio alle ore 0.
Cool.
OK.
Così ora, andiamo a HungryShark2.
>> Così ho fatto un po 'di più ora, e quello che ho fatto è
a destra clic sullo sprite pesce.
Volevo più pesce, e così ho cliccato duplicato e mi ha fatto
un nuovo sprite identico a quello e anche copiato in tutto il
script pure.
Allora questo fish2 è sostanzialmente identico a
fish1, tranne che invece di partire sinistra e
lo spostamento a destra, inizia a destra e si muove a sinistra.
E poi ho anche scelto un nuovo costume per esso.
Poi ho trovato un altro costume che era un pesce maculato, e io
Era come, fresco, questo sembra velenoso, quindi facciamo finta
che questo è un pesce velenoso.
E così ho detto, bene, bene, invece di mangiare la
pesci velenosi e avere il vostro aumento del punteggio, in realtà ho
vuole che diminuire.
Quindi qui abbiamo punteggio diminuisce di 1 ogni volta che il
squalo lo mangia.
E poi, mi è piaciuto molto i costumi che graffiano
disponibile, e ho guardato e poi ho trovato le shark's -
sembrava uno squalo malato.
E così poi l'ho modificato ho fatto verde.
E mi sono detto, fresco, è uno squalo malato.
Bene.
>> Quindi cerchiamo cerchiamo di aggiungere al nostro script di una sorta di modo di rendere il
interruttore di squalo in essere malato ogni volta che
mangia un pesce avvelenato.
OK.
Quindi perché abbiamo copiato tutti gli script dal nostro originale
pesce in pesce veleno, che ha già questo sprite qui
che dice, quando mi chomped giù, io sono
in realtà chomped giù?
Così siamo in grado di approfittare di questo per comunicare al
squalo, oh, beh, hai appena mangiato un pesce veleno.
Tu sei malato.
E così questo sarebbe il tipo di azione?
Che cosa si vuole fare?
Broadcast.
Sì, esattamente.
Quindi cerchiamo di trasmissione.
Chiamiamolo squalo malato.
OK.
Così ora, lo squalo, ovviamente, sta per essere quello che è
ricezione di questo evento.
Quindi aggiungiamo quando ricevo lo squalo essere malati.
OK.
Così sappiamo di avere questo costume -
lo squalo è malato.
E poi si sa da prima che tipo di apprezzare
quando siamo in grado di mettere in pausa un po 'prima di tornare.
Si '?
>> STUDENTE: Come si fa a copiare lo script da
uno sprite a un altro?
ZAMYLA Chandler: Ah.
Quindi, in questo caso, quando ho appena ripetuto lo sprite, a
copiare uno script ad un altro sprite, quello che ho fatto qui è stato
solo dire duplicato, e in realtà ha un intero nuovo
sprite con tutti gli script inclusi.
Ma dire che si desidera copiare solo un certo script ad un altro
sprite, allora cosa si dovrebbe fare in realtà è sufficiente trascinare questo,
il mouse sopra un altro script, e ora qui è duplicato.
In questo caso, già aveva, in modo da poter eliminare solo
di nuovo.
Ma per copiare uno script in un altro, quello che fai è solo
trascinarlo gli altri sprite.
OK.
>> Così siamo tornati al squalo essere malati.
Squalo Quindi è ricevuto è malato, e dice, bene, bene,
una volta che sto male, ho intenzione di passare a mio costume che dice
"Squalo malato", e ora, diciamo solo aggiungere un tempo di attesa per
apprezzare il verde.
E poi andiamo a fame di nuovo, in modo che possiamo solo
tornare allo squalo aver fame.
Bene.
Quindi andiamo a mangiare questo pesce viola.
Va bene.
Bella domanda.
Che cosa è successo al bancone?
OK.
Così abbiamo impostato punteggio a 0 qui, ma questo punteggio - che cosa
questo segno di spunta non fa altro che si nasconde o Scopre la variabile
dallo schermo.
Ma quello che possiamo fare, invece di deselezionare o il controllo di esso -
si può effettivamente avere questo blocco qui dice "mostrare o nascondere
la variabile ". Quindi cerchiamo di fare in modo che ogni volta che si inizia
il gioco che la variabile viene mostrato.
>> OK.
Così ora la variabile viene mostrato.
Mangiamo un pesce veleno, e ci si ammala.
Cool.
Bene.
Così ora, è strano per un gioco per noi avere negativo
punti, giusto?
Quindi continua a mangiare questi ed è come -
Così come su ogni volta che si ottiene negativo, se abbiamo mangiato troppo
molti pesci velenosi, game over - squalo e 'troppo male.
Bene.
Così che cosa abbiamo bisogno di fare è che abbiamo bisogno di
trasmesso un evento -
game over.
Così abbiamo potuto fare in diversi modi, in realtà.
Potremmo avere da qualche parte in fase di uno script che
continuamente controlli è il punteggio negativo?
Il punteggio negativo?
Se sì, allora va in onda questo evento.
>> Ecco, questo è un modo di farlo.
Oppure potremmo approfittare del fatto che sappiamo che il
unico modo che il punteggio potrebbe essere negativo è quando si mangia un
pesci velenosi, giusto?
Perché quando si mangia un altro pesce, il tuo
punteggio è destinata ad aumentare.
Quindi non c'è alcuna utilità per verificare se deve essere
gioco è finito o no.
Quindi questo è un processo simile qui.
Così possiamo in realtà solo aggiungere a questo "quando ricevo squalo
malato ".
Così dicono si aggiunge questa condizione.
Vogliamo dire che, se il punteggio è minore di 0.
Così abbiamo intenzione di andare agli Operatori, che andremo a utilizzare
questo meno di uno, che andremo a trascinare il nostro
cliente qui, dire 0.
E così, se il punteggio è 0, quindi vogliamo trasmettere
qualcosa che si chiama game over.
>> OK.
Quindi dire che abbiamo game over.
Parliamoci chiaro spostare qui o qualcosa del genere.
Bene, noi vogliamo lo squalo solo per tornare ad essere affamati, se
il gioco può essere giocato.
Così, invece di utilizzare un "se", useremo
un "if else" costruire.
Che cosa fa questo - dice, OK, quindi se questa condizione è
vero, allora fare questo, ma se è falso allora fare questo.
Quindi cerchiamo di aggiungere se il punteggio è inferiore a 0, allora si
trasmesso game over, ma se non - se la vostra
punteggio è ancora positivo -
poi tornare ad essere affamati.
OK.
Cool.
Quindi, ora che abbiamo il gioco su eventi, dovremo avere
qualche modo di rispondere ad esso.
>> Quindi cerchiamo di fare un nuovo script che dice "quando ricevo gioco
oltre. "E quello che abbiamo qui sotto controllo è in realtà questo
arrestare tutti i pulsante, e quindi sostanzialmente si imita clic
la fermata rosso segno qui.
Quindi cerchiamo di avere la fermata squalo.
E così vogliamo anche il pesce di fermarsi, quindi cerchiamo di trascinare e
copiarlo trovi
Vogliamo che tutti i pesci di fermarsi.
E poi diamo la tappa pure.
Bene.
Così nuotare intorno, si mangia un pesce, e
allora il programma si blocca.
Sto andando verso il basso, ma non posso davvero fare nulla.
OK, ma diciamo che non vogliamo ricordare all'utente che
loro hanno un valore negativo, per esempio, allora possiamo, per
esempio, nascondere la variabile dallo schermo.
Così, quando lo stadio riceve game over, poi si nasconde
il punteggio variabile.
OK.
Quindi cerchiamo di mangiare pesce un altro.
E poi il punteggio scompare, e basta questa schermata.
>> Bene.
Ecco, questo è un gioco abbastanza decente, e se avete avuto più
tempo, allora si potrebbe eventualmente aggiungere
script sempre più.
E così allora, ho aggiunto qualche pesce più, li ha fatti progredire
a velocità diverse, e quindi ogni volta che lo squalo mangia un
pesci velenosi, si dice in realtà, "Blech!"
E poi quello che ho fatto è stato aggiunto un nuovo sfondo per il
stadio - un gioco rispetto alla media.
E allora cosa fa la fase durante la partita per il superamento di
gestione è passa allo sfondo del gioco è finito
sfondo.
E così, ho nascosto tutte le sprite dal palco in modo che
solo il gioco su sfondo è stato mostrato.
Ci sono un paio di altre piccole aggiunte che ho aggiunto,
per esempio, prima quando abbiamo finito il nostro programma, allora la nostra
squalo, la prossima volta che abbiamo iniziato, si avvia in
tale posizione pure.
Quello che ho aggiunto è ogni volta che la bandiera verde si fa clic, quindi
lo squalo risale al origine e poi rivolta verso
destra, in modo che ogni volta, si dispone di un
squalo a partire lì.
>> Così si può sperimentare in Motion e cose del genere, che
solo per aggiungere piccoli tocchi che rendono la vostra
gioco un po 'più lucido.
Qualcuno ha qualche domande su HungryShark?
Cool.
Bene.
Ecco, questo è un esempio di qualcosa che si potrebbe fare
in Scratch utilizzando tutti gli strumenti di cui abbiamo discusso in precedenza.
Così ho anche incluso nelle diapositive procedura dettagliata.
Li vedrete in seguito.
E 'solo una panoramica dei processi che abbiamo fatto -
passando da HungryShark0 tutta la strada per il nostro finale.
Uno
Gia '.
Ma questo è tutto.
Starò dietro se voi ragazzi vogliono
altre domande.
Questo era Walkthrough 0.
Grazie a tutti per essere venuti, e ci vediamo alla Procedura dettagliata 1.