[Powered by Google Translate] ZAMYLA Chan: Bone. Saluton, ĉiuj, kaj bonvenon al Walkthrough 0. Mia nomo Zamyla, kaj mi estos kondukante tiujn walkthroughs ĉi tiu jaro. En CS50, ĉiu problemo aro estas akompanita de walkthrough per kiu ni iros tra la semajno problemo aro, paroli ĝin tra, paroli kiel komenci, diskuti malsamajn teknikoj kaj konsiloj por vere rompas la problemo metita en iuj regebla mordas. Mi estas ankaŭ vere feliĉa respondi demandojn kiujn vi havi sur la problemo aro. Sen pli enkonduko, mi ĝojas ke vi tie, ĉu vi estas tie en persono aŭ agordo en linio. Ni komenci. Do la unua p-aro en CS50 - fakte, ni ne tuj eniri tajpante kaj maŝino kodo stuff sufiĉe ankoraŭ. Ni efektive tuj estos uzante Scratch, kiu estas programo kiu permesas al ni fari kelkajn treni kaj guto programado. Kaj tial, kvankam ni ne tajpas, vere ni permesas esplori kelkajn el la fundamentaj konceptoj kiuj ni uzos cxiujn tra CS50. Nun, iuj el tiuj konceptoj estas listigitaj ĉi tie en la Iloj. Kion mi ŝatus fari por ĉiu walkthrough estas prezenti vin ĉiujn kun aro de iloj kiuj vi povas uzi por la walkthrough. Kaj tiel, ne maltrankviliĝu. Ni iros super ĉiuj de ĉi tiuj terminoj kaj ĉiuj el tiuj teorioj dum la walkthrough. Nun, ĉu vi fini uzante ĉiuj tiuj iloj, aŭ nur iuj el ili, ĝi estas vere bona scii kion vi ekipita kun povi alfronti la problemon aro. Do en Scratch, la unua Lingo, ke vi bezonas scii estas kion oni sprite estas. Do ĉiu objekto aŭ ĉiu karaktero, estu ĝi kato hundon aŭ pilko, nomiĝas sprite. Kaj tial, se mi volas, diri, du katoj - ĉu aŭ ne ili estas identa - Mi bezonas fari du apartaj spiritoj en Scratch. Kaj tiel sprites havas skriptojn asociita kun ili. Skriptoj estas vere kion vi tuj estos konstruaĵo - trenante kaj faliginte - kun via blokoj. Kaj tiel kion skriptoj ne estas speco de determini kaj difini kiel la sprite kondutas. Sprites estas ne reale nur bildojn, ĉar ni havas kostumoj ankaŭ asociita kun la spiritoj tian determini kion la sprite aspektas. Kaj vi povas havi pli ol unu kostumo por donita sprite. Do iam dum via Scratch programo, kiel ni montros poste hodiaŭ dum la walkthrough, vi povas efektive ŝanĝi la kostumo de via sprite fari ĝin rigardi ĉu iomete malsama aŭ tute malsama. Kaj tiel estas tri manieroj de krei sprite en Scratch. Unu, vi povas desegni vian propran en Scratch la konstruita en farbo redaktoro. Vi povas alŝuti vian propran bildon, uzu unu el Scratch la korpigitaj bonaj, aŭ, la lastan eblon, akiri hazarda sprite. Nun, se vi sentas aparte bonŝanca, tiam mi bonvenigas vin provi vian sorton kaj krei hazarda sprite. Do ĉiuj spiritoj estas metitaj sur la etapo en Scratch. La scenejo - ni povas trakti ĝin kiel nian tolo. Kaj tial ĉiuj spiritoj estas metitaj sur la scenejo. Kaj ĉi tiu etapo, kio faras estas permesas ĉiujn sprites movi ĉirkaŭ sur ĝi. Kaj ĝuste kiel spiritoj, la stadio havas ankaŭ skriptoj. Kaj tial tiuj skriptoj, por meti ilin sur la scenejo - ĝi estas vere utila kiam, diru vi havas skripton kiu ne ĝuste rilatas al unu specifa sprite, sed prefere rilatas al multnombraj sprites aŭ nur, ĝenerale, iu ke vi volas fari. Do vi povas meti tiujn skriptoj sur la scenejo anstataŭe, kaj ke estus iomete pli bonan dezajnon. Nun, dum vi povas havi plurajn sprites, estas bone memoru, ke vi povas havi nur unu stadion. Sed stadioj ankaŭ havas fonojn. Kiel kontraŭ kostumoj, kiel sprites fari, etapoj havas fonoj. Kaj ankaux vi povas aŭ desegni vian propran ĉu alŝuti viajn proprajn bildo por uzi kiel fono. Do ĉu iu havas demandojn antaŭ ol ni iru? OK. Bonvolu interrompi min kion dum la walkthrough, kaj Mi estas feliĉa por respondi demandojn vi havas. OK. Do kiam vi komencas viajn sprite programo, kion vi tuj ĉu estas vi tuj klaku la verdan flagon. Sed se vi ne konekti ion al ĉi tiu bloko dekstre ĉi tie, tiam nenio estas vere okazos. Ĉar, vi vidu, kion la skriptojn kaj la etapo bezonas fari estas vere scias respondi al la evento - tion ni nomas ilin, eventoj - de la verda flago esti klakis. Do vi bezonas reale alfiksi blokoj por la fendo ĉe la malsupro de tiu verda flago clicked bloko, kaj tiam la programo scios kion fari kaj kiel respondi al la verda flago esti klakis. Nu, kio venas post tio? Nu, ni havas plétora de blokoj en Scratch uzi, kaj kie la karno, vere, de via programo kuŝas en tiuj deklaroj. Kaj tial tiuj asertoj estas konvena organizita de koloro. Vi havas agoj rilataj al movado, sono, rigardojn, kaj tiel plu. Kaj tial vi povas vidi povas navigi inter ili en la langetoj en via Scratch programo. Kaj tial, dum vi havas aliajn aferojn konstruis ĉirkaŭ ĝi, kion la deklaroj reale fari estas fakte rakontas la sprites aŭ la scenejon por fari ion. Kiel kontraŭ nur diras, OK, kiam vi faras tion, la deklaroj reale enhavi la reala karno de ĝi. Imagu ke vi volas nur ekzekuti certa ago, diru vi nur volas ke la katon al Meow kiam fakte okazas. Ni povas utiligi Booleans, kiu vi lernis en prelegi unu. Kaj tiel ili estas esprimoj kiuj taksos al ĉu vera aŭ malvera. Kaj tial tiuj estas identigita en Scratch de la - vi vidas la anguloj ĉe la fino de tiuj blokoj. Kaj tial vi havas varion de malsamaj tipoj de Booleans. Vi "estas la plej premita suben", "faras 2 plus 2 egaligas al 5, "aŭ" estas la uzanto premante sube iuj ŝlosilaj sur la klavaro? " Nun, vi povas ne nur uzi tiujn nur. Kion vi devas fari estas kombini ilin kun kondiĉo. Do la kondiĉo estas tie sub la kontrolo langeto en Scratch. Kaj tiel ili oportune havi iom lokokupilo ke montras la formon de la bloko, ke vi bezonas meti en ĝin. Do laŭ la kunteksto de la situacio, vi povas elekti Bulea kaj poste meti ĝin en via stato. Kaj tie vi havas kondiĉa propozicio. Se vi metas deklaroj ene ol bloko, tiam vi havas strukturo starigis, per kiu iam iu kondiĉo estas kunvenis la maldekstra, vi tiam ekzekuti la komunikaĵo. Jes? Studento: Se variablo reprezentas ciferon, can you uzi la variablo interne de la Bulea, kiel la verdo, ekzemple? ZAMYLA Chan: Jes, vi povas. Vi povas treni kaj faligi la variablo valoron ene de la cirkuli formon tie. Nun, unu el la avantaĝoj de komputiloj estas la vasta potenco kaj rapido je kiu ili povas ekzekuti repetitivos procezoj. Kaj tiel, anstataux, ekzemple, ripetante instrukcio super kaj denove kaj denove kaj efektive tajpi ke el - aŭ en ĉi tiu kazo, en Scratch, trenante kaj faliginte kaj trenante kaj faliginte - kion ni povas fari estas encapsular ĝin en buklo. Kaj tiel, cikloj povas kutimi ĉu ekzekuti aĵoj malfinie kun eterne buklo, aŭ por aro da fojoj - diri, ripeti "diru hi" 10 fojojn aŭ ĝis iu kondiĉo estas vera. Kaj tiel, vi vidos ke Scratch estas sugestante ke kiam vi havas kondiĉo kiel "ripeto ĝis," tiam la sola kiu Havos ene estas Bulea valoro. Bone. Do nun, ni scias ke ni povas encapsular repetitivos procezoj ene de cikloj. Vi povas vidi kial io tiamaniere povus ne esti idealo. Ĝi ne havas sur la glito. Esence, ĝi simple faras same denove kaj denove 10 fojoj, fakte. Ĝi moviĝas 10 paŝoj, diras saluton, movas 10 paŝoj, diras saluton. Do nun vi vidas, ke iam ni havas cikloj, iu kiel ĉi tiu estas multe pli bona. Estas pli mallonga, ĝi estas pli malgranda, kaj ĝi vere kompletigas la sama afero. Nun, en Scratch ĉi eble ne faras multe de la diferencon, sed ĝi fakte savas vin iom da tempo. Do sur la variablo esprimo - vi povas reale uzi variablojn kaj metis ilin ene de kondiĉoj. Kiel esprimis dekstra tie, vi vidas ni havas variablo nomata "Kontraŭstari", kaj ni egaligas kiun vidi ĉu ĝi estas malpli ol 0. Do variabloj esence, mi dirus ke, ujoj por valoroj. En Scratch, tiuj tipoj de valoroj povas ĉu esti vortoj aŭ ili povas esti ciferoj. Kaj tial, kun ĉi tiuj variabloj, kion ni povas fari kun ili estas ni povas agordi siajn valoron. Do, en la unua ekzemplo tie, ni havas la ekzemplon de teksto enhavanta la valoro "Saluton, mondo!" En la dua ekzemplo, ĝi estas alprenita, ke ni jam havas variablo nomata "Kontraŭstari", kaj en tiu kazo, ni ŝanĝas ĝin per 3. Ni pliigante ĝin per 3. Kaj poste en la lasta ekzemplo, la variabloj povas esti trenitaj por esti metita en Bulea esprimo. Nun, kiam vi kreas variablo, kion vi devas decidi estas se vi faros la variablo por ĉiu el la sprites en via Scratch programo, aŭ por nur la specifaj detaloj sprite, en kiu vi elektis kiam vi faras la variablo. Kaj tiel tio estas tre grava decido por fari. Kaj vere venas malsupren al kio medion vi volas ke la variablo havi. Do ekzemple, ekzemplo de loka medion estus se vi elekti nur por tiu sprite havi la variablo. Por ke tio signifus, ke nur tiu sprite povus aliro ke variablo. Nur tiu sprite povus vidi ĝin, ŝanĝi ĝin, modifi ĝin. Se vi elektas por havi tutmondan medion - tial jen se vi diras por ĉiuj spiritoj, se vi elektas tiun eblon - tiam tio signifas ke la stadio tiel kiel ĉiuj la spiritoj povos vidi, modifi, kaj konsenti ke variablo kiu vi kreis. Demandojn ĝis nun sur variabloj aŭ ion? Jes. Studento: Por la variabloj, vi povas havi du variabloj de la sama nomo, se ili estas en malsamaj sprites? ZAMYLA Chan: Kiel longe, kiel ili estas lokaj sprites --- ah, jes, pardonu. Do la demando estis ĉu vi povas havi du variabloj de la sama nomo en programo kaj se vi havas du variabloj kun la sama nomo sed estas ambaŭ lokaj sprites, do sprite unu, la kato, havas variablo nomo "nombrilo", kaj sprite du, hundo, ĝi havas variablo nomita "nombrilo", kiel longa kiel tiuj estas ambaŭ lokaj sprites, tiam ilia amplekso ne etendas al la resto de la programo. Kaj tial neniu el la aliaj spiritoj aŭ la etapo get konfuzita. Bone. Do mi menciis antaŭe la eniro punkto kiam ni havis la kiam verda markita clicked bloko. Kaj tiel kion tio estas - diras, OK, kiam la evento okazas ke la verda flago estas clicked, ĉi tiu estas kion vi devas fari. Kaj por ke ne vere la sola evento ke ni havas en Scratch. Ni havas ankaŭ aliajn eventojn. Do ni havas, ekzemple, kiam oni najlas en la klavaro estas premita. Kaj tion vi povis elekti la literoj A tra Z, 0 tra 9, aŭ la sagoklavoj. Kaj tiam ni ankaŭ havas aliajn eventojn, kiel ekzemple kiam via sprite estas klakis. Kaj tiel, kiam vi komencos kun tiu, vi rimarkos ke la ŝlosilo tendenco estas ke ili havas nur fendo sur la fundo, kaj tiel tiam tiu, denove, ŝlosilojn vin ke nenio _attaches_ supre ke bloko. Vi konstruas el tio kaj sube. Nun, diri, kio okazas se ni volas iun eventon por okazi nur kiam, mi ne scias, kato tuŝas iu sekcio de la scenejo aŭ io simila? Ni efektive ne havas neniun konstruita en okazaĵo por signifi ke. Do kion ni devos fari estas vere kreas nian propran okazaĵon. Kaj tio nomiĝas elsendoj. Do, kiam vi volas signali ke iu okazis, tiam vi uzas - en la kontrolo langeto, estas bloko nomita "Elsendita." Kaj tiel do, vi tajpas en la nomo de la okazaĵo ke vi volas transdoni, kaj tiam ajn sprite aŭ spiritoj - vi povas havi plurajn sprites reagante al ĉi mesaĝo - aŭ la scenejon devos trakti ĝin, devos ricevi, devos diri, OK, mi komprenas ke tiu havas okazis, do mi faros ĉi tion kun ĝi. Kaj tial kiam ajn vi elsendis evento, jen kun la kompreno, ke aŭ ke sprite aŭ alia sprite estas tuj devos ricevi tiun eventon kaj respondi. Nun, la lasta koncepto antaŭ ol ni enir reala ekzemplo de Scratch programo estas fadenoj. Do fadenoj estas kiam via komputilo estas ekzekuti samtempa procezoj samtempe. Mi garantias al vi, ke cxiuj el ni utiligita fadenoj kiam ni rigardas filmon samtempe kiel tajpi provo aŭ io kiel tio. La komputilo estas ekzekuti plurajn aferojn samtempe tempo, ĝuste kiel Scratch povas. Do kiel vi povas vidi en ĉi tiu ekzemplo, ĉi tiuj du skribsistemoj povas esti uzita por la ĝusta sama sprite, ĉar ĉi tiuj komencante eniro punkto blokoj povas fakte uzi obloj de fojoj. Mi garantias al vi, ke probable la verda flago clicked bloko estos unu el la plej popularaj blokoj en via programo. Do jen ni vidas ke kiam la verda flago estas clicked, ekzistas procezo okazas, tiel kiel kiam la verda flago estas clicked, ekzistas aparta procezo okazas. Kaj tiel Scratch kuros tiuj du samtempe. Kaj tiel uzi tiujn fadenojn, sciante, ke vi povas reale havas pli ol unu ero punkto - eĉ se ĝi estas la sama punkto de eniro - ĝi tuj fariĝis vere utila se vi volas, diri, disigi distinga taskoj de unu alia. Bone. Do ni vere rigardi en ekzemplo de Scratch programo. OK. Do mi jam faris iom programo por ni tie. Do mi simple tuj klaku la verdan flagon por komenci kaj vidu kion ĝi faras. Do ni havas oranĝkolora fiŝo tie - fiŝo sprite - ŝajnas movi kaj poste nuligi kaj reiri. Kaj tiam ni havas ŝarko sprite. Kaj ĉi ŝarko sprite povas movi, povas turni, ĝi povas naĝi ĉirkaŭe. OK. Do jen speco de amuzo. Sed ni povas ja aldoni pli al tiu. Ekzemple, ni vidas ke kiam la ŝarko estas movanta, ĝi povas reale preni sur la ekrano kaj preskaŭ malaperos el vido. Do ni volas ŝanĝi tion, ĉar ni ne volas ke la ŝarko eskapi. Kaj do ni haltos nia skripto kaj tiam redakti la ŝarko skriptoj, eble aldoni ion. Rimarku ke en ĉi tiu aparta sprite tie, la eterne buklo finas kun rekta latero. Ĝi ne havas iun fendon. Do fakte tiu havas sencon, ĉar ĝi estas ĉiam buklo. Ĝi estas ekzekuti io senlime. Do tio ne ĉiam finiĝi. Eĉ se io sub tio, ĉu neniam atingos tion. Do vi fakte devigita enkonduki fadeno. Bone. Do ni aldonas alian skripton. Do mi tuj komencu per tiu punkto de eniro de kiam verda flago estas klakis. Do kion mi volas fari estas kontinue kontroli ĉu la ŝarko tuj estos tuŝi la rando. Sed mi scias ke, efektive, sub Motion ekzistas neta iom bloko kiu diras, ho, se sur randon, resalto. Do kion ni volas fari estas kontinue ekzekuti. Kaj tiel kion tiu "se eĝo, resalto" faras - gxi vere jam kontrolas, ĉu mi estas sur la rando, tiam rebotar dorso. Do ni bezonas trovi ian buklo al senĉese ekzekuti tiu deklaro. Do, se ni rigardas sub kontrolo, ĉu iu havas ideon pri kio buklo ni povus volas uzi? Yeah. Studento: La eterna ciklo. ZAMYLA Chan: Ĝuste, jes. La eterna ciklo. Do ni spuri ke ĉi tie, kaj tiam diras, se la eĝo, rebotar. Kaj tiam ni vidos. Bone. Do la fiŝoj estas movanta kiel por normala. Kaj tiam, ho - nun la ŝarko ne povas eskapi kaj rebota for la ekrano. Cool. Bone. Do mi serĉis in Mi can't - jes? Studento: Kiel vi faras kiuj aplikas al la ŝarko kiel ĝi moviĝas al la fiŝo? ZAMYLA Chan: Ah. Do la kialo kial nur la ŝarko resalto, kontraste al fiŝoj siavice, estas ĉar ĉi skribsistemo kiun ni verkis estas ene la ŝarko sprite. Vi vidas, ĝis tie, la ŝarko sprite estas selektita. Bone. Do ni aldonu ion alian. Mi esploris en la diversaj kostumoj kiuj Nulo havas, kaj mi vidis ĉi cxarmajn malgrandajn ŝarko-chomp. Do mi pensis ke, hey, nu, eble ni povas apliki la ŝarko chomping, ekzemple, kiam ni premu spaco. Mi simple intencas halti ĉi. Bone. Jes. Studento: Ĉu vi ĝuste montri la - estas ke sub kostumoj? ZAMYLA Chan: Ho, jes. Do mi iris sub kostumoj, kaj tiam mi ekvidis sub Importi. Kaj tiel tie, Scratch havas tuta tabelo de kostumoj, ke vi povas elekti. Kaj tial tiam tie estas tuta aro da bestoj, kaj tiam la ŝarko havas paron de kostumoj asociita kun ĝi. OK. Do en ĉi skripton tie, mi jam kontrolanta senĉese en la eterna ciklo, OK, bone, se la maldekstra sago estas premita, tiam mi volas turni kontraŭhorloĝnadla. Se la dekstra sago estas premita, mi volas turni laŭhorloĝnadla. Se la supre sago estas premita, tiam mi volas progresi antaŭen. Do kion ni povas fari estas simple aldonu al ĉi skribsistemo, anstataŭ aldoni apartan, ĉar ĉi tiu estas jam kontrolanta en la temo de kiuj klavoj estas premata. Do ni aldonu unu kiu diras se la spaco ŝlosilo - ni uzu la spaco ŝlosilo chomp sube. Do tiuj klavo maldekstre sago premis, kaj tiel plu, ĉi tiuj estas en la hela bluo. Do ni iru al Antaŭsentinte la hela blua, rigardu sube. Ho, kaj tie estas ŝlosila spaco premis. Do kion ni volas fari estas havi la ŝarko ŝaltilo al lia chomping malsupren kostumo. Kiu devas fari kun kiom la ŝarko aspektas, do ni iru al Looks. Kaj tie ni, oportune, ŝanĝi al kostumo ŝarko-chomp. Sed kiam ni chomp sube, ni ne volas la ŝarko esti chomping malsupren eterne, do ni aldonu, OK, bone tiam, post kiam ĝi chomps, ni volas ĝin ŝanĝi dorso. Bone, do ni vidu kion tiu faras. Do ni ĝin movante ĉirkaŭe. OK. Do ni havas ĝin chomping. Estas chomping ia rapide kvankam, ĉar en Scratch, ĝi estas ekzekuti ilin instantáneamente. Tial, ni iru al Kontrolo kaj fari ĝin estimi lia chomp, atendu unu sekundo. Kaj jen ĝi chomps malsupren iom pli antaŭe iras apogi al lia malsato. OK. Do mi sufiĉe feliĉa kun la ŝarko nun. Sed la fiŝoj, kio ŝajnas esti farante - ĝin progresas a kelkaj paŝoj, fakte, kvin foje. Ĝi moviĝas 50 paŝoj. Kaj poste kio ĝi estas ĉi tie en ĉi supro bloko jen mi dirante, OK, nu, ĝi tuj iru al certa valoro de x. Por trovi la koordinatojn, vi povas efektive nur muson super la ekrano, kaj poste en la fundo - rajton super tie - ĝi montros al vi kion la koordinatoj estas. Do vi povas utiligi tiun al indikas koordinatojn ke vi deziras. Kaj tiel kion ĉi aserto tie diris jene OK, nu, la fiŝo komencas en ĉi certaj x valoro kaj tiam la alto povas ŝanĝi. Mi vere tuj repreni hazarda alteco kiu ankoraŭ subtenas ene de la limigoj de la scenejo. Kaj tiel tie, kion mi utiligante estas elsendi okazaĵoj. Do vi vidas, ke tiu evento traktilo estas nova fish1. Do kiam ajn la fiŝoj ricevas la novan fish1 evento, ĝi instruos vin ekzekuti ĉi. Kaj tiam vi vidos, ke post kiam ĝi movas antaŭen lia aro kvanto de fojoj, tiam efektive disauxdigas denove, OK, novaj fish1. Sed anstataŭe, kion pri ni fari ĝin tiel ke la fiŝoj nur Daŭre la fino de la ekrano antaŭ ĝi resets, anstataŭ ĝuste speco de iri al la centro de ĝi. Do anstataŭ diri, ripeti kvinfoje - ĉar ni ne vere scias kiom da fojoj ĝi bezonos ĝis atingas la finon de la ekrano, ni uzu ion alian. Do mi tuj disigos ĉi eksteren, ĉar ni ne vere volas tion. Forigi blokoj en Scratch, kion vi faras estas vi nur treni ĝin al la maldekstra, liberigo, kaj poste ĝi prenas forigita. Se vi decidas ke vi ne volis fari tion, tiam vi povas ĉiam undelete ĝin. Sed ni deziras forigi ĉi. Kion ni volas fari estas ni volas daŭre movanta 50 paŝoj kaj deteni dua ĝis ni tuŝi la fino de la ekrano. Do vi povas paroli rimarki ciklo ke ni volas uzi tiun ripetas procezo nur ĝis ni tuŝu la ekranon. Studento: Ripetu ĝis. ZAMYLA Chan: Mi aŭdis "ripeto ĝis," kaj tio estas ĝusta. Do jes, ĉi tiu ripeto ĝis bloko ankaŭ prenas - sed ni vidas ke ĉi ripeto ĝis bloko estas ne tute kompleta, ĉu ne? Tial oni devas diri, OK, nu, ripeti ĝis kiam? Do ni diru, bone, bone, ripetas ĝis la fiŝo estas tuŝi la rando de la ekrano. Kaj do mi diras al vi, kiu estas sub Antaŭsentinte. Estas ĉi emotiva Bulea. Kaj tiel vi povas elekti tie kio vi volas esti kontrolanta ke la fiŝoj estas tuŝi. Do jen, ni volas diri tuŝi la rando. Kaj poste ni volas aldoni tiun reen in Kaj tial nun, se ni rigardas nian fiŝon iri, kiam ĝi tuŝas la eĝo, ĝi devos retiriĝi denove. Bone. Do mi estas kontenta pri tio. Kaj estu la malfermita HungryShark1. OK, ia kiel kuirado spektaklo, mi aldonis iomete pli karakterizaĵoj. Do ekzemple, vi vidos ke la fiŝoj nun estas reale planas tute glate, kontraste antaŭe, kiam ĝi estis speco de movanta kaj haltante, movante kaj halti - esence nur saltante aro rastrumeroj. Mi rigardis sub Motion, trovis tiun glita aserto, kaj mi diris, OK, anstataŭ simple kopii kaj haltante, movante kaj halti, mi iros plani 70 ekzempleroj al la dekstra, sed restu en mia sama y pozicion ĉi tie. Bone. Do ni havas ŝarko kiu povas chomp. Cool. Sed ĝi estas nomata HungryShark, post ĉiuj, do ni havas la ŝarko manĝas la fiŝon. Do kiel eble ni diru al la fiŝo aŭ diri la ŝarko kiu devas chomped malsupren? Kiel povus ni komuniki? Jes. Studento: Sur la dua kostumo de la ŝarko, ĝi kaptas la fiŝon. ZAMYLA Chan: Jes, ĝuste. Do ni scias, ke kiam ni ŝanĝas la kostumon al la chomp, ke ni havas chomp sube. Nun, ni eventuale devas kontroli. Ke ni volas la fiŝoj malaperi iam lia manĝata. Ni devos iel komuniki al la fiŝoj, kiuj ĝi devos kaŝi, ekzemple, aŭ malaperi el la ekrano fojon ĝi estas estinta chomped sur. Do kian koncepton, kian ilo ni povas uzi por havas la ŝarko komunikas al la fiŝo, OK, Mi chomped malsupren? Studento: Elsendo. ZAMYLA Chan: Jes, ĝuste, elsendi okazaĵon. Do ni iru al Kontrolo kaj diru broadcast. Kaj estu la elsendita chomp. Bone. Sed iam ni elsendis ion, jen kun la supozo ke ni efektive havos ion ricevi ĝin. Kaj por ke tuj estos la fiŝoj. Do diru, kiam mi ricevas chomp. Nun, kiam la ŝarko chomp malsupren nur malplenan spacon, ni ne volas la fiŝoj reagi al tiu tute ne. Do diru, bone, bone, nur se la ŝarko estas tuŝi la fiŝoj en la momento de la chomp - jen kiam ni vere faru ion. Tial, ni tuj uzos la kondiĉo se, dekstra, ĉar ni kontrolanta ĉu io estas vera aŭ ne. Do, se ni reiru al Antaŭsentinte, tiam ni povas uzi ĉi tie, se tuŝi. Kaj tiam tie, ni elektu la ŝarko. Tiam sub Looks, ĉi kaŝi bloko - tio estos esence fari la fiŝoj malaperas el la scenejo. Ni faros ĝin kaŝi, sed ni volas alia fiŝo, ĉu ne? Nia ŝarko estas malsata. Ni volas doni ĝin pli fiŝo. Tial ni ankaŭ transdonita nova fiŝo denove. OK. Do ni vidu kion tiu faras. Cool. Do chomps malsupren kaj alia fiŝo aperas. Sed tio estas iom tro rapida por alia fiŝo iri. Do ni nur atendas la duan antaŭ ol ni transdonita nova fiŝo. Bone. OK. Do ĉi tiu estas sufiĉe bona farado de ludo. Sed ĉiuj ludoj bezonas partituro, right? Do kion ni povus uzi por subteni partituro? Jes. Studento: Aliaj - ZAMYLA Chan: Yeah. Ekzakte. Yeah. Do ni volas konservi trako de esence kiel multaj fiŝoj ĝi estas manĝata. Por fari tion, ni devos fari variablo. Ni nomas tion partituro. Kaj tiel supozeble, ekde ĉi estas ludo kiu ni ludas, nin tuj volis ke la fiŝoj por povi - diri, iam lia manĝis povas pliigi la partituro aŭ io kaj tiam la scenejo probable devas fari iun kun la sore tiel. Do mi iros por elekti por fari ĉi tiu tutmonda variablo kaj diru por ĉiuj spiritoj. OK. Do kiam ni volas pliigi la partituro? Kiam fisxo estis manĝitaj. Kaj tial ni jam havas procezo tie ke tio kontraktanta kun la fiŝoj esti manĝata. Do ni aldonu tiun deklaron tie - ŝanĝi Partituro per 1. Cool. Do iam vi manĝas fiŝojn, la partituro pliigas. Bone. Do diru: Mi estas laca de tiu ludo. Mi haltas. Kaj tiam, ho, mi volas reveni al la ludo. Mi volas komenci novan ludon. Nu, la interpunkcio estas ankoraŭ 3, kvankam mi estas ludis novan ludon. Ni ne vere volas noti neniam reset, ĉu ne? Do ni aldonu deklaro kiam la ludo estas startita en la enscenigi diri, OK, nu, ni volas nuligi la partituro. Do jen ni starigis la variablo partituro al 0. Kaj tial nun, ĉiufoje kiam vi komencas ludon, la interpunkcio ekos je 0. Cool. OK. OK. Do nun, ni iru antauxen al HungryShark2. Do mi faris iom pli nun, kaj kion mi faris estis dekstra alklakis la fiŝoj sprite. Mi volis pli fiŝoj, kaj do mi klakis duplikatajn kaj faris nova sprite identa al tiu kaj ankaŭ kopiitaj en la tuta skriptoj tiel. Tial ĉi fish2 estas esence identa al fish1, escepte anstataŭ startanta je la maldekstra kaj movi dekstren, ĝi komenciĝas ĉe la dekstra kaj movas lasis. Kaj tiam mi ankaŭ elektis novan kostumon por ĝi. Tiam mi trovis alian kostumon kiu estis makulita fiŝoj, kaj mi Estis kiel, cool, ĉi aspektas venena, do ni ŝajnigi ke tiu estas venena fiŝo. Kaj tial mi diris, OK, nu, anstataŭ manĝi la venena fiŝo kaj havante vian interpunkcion kresko, mi vere deziras ĝin al malgrandiĝi. Do jen ni partituro malkreskanta per 1 ĉiufoje kiam la ŝarko manĝas ĝin. Kaj poste, mi vere ŝatis la kostumoj ke nulo provizita, kaj mi rigardis kaj poste mi trovis la shark's - ĝi aspektis kiel malsana ŝarko. Kaj tiel do mi redaktis ĝin mi faris verdo. Kaj mi estis kiel, cool, estas malsana ŝarko. Bone. Do estu la aldonu al nia skripto ia maniero de fari la ŝarko ŝaltilo estiĝis malsana krom se manĝas venenita fiŝo. OK. Do ĉar ni kopias ĉiuj la skriptoj de nia originala fiŝoj en la veneno fiŝo, ĝi jam havas ĉi sprite tie kiu diras, kiam mi chomped sube, estas mi fakte chomped malsupren? Do ni povas utiligi ĉi tiun komuniki al la ŝarko, ho, nu, vi ĵus manĝis veneno fiŝo. Vi estas malsana. Kaj tiel ĉi tio estus kia ago? Kio estus volas fari? Elsendita. Yeah, precize. Do ni broadcast. Ni nomas ĝin ŝarko malsana. OK. Do nun, la ŝarko, evidente, tuj estos tiu, kiu estas ricevi tiun eventon. Do ni aldonu, kiam mi ricevos la ŝarko estas malsana. OK. Do ni scias ke ni havas ĉi kostumo - la ŝarko estas malsana. Kaj tiam ni scias de antaux ni ia estimi kiam ni povas detenas iom antaŭ ŝanĝi dorso. Yeah? Studento: Kiel vi kopii skripto de unu sprite al alia? ZAMYLA Chan: Ah. Do en ĉi tiu petskribo, kiam mi simple duobligas la sprite, por kopii unu skripton por alia sprite, kion Mi faris tie estis nur diri duobligita, kaj ĝi efektive faris tutan nova sprite kun ĉiuj la skriptoj inkluditaj. Sed diru vi volas ĝuste kopii unu certa skripton por alia sprite, tiam tion, kion vi farus fakte nur treni ĉi, ŝvebi super alia skribsistemo, kaj nun jen ĝi duobligitaj ĝin. En ĉi tiu kazo, ĝi jam havis, do ni povas simple forigi ke denove. Sed kopii unu skripton en alian, kion vi faras estas nur treni ĝin sur la aliaj spiritoj. OK. Do ni estas ree en la ŝarko estas malsana. Do ĝi estas ricevita ŝarko estas malsana, kaj ĝi diras, OK, nu, unufoje mi estas malsana, mi tuj ŝanĝas al mia kostumo kiu diras "Ŝarko malsana," kaj nun, ni simple aldonu atende al estimi la verdo. Kaj tiam ni tuj estos denove malsatus, do ni povas nur ŝanĝi reen al la ŝarko estas malsata. Bone. Do ni manĝas ĉi purpura fiŝo. Tio estas bone. Bona demando. Kio okazis al la vendotablo? OK. Do ni starigis partituro al 0 tie, sed ĉi partituro - kion ĉi ĉeko marko ne estas kaŝita aŭ unhides la variablo de la ekrano. Sed kion ni povas fari anstataŭ malelektas aŭ kontrolanta ĝi - ni povas efektive havas ĉi tiun blokon tie diras "montri aŭ kaŝi la variablo. "Do ni certigu ke ĉiufoje ni starti la ludo ke la variablo estas montrita. OK. Do nun la variablo estas montrita. Ni manĝas veneno fiŝoj, kaj ni estas malsanaj. Cool. Bone. Do nun, estas nepara por ludo por ni havi negativan punktoj, ĉu ne? Do daŭre manĝi tiuj kaj estas kiel - tiom kion pri kiam ni atingos negativa, se ni manĝis tro multaj venenaj fiŝoj, ludo pli ol - ŝarko estas tro malsana. Bone. Do kion ni bezonos fari estas ni bezonos transdonita iu okazaĵo - ludo finita. Do ni povus fari tion pluraj manieroj, fakte. Ni povis esti ie en la etapo skripton kiu senĉese ĉekojn estas la partituro negativa? Estas la partituro negativa? Se jes, tiam ni elsendas ĉi tiu okazaĵo. Do jen unu maniero fari ĝin. Aŭ ni povus utiligi la fakton ke ni scias, ke la sola maniero por ke via partituro povus esti negativa estas kiam vi manĝas venena fiŝo, ĉu ne? Ĉar, kiam vi manĝas alia fiŝo, via partituron tuj pliigi. Do ne estas uzo en kontrolanta ĉu ĝi devus esti ludo super aŭ ne. Do ĉi tiu estas simila procezo tie. Do ni povas reale nur aldonu al ĉi tiu ", kiam mi ricevos ŝarko malsana. " Supozu ke ni aldonu tiun kondiĉon. Ni volas diri, se la rezulto estas malpli ol 0. Do ni tuj iros al Telefonistoj, ni tuj uzi ĉi malpli ol unu, ni iras al nia treni partituron tie, diru 0. Kaj tial, se la rezulto estas 0, tiam ni volas transdoni iu nomita ludo finita. OK. Supozu ke ni havas ludon super. Ni movi ĝin tien aŭ iu. Nu, ni volas la ŝarko nur reiri al esti malsata se la ludo ankoraŭ povas ludis. Do anstataŭ uzi "se", ni uzu an "se pli" konstrui. Do kio estas tiu faras - gxi diras, OK, do se ĉi tiu kondiĉo estas vera, tiam faru tion, sed se ĝi estas falsa tiam fari ĉi tion. Do ni aldonu se la rezulto estas malpli ol 0, tiam vi transdonita ludo finiĝis, sed se ne - se via interpunkcio estas ankoraŭ pozitivaj - tiam reiru al esti malsata. OK. Cool. Do nun ni havas ĉi ludo super evento, ni devos havi iel de respondi al ĝi. Do ni faru novan skripton kiu diras "kiam mi ricevas ludo aferon. "Kaj kion ni havas ĉi tie sub kontrolo estas fakte tiu malfunkciigos butonon, kaj tiel ĝi esence imitas vin klakante la ruĝa halto subskribi ĉi tie. Do ni havas la ŝarko halto. Kaj tiel ni ankaŭ volas la fiŝo por halti, do estu la treni kaj kopii ĝin in Ni volas cxiujn fisxojn de halti. Kaj tiam ni havas la scenejo halto tiel. Bone. Do naĝante ĉirkaŭ ni manĝas fiŝojn, kaj tiam la programo frostas. Mi klakante malsupren sed mi ne povas vere ion fari. Bone, sed diru ni ne volas rememorigi al la uzanto kiu ili havas negativan valoron, ekzemple, ni povas, por Ekzemple, kaŝi la variablo de la ekrano. Do kiam la scenejo ricevas ludo finiĝis, tiam ĝi estos kaŝi la variablo partituro. OK. Do ni manĝu pli fiŝo. Kaj tiam la partituro malaperas, kaj vi nur devas ĉi ekrano. Bone. Por ke estas bela deca ludo, kaj se vi havus pli tempo, tiam vi povus eventuale aldoni pli kaj pli skriptoj. Kaj tiel do, mi aldonis kelkajn pli fiŝo, faris ilin progresi ĉe malsamaj rapidoj, kaj poste kiam la ŝarko manĝas venena fiŝo, ĝi fakte diras, "Blech!" Kaj tiam tion, kion mi ne estas mi aldonis novan fono al la etapon - ludo super fono. Kaj tiel kion la scenejo faras dum la ludo super okazaĵo uzado estas ŝanĝas la fonon de ludo super fono. Kaj tiel, mi kaŝis ĉiujn sprites de la etapo por ke nur la ludo super fono estis montrita. Estas kelkaj aliaj iom aldonita ke mi aldonis, ekzemple, antaŭ kiam ni finis nian programon, tiam nia ŝarko, la proksima fojo ke ni komencis, funkciigus en tiu pozicio ankaŭ. Kion mi aldonis estas ĉiam la verda flago estas clicked, tiam la ŝarko superas al la origino kaj tiam alfrontas al Dekstre, por ke ĉiufoje, vi havas ŝarko ekde tie. Do vi povas sperti en Motion kaj aliaj similaj, ke nur aldoni iom tuŝas kiuj funkciigas ludo iom pli polurita. Ĉu iu havas demandojn pri HungryShark? Cool. Bone. Do jen unu ekzemplo de io, ke vi povus fari en Scratch uzante ĉiuj iloj kiujn ni diskutis antaŭe. Do mi ankaŭ inkluzivita en la walkthrough diapozitivoj. Vi vidos ilin poste. Estas nur superrigardon pri la procezoj kiuj ni faris - progresas de HungryShark0 tuta vojo al nia fino. Unu Yeah. Sed tio estas pri ĝi. Mi restos malantaŭe se vi infanoj volas demandi plu demandoj. Tio estis Walkthrough 0. Dankon ĉiuj por veni, kaj mi vidos vin je Walkthrough 1.