Tip:
Highlight text to annotate it
X
>> ZAMYLA CHAN: Hola, i benvinguts per al tutorial de Scratch.
El meu nom és Zamyla i vaig a ser líder tutorials per a vostè aquest any.
A CS50, cada conjunt de problemes és acompanyat d'un tutorial.
Durant aquests tutorials aniré més conjunt de problemes de la setmana, explica l'
conceptes necessaris i trenquen la problema va posar en porcions manejables.
>> Per primera p-set en el CS50, que en realitat No entraré en escriure i
màquina material codi encara.
Més aviat, farem servir Scratch, 1 programa que ens permet explorar
Conceptes de programació en un manera visual i creativa.
En aquest tutorial s'estudiarà conceptes fonamentals que utilitzarem
al llarg de CS50, a més de servir com un tutorial de Scratch.
A cada tutorial vaig a enumerar un conjunt d'eines que pot utilitzar per a la
conjunt de problemes.
A partir dels conceptes del curs més grans per a real funcions, és bo i útil
sap el que està equipat amb abans de abordar el problema plantejat.
>> En primer lloc, anem a parlar sobre els sprites.
Sprites són fonamentals per fer projectes en zero.
Cada objecte o cada personatge, ja sigui un gat, un gos o un
bola, es diu un follet.
Si vull, per exemple, dos gats en el meu projecte, Vaig a haver de fer dues
sprites separats en zero, fins i tot si són absolutament idèntics.
>> Cada follet té els scripts associats amb què sprites específica.
Els scripts són el que vas estar construint arrossegant
i col · locar blocs.
Els scripts són instruccions que determinar i definir
com es comporta el guió.
>> Ara, sprites no són només imatges.
Un vestit de sprites determina el que el sprite s'assembla.
Qualsevol sprites determinada pot tenir més d'un vestit.
Una mica més endavant en aquest tutorial vaig mostrar com vostè pot tenir el seu
vestits canvi de sprites durant el seu programa.
>> Per crear un element sprite al principi, pot o bé triar el seu vestuari inicial per
Biblioteca Scratch, dibuixar el seu propi Scratch incorporat a l'editor de pintura,
carregar la seva pròpia imatge, o fer una foto amb la càmera de l'ordinador.
Tots els sprites es col · loquen en el que anomenem l'etapa.
L'escenari és com el nostre llenç on sprites es poden moure.
>> Encara que podem tenir múltiples sprites, només pot haver una etapa.
En cas contrari, les etapes i els sprites són bastant semblant en què l'etapa pot
també tenen scripts.
Scripts a l'escenari són molt útils si vostè no té un guió que
no es refereix necessàriament a un sprites específica.
Potser es refereix a múltiples ratlles, o cap en absolut.
>> En general és un bon disseny per realitzar la seva seqüència a l'escenari si són
bastant general i no pertanyen per sprites específics.
I igual que els sprites tenen vestits, etapes tenen fons que poden canviar
en el transcurs del seu programa.
I vostè pot cridar la seva pròpia, pujar una imatge, fer una foto, o utilitzeu el
Biblioteca esgarrapades de telons de fons.
Tant l'escenari i sprites també poden exercir sons de la biblioteca esgarrapades o
vostè pot carregar i gravar la seva pròpia.
>> Per iniciar el programa d'esgarrapades Vas de fer clic a la bandera verda a la
cantonada superior dreta de la finestra de l'escenari.
Però si no connecta gens aquest bloc d'aquí, llavors no hi ha res
en realitat va a succeir perquè el sprites i l'etapa necessiten que se'ls digui
per respondre a l'esdeveniment de la bandera verda que s'ha premut.
Pel que vostè necessita per connectar els blocs a la ranura a la part inferior de la verda
bandera, i llavors el programa s'executi aquestes accions en iniciar
seu programa.
>> Bé, què ve després?
Bé, Scratch té molts blocs per tu utilitzar, i vostè pot
fins i tot fer el seu propi.
Vostè veurà tres fitxes, Scripts, Disfresses i sons.
Sota l'etiqueta de seqüència són categories dels estats.
Les declaracions són convenientment organitzat per color.
Té accions relacionades amb el moviment, so, aparença, i així successivament.
Encara tindràs altres blocs construïts voltant de les seves declaracions, és el
declaracions que ajudaran els sprites o a l'escenari per fer alguna cosa, mentre que
altres blocs l'ajudaran a determinar quan fer-ho ells.
>> Diguem que vostè està creant la seva molt primer projecte i només desitja que el
gat a miolar en determinades circumstàncies.
Per implementar això, podem prendre avantatge de booleans.
Aquestes són expressions que s'avaluen ja sigui vertadera o falsa.
En esgarrapades aquests s'identifiquen pel angles a l'extrem dels blocs.
Vas a tenir una varietat de diferents tipus de booleans com és el ratolí
està atapeïda, significa 2 més 2 equiparen a 5 o està pressionant a l'usuari
que ha baixat un tecla en el teclat?
>> Ara, no es pot simplement utilitzar aquests Booleans sol.
Haurà de combinar-los amb el que anomenem condicions.
Blocs Estat es poden trobar en les sentències de control de color taronja.
Condicions convenientment tenen una petita marcador de posició que mostra la forma de
el bloc que vostè necessita a posar en ell.
Per tant, depenent del context de la situació, vostè pot triar un booleà
i col · locar dins de la seva condició.
I junts, vostè té una sentència condicional.
Una vegada que posa les declaracions dins d'aquest bloquejar vostè té una estructura creada
pel que una vegada que una certa condició es compleix, a continuació, executar els
declaracions.
>> Un dels avantatges dels ordinadors és la gran potència i la velocitat a la qual es
pot executar els processos repetitius.
En lloc de, per exemple, repetir una instruccions una i altra vegada i una altra
una altra vegada i realment a escriure això, o en aquest cas, arrossegant i deixant anar
i arrossegar i deixar anar, el que pot fer és encapsular en un bucle.
>> Els bucles poden ser utilitzats per a executar ja sigui coses infinitament amb un bucle infinit,
o per a un nombre determinat de vegades.
Per exemple, repetir la declaració, per exemple hi, 10 vegades, o potser fins a un cert
condició és vertadera.
I amb aquest Repetiu fins que bloquejar veure que les ratllades s'insinuava que
hauràs de col · locar un booleà a Repetir fins que el bloc per fer una
sentència condicional.
>> Ara, sabem que podem encapsular processos repetitius dins de bucles,
així que vostè pot veure per què una cosa com això podria no ser ideal.
És super llarg, simplement ho fa la mateixa cosa una i altra vegada
una vegada més, 10 vegades de fet.
Es mou 10 passos, diu hola, moure 10 passos, diu hola.
Però amb l'ajuda dels bucles que pot ordenar això una mica.
Vegi com això és molt millor.
És més curt, és més petit i que es completi la mateixa cosa.
>> Passant a les variables.
Les variables són essencialment contenidors per als valors.
En Scratch, els tipus de valors poden o bé ser paraules o poden ser
nombres, valors que té control.
En aquest primer bloc tenim una variable de text que conté la
valor, Hello, World.
En el segon exemple, s'assumeix que ja tenim una variable anomenada
Contador i estem incrementant per tres.
I després, en l'últim exemple, veiem un exemple de les variables que s'utilitzen
dins de les condicions.
En aquest bloc, ens preguntem si la variable Contador és menor que zero.
>> Ara, quan es crea una variable que té per decidir si prendre la
variables a disposició de tots els sprites al programa Scratch, o
només per als sprites específics seleccionats quan vostè fa la variable.
I això és molt important decisió de prendre.
Tot es redueix al que vostè arribi vol que la variable tingui.
>> Un exemple d'àmbit local seria un variables només per un sprite de concret,
el que significa que només aquest follet faria podrà veure o modificar.
Si determina una variable mundial àmbit d'aplicació mitjançant la selecció per a tots
sprites, llavors això vol dir que l'escenari, , Així com tots els sprites,
serà capaç de veure, modificar, i l'accés que
variable que s'ha creat.
I en termes de disseny, el millor és triar àmbit local sempre que sigui possible
només perquè la resta dels sprites i l'etapa no ha de preocupar-se per
fer el seguiment d'aquesta variable.
>> En realitat pot tenir dues variables de el mateix nom per a diferents sprites com
sempre que aquestes són les variables locals.
Sprite un, un gat, pot tenir una variable nom del comptador, i el sprite 2, un gos,
També pot tenir una variable anomenada Contador, sempre que aquests
són dues variables locals.
A causa de que l'abast de la variable no s'estén a la resta de la
programa, i cap dels altres sprites o l'etapa es confondrà.
>> Anteriorment, he esmentat al punt d'entrada, quan la bandera verda clic bloc.
Aquest bloc i l'acompanyant declaracions estan essencialment dient
seus sprites o l'escenari, bé, quan la bandera verda es fa clic, es tracta de
el que ha de fer.
Però aquest no és l'únic esdeveniment que sprites i l'escenari pot respondre.
Tenim, per exemple, un esdeveniment per als quan es pressiona una tecla del teclat.
En realitat es pot triar les lletres A A a la Z, el zero al nou o
tecles de fletxa.
>> Hi ha altres esdeveniments, també, per exemple com quan es fa clic a l'element sprite.
Quan vostè comença amb blocs d'esdeveniments com aquests, et donaràs compte d'una tendència.
Tots ells tenen un sol grup en el part inferior i una part superior llisa, que
indica que res per sobre s'uneix a aquest bloc.
A construir en aquestes esdeveniments blocs i construir cap avall.
>> Ara, què passa si volem algun esdeveniment a succeir, per exemple, quan un gat és
tocar una determinada secció de l'etapa?
En realitat no tenim incorporada esdeveniment per indicar que, pel que el que anem a
has de fer és crear el nostre propi esdeveniment.
I això es diu radiodifusió.
>> Així que quan es vol indicar que una determinat esdeveniment ha ocorregut, llavors
utilitzar una trucada Broadcast negre, que es troba a la fitxa de control.
No pots escriure el nom de la esdeveniment que vol transmetre, i
llavors el que Sprite o etapa pot reaccionar a què
transmetre, si així ho desitja.
El bloc quan rebo li diu al sprites el que es pot fer quan estan
notificat que la seva mesura esdeveniment ha passat.
Així que recorda que cada vegada que difon un esdeveniment, que és amb la
entenent-se que qualsevol d'un dels sprites o l'etapa va a
rebre aquest esdeveniment i respondre-hi.
>> Ara, l'últim concepte abans d'arribar a un exemple real d'una rascada
programa, és el concepte de fils.
Va ser llavors quan l'equip està execució simultània
processos al mateix temps.
I estic segur que tots hem pres avantatge d'això.
Igual que navegar per la web mentre escoltar música.
L'ordinador pot executar diversos coses al mateix temps.
>> En aquest exemple d'això, aquests dos scripts es poden utilitzar per
exactament el mateix Sprite.
El bloc de punt d'entrada, quan l'indicador verd Seguit, s'utilitza diverses vegades, però
són dos guions independents.
En efecte, la Bandera Verda Tels bloc probablement serà un dels més
blocs populars en el seu programa.
Aquí veiem que quan la bandera verda és clic, hi ha un procés en marxa
a, així com una altra.
Així esgarrapades en realitat executar aquestes dos al mateix moment.
I sabent que en realitat es pot tenir més d'un punt d'entrada, fins i tot si
que és el mateix punt d'entrada, es va per ser realment útil si voleu
tasques separades i diferents l'un de l'altre.
>> Està bé.
Així que ara que hem cobert tots aquests conceptes, vegem un exemple.
He fet una sèrie de programes d'esgarrapades, així que tracta de seguir endavant com
fer un petit joc.
Anem a començar per l'obertura Hungry Dino Zero.
>> Anem feu clic a la bandera verda per iniciar i veure el que fa.
Tenim un sprite insecte que es mou per un uns passos, es restableix a certa alçada, i
a continuació, un pas enrere.
I després tenim un dino sprites.
Prement les tecles de fletxa, em vaig a mudar el sprite dino voltant, pel que és al seu torn
i girar.
Això pot ser divertit, però allà no hi ha molts
scripts d'aquest programa.
Definitivament podem afegir a això.
>> Per exemple, quan els dinosaures s'està movent en realitat pot sortir de la pantalla i
gairebé desaparèixer del lloc.
Volem canviar això perquè no volen el dino per escapar.
Així que deixarem el nostre script amb el vermell bandera i després editar els scripts dino.
Tingueu en compte que aquest script en particular té un bucle per sempre, que acaba amb un
vora recte.
No té cap solc a la part inferior.
I això té sentit des del nom, un bucle infinit.
Està executant una cosa infinitament i mai tindrà fi.
Així que aquesta és una gran oportunitat la introducció d'un fil.
>> Està bé.
Així que anem a afegir un altre guió.
Vaig a començar amb aquesta entrada punt, quan l'indicador verd es fa clic.
I vull comprovar contínuament si el dino serà
tocar la vora.
En moviment hi ha una petita veïnatge acurada que diu: Si On rebot Edge.
I el que volem contínuament executar aquest.
>> El que aquesta declaració no es comprova si el sprite està a la vora de la
escenari, i rebota si ho és.
I pel fet que l'usuari sempre pot moure el dino, volem trobar algun tipus de
bucle que ens permet contínuament executar aquesta instrucció.
Mirant sota control anem a triar el bucle per sempre.
Així que anem a arrossegar que en el guions dino, i després
Si a afegir rebot Edge.
I després anem a provar el programa.
>> Així que la bestiola es mou com de costum, i llavors, si posem a prova la nostra nova script
moure la nostra dino fins a la vora, veiem que no pot
escapar de l'etapa més.
Rebota de tornada.
Ara podria preguntar per què el dino rebots, però no l'error.
Bé, això és perquè nosaltres escrivim el nostre nou escriptura de guions en el dino
i no als insectes.
Així que l'error no escoltar la les instruccions que va donar el dino.
>> Està bé.
Així que anem a afegir alguna cosa nova ara.
Si vas a la pestanya Disfresses veuràs que els diferents vestits que
vénen precarregats amb el teu sprite seleccionat si vostè escull una del
Biblioteca esgarrapades.
Hi ha un bonic dino chompa vestit, així que posarem en pràctica el dino
mastegant quan pressionem, per exemple, la tecla Espai.
>> Tornar als scripts dino.
En aquesta seqüència de comandaments aquí, ja estic comprovar en el bucle infinit si
es premen certes tecles de fletxa i movent el dino conseqüència.
Si es van fletxa que es pressiona el dino gira en sentit antihorari.
Si es prem la fletxa cap a la dreta, el dino gira en sentit horari.
Així que si es pressiona la fletxa cap amunt, i després el dino avança cap endavant.
Només podem afegir a la seqüència de comandaments en lloc de l'addició d'un un per separat ja que aquesta
ja s'està comprovant en el tema de la que es premen les tecles.
>> Anem a afegir una que comprova es pressiona la tecla Espai.
Aquests blocs aquí estan comprovant per haver estat pressionades les tecles.
Tots estan en el blau més brillant, pel que anirem a la detecció de color blau brillant
declaracions i mirar al seu voltant.
Aquí hi ha un bloc Press Spaced Key.
Així que el que volem fer és tenir el dino canviar a la tala de vestuari
si, i només si, l'espai es prem la tecla.
>> Així que anem a imitar l'estructura aquí.
Ara, canviant el vestit té a veure amb com el dino sembla tan anirem a
Mira comunicat.
I, per descomptat, tenim un interruptor Vestit de Dino Chomp.
Ara, quan chompa baix no volem el dino sigui mossegant sota per sempre,
així que anem a afegir una declaració dient a canviar de nou.
Es canviarà els vestits tipus de forma ràpida, però, a causa que en les declaracions esgarrinxada
executarà esquena amb esquena molt ràpidament, gairebé instantàniament.
Així que anirem a control i després fer que el dino aturar-se una mica a l'espera
un segon després que mossega baix.
>> Ara anem a editar el sprite error.
El sprite bug s'avança 05:00 passos d'un total de cinc vegades després d'un
pausa del moment.
Al bloc superior aquí l'error es posa a una certa
valor de la coordenada x.
Per trobar les coordenades en realitat es pot del ratolí a la pantalla i
a continuació, a la part inferior de l'etapa finestra de les coordenades s'actualitzarà per
vostè pot prendre avantatge d'aquesta pràctica característica per implementar les coordenades
que desitgi.
I, en aquesta declaració aquí, instruir l'error de començar a la mateixa
x valoren cada vegada, però per recollir una mostra aleatòria d'altura per l'error que encara
estades dins de les limitacions de l'etapa.
>> Veiem aquí que estic aprofitant la retransmissió d'esdeveniments en zero.
Aquest controlador d'esdeveniments es diu New Bug1.
Així que quan l'insecte rep Nou esdeveniment Bug1,
que va a executar la sentència.
Així que després que avança el seu conjunt quantitat de vegades, en realitat
difon l'esdeveniment New bug1.
>> Però què tal si canviem aquest script una mica?
En aquest moment tenim el cuquet moure cinc passos.
Això no és molt, un total de cinc vegades.
No sabem realment quantes vegades es que sigui necessari fins que l'insecte arribi,
per exemple, al final de la pantalla, així que anem a fer que el però arribar al final de la
pantalla, però l'ús d'algun tipus d'una altra construcció.
>> Vaig a separar això perquè canviarem algunes coses.
Per eliminar blocs de zero arrossegar els blocs per a la
l'esquerra i després posada en llibertat.
I s'elimina.
Si vostè decideix que vostè no ho va fer Vols rebre l'esborrat, llavors es pot
anar a Edició i recuperar.
Però nosaltres volíem arribar Desfés-te d'aquest bloc.
>> El que volem fer ara és moure, per exemple, 50 passos i pausa d'un segon i
repetir això fins que ens toqui al final de la pantalla.
Així que anem a utilitzar un bucle que ens permet repetir un procés fins a un cert
condició es compleix, encertadament anomenat Repetir fins.
>> El que passa a l'interior de l'estat d'un Repetir fins?
Una cosa que ens diu si el error està en contacte amb la vora de la
pantalla, que estarà sota els estats de detecció.
Aquí està aquest Booleà, Tocar.
I vostè pot seleccionar aquí el voleu comprovar.
Així que anem a seleccionar el Contacte Edge i afegim aquesta sentència condicional interactiu
>> Així que ara si mirem el nostre error, que va a tornar de nou una vegada que toqui
la vora de l'escenari.
Gran.
Hem acabat amb Dino Hungry Zero, així que anem a obrir Dino Famolenc.
Una cosa així com un programa de cuina, he afegit una mica més funcions.
Per exemple, veurà que l'error que realment es llisca simplement ara
a diferència d'abans.
En el moviment hi ha aquesta lliscar comunicat.
Ara, l'error es llisca 70 unitats a la dreta de la seva exposició actual, però
roman en la mateixa posició i aquí.
I ara podem tenir un mastegant dino com hem implementat abans.
>> No obstant això, aquest programa no es diu Fam Dion per res així que tindrem l'
dino menja l'insecte.
Com podem dir-li l'error, o dir-li al dino, que ha talat?
Com podem comunicar aquest esdeveniment?
Bé, sabem que quan canviem la vestit per al dino dino a chompa
que hem va mossegar sota.
I diuen que volem que l'error desaparegui una vegada que s'ha menjat.
Bé, haurem de comprovar si l'error s'ha chomped encès i
comunicar a l'error que es va a tenir per amagar o desaparèixer de la pantalla
una vegada que s'ha mossegar baix.
>> Llavors, quin tipus de concepte, quin tipus de eines podem utilitzar perquè el dino
comunicar a l'error que ha chomped sota?
Radiodifusió.
Així que anirem a esdeveniments i afegir un esdeveniment per transmetre.
Chomp.
D'acord.
Però recorda que una vegada que emetem cosa que també hem de
rebre aquest esdeveniment.
Així que sprites emetrà chompa?
Bé, tindrem el dino-ho quan es prem la tecla Espai.
>> Anem a afegir un bloc per rebre chompa.
Ara, quan els dinosaures es redueix només a un espai buit que no vol que l'error
per reaccionar a això en absolut, només si el dino tocava el però alhora
del chompa és el que realment fer alguna cosa.
Així que anem a utilitzar la condició Si, perquè Estem comprovant si alguna cosa és
cert o no.
>> Ara bé, si ens remuntem a la detecció, a continuació, podem utilitzar aquest Touching
bloquejar i seleccioneu Dino.
A continuació, la interfície, trobem aquesta Amaga bloc que va a fer, bàsicament, l'error
desaparèixer de l'escena.
>> Farem que amagar, però sí vull un altre error, no?
El nostre dino té gana.
Per això volem donar-li una altra error de persecució.
Així que anem també va transmetre l'esdeveniment de Nova Bug1.
Llevat que volem d'esperar per un temps abans que aparegui un altre error, així que anem a
També esperi un segon.
>> Està bé.
Així que anem a veure això.
Ens va mossegar baix, a gairebé desapareix, apareix un altre, i chompa baix
en ell de nou.
Aquest és l'aspecte d'un bonic joc divertit, però tots els jocs
Necessitem marcar, no?
Llavors, què podem utilitzar per realitzar un seguiment de quants errors del dino ha menjat?
Una variable.
Així que anem a afegir una variable anomenada Score.
>> I ara anem a haver de decidir què abast aquesta variable.
Així que anem a pensar.
Si bé el que es vol, sinó per augmentar la la puntuació si ha estat
menjat amb èxit, i l'escenari podria tenir alguna cosa a veure amb la
puntuació, així que anem a assignar aquesta variable per a tots els sprites.
>> Volem augmentar el marcador si, i només si, un error s'ha menjat.
I ja hem escrit un guió que tracta d'un error que es consumeixen pel
anem a afegir aquesta declaració en, canvi en la puntuació per un.
Això significa que una vegada que vostè menja un error que augmenta la puntuació.
>> Anem a jugar una mica i menjar, No ho sé, tres errors.
Així que vostè es cansi del joc, així, vostè prem el stop de color vermell
ferm per aturar el joc.
I quan vostè vol tornar aneu premeu la bandera verda.
No obstant això, el partit segueix tres fins i tot encara que jo estic jugant un joc nou.
No volem donar als usuaris un cap començar, així que haurem de reiniciar l'
marcar cada vegada que iniciar un nou joc.
Així que anem a afegir una declaració a l'etapa de escriptura de punt de partida per establir el
puntuació de variable en zeros.
Així que ara, cada vegada que s'inicia un joc, la puntuació s'iniciarà a zero.
>> Ara obrirem Hungry Dino 2 on He afegit un parell de coses més.
Vaig fer clic dret al sprite decisió a duplicar el sprite que va fer un
Sprite idèntica a la meva anterior.
Bug Poison és essencialment idèntic al Bug1 però vaig triar un nou vestit, perquè
Em va semblar que estava, bé, tipus de verí.
En lloc d'augmentar el marcador quan l'insecte verinós es menja, en realitat
disminuir la puntuació canviant Resultat per almenys un.
>> I després vaig fer un altre vestit per nostra dino usant l'editor de pintura a
fer un malalt a la recerca de dinosaures i el va anomenar Dino Sick.
Però no fem servir aquest vestit en la nostra programa, però, així que anem a afegir una mica de
declaracions i els blocs que canviaran el vestit del dinosaure per als malalts verd
vestit cada vegada que menja un error enverinat.
>> Ara, ja que dupliquem el sprite d'errors, l'insecte enverinat té totes
els scripts que la error original no.
Si vols copiar scripts altres sprites, pot arrossegar el
seqüència de comandaments a la part superior del sprite que voleu copiar.
Però no necessitarem fer això aquí perquè l'error enverinat ja té una
script que comprova que l'error s'ha chomped avall en.
I podem prendre avantatge d'això per comunicar al dino que es va menjar un
insecte verinós.
I ens comuniquem entre sprites de radiodifusió.
Així que anem a transmès un nou esdeveniment anomenat Dino Sick.
>> I nosaltres sabem que tenim un vestit per el dino per canviar a, però també
saber d'abans que és millor per afegir una pausa
entre els canvis de vestuari.
Així que quan rebo Dino Sick, vaig per canviar de vestuari per Dino malalt, esperi
un segon, i després canviar enrere per Dino famolenc.
Està bé.
Anem a jugar el nostre joc i menjar un error i l'escarabat.
I la puntuació disminueix en un.
>> Ara, de vegades és possible que noti que la variable pot no aparèixer en la
cantonada esquerra de la pantalla.
Si es desplaça a la Secció de Dades sota les seqüències d'ordres, veurà aquesta marca
al costat de les variables que es creen.
I això oculta o unhides els variable a partir de la pantalla.
Però també es pot utilitzar una instrucció anomenat Show o
Amaga una variable específica.
Així que farem servir això Mostra Puntuació Variable d' assegurar-se que cada vegada que s'inicia
el joc, es mostra la variable.
Gran.
>> Així que anem a executar el joc i menjar un error de verins.
Ara, és una mica estrany tenir un joc tenir punts negatius, oi?
Així que anem a introduir una altra característica.
Si el dino menja *** tòxics insectes i després es posa molt malalt i la
joc s'ha acabat.
Així que per posar en pràctica això, anem a transmetem altre esdeveniment, Game Over.
Com sabem quan executar aquest joc sobre radiodifusió?
>> Bé, podem fer això diverses maneres.
Podem tenir un script en l'etapa que comprova contínuament si la puntuació
és negatiu o no, i transmissions Game Over quan el
puntuació es converteix en negatiu.
O podríem aprofitar el fet que l'única manera en què la puntuació podria mai
ser negatiu, és quan una verinosa insecte es menja.
Perquè quan vostè menja l'altre bug, els augments de puntuació.
No serveix de res en la comprovació de si ha de ser Game Over o no quan es
menjar un insecte comestible.
>> Pel que podem en realitat només ha d'afegir a la script que rep el Dino Sick
la difusió de l'esdeveniment.
Volem donar instruccions al dino com segueix.
Si el resultat és menor que zero, transmetre Game Over.
Així que anem a construir la puntuació menor que zero condició mitjançant una quadra de la
secció de l'operador i arrossegant al nostre compte a aquest bloc.
I veu aquí vostè pot arrossegar el Puntuació variable i posar menys que zero.
I anem a emetre un nou esdeveniment, Game Over.
>> Però si el resultat no ha passat per sota de zero, volem que el dino de
continuar el joc.
Així que en lloc d'utilitzar un cas aquí, anem a utilitzar un if else construir.
Una cosa si li diu a construir la nostra dino a fer una cosa si la condició és vertadera
i una altra cosa si el condició és falsa.
El cos de la primera si pot entrar en el cas dels altres, així que anem a arrossegar el polz
Però si el resultat no és menor que zero, llavors anem a tornar a la
Vestit Dino famolenc.
No volem fer això preventivament.
Gran.
>> Però ja que transmetem Game Over, encara hem de fer una
bloc receptor d'esdeveniments.
De fet, hi ha una parada de Tots declaració el control, així que anem a connectar això a
quan rebo Game Over.
Però també volem que l'insecte s'aturi, per la anem a arrossegar aquest script a tots
l'error sprites, així com l'etapa.
Intentarem això.
>> Menjar una bestiola verinós immediatament, el programa s'atura com s'esperava.
Cap dels altres insectes es mouen i no fa el dino si prem
les tecles de fletxa.
Però diguem que no volem recordar l'usuari de la seva puntuació negativa, pel que
anem a ocultar la puntuació varia de l'etapa cada vegada que el joc
En cas que es rebi.
Està bé.
>> Així que aquest és un joc bastant decent.
Amb més temps es pot afegir més sprites i més guions.
Potser els insectes es poden moure a diferents velocitats.
Podeu afegir un nou fons al'etapa -
un joc sobre fons -
de tal manera que, quan l'etapa rep el Joc sobre esdeveniment, es pot canviar a la
Game Over teló de fons i tot de la pell sprites.
Un munt de petits ajustaments es poden fer per fer el seu joc una mica més polit.
>> I això és només un exemple d'un projecte que es pot fer en scratch
utilitzant totes les eines que hem comentat anteriorment -
sprites, vestits, escenaris, telons de fons, condicions, bucles, variables,
esdeveniments i temes de radiodifusió.
Hungry Dino no utilitza cap so efectes, però vostè pot afegir fàcilment la seva
pròpia, desplaceu-vos a la fitxa Sons i l'exploració de les declaracions de so.
Scratch és una gran introducció a conceptes de programació, de manera que ser creatius
i, sobretot, divertir-se.
El meu nom és Zamyla, i això és CS50.