ZAMYLA Chan: Bună ziua și bine ați venit la walkthrough Scratch. Numele meu este Zamyla și eu voi conduce walkthroughs pentru tine acest an. În CS50, fiecare set de problema este însoțită de o descriere. În timpul acestor walkthroughs voi trece peste Problema set saptamana, explica conceptele necesare și te desparți Problema stabilit în muscaturi de gestionat. Pentru prima p-set în CS50, noi de fapt nu va intra în dactilografiere și Chestii cod mașină destul de încă. Mai degrabă, vom folosi Scratch, o program care ne permite să exploreze conceptele de programare într-o mod vizual și creativ. Acest ghid va explora conceptele fundamentale pe care le vom folosi întreaga CS50, precum și să servească ca un tutorial Scratch. În fiecare ghid voi enumera o serie de instrumente pe care le puteți utiliza pentru set problemă. De la concepte mai mari curs de real funcții, e bine și util pentru Știu la ce te echipat cu fața abordarea setul problema. În primul rând, hai sa vorbim despre sprite. Sprites sunt esențiale pentru a face proiecte în Scratch. Fiecare obiect sau fiecare caracter, fie că este vorba o pisică, un câine sau o minge, se numește un sprite. Dacă vreau, spun, două pisici în proiectul meu, Am nevoie pentru a face două sprite separate în Scratch, chiar în cazul în care acestea sunt absolut identice. Fiecare Sprite are script-uri asociate cu care Sprite specific. Script-urile sunt ceea ce ai de gând să fi construirea de tragere și fixare blocuri. Scripturile sunt instrucțiunile care determina și defini cum se comportă script-ul. Acum, sprite nu sunt doar imagini. Un costum sprite determină ceea ce arata ca Sprite. Orice Sprite dat poate avea mai mult de un costum. Un pic mai târziu în acest ghid voi vă arăta cum puteți avea dvs. costume schimbare sprite în timpul programului. Pentru a crea un sprite în Scratch, puteți fie alege costumul său inițial pentru Biblioteca zero, a trage dumneavoastră în De zero built-in editor vopsea, încărcați propria imagine, sau de a lua o fotografie cu camera computerului. Toate sprites sunt plasate pe ceea ce noi numim scena. Etapa este ca panza nostru unde sprite se pot deplasa. Deși putem avea multiple sprite, nu poate fi decât o etapă. În caz contrar, etapele și sprites sunt destul de similară în care etapa poate au, de asemenea, script-uri. Script-uri de pe scena sunt foarte utile atunci când nu aveți un script care nu se referă în mod necesar la un sprite specific. Poate se referă la mai multe dungi, sau deloc. Este de design în general bine la locul tau script-uri de pe scenă, dacă acestea sunt destul de general și nu se referă la sprite specifice. Și, la fel ca sprite au costume, etape au fundaluri care pot schimba pe parcursul programului. Și vă puteți desena propriul dvs., încărcați o imagine, face o fotografie, sau de a folosi Biblioteca zero de fundaluri. Atât scena si sprite pot juca, de asemenea, sunete din biblioteca Scratch lui, sau puteți încărca și înregistra propriul tău. Pentru a porni programul Scratch veți trebuie să faceți clic pe steagul verde de la colțul din dreapta sus al ferestrei etape. Dar, dacă nu conectați nimic la acest bloc chiar aici, atunci nimic nu e de fapt, o să se întâmple, deoarece dvs. sprite și stadiul trebuie să fie spus pentru a răspunde la evenimentul de Steagul verde a fi făcut clic. Deci, va trebui să atașați blocuri de la canelura de la baza de verde pavilion, iar apoi programul va executa aceste acțiuni atunci când începe programul tău. Ei bine, ceea ce vine după aceea? Ei bine, Scratch are multe blocuri pentru tine de a utiliza, și puteți chiar să faceți propriile dvs.. Veți vedea trei file, Scripturi, Costume și sunete. Sub eticheta Scripturile sunt categorii de declarații. Declarațiile sunt convenabil organizat de culoare. Trebuie acțiuni legate de mișcare, sunet, aspect, și așa mai departe. Deși veți avea alte blocuri construite în jurul declarațiile dumneavoastră, este declarații, care vor ajuta la sprite sau stadiul de a face ceva, în timp ce alte blocuri vor ajuta la determinarea când să le facă. Să presupunem că vă creați foarte Primul proiect și doriți doar pisică de miau, în anumite circumstanțe. Pentru a implementa aceasta, putem lua Avantajul de Booleans. Acestea sunt expresii care evaluează să fie adevărat sau fals. În Scratch acestea sunt identificate prin unghiurile la sfârșitul blocurilor. Veți avea o varietate de tipuri diferite de Booleans precum este șoarece presat în jos, nu 2 plus 2 echivala la 5, sau presează utilizator pe o anumită tastă de pe tastatură? Acum, nu puteți folosi doar acestea booleene singur. Veți avea nevoie să le combine cu ceea ce noi numim condiții. Blocuri condiție pot fi găsite în declarațiile de control portocaliu. Condiții convenabil au un pic substituent care arată forma de blocul de care aveți nevoie pentru a pune în ea. Deci, în funcție de contextul situație, puteți alege un Boolean și puneți-l în interiorul starea dumneavoastră. Și pune împreună, aveți o declarație condiționată. Odata ce ati pus declaratii in care bloca aveți o structură creată prin care o dată o anumită condiție este îndeplinită, vă executa atunci cei declarații. Unul dintre avantajele de calculatoare este marea putere și viteza cu care acestea poate executa procese repetitive. În loc de, să zicem, repetând o instrucțiuni de peste si peste si peste din nou, și de fapt, tastând asta, sau în acest caz, glisare și fixare și glisare și fixare, ceea ce ne pot face este chintesența într-o buclă. Bucle poate fi utilizat pentru a executa fie lucrurile infinit cu o buclă pentru totdeauna, sau pentru un anumit număr de ori. De exemplu, se repetă declarația, spune hi, 10 ori, sau poate până la o anumită condiție este adevărată. Și cu acest Repetați până când blocați vedea că Scratch este aluzie că veți avea nevoie de a plasa un Boolean în Repetați până bloc pentru a face o declarație de condiționalitate. Acum, știm că putem ingloba procese repetitive interiorul bucle, astfel încât să puteți vedea de ce ceva de genul acest lucru nu ar putea fi ideal. Este foarte mult timp, pur si simplu nu același lucru de peste si peste din nou, de 10 ori, de fapt. Se mișcă 10 pasi, spune Bună ziua, deplasa 10 pași, spune salut. Dar, cu ajutorul buclelor noi poate ordonat asta un pic. Vezi cum acest lucru este mult mai bine. Este scurt, este mai mic și se completează același lucru. De a trece la variabile. Variabile sunt în esență containere pentru valori. În Scratch, aceste tipuri de valori pot fie fi cuvinte sau pot fi numere, valori pe care le au control asupra. În acest prim bloc avem un variabilă de text care conține valoare, Bună ziua, lume. In al doilea exemplu, se presupune că avem deja o variabilă numită Contra și vom incrementarea este de trei. Și apoi, în ultimul exemplu, vom vedea un exemplu de variabile utilizate interiorul condiții. În acest bloc, ne întrebăm dacă variabila Contor este mai mică decât zero. Acum, când creați o variabilă ai pentru a decide dacă să variabilă disponibil la toate sprites în programul Scratch, sau doar pentru sprite specifice selectat atunci când face variabila. Și acest lucru este un foarte important decizia de a face. Totul se reduce la ceea ce domeniu te Vreau variabila să aibă. Un exemplu de aplicare locale ar fi o variabila doar pentru un sprite specifice, ceea ce înseamnă că numai că Sprite ar putea vedea sau modifica. Dacă determinați o variabilă cu global aplicare prin selectarea pentru toți sprite, atunci înseamnă că scena, precum și toate sprite, va fi posibilitatea de a vedea, modifica, și de acces care variabilă pe care le-ați creat. Și în termeni de design, este mai bine sa alege domeniul local ori de câte ori aveți posibilitatea doar pentru ca restul de sprite și etapa nu trebuie să vă faceți griji cu privire la urmărirea acelei variabile. Puteți avea de fapt două variabile de același nume pentru diferite sprites ca timp cât acestea sunt variabile locale. Sprite unul, o pisica, poate avea o variabilă Numele Counter, și sprite doi, un câine, poate avea, de asemenea, o variabilă numită Contracara atât timp cât acestea sunt ambele variabile locale. Deoarece domeniul variabilei nu se extinde la restul Programul, și nici unul dintre celelalte sprites sau etapa va fi confuz. Mai devreme, am menționat punctul de intrare, atunci când steagul verde clic pe bloc. Ca bloc și de însoțire declarații sunt în esență, spune sprite sau cu scena, OK, atunci când steagul verde este apasat, acesta este ceea ce ar trebui să faci. Dar că nu este singurul eveniment care sprite și stadiul pot răspunde la. Avem, de exemplu, un eveniment de atunci când este apăsată o tastă. Puteți alege de fapt, literele A prin Z, la zero la nouă sau tastele săgeată. Există și alte evenimente, prea, cum ar ca atunci când Sprite dvs. face clic. Când începe cu blocuri eveniment, cum ar fi acestea, veți observa o tendință. Ei au toate un singur grup de partea de jos și un top neted, care indică faptul că nimic nu mai sus atașează la acel bloc. Ai construi în cadrul acestor evenimente blocuri și de a construi în jos. Acum, ce se întâmplă dacă ne dorim un eveniment să se întâmple, să zicem, atunci când o pisica este atinge o anumită secțiune din etapa? Noi de fapt nu au nici o built-in Evenimentul a semnifica faptul că, așa cum vom trebuie să faceți este să creați propriul nostru eveniment. Și care se numește de radiodifuziune. Deci, atunci când doriți pentru a semnala că o anumit eveniment sa întâmplat, atunci te folosesc un numit Broadcast negru, care se găsește în fila de control. Acolo veți tastați în numele cazul în care doriți să difuzeze, și atunci oricare Sprite sau etapă poate reacționa la care difuzat, dacă doresc acest lucru. Când primesc Block spune sprite ce să facă atunci când sunt anunțat că obiceiul Evenimentul sa întâmplat. Deci, amintiți-vă că ori de câte ori difuza un eveniment, e cu înțelegere care fie unul dintre sprite sau etapa se va primesc acel eveniment și să răspundă la ea. Acum, ultimul conceptul înainte de a ajunge la un exemplu real al unui zero Programul, este conceptul de fire. Asta e atunci când computerul este executarea simultană procese, în același timp. Și eu sunt sigur că ne-am luat toate profite de acest lucru. Cum ar fi navigarea pe web în timp ce a asculta muzică. Computerul poate executa mai multe lucruri în același timp. În acest exemplu aici, aceste două scripturi pot folosi În același sprite exact. Blocul punctul de intrare, când Steagul Verde Clic, este folosit de mai multe ori, dar ele sunt două scripturi separate. Într-adevăr, steagul verde Clic bloc va fi, probabil, una dintre cele mai blocuri de populare în program. Aici vom vedea că, atunci când steagul verde este clic, nu e un proces continuu pe, precum și un alt. Deci, Scratch va rula de fapt, aceste două, în același timp exact. Și știind că puteți avea de fapt, mai mult de un punct de intrare, chiar dacă e același punct de intrare, se va a fi foarte util dacă doriți să sarcini distincte separate, una de alta. Bine. Deci, acum că ne-am acoperit toate aceste concepte, să ne uităm la un exemplu. Am făcut o serie de programe de zero, asa ca incearca sa urmeze de-a lungul așa cum am face un mic joc. Să începem prin deschiderea Ți-e foame Dino Zero. Să faceți clic pe steagul verde pentru a începe l și vezi ce face. Avem un spirit bug care se mută pentru o câțiva pași, se resetează la unele înălțime, și apoi pași înapoi. Și atunci avem un Dino sprite. Prin apăsarea tastelor săgeți, mă mut sprite dino în jurul, ceea ce face rândul său, și rotiți. Care poate fi un fel de distracție, dar acolo nu sunt foarte mulți script-urile din acest program. Putem adăuga cu siguranță la acest lucru. De exemplu, atunci când Dino este o mișcare pot obține de fapt de pe ecran și aproape dispar de pe site-ul. Vrem să schimbăm asta pentru că noi Nu vreau Dino să scape. Deci, haideți să oprim script-ul nostru cu roșu pavilion și apoi editați script Dino. Observați că acest scenariu special, are o buclă pentru totdeauna, care se încheie cu un marginea dreaptă. Ea nu are nici o canelură în partea de jos. Și acest lucru are sens din nume, o buclă pentru totdeauna. Se executa ceva infinit și nu se va termina. Deci, aceasta este o mare oportunitate să introducă un fir. Bine. Deci, haideți să adăugați un alt scenariu. Voi începe cu această intrare punct, când Green Flag Clic. Și vreau să verificați continuu dacă dino va fi atinge marginea. Sub Propunerea exista un bloc mic îngrijit care spune, Dacă pe Bounce Edge. Și așa vrem să continuu executa aceasta. Ce această declarație nu este verifică dacă sprite este pe marginea etapă, și ricoșează înapoi, dacă acesta este. Și pentru că utilizatorul poate muta întotdeauna Dino, ne-o dorim pentru a găsi un fel de buclă, care ne permite să continuu executa această declarație. Privind sub control vom alege bucla totdeauna. Deci, haideți să trageți că în script Dino, și apoi Dacă adăugați Bounce Edge. Și apoi să testeze programul nostru. Deci, bug-ul este în mișcare ca de obicei, și apoi, dacă vom testa noul nostru scenariu de mutarea Dino noastră la margine, vom vedea că nu se poate scăpa de etapa mai. Ricoșează imediat. Acum, s-ar putea întreba de ce Dino bounces dar nu bug-ul. Ei bine, asta pentru ca am scris Cel mai nou script-ul în interiorul script-dino și nu de bug-uri. Deci, bug-ul nu va asculta instructiuni am dat Dino. Bine. Deci, haideți să adăugați ceva nou acum. Dacă te duci la tab-ul Costume veți vedea că diferite costume care vin preîncărcate cu Sprite selectată dacă alegeți unul din Bibliotecă zero. Nu e dragut dino chomp costum, asa ca hai sa implementeze Dino chomping când apăsați, spune, tasta Spațiu. Înapoi la scripturile Dino. În acest scenariu aici, sunt deja verificarea în bucla pentru totdeauna dacă anumite sagetile sunt presate și se deplasează Dino în consecință. Dacă au plecat săgeată este presat, dino se rotește în sens antiorar. Dacă se apasă săgeata dreapta, Dino rotește în sens orar. Deci, dacă se apasă pe săgeata în sus, apoi Dino progreseaza înainte. Putem adăuga doar la script-ul în loc de adăugarea unui unul separat, deoarece această este deja verificarea în tema care chei sunt presate. Să adăugăm unul care verifică tasta Spațiu presat. Aceste blocuri de aici sunt de verificare pentru a tastelor apăsate. Toate acestea sunt în albastru luminos, așa Să mergem la senzor albastru strălucitor declarații și privire. Iată un bloc de presă Spaced cheie. Deci, ceea ce vrem să facem este să aibă Dino trece la tăierea în jos costum dacă, și numai dacă, Space Cheia este apăsat. Deci, haideți să imita structura aici. Acum, schimbarea costum are de a face cu cum Dino pare asa ca vom merge la Uită-te declaratie. Și destul de sigur, avem un switch Costum de Dino Chomp. Acum, când am mesteca pe noi nu vrem Dino a fi chomping în jos pentru totdeauna, asa ca hai sa adaugi o declarație spune pentru a comuta înapoi. Se va schimba costume fel de repede, însă, pentru că în declarațiile de reîncărcare va executa spate în spate într-adevăr rapid, aproape instantaneu. Deci să mergem la control și apoi a face Dino pauză pentru un pic de așteptare o secundă după o chomps jos. Acum, haideți să editați sprite bug. Sprite bug pași înainte cinci pașii de la un total de cinci ori, după o pauză moment. În blocul de sus aici bug se plasează la o anumită Valoarea x-coordona. Pentru a găsi coordonatele puteți de fapt, mouse-ul pe ecran și apoi în colțul de jos al etapei Fereastra coordonatele va actualiza astfel puteți profita de acest lucru la îndemână caracteristică pentru a pune în aplicare coordonatele pe care doriți. Și, în această declarație aici, ne instrui bug-ul pentru a începe de la același x valoare de fiecare dată, dar pentru a alege o întâmplare înălțime pentru bug-ul care încă rămâne în cadrul constrângerilor de etapa. Vezi aici care am profita de difuzarea evenimentului în Scratch. Acest handler eveniment se numește New BUG1. Deci, ori de câte ori bug primește Noul BUG1 eveniment, va executa declarația. Deci, după ce se misca inainte set de număr de ori, este de fapt emisiuni eveniment nou BUG1. Dar ce-ar fi să se schimbe acest scenariu un pic? Chiar acum avem bug deplasează cinci pași. Asta nu e mult, un total de de cinci ori. Noi nu știm cu adevărat cât de multe ori va fi nevoie de până la Bug ajunge, spune, la sfârșitul a ecranului, asa ca hai sa face dar ajunge la sfârșitul ecran, dar folosesc un fel de altă construct. Am de gând să se separe acest lucru, deoarece vom schimba câteva lucruri. Pentru a șterge blocuri de la zero vă trageți blocuri pentru a stânga și apoi eliberați. Și acesta devine șters. Dacă vă decideți că nu Vrei să-l eliminat, atunci puteți du-te la Edit și undelete. Dar noi am vrut să obțineți scăpa de acel bloc. Ceea ce vrem să facem acum este de a muta, spune, 50 de pași și pauză de o secundă și repeta acest lucru până când vom atinge sfârșitul ecranului. Deci, hai să folosim o buclă, care ne permite să repetați procesul până la o anumită condiție este îndeplinită, pe bună dreptate numit Repetați până când. Ce se întâmplă în interiorul condiția de un Repetați până când? Ceva care ne spune dacă bug atinge marginea ecran, care va fi sub situațiile sensibile. Iată acest Boolean, se ating. Și puteți selecta aici ceea ce pe care doriți să verificați. Deci, vom selecta Edge Atingerea și adăugați această declarație condiționată înapoi inch Deci, acum, dacă ne uităm la bug-ul, acesta va muta înapoi din nou odată ce atinge marginea scenei. Mare. Am terminat cu Ți-e foame Dino Zero, asa ca hai sa deschis Hungry Dino One. Ca un fel de spectacol de gătit, am adăugat un pic mai multe caracteristici. De exemplu, veți vedea că bug-ul este, de fapt alunecă destul de simplu acum spre deosebire de înainte. Sub mișcare există acest aluneca declaratie. Acum, bug-ul alunecă 70 de unități de dreptul de expunerea ei actual, dar rămâne la aceeași poziție Y aici. Și putem avea acum o chomping Dino așa cum am implementat înainte. Dar, acest program nu este numit Hungry Dion pentru nimic, deci haideți să aibă Dino mânca bug-ul. Cum am putea spune bug-ul, sau spune- Dino, care le-a tăiat în jos? Cum am putea comunica acest eveniment? Ei bine, știm că atunci când vom trece costum pentru Dino pentru Dino chomp pe care le-am chomped jos. Și spunem că vrem bug-ul să dispară după ce a mâncat. Ei bine, va trebui să verifice dacă bug-ul a fost chomped pe și comunicate de bug-ul care va avea pentru a ascunde sau a dispărea de pe ecran după ce a fost chomped jos. Deci, ce fel de concept, ce fel de instrument putem folosi pentru a avea Dino comunicate de bug-ul care a chomped jos? Radiodifuziune. Deci să mergem la evenimente și adăugați un eveniment de difuzare. Chomp. OK. Dar amintiți-vă că, odată ce vom difuza ceva ce trebuie, de asemenea, să primi acest eveniment. Deci, care sprite va difuza mesteca? Ei bine, hai să Dino face ca atunci când este apăsată tasta Spațiu. Să adăugăm un bloc pentru a primi mesteca. Acum, când Dino coboară doar pe un spațiu gol nu vrem bug să reacționeze la faptul că, la toate, numai dacă dino fost atinge, dar în momentul a mesteca avem de fapt face ceva. Deci, vom folosi starea Daca deoarece vom verifica dacă ceva este adevărat sau nu. Acum, dacă ne întoarcem la Sensing, apoi putem folosi acest Atingerea bloca și selectați Dino. Apoi, sub pare, găsim acest Ascunde bloc, care va face practic bug dispărea de pe scena. Vom face o ascund, dar facem Vreau un alt bug, nu? Dino nostru este foame. Așa că vrem să-l dea un alt bug la Chase. Deci, haideți, de asemenea, difuzate Eveniment nou BUG1. Cu excepția vrem să aștepte pentru un timp înainte de a apare un alt bug, asa ca hai sa așteaptă, de asemenea, o secundă. Bine. Deci, haideți să vedem asta. Noi chomped jos, un dar dispare, apare un altul, și am chomp jos pe ea din nou. Acest lucru este în căutarea ca o destul de joc distractiv, dar toate jocurile Trebuie să înscrie, dreapta? Deci, ce putem folosi pentru a ține evidența cât de multe bug-uri a mâncat Dino? O variabilă. Deci, haideți să adăugați o variabilă numită scor. Și acum va trebui să decidă ce Domeniul de aplicare Această variabilă are. Deci, hai să ne gândim. În timp ce ne-ar putea dori, dar pentru a crește Scorul dacă acesta a fost mâncat cu succes, iar scena ar putea are ceva de-a face cu scor cât mai bine, asa ca hai sa atribui Această variabilă a tuturor sprites. Vrem să crească scorul în cazul în care, și numai în cazul în care, un bug-ul a fost mâncat. Și am scris deja un scenariu care se ocupă cu un bug fi mâncat atât de haideți să adăugați această declarație o la, Schimbarea Scor câte unul. Asta înseamnă că, odată ce mananci un bug de scorul crește. Să jucăm pentru un pic și să mănânce, Nu știu, trei bug-uri. Astfel încât să obțineți obosit de joc, ei bine, veți apăsa roșu de stop semn pentru a opri jocul. Și atunci când doriți să vină înapoi veți apăsați din nou steagul verde. Dar scorul la încă trei chiar deși eu joc un joc nou. Noi nu vrem să dea utilizatorilor un cap începe, așa că va trebui să resetați înscrie de fiecare dată când începe un joc nou. Deci, haideți să adauge o declarație la etapa de script-ul punct de intrare pentru a seta scor variabilă la zero. Deci, acum, de fiecare dată când începe un joc, scorul va începe de la zero. Acum, haideți să deschidă Hungry Dino 2 unde Am adăugat câteva lucruri. Chiar am apasat pe Sprite bug-ul a duplicat Sprite pe care a făcut-o Sprite identic cu cel meu anterior. Bug otravă este în esență identic cu BUG1 dar am ales un costum nou, deoarece Am crezut ca a uitat, de asemenea, fel de otrăvitoare. Loc de a crește scorul când bug-ul otrava este mâncat, am de fapt, reduce scorul prin schimbarea Scor de unul negativ. Și apoi am făcut un alt costum pentru Dino noastră folosind editorul vopsea de face un aspect Dino bolnav și Dino Sick nume. Dar noi nu folosim acest costum în nostru Programul totuși, asa ca hai sa adauge unele declarații și blocuri care vor schimba costum Dino de la bolnavi verde costum ori de câte ori mănâncă un bug otrăvit. Acum, de când am duplicat Sprite bug, bug-ul otrăvit are toate script-urile care bug-ul original, nu. Dacă ați fi dorit să copiați script-uri de la alte sprite, aveți posibilitatea să glisați script pe partea de sus a Sprite pe care doriți să le copiați. Dar nu vom avea nevoie să faci asta aici pentru că bug-ul otrăvit are deja un script care verifică că bug-ul a fost întins pe chomped. Și putem profita de acest lucru pentru a să comunice Dino că a mâncat o bug otrăvitoare. Și ne comunica între sprite de radiodifuziune. Deci, hai sa difuzat un nou eveniment numit Dino bolnav. Și știm că avem un costum pentru Dino pentru a trece la, dar, de asemenea, știu de mai devreme că e cel mai bun pentru a adăuga într-o pauză între schimbări costum. Așa că atunci când am primit Dino bolnav, am de gând pentru a schimba costum de Dino bolnav, așteptați o secundă și apoi trece înapoi la Dino foame. Bine. Să jucăm jocul nostru și să mănânce un bug și gândacul. Iar scorul scade cu câte o. Acum, uneori, s-ar putea observa că variabilă nu ar putea să apară pe colțul din stânga jos al ecranului. Dacă navigați la secțiunea de date sub script-urile, veți vedea acest marcaj pe lângă variabilele pe care le creați. Și acest lucru ascunde sau unhides de variabila de pe ecran. Dar puteți folosi, de asemenea, o declarație Arată numit sau Ascunde unei variabile specifice. Deci, hai să folosim acest spectacol variabilă Scorul a asigurați-vă că de fiecare dată când începe jocul, se arată variabila. Mare. Deci, haideți să rula jocul și să mănânce un bug otrava imediat. Acum, e un pic ciudat de a avea un joc pentru a avea puncte negative, nu? Deci, haideți să introducă o altă caracteristică. Dacă dino mănâncă prea multe otrăvitoare bug-uri atunci când devine prea bolnav și jocul este de peste. Deci, pentru a pune în aplicare acest lucru, vom difuza un alt eveniment, Game Over. Cum știm când să execute acest joc Peste emisiune? Ei bine, putem face acest lucru mai multe moduri. Putem avea un script în stadiul la care verifică permanent dacă scorul este negativ sau nu, și difuzează Joc peste, atunci când Scorul devine negativ. Sau am putea profita de faptul că singurul mod în care scorul ar putea vreodată fie negativ, este atunci când un otravitoare bug-ul este mâncat. Pentru că atunci când mănânci de altă parte bug, scorul crește. Nu are nici un rost în a verifica dacă acesta ar trebui să fie Game Over sau nu atunci când mânca un bug comestibil. Deci, de fapt, putem adăuga doar la script care primește Dino Sick eveniment difuzare. Vrem să instruiască dino cum urmează. Dacă scorul este mai mică decât zero, difuzat Game Over. Deci, vom construi scor mai mică decât zero condiție folosind un bloc de secțiunea operatorului, și trăgând în scorul noastră la acest bloc. Și vedeți aici puteți trage doar scor variabilă și a pus mai mică decât zero. Și vom difuza un nou eveniment, Game Over. Dar dacă scorul nu a plecat de mai jos la zero, vrem Dino a continua jocul. Deci, în loc de a folosi o dacă aici, să utiliza o dacă else. O dacă else spune Dino nostru de face un singur lucru în cazul în care condiția este adevărată și un alt lucru, dacă Condiția este falsă. Corpul de primul nostru în cazul în care pot intra în în cazul în care altcineva, astfel încât să trageți că inch Dar dacă scorul nu este mai mică decât zero, apoi să reveniți la Costum Dino foame. Noi nu vrem să facem asta preventiv. Mare. Dar din moment ce am difuzat Game Over, avem încă nevoie pentru a face o receptor Block eveniment. Există de fapt o escala Toate declarație în control, astfel încât să se conecteze la acest atunci când primesc Game Over. Dar am dori, de asemenea bug-ul să se oprească, așa să trageți acest script pe toate bug Sprites precum etapă. Să încercăm asta. Posibilitati de alimentatie un bug otrăvitoare imediat, programul se oprește conform așteptărilor. Nici una din celelalte bug-uri mișcare și nici nu Dino dacă apăsați jos tastele săgeată. Dar să spunem că nu vrem să reamintim utilizatorul de scorul lor negativ, așa Sa ne ascundem scorul variabila de la etapa ori de câte ori joc Peste eveniment este primit. Bine. Deci, acesta este un joc destul de decent. Cu mai mult timp, puteți adăuga mai mult sprite și mai multe script-uri. Poate că bug-uri se pot muta la viteze diferite. Puteți adăuga un nou fond la etapa - un joc Peste fundal - astfel încât, atunci când etapa primește Game Over eveniment, se poate trece la Game Over fundal și toate de a ascunde sprite. O mulțime de trucuri mici pot fi făcute pentru a face joc un pic mai lustruit. Și acesta este doar un exemplu de Proiectul pe care le puteți face în Scratch folosind toate instrumentele de care am discutat mai devreme - sprite, costume, etape, fundaluri, condiții, bucle, variabile, evenimente de radiodifuziune și fire. Ți-e foame Dino nu utilizează nici un sunet efecte, dar puteți adăuga cu ușurință dvs. propriu prin navigarea la fila Sunete și explorarea declarațiile de sunet. Scratch este o introducere la conceptele de programare, astfel încât să fie creativi și, cel mai important, sa te distrezi. Numele meu este Zamyla, iar acest lucru este CS50.