Tip:
Highlight text to annotate it
X
>> ZAMYLA Chan: Përshëndetje, dhe i mirëpritur për të walkthrough para.
Emri im është Zamyla dhe unë do të jetë udhëheqëse walkthroughs për ju këtë vit.
Në CS50, çdo grup është problemi shoqëruar nga një walkthrough.
Gjatë këtyre walkthroughs unë do të shkoj mbi Set jave problem, shpjegojnë
Konceptet e nevojshme dhe pushim deri Problemi i vendosur në kafshon menaxhueshme.
>> Për të parë p-set në CS50, ne fakt nuk do të marrë në shtypja dhe
Kodi makine sende mjaft ende.
Përkundrazi, ne jemi duke shkuar për të përdorur Scratch, një program që na lejon për të eksploruar
Konceptet e programimit në një mënyrë vizuale dhe krijuese.
Kjo walkthrough do të shqyrtojë Konceptet themelore që ne do të përdorin
të gjithë CS50, si dhe duke shërbyer si një tutorial Scratch.
Në çdo walkthrough unë do të listojnë një sërë e mjeteve që ju mund të përdorni për
set problem.
Nga konceptet më të mëdha të kurseve aktuale funksionet, kjo është e mirë dhe e dobishme për
e dini se çfarë ju jeni të pajisur me para trajtimin e problemit grup.
>> Së pari, le të flasim për sprites.
Sprites janë qendrore për të bërë projekte në zeroja.
Çdo objekt ose çdo karakter, jetë ajo një mace, një qen ose një
top, është quajtur një sprite.
Nëse unë dua, të themi, dy macet në projektin tim, Unë do të duhet për të bërë dy
sprites të ndara në Scratch, madje edhe nëse ata janë absolutisht identike.
>> Çdo sprite ka Scripts lidhur me këtë sprite specifike.
Scripts janë atë që ju jeni duke shkuar të ndërtimit duke zvarritur
dhe rënie blloqe.
Scripts janë udhëzimet që të përcaktojë dhe të përcaktojë
se si sillet script.
>> Tani, sprites nuk janë vetëm imazhe.
Një kostum sprites përcakton çfarë sprite duket si.
Çdo sprite dhënë mund të ketë më shumë se një kostum.
Pak më vonë gjatë këtij walkthrough unë do ju tregojnë se si ju mund të ketë tuaj
Kostume Sprite ndryshim gjatë programit tuaj.
>> Për të krijuar një sprite në Scratch, ju mund të ose zgjidhni kostum e saj fillestare për
Biblioteka Scratch-së, barazim tuaj në Scratch së ndërtuar në editor bojë,
ngarkoni imazhin tuaj, ose të marrë një foto me kamera e kompjuterit tuaj.
Të gjitha sprites janë vendosur në atë që ne e quajmë fazë.
Fazë është si kanavacë tonë, ku sprites mund të lëvizë.
>> Edhe pse ne mund të kemi multiples sprites, nuk mund të jetë vetëm një fazë.
Përndryshe, fazat dhe sprites janë mjaft të ngjashme në atë fazë mund të
gjithashtu kanë Scripts.
Scripts në fazë janë shumë të dobishme kur ju nuk keni një skenar që
nuk domosdoshmërisht i përkasin në një sprite specifike.
Ndoshta kjo ka të bëjë me të Shumëfishta vija, ose asnjë fare.
>> Është dizajn përgjithësisht e mirë për vendin tuaj Scripts për fazën në qoftë se ata janë
përgjithshme të mjaftueshme dhe nuk i përkasin për sprites specifike.
Dhe ashtu si sprites kanë kostume, Fazat e kanë backdrops që mund të ndryshojë
gjatë rrjedhës së programit tuaj.
Dhe ju mund të tërheqë tuaj, ngarkoni një image, të marrë një foto, ose të përdorë
Biblioteka Scratch i backdrops.
Dy faza dhe sprites gjithashtu mund të luajnë Dashuri nga zeroja bibliotekë, ose
ju mund të ngarkoni dhe rekord tuaj.
>> Që të filloni programin tuaj ju do të zeroja duhet të klikoni në flamurin e gjelbër
këndin e djathtë të dritares fazë.
Por nëse ju nuk i lidhte asgjë për të Ky bllok të drejtë këtu, atëherë asgjë nuk është
në të vërtetë do të ndodhë sepse tuaj sprites dhe nevojë fazë për të thënë
te përgjigjet ngjarjes së flamuri gjelbër duke klikuar.
Pra, ju do të duhet për të bashkëngjitni blloqe për zakon në fund të gjelbër
flamuri, dhe pastaj programi do të ekzekutojë ato veprime kur ju filloni
programi juaj.
>> E pra, çfarë vjen pas kësaj?
E pra, Scratch ka shumë të blloqeve për ju për të përdorur, dhe ju mund të
madje edhe të bëjnë tuaj.
Ju do të shihni tre tabs, scripts, Kostumet dhe tingujt.
Nën tag Scripts janë të kategorive të e deklaratave.
Deklaratat janë të përshtatshme organizuar nga ngjyra.
Ju keni veprimet që lidhen me lëvizjen, shëndoshë, duket, dhe kështu me radhë.
Megjithëse ju do të keni ndërtuar blloqe të tjera rreth deklaratave tuaja, kjo është
Deklaratat që do të ndihmojë sprites ose fazë për të bërë diçka, ndërsa
blloqe të tjera do të ndihmojë për të përcaktuar kur për të bërë ato.
>> Le të thonë se ju jeni duke krijuar shumë tuaj Projekti i parë dhe ju vetëm doni
mace mjaullin nën të sigurtë rrethanat.
Për të zbatuar këtë, ne mund të marrë Avantazhi i Booleans.
Këto janë shprehjet që vlerësojnë në qoftë e vërtetë apo e rreme.
Në Scratch këto janë të identifikuar nga kënde në fund të blloqeve.
Ju do të keni një shumëllojshmëri të llojeve të ndryshme i Booleans siç është miu
duke u shtyrë poshtë, ka 2 plus 2 barazojnë në 5, ose është përdoruesi shtypur
poshtë një çelësi të caktuar në tastierë?
>> Tani, ju nuk mund të përdorni vetëm këto Booleans vetëm.
Ju do të duhet për të kombinuar ato me atë që ne e quajmë kushte.
Blloqe Kushti mund të gjenden në deklaratat portokalli kontrollit.
Kushtet e përshtatshme të ketë një pak placeholder që tregon formën e
bllok që ju duhet për të vënë në të.
Pra, në varësi të kontekstit të situatë, ju mund të zgjidhni një Boolean
dhe atë vend brenda gjendjen tuaj.
Dhe vënë së bashku, ju keni një deklaratë e kushtëzuar.
Pasi ta keni vënë deklaratat brenda që bllokojë të keni një strukturë të ngritur
ku dikur një kusht i caktuar është plotësuar, atëherë ju ekzekutuar ata
Deklaratat.
>> Një nga avantazhet e kompjuterëve është fuqia e madhe dhe shpejtësia me të cilën ata
mund të ekzekutojë proceset e përsëritura.
Në vend të kësaj, të themi, duke përsëritur një udhëzim mbi dhe mbi dhe mbi
përsëri dhe shtypni në fakt se nga, ose në këtë rast, zvarritje dhe duke rënë
dhe zvarritje dhe në rënie, ajo që ne mund të bëni është të përmbledhë në një lak.
>> Sythe mund të përdoren ose të ekzekutuar gjërat pafundësisht me një lak përgjithmonë,
ose për një numër të caktuar të kohës.
Për shembull, të përsëritur deklaratën, thonë hi, 10 herë, ose ndoshta deri në një farë
Gjendja është e vërtetë.
Dhe me këtë Përsëriteni derisa ju bllokojë shohim se Scratch është nënkuptuar se
ju do të duhet për të vendosur një boolean në Përsëriteni derisa bllok për të bërë një
Deklarata e kushtëzuar.
>> Tani, ne e dimë që ne mund të encapsulate proceset e përsëritura brenda e sythe,
kështu që ju mund të shihni se pse diçka si kjo nuk mund të jetë ideale.
Është super të gjatë, ai thjesht e bën të njëjtën gjë mbi dhe mbi
përsëri, 10 herë në fakt.
Ajo lëviz 10 hapa, thotë hello, 10 hapa për të lëvizur, thotë përshëndetje.
Por me ndihmën e sythe ne mund të rregulloj këtë deri një grimë.
Shih se si kjo është shumë më mirë.
Kjo është më e shkurtër, kjo është më e vogël dhe ajo kompleton njëjtën gjë.
>> Moving mbi të variablave.
Variablat janë në thelb kontejnerët për vlerat.
Në Scratch, këto lloje të vlerave mund të ose të jenë fjalë ose ata mund të jenë të
numrat, vlerat që ne kanë kontroll mbi.
Në këtë bllokut të parë kemi një ndryshueshme teksti që përmban
, vlera Përshëndetje, World.
Në shembullin e dytë, është supozuar se ne tashmë kemi një ndryshore të quajtur
Counter dhe ne jemi të rrisim ajo nga tre.
Dhe pastaj, në shembullin e fundit, ne shohim një shembull i variablave duke u përdorur
brenda kushteve.
Në këtë bllok, ne pyesim nëse variabli Counter është më pak se zero.
>> Tani, kur ju krijoni një ndryshore keni të vendosë nëse ju bëni
ndryshueshme në dispozicion për të gjitha sprites në programin tuaj zeroja, ose
vetëm për sprites specifike të përzgjedhura kur ju bëni ndryshueshme.
Dhe kjo është një shumë e rëndësishme Vendimi për të bërë.
Ajo vjen poshtë në atë që ju fushëveprimi duan të kenë ndryshueshme.
>> Një shembull i fushës vendore do të jetë një variabël vetëm për një sprite të veçantë,
që do të thotë se vetëm se do sprite të jetë në gjendje për të parë ose modifikojë atë.
Nëse ju të përcaktojë një ndryshore globale me Shtrirja duke përzgjedhur për të gjithë
sprites, atëherë kjo do të thotë se faza, si dhe të gjitha sprites,
do të jetë në gjendje për të parë, modifikoni, dhe aksesi që
ndryshore që ju keni krijuar.
Dhe në aspektin e dizajnit, është më mirë për të zgjidhni fushëveprimin lokal sa herë që mundeni
vetëm në mënyrë që pjesa tjetër e sprites dhe faza e nuk kanë për t'u shqetësuar rreth
mbajtja e asaj ndryshore.
>> Ju në fakt mund të ketë dy variablave të emri i njëjtë për sprites të ndryshme, si
kohë sa ato janë variabla lokale.
Sprite një, një mace, mund të ketë një ndryshore Counter emri, dhe Sprite dy, një qen,
gjithashtu mund të ketë një ndryshore të quajtur Counter aq kohë sa këto
janë të dy variablat lokale.
Për shkak se fushëveprimi i ndryshueshme nuk shtrihet me pjesën tjetër të
, programi dhe asnjë prej sprites tjera ose fazë do të merrni hutuar.
>> Më parë, kam përmendur pika e hyrjes, kur gjelbër flamuri klikuar bllok.
Kjo bllok dhe shoqërues Deklaratat jeni në thelb duke u thënë
sprites tuaj ose skenike, OK, kur flamuri gjelbër është klikuar, ky është
çfarë ju duhet të bëni.
Por kjo nuk është ngjarja e vetme që sprites dhe faza mund t'i përgjigjet.
Ne kemi, për shembull, një ngjarje për kur një kyç tastierë është i shtypur.
Ju në fakt mund të zgjidhni letra Një përmes Z, zero përmes nëntë ose
arrow keys.
>> Ka shumë ngjarje të tjera, gjithashtu, të tilla si kur sprite juaj është i klikuar.
Kur ju filloni me blloqe ngjarje si këto, ju do të vini re një prirje.
Ata të gjithë kanë një grup të vetëm në poshtme dhe një top të qetë, e cila
tregon se asgjë e mësipërm përvetëson atë bllok.
Ju ndërtuar sipas këtyre ngjarjeve blloqe dhe për të ndërtuar poshtë.
>> Tani, çfarë ndodh në qoftë se ne duam disa ngjarje të ndodhë, të themi, kur një mace është
prekur një seksion të caktuar i fazës së?
Ne në fakt nuk kemi asnjë built-in Ngjarja për të ditur se, kështu që ajo që ne do të
duhet të bëni është të krijojë ngjarjen tonë.
Dhe kjo quhet transmetimit.
>> Pra, kur ju dëshironi për të sinjalizuar se një Ngjarja ka ndodhur të caktuar, atëherë ju
përdorin një transmetim zezë quajtur, e cila është gjetur në skedën e Kontrollit.
Nuk ju do të shkruani në emër të Ngjarja që ju dëshironi për të transmetuar, dhe
atëherë cilado sprite ose fazë mund të reagojë me atë
transmetuar në qoftë se ju dëshironi.
Kur unë Merre bllok tregon sprites çfarë duhet të bëni kur ata janë
njoftuar se me porosi tuaj Ngjarja ka ndodhur.
Pra, mbani mend se sa herë ju transmetuar një ngjarje, është me
kuptim se ose njëri prej sprites ose fazë është duke shkuar për të
marrë atë ngjarje dhe përgjigjet për atë.
>> Tani, Koncepti i fundit përpara se ne të merrni për një shembull aktual të Scratch
programi, është koncepti i filetave.
Kjo është kur kompjuteri juaj është i ekzekutimin e njëkohshme
proceset në të njëjtën kohë.
Dhe unë jam i sigurt se ne kemi marrë të gjitha Avantazhi i kësaj.
Ashtu si surfing web, ndërsa duke dëgjuar muzikë.
Kompjuter mund të ekzekutojë disa gjëra në të njëjtën kohë.
>> Në këtë shembull këtu, këto dy Scripts mund të përdoret për
sprite saktë të njëjtën.
Pika e hyrjes bllok, Kur Flamuri Gjelbër Klikuar, është përdorur për herë të shumta, por
ata janë të dy Scripts ndara.
Në të vërtetë, Flamuri Gjelbër Clicked bllok do të jetë ndoshta një nga më të
blloqe njohura në programin tuaj.
Këtu ne shohim se kur flamuri gjelbër është klikuar, nuk është një proces e sipër
on, si edhe një tjetër.
Pra Scratch vërtetë do të kandidojë këto dy në kohën e saktë të njëjtën.
Dhe duke e ditur se ju në fakt mund të ketë më shumë se një pikë hyrje, edhe nëse
kjo është pika njëjta hyrje, po shkon të jetë vërtetë e dobishme në qoftë se ju doni të
Detyrat e veçanta të dallueshme nga njëri-tjetri.
>> Dakord.
Pra, tani që ne kemi mbuluar të gjitha këto konceptet, le të shikojmë një shembull.
Unë kam bërë një seri të programeve të para, kështu që të përpiqet të ndjekë së bashku si ne
të bëjë një lojë të vogël.
Le të fillojmë me hapjen Hungry Dino Zero.
>> Le të klikoni flamurin e gjelbër për të filluar atë dhe të shohim se çfarë ajo bën.
Ne kemi një sprite bug që lëviz për një disa hapa, resets në një lartësi, dhe
pastaj hapa mbrapa.
Dhe pastaj ne kemi një sprite dino.
Duke shtypur tastet shigjetë, unë jam duke shkuar sprite Dino përreth, duke e bërë atë të kthehet
dhe rrotullohen.
Kjo mund të jetë lloj i argëtim, por nuk janë shumë shumë
scripts në këtë program.
Ne mund të patjetër të shtuar për këtë.
>> Për shembull, kur Dino është duke lëvizur atë fakt mund të merrni off ekran dhe
pothuajse zhduken nga faqja.
Ne duam që kjo të ndryshojë, sepse ne nuk duan Dino për të shpëtuar.
Pra, le të ndaluar skenarin tonë me të kuqe Flamuri dhe pastaj redakto Scripts dino.
Vini re se ky dorëshkrim veçantë ka një lak përgjithmonë, e cila përfundon me një
edge drejt.
Ajo nuk ka ndonjë zakon në fund.
Dhe kjo e bën kuptim nga emri, një lak përgjithmonë.
Është ekzekutimin diçka pafundësisht dhe kurrë nuk do të përfundojë.
Pra, kjo është një mundësi e madhe për të futur një fije.
>> Dakord.
Pra, le të shtoni një tjetër skenar.
Unë jam duke shkuar për të filluar me këtë term Pika, Kur Flamuri Gjelbër klikuar.
Dhe unë dua që vazhdimisht të shikoni nëse dino do të jetë
prekur buzë.
Nën Motion ka një bllok i zoti pak që thotë se, në qoftë se në Bounce Edge.
Dhe kështu që ne duam të vazhdueshme ekzekutojë këtë.
>> Çfarë është kjo deklaratë bën kontrolle në qoftë se sprite është në skajin e
fazë, dhe të kthehet prapa në qoftë se ajo është.
Dhe për shkak se përdoruesi gjithmonë mund të lëvizin Dino, ne duam të gjeni disa lloj
lak që na lejon të vazhdueshme të ekzekutojë këtë deklaratë.
Looking nën Kontrollin ne do zgjidhni lak përgjithmonë.
Pra, le të zvarritet se në dino scripts, dhe pastaj
shtoni Nëse Bounce On Edge.
Dhe pastaj le të testuar programin tonë.
>> Pra, bug po lëviz si për zakonisht, dhe atëherë në qoftë se ne të testuar nga skenarin tonë të re nga
lëviz Dino tonë në buzë, ne shohim se ajo nuk mund të
shpëtuar fazën anymore.
Ajo kthehet drejtë mbrapa.
Tani ju mund të pyes veten pse Dino por kthehet qe nuk bug.
E pra, kjo është për shkak se ne shkroi rinj tonë script brenda Scripts dino
dhe jo mete.
Pra, bug nuk do të dëgjojnë udhëzime dhamë Dino.
>> Dakord.
Pra, le të shtoni diçka të re tani.
Nëse ju shkoni në tab Kostumet ju do të shihni se kostumet e ndryshme që
vijnë preloaded me sprite tuaj të zgjedhur në qoftë se ju zgjidhni një nga
Biblioteka Scratch.
Ka kjo cute pak Dino chomp kostum, kështu që le të zbatojë Dino
chomping kur ne shtyp, thonë, çelësi hapësirë.
>> Kthehu tek Scripts Dino.
Në këtë skenar këtu, unë jam tashmë kontrolluar në lak përgjithmonë nëse
shigjetë çelësat të caktuara janë duke u shtypur dhe lëviz dino në përputhje me rrethanat.
Nëse ata lanë shigjetë është presion, Dino rrotullohet kundër akrepave të sahatit.
Nëse shigjeta e drejtë është presion, dino rrotullohet sipas akrepave të orës.
Pra, nëse deri arrow është presion, atëherë dino përparon përpara.
Ne mund vetëm të shtoni në dorëshkrim në vend të duke shtuar një të veçantë, sepse kjo
tashmë është kontrolluar në temën e që çelësat janë duke u shtypur.
>> Le të shtoni një që kontrollon për çelësi Hapësirë duke u shtypur.
Këto blloqe këtu janë kontrolluar për çelësat duke u shtypur.
Ata janë të gjitha në blu të ndritshme, kështu që le të shkojnë për të ndjerë të ndritshme blu
deklaratat dhe shikoni përreth.
Këtu është një Key bllok Spaced Press.
Pra, ajo që ne duam të bëjmë është të ketë dino kaloni shëndoshë të saj kostum poshtë
nëse, dhe vetëm nëse, Space çelësi është duke u shtypur.
>> Pra, le të imitoj strukturën këtu.
Tani, duke ndryshuar kostum ka të bëjë me dino sa duket kështu që ne do të shkojnë në
Shikoni deklaratë.
Dhe pa dyshim, ne kemi një Kaloni Kostum për Dino chomp.
Tani, kur ne Chomp poshtë që ne nuk duam dino të jetë chomping poshtë përgjithmonë,
kështu që le të shtoni një deklaratë të thënë që ajo të kaloni mbrapa.
Ajo do të kaloni kostume lloj të shpejt, pse, sepse në pasqyrat Scratch
do të ekzekutojë për të kthyer prapa me të vërtetë shpejt, pothuajse menjëherë.
Pra, le të shkojnë për të kontrolluar dhe pastaj të bëjë pauzë për një dino pak duke pritur
një sekondë pasi ajo chomps poshtë.
>> Tani le të redaktoni Sprite bug.
Sprite bug hapa përpara pesë hapa një total pesë herë, pas një
pauzë çast.
Në bllokun e lartë këtu bug vendos veten në një farë
x-koordinuar vlerë.
Për të gjetur koordinatat ju në fakt mund të miut mbi ekran dhe
pastaj në këndin e poshtëm të fazës së Koordinatat dritare do update kështu
ju mund të përfitojnë nga kjo dobishëm funksion për të zbatuar koordinatat
që ju dëshironi.
Dhe, në këtë deklaratë këtu, ne udhëzojnë bug për të filluar në të njëjtën
x vlerësojmë çdo kohë, por të marr një të rastit lartësia për bug që ende
qëndron brenda kufizimeve i fazës.
>> Shih këtu se unë jam duke përfituar nga transmetimit ngjarje në Scratch.
Kjo mbajtës ngjarje është quajtur Bug1 Re.
Pra, sa herë që bug merr New Bug1 ngjarje,
ajo do të ekzekutojnë deklaratën.
Pra, pasi ajo lëviz përpara set e saj Shuma e herë, ai në fakt
transmeton ngjarje te re Bug1.
>> Por si për ne të ndryshojë Ky skenar pak?
Tani për tani ne kemi bug lëviz pesë hapa.
Kjo nuk është një shumë, një total nga pesë herë.
Ne të vërtetë nuk e di se sa herë do deri sa të jetë e nevojshme bug arrin,
thonë se, në fund të ekranit, kështu që le të të bëjë, por të arrijnë fundin e
ekran, por përdorin disa lloj i konstruktit të tjera.
>> Unë jam duke shkuar për të ndarë këtë pasi ne jemi duke shkuar për të ndryshuar disa gjëra.
Për të fshirë blloqe nga zeroja ju drag blloqe për
dhe pastaj u largua lirimin.
Dhe ajo merr fshihet.
Nëse ju vendosni se ju nuk e keni duan atë, atëherë ju mund të fshihet
shkoni tek Edit dhe Undelete.
Por ne nuk duam që të merrni Shpëtoj atë bllok.
>> Ajo që ne duam të bëjmë tani është të lëvizë, të themi, 50 hapa dhe një pauzë e dytë, dhe
përsëris këtë deri prekim fundi i ekran.
Pra, le të përdorim një lak që na lejon të përsërisin procesin derisa të caktuar
kusht është plotësuar, me vend Përsëriteni derisa quajtur.
>> Çfarë shkon brenda kusht i një Përsëriteni derisa?
Diçka që na tregon nëse bug është prekur cepin e
ekran, që do të jenë sipas Pasqyrat Sensing.
Ja kjo Bulit, Prekur.
Dhe ju mund të zgjidhni atë që këtu ju doni të kontrolloni për të.
Pra, ne do të zgjidhni Edge prekur dhe shtoni kjo deklaratë e kushtëzuar back in
>> Deri tani në qoftë se ne të shikojnë bug tonë, ajo do të lëvizë përsëri pasi ajo prek
buzë të fazës.
Great.
Ne jemi duke mbaruar me Dino Hungry Zero, kështu që le të hapur Dino uritur One.
Lloj si një shfaqje gatim, unë kam shtuar pak më shumë karakteristika.
Për shembull, ju do të shihni se bug në fakt është mjaft e thjesht rrëshqitje tani
në krahasim me më parë.
Nën lëvizje ka kjo kaloj deklaratë.
Tani, bug glides 70 njësi të drejtën e ekspozitës e saj aktuale, por
qëndron në të njëjtin pozicion y këtu.
Dhe ne tani mund të kenë një Dino chomping si ne implementohen para.
>> Por, ky program nuk quhet Hungry Dion për asgjë, kështu që le të ketë
dino hani bug.
Si mund ta them bug, ose tregoni Dino, se ai ka copëtuar poshtë?
Si mund të kemi komunikuar këtë ngjarje?
E pra, ne e dimë se kur ne kaloni kostum për Dino për chomp dino
që ne kemi chomped poshtë.
Dhe thonë se ne duam bug të zhduket pasi ajo është ngrënë.
E pra, ne do të kemi për të kontrolluar nëse insekt ka qenë chomped on dhe
komunikojnë me bug se ajo do të ketë për të fshehur ose zhduken nga ekrani
herë kjo është chomped poshtë.
>> Pra, çfarë lloj koncepti, çfarë lloj mjet që ne mund të përdorni të ketë Dino
komunikuar me insektit asaj ajo ka chomped poshtë?
Transmetimeve.
Pra, le të shkojnë në Ngjarje dhe shtoni një ngjarje të transmetuar.
Chomp.
OK.
Por mos harroni se dikur ne transmetojnë diçka që ne gjithashtu duhet të
marrin këtë ngjarje.
Pra, cila do të transmetojë sprite Chomp?
E pra, le të kemi dino të bëjë që kur çelësi Hapësirë është i shtypur.
>> Le të shtoni një bllok për të marrë Chomp.
Tani, kur Dino zbret vetëm në një hapësirë e zbrazët ne nuk duam bug
të reagojnë në atë në të gjitha, vetëm nëse dino u prekur, por në atë kohë
i chomp bëjmë ne fakt të bëjë diçka.
Pra, ne do të përdorim gjendjen qoftë se për shkak ne jemi duke kontrolluar nëse diçka është e
vërtetë apo jo.
>> Tani në qoftë se ne do të shkojmë përsëri në Sensing, atëherë ne mund të përdorim këtë Prekja
bllokojë dhe zgjidhni Dino.
Pastaj, nën duket, ne gjejmë këtë Hide bllok që do të bëjë në thelb bug
zhduken nga skena.
>> Ne do të bëjë atë të fshehur, por ne bëjmë duan një tjetër bug, e drejtë?
Dino ynë është i uritur.
Pra, ne duam për të dhënë atë një tjetër bug në ndjekje.
Pra, le të transmetojnë gjithashtu Bug1 ngjarja e Re.
Përveç ne duam që ajo të presë për një kohë përpara se një tjetër bug duket, kështu që le të
gjithashtu të prisni një të dytë.
>> Dakord.
Pra, le të kontrolloni këtë.
Ne chomped poshtë, por një zhduket, një tjetër duket, dhe ne Chomp poshtë
në atë përsëri.
Kjo është në kërkim si një goxha lojë zbavitëse, por të gjitha lojra
nevojë për të shënuar, e drejtë?
Pra, çfarë mund të përdorni për të mbajtur gjurmët e sa mete Dino ka ngrënë?
Një variabël.
Pra, le të shtoni një rezultat të ndryshueshme quajtur.
>> Dhe tani ne do të duhet të vendosë se çfarë Shtrirja kjo ndryshore ka.
Pra, le të mendojmë.
Ndërsa ne mund të duam, por për të rritur Rezultati në qoftë se ajo ka qenë
ngrënë me sukses, dhe faza mund ketë diçka të bëjë me
Vota, si edhe, kështu që le të caktojë kjo është e ndryshueshme për të gjitha sprites.
>> Ne duam për të rritur rezultatin nëse, dhe vetëm nëse një bug është ngrënë.
Dhe ne kemi shkruar tashmë një skenar që merret me një bug u ngrënë kështu
le të shtoni këtë deklaratë një në, Ndryshimi Vota nga një.
Kjo do të thotë se një herë ju hani një bug rritjet rezultatin.
>> Le të luajë për një grimë dhe hani, Unë nuk e di, tre bugs.
Pra, ju merrni lodhur e lojës, edhe, ju do të shtypni ndaluar kuq
nënshkruajë për të ndaluar lojën.
Dhe kur ju doni të vijnë përsëri ju do të shtypni flamurin e gjelbër përsëri.
Por rezultati është ende edhe tre edhe pse unë jam duke luajtur një lojë të re.
Ne nuk duam për të dhënë përdoruesve një kokë të fillojë, kështu që ne do të duhet për të rivendosur
shënuar çdo kohë që ata të filluar një lojë të re.
Pra, le të shtoni një deklaratë në fazën e Pika e hyrjes script për të vendosur
Rezultati ndryshueshme në zero.
Deri tani, sa herë që ju të filloni një lojë, Rezultati do të fillojë në zero.
>> Tani le të hapur uritur Dino 2 ku Unë kam shtuar disa gjëra më shumë.
Kam të drejtë klikuar mbi sprite bug në kopjuar Sprite i cili bëri një
sprite identike në një tim të mëparshëm.
Bug Poison është në thelb identike me Bug1 por kam zgjedhur një kostum të ri, sepse
Kam menduar se dukej, edhe, lloj helmuese.
Në vend që të rritur rezultatin kur bug helm është ngrënë, unë në fakt
zvogëlohet duke ndryshuar rezultatin Rezultati nga një negativ.
>> Dhe pastaj kam bërë një kostum për dino tonë duke përdorur editor bojë të
të bëjë një të sëmurë në kërkim Dino dhe e quajti atë Dino Sick.
Por ne nuk e përdorin këtë kostum në tonë Programi ende, kështu që le të shtoni disa
deklaratat dhe blloqe që do të ndryshojë kostum dino për të sëmurët e gjelbër
kostum sa herë që ajo ha një bug helmuar.
>> Tani, pasi ne dublohet Sprite bug, bug helmuar i ka të gjitha
Scripts që bug origjinal bën.
Nëse dëshironi të kopjoni mbi Scripts nga sprites të tjera, ju mund të zvarritet
dorëshkrim në krye të sprite se ju dëshironi të kopjoni në.
Por ne nuk do të duhet të bëni se këtu sepse bug helmuar tashmë ka një
script që kontrollon se bug ka qenë chomped poshtë në.
Dhe ne mund të përfitojnë nga kjo për të komunikuar me dino se ajo ngrënë një
bug helmuese.
Dhe ne të komunikojnë mes sprites nga transmetimet.
Pra, le të transmetuar një të re Ngjarja quajtur Dino sëmurë.
>> Dhe ne e dimë se kemi një kostum për Dino për të ndryshuar për të, por ne gjithashtu
e di nga më herët se është e mirë për të shtuar në pauzë
mes ndryshimeve kostum.
Pra, kur kam marrë Dino sëmurë, unë jam duke shkuar për të ndryshuar kostum për Dino sëmurë, prisni
një të dytë, dhe pastaj kaloni mbështetur për Dino uritur.
Dakord.
Le të luajmë lojën tonë dhe hani një insekt dhe beetle.
Dhe rezultati zvogëlohet nga një.
>> Tani, ndonjëherë ju mund të vëreni se ndryshore nuk mund të shfaqen në
qoshe majtë të ekranit.
Nëse ju të lundruar në nenin nën të Dhënave Scripts, ju do të shihni këtë checkmark
krahas variablave që keni krijuar.
Dhe kjo fsheh ose e unhides ndryshueshme nga ekrani.
Por ju gjithashtu mund të përdorni një deklaratë Trego quajtur ose
Fshih një variable specifike.
Pra, le të përdorim këtë pikë ndryshueshme të tregojnë për sigurohuni që çdo herë që ne të fillojë
Loja, e ndryshueshme është treguar.
Great.
>> Pra, le të drejtuar lojë dhe hani një bug helm menjëherë.
Tani, kjo është pak e çuditshme që të ketë një lojë të ketë pikë negative, e drejtë?
Pra, le të prezantoj një tjetër funksion.
Nëse dino ha tepër helmues shumë mete atëherë ajo merr shumë e sëmurë dhe
loja ka mbaruar.
Pra, për të zbatuar këtë, ne do të transmetojnë tjetër, ngjarje Game Over.
Si e dimë ne, kur të ekzekutuar këtë Game Over transmetim?
>> E pra, ne mund të bëjmë këtë disa mënyra.
Ne mund të kemi një script në fazën që vazhdimisht kontrollon nëse rezultati
është negative ose jo, dhe transmeton Game Over kur
Rezultati bëhet negativ.
Ose ne mund të përfitojnë nga fakti se mënyra e vetme rezultati mund ndonjëherë
jetë negativ, është kur një helmuese bug është ngrënë.
Sepse kur ju hani tjera bug, rritjet rezultatin.
Nuk ka asnjë përdorim në kontrollimin nëse ajo duhet të jetë e Game Over apo jo kur ju
hani një bug ushqimor.
>> Pra, ne në fakt mund të shtoni vetëm për skenar që merr sëmurë Dino
transmetojnë ngjarje.
Ne duam që të udhëzojë dino si më poshtë.
Nëse rezultati është më pak se zero, transmetuar lojë gjatë.
Pra, ne do të ndërtojmë Vota pak se zero kusht duke përdorur një bllok nga
seksioni operatori, dhe zvarritje në rezultatin tonë në atë bllok.
Dhe këtu ju mund të shihni vetëm drag Rezultati i ndryshueshëm dhe të vënë më pak se zero.
Dhe ne jemi duke shkuar për të transmetuar një ngjarje e re, Game Over.
>> Por në qoftë se rezultati nuk ka shkuar poshtë zero, ne duam të Dino
vazhdonte lojën.
Pra, në vend të përdorimit të një, nëse këtu, le të përdorin një tjetër nëse ndërtojnë.
Një tjetër nëse ndërtojnë tregon Dino tonë për të të bëjë një gjë nëse gjendja është e vërtetë
dhe tjetër gjë nëse Gjendja është e rreme.
Trupi i sonë të parë nëse mund të shkoni në nëse tjetër, kështu që le të zvarritet se in
Por nëse rezultati nuk është më pak se zero, atëherë le të kaloni prapa në
Hungry kostum Dino.
Ne nuk duam të bëjmë që preemptively.
Great.
>> Por, pasi që kemi transmetuar Game Over, ne ende nevojë për të bërë një
marrës ngjarje bllok.
Ka në fakt një deklaratë të ndaluar të gjitha në kontroll, kështu që le të lidheni me këtë
kur unë të marrë lojë gjatë.
Por ne gjithashtu duam bug për të ndaluar, kështu që le të zvarritet këtë skenar në të gjithë
bug Sprites si dhe fazë.
Le të provoni këtë jashtë.
>> Ushqimi një bug helmuese menjëherë, Programi ndalesa siç pritet.
Asnjë lëvizje tjetër e mete dhe as bën Dino nëse ju shtypni
poshtë arrow keys.
Por le të thonë se ne nuk duam të kujtojmë përdoruesit e rezultatin e tyre negative, kështu që
le fshi rezultatin ndryshueshme nga Faza kurdo lojë
Mbi Ngjarja është pranuar.
Dakord.
>> Pra, kjo është një lojë mjaft të mirë.
Me më shumë kohë ju mund të shtoni më shumë sprites dhe scripts më shumë.
Ndoshta mete mund të lëvizin me shpejtësi të ndryshme.
Ju mund të shtoni një sfond të ri për fazën -
një sfond Game Over -
të tillë që, kur faza e merr Game Over rast, ajo mund të kaloni në
Game Over sfond dhe të gjithë i fshehin sprites.
Shumë e tweaks të vogla mund të bëhen për të bërë loja juaj pak më i rafinuar.
>> Dhe kjo është vetëm një shembull i një projekt që ju mund të bëni në Scratch
duke përdorur të gjitha mjetet që kemi diskutuar më herët -
sprites, kostume, faza, backdrops, kushtet, sythe, variablat,
ngjarjet dhe temat e transmetimit.
Hungry Dino nuk përdor ndonjë zë efektet, por ju mund të shtoni lehtë tuaj
vet nga lundrimit në skedën tingujve dhe eksploruar deklaratat shëndosha.
Scratch është një hyrje të madhe për të Konceptet e programimit, kështu që të jetë krijuese
dhe, më e rëndësishmja, have fun.
Emri im është Zamyla, dhe kjo është CS50.