[Powered by Google Translate] ZAMYLA CHAN: Добре. Здравейте на всички, и добре дошли Walkthrough 0. Zamyla Моето име, и ще бъде водеща тези за сваляне настоящата година. В CS50, всеки проблем комплект е придружен от репетиция което ще отидем чрез проблем набор седмица, да поговорим чрез говорете как да започнете, да се обсъждат различни техники и съвети наистина да прекъсне проблема в някои управляеми ухапвания. Аз също съм наистина щастлив да отговори на всички въпроси, които имат на проблема набор. Без допълнително шум, радвам се, че си тук, независимо дали сте тук в лице или настройка в онлайн. Нека да започнем. Така че първата стр. набор CS50 всъщност, ние няма да влязат в пишете и машина код неща още не. Ние всъщност ще се използва Scratch, което е програма, която ни позволява да се направят някои плъзгане и пускане програмиране. И така, макар и да не пишете, тя наистина ни позволява да опознаването на някои от основните концепции, които ние ще използваме през цялата CS50. Сега някои от тези понятия са изброени тук в кутията с инструменти. Това, което бих искал да направя за всяка репетиция, е да ви представя всички с набор от инструменти, които можете да използвате за репетиция. И така, не се притеснявайте. Ще отидем всички тези термини и всички те теории по време на репетиция. Сега, дали в крайна сметка използването на всички тези инструменти, или просто някои от тях, наистина е добре да се знае това, което сте оборудвани да бъде в състояние да се справи с набор проблем. Така че в самото начало, първи чужд език, които трябва да знаете, е това, което спрайт. Така всеки обект или всеки герой, било то котка, куче или топка, се нарича спрайт. И така, ако искам, да речем, две котки - дали те са идентична - Ще трябва да се направят две отделни спрайтове в Scratch. И така, спрайтове скриптове, свързани с тях. Скриптове са всъщност това, което ти започваш да бъде изграждането - плъзгане и пускане - с блокчетата си. И така, какво правят скриптовете е вид определят и определяне колко Спрайт държи. Sprites не са всъщност само изображения, защото имаме костюми също са свързани с спрайтове този вид определи това, което прилича на спрайт. И вие можете да имате повече от един костюм за даден спрайт. Така че в някакъв момент по време на Вашата Scratch програма, тъй като ние ще покажем по-късно днес по време на репетиция, всъщност можете да променя костюма на вашия спрайт, за да изглежда или малко по-различен или съвсем различно. И така, има три начина за създаване на спрайт Scratch. One, можете да си направите в Scratch построена в боя редактор. Можете да качите ваше собствено изображение, използвайте един от Scratch е вграден в или последния вариант, получи случаен спрайт. Сега, ако се чувства особено щастлив, тогава аз Приветстваме ви да опитате късмета си и да се създаде случаен спрайт. Така че всичко, от спрайтове са пуснати на на сцената в Scratch. Етап - ние можем да се отнасяме към него като наш платно. И така, всичко от спрайтове са поставени на сцената. И този етап, какво прави той позволява на всички от спрайтове да се движат по него. И точно като спрайтове, етап също има скриптове. И така, тези скриптове, за да ги поставят на сцената - Това е наистина полезно, когато, да речем, имате скрипт, който не точно се отнасят до една специфична спрайт, а по-скоро се отнася до множество спрайтове или просто, като цяло, нещо, , които искате да направите. Така че можете да поставите тези скриптове на сцената вместо това, както и че ще бъде малко по-добър дизайн. Сега, докато може да има няколко спрайтове, че е добре да имайте предвид, че може да има само един етап. Но етапи също имат произход. За разлика от костюми, като спрайтове, етапи произход. И отново, може да изготви свой собствен или да качите своя изображението, за да се използва като фон. Така че някой има някакви въпроси, преди да продължим нататък? OK. Чувствайте се свободни да ме прекъсват по време на репетиция, и Аз съм щастлив да отговори на всички въпроси, които имате. OK. Така че, когато започнете спрайт програма, това, което започваш да направите, е да ти започваш да щракнете върху зеления флаг. Но ако не се свържете нищо този блок тук, а след това нищо всъщност ще се случи. Защото, виждате ли, скриптове и сцената трябва да направите, е да знаете, за да отговори на събитието - това е, което ние ги наричаме, събития - на зелен флаг се кликва. Така че трябва да прикачите блокове бразда дъното на този зелен флаг кликнали блок, а след това Програмата ще знам какво да правя и как да се отговори на зелен флаг щракнали. Е, това, което идва след това? Е, ние имаме множество блокове в Scratch да се използват и когато месото, наистина, на вашата програма се състои в това отчети. И така, тези твърдения са удобно организиран по цвят. Имате действия, свързани с движението, звук, външен вид, и така нататък. И така, можете да видите, можете да навигирате между тях в разделите в Scratch програма. И така, докато ще има и други неща около нея, това, което изявление всъщност е всъщност разказва спрайтове или етап, за да се направи нещо. За разлика от просто казвам, OK, когато правите това, отчети всъщност съдържат месо от него. Да речем, че искате само да изпълни определено действие, да речем искате само котката мяу, когато се случи нещо определено. Можем да се възползваме от Булев, което сте научили в лекция. И така, това са изрази, които оценяват вярно или невярно. И така, те са идентифицирани в Scratch от ъглите в края на тези блокове. И така, имате разнообразие от различни видове Булев. "Е най-натиснат", "прави две плюс две се равняват на 5 ", или" е потребител натискане на определен бутон на клавиатурата? " Сега, вие не може просто да използвате тези сам. Това, което трябва да направите, е да ги комбинирате с условие. Така че условието е там под контрола в раздела Scratch. И така, те удобно са малко контейнера, който показва формата на блок, който трябва да поставите в него. Така че в зависимост от контекста на ситуацията, можете да изберете булева и след това я поставете вътре състоянието ви. И има ли условен израз. Ако сложите командите в този блок, тогава имате структура, при която след определен условие е изпълнено наляво, след това изпълни изявление. Да? Ученик: Ако една променлива представлява номер, можете да използвате променлива вътре в Булев, като зелена, например? ZAMYLA CHAN: Да, можете. Можете да влачите и пускате променлива стойност във вътрешността на кръгла форма. Сега, едно от предимствата на компютрите е огромна мощ и скоростта, с която може да изпълни повтарящи се процеси. И така, вместо, да речем, повтаряйки инструкция и отново, и отново, и всъщност пишете, че - или в този случай, Scratch, плъзгане и пускане и плъзгане и пускане - какво можем да направим, е да го капсулират в една линия. И така, вериги могат да се използват или да се изпълни неща безкрайно с примка завинаги или за определен брой пъти - да речем, да се повтаря ", казват здрасти" 10 пъти или до определен условие е истина. И така, отново, ще видите, че Scratch намеква, че когато имате състояние като "повторете, докато" тогава единственото нещо, което ще се поберат вътре има е булева стойност. Добре. Така че сега ние знаем, че можем да се оформят повтарящи процесите вътре повторения. Можете да видите защо подобно нещо не може да бъде идеално. Той не се побира на слайда. По същество, тя просто прави едно и също нещо отново и отново 10 пъти, в действителност. Той се движи с 10 стъпки, казва здравей, се движи 10 стъпки, казва здрасти. Така че сега можете да видите, че след като имаме вериги, нещо като това е много по-добре. Това е кратък, той е по-малък, и тя действително се допълва едно и също нещо. Сега, в Scratch това не може да направи голяма разлика, но всъщност ще ви спести доста време. Така че, върху разнообразни прояви - можете да ползвате променливи и да ги сложат на условия. Както е посочено по-точно там, виждате имаме именувана променлива "Контра", и ние сме се равнява че да се види дали това е по-малко от 0. Така променливи са по същество, аз бих казал, контейнери за ценностите. Scratch, тези видове стойности могат да бъдат думи или те могат да бъдат числа. И така, с тези променливи, какво можем да направим с тях е да настроите стойността им. Така че в първия пример тук, ние имаме пример за текст съдържащ стойност "Hello, World!" Във втория пример, Предполага се, че вече имаме именувана променлива "Контра", и в този случай, ние сме го променя от три. Ние го увеличаване с 3. И тогава в последния пример, променливи могат да се влачат да бъдат пуснати в булев израз. Сега, когато създадете променлива, това, което трябва да решите, е дали променливата за всички спрайтове Scratch във вашата програма, или само спецификата спрайт, в което сте избрали, когато правите променлива. И така, това е много важно решение да се направи. И тя наистина се свежда до каква обхвата искате променлива да има. Така например, един пример от локален обхват ще бъде, ако избереш само за този спрайт, за да има променлива. Така че това би означавало, че само този спрайт ще бъде в състояние да достъп до тази променлива. Само че спрайт ще бъде в състояние да го видя, го променят, да го променят. Ако решите да имат глобален обхват - така че ако ти кажа за всички спрайтове, ако изберете тази опция - това означава, че на сцената, както и всички от спрайтове ще бъде в състояние да видите, модифицирате и достъп до тази променлива, че сте създали. Всякакви въпроси, доколкото на променливи или нещо? Да. Ученик: За променливите, може да има две променливи със същото име, ако те са на различни спрайтове? ZAMYLA CHAN: Тъй като те са местни спрайтове --- ах, да, съжалявам. Така че въпросът е дали може да има две променливи на същото име в програмата, а ако имате две променливи с същото име, но и двете са местните спрайтове, така спрайт, котката името на променливата "контра" и спрайт, куче, има променлива с име "контра", толкова дълго, колкото тези, са както местните, така спрайтове, а след това обхватът им не се простира до останалата част от програмата. И така нито един от другите духове или етап ще се бърка. Добре. Така че аз споменах преди влизането точка, когато имахме при зелен флаг кликнали блок. И така, какво е това - се казва, OK, когато събитието се случва, че зеленото знаме кликнали, това е, което трябва да направите. И така, това всъщност не е единственото събитие , която имаме в Scratch. Ние също имаме други събития. Така че ние имаме, например, когато един клавиш на клавиатурата е натиснат. И вие може да изберете буквите от А до Я, 0 до 9, или клавишите със стрелки. И тогава ние също имаме други събития, като например, когато спрайт щракнали. И така, когато започнем с това, можете да забележите Основна тенденция е, че имат само една бразда на дъното, и така след това, отново, ключове, че нищо не придава по-горе този блок. Вие се изгради от това и долу. Сега, да кажем, какво се случва, ако искаме някакво събитие да се случи само , когато, аз не знам, котката е докосване на определена част от на сцената или нещо такова? Ние всъщност не разполагат с никакви вграден събитие, което означава, че. Така че това, което ще трябва да направите, е всъщност създаваме наша собствена събитие. И това се нарича излъчване. Така че, когато искате да сигнализира, че някои се е случило, след това да използвате - в раздела за контрол, там е наречен блок "Излъчване". И така, вие ще напишете името на случай, че искате да се излъчват, и след това в зависимост от това кое спрайт или спрайтове - може да има няколко спрайтове, за да реагират на това съобщение - или етап ще трябва да се справя, ще трябва да я получават, ще трябва да кажа, ОК, разбирам, че това е се случи, така че аз ще направя това с него. И така всеки път, когато излъчване на дадено събитие, който е с разбирането, че или спрайт или друг спрайт ще трябва да получат този случай и да реагират. Сега, последната концепция, преди да стигнем в истински пример на Scratch програма нишки. Така че теми, когато компютърът ви се изпълнява едновременни процеси в същото време. Гарантирам ви, че всички от нас са се възползвали от теми, когато гледате филм в същото време напишете есе или нещо подобно. Компютърът се изпълнява няколко неща едновременно време, точно както самото начало може да. Така че, както можете да видите в този пример, тези две азбуки да се използва за точно същия спрайт, тъй като те началото на входни блокове всъщност може да се използва кратни пъти. Гарантирам ви, че вероятно зеленото знаме кликнали блок ще бъде един от най-популярните блокове в програмата си. Така че тук ние виждаме, че когато се кликне върху зеленото знаме, има процес, както и при зелен флаг е кликнали, има отделен процес. И така Scratch ще работят тези двамата по едно и също време. И така, използването на тези теми, знаейки, че всъщност можете да имат повече от една входна точка - дори ако тя е една и съща точка за влизане - , че това ще стане наистина полезно, ако искате, да речем, се отделят различни задачи от един на друг. Добре. Така че нека действително изглежда в пример на Scratch програма. OK. Така че вече сте направили малка програма за нас тук. Така че аз съм просто щракнете върху зеления флаг, за да започне и да видим какво прави той. Така че ние имаме един портокал риба тук - Спрайт риба - изглежда да се движи и след това да се върнете и да се върнеш. И тогава ще имаме акула спрайт. И тази акула Спрайт може да се движи, той може да се върти, тя може да плуват наоколо. OK. Така че това е вид на шега. Но ние определено може да добавите още за това. Например, ние виждаме, че когато акулата се движи, тя може да всъщност става на екрана и почти изчезне от погледа. Така че ние искаме да променим това, защото ние не искаме акула да избяга. И така, нека да спрем нашия скрипт и след това редактирате акула скриптове, може би добавя нещо. Забележете, че тук, в този конкретен спрайт, цикълът завинаги завършва с прав ръб. Тя не разполага с никаква бразда. Така че в действителност това има смисъл, защото това е завинаги контур. Това е изпълнение на нещо безкрайно. Така че никога няма да свърши. Дори да е имало нещо под него, ще никога да не стигнем до това. Така че всъщност са принудени да въведат конец. Добре. Така че нека да добавим друг скрипт. Така че аз отивам да се започне с точка на този пост, когато зелено флаг се щракнали. Така че, това, което искам да направя е непрекъснато проверява дали акула е да се докосват ръба. Но аз знам, че всъщност под Предложение е чист малък блок, който казва, о, ако е на ръба, скача. Така че това, което искаме да направим, е непрекъснато изпълнение. И така, какво е това "ако на ръба, скача" - всъщност вече проверява дали съм на ръба, след това скача обратно. Така че ние трябва да намерим някакъв веригата непрекъснато изпълнение на тази декларация. Така че, ако погледнем под контрол, Някой има ли представа за каква линия може да искате да използвате? Да. Ученик: Цикълът завинаги. ZAMYLA CHAN: Точно така, да. Контур завинаги. Така че нека да проследи, че тук, и след това да речем, ако на ръба, скача. И тогава да видим. Добре. Така рибата се движи по обичайното. И тогава, о - сега акула не може да избяга и отскача на разстояние от екрана. Cool. Добре. Така че е търсил. Аз Не можеш нали? Ученик: Как да направите които се прилагат за акулата, тъй като се движи на рибата? ZAMYLA CHAN: Ah. Така че причината, поради която само акула отскача, за разлика от риба, както е така, защото този скрипт, който ние написахме е вътре акула дух. Виждате ли, тук, акулата спрайт е избран. Добре. Така че нека да добавим нещо друго. Проучване на различните костюми, които Scratch, и аз видях това сладко малко акула Chomp. Така си мислех, че хей, добре, може би можем да приложи акула нетърпелив, например, когато сме натиснете пространство. Аз съм просто ще спре това. Добре. Да. УЧЕНИК: Може ли само да показва - е, че при костюми? ZAMYLA CHAN: О, да. Така че аз отидох под костюми, и после погледнах по вносни. И така, ето, Scratch има цял набор от костюми, които можете да избирате. И така, след това има един куп животни, и тогава акула има няколко костюми, свързани с него. OK. Така че в този скрипт тук, аз вече съм проверка непрекъснато в течение завинаги, ОК, добре, ако се натисне стрелка наляво, после искам да се върти обратно на часовниковата стрелка. Ако се натисне дясната стрелка, искам да се върти по посока на часовниковата стрелка. Ако се натисне стрелка нагоре, тогава аз искам да прогресира напред. И така, какво можем да направим, е просто добавете този скрипт, вместо добавяне на отделна, защото това вече е проверка в темата на която натискане на клавишите са. Така че нека добавим този, който казва, че ако клавиша за интервал - нека използваме клавиша за интервал, за да Chomp надолу. Така тези ключови стрелка наляво натиснат, и т.н., това са в ярко синьо. Така че нека да отидем до Усещайки ярко синьо, и погледнете надолу. О, и тук е натиснат клавиша пространство. Така че това, което искаме да направим, е да има акула преминаването му нетърпелив надолу костюм. Че има нещо общо с това как акула изглежда, така че на външен вид. И тук имаме удобно, преминете към костюм на акула Chomp. Но когато ние Chomp надолу, ние не искаме да акула нетърпелив завинаги, така че нека добавим, OK, и след това, след като chomps, ние искаме да се върнете обратно. ОК, така че нека да видим какво прави. Така че ние сме го движи. OK. Така че ние имаме нетърпелив. Това е нетърпелив вид бързо обаче, защото в Scratch ги изпълнява мигновено. Значи, нека да отидем да се контролира и да го оценявам си Chomp, изчакайте една секунда. И тук chomps малко по-дълго, преди да премине обратно към глада си. OK. Така че аз съм доста доволен от акула сега. Но рибата, това, което изглежда да се прави - това е напредва няколко стъпки, в действителност, пет пъти. Тя се движи на 50 стъпки. И тогава какво прави тук, в този горния блок е, че съм казвайки: Добре, добре, ще да отида до определена стойност на х. Да намерите координатите, всъщност можете да просто мишката върху на екрана, а след това в дъното - точно тук - Ще ви покажа какви са координатите. Така че можете да се възползвате от това да въведете координатите , който искате. И така, това твърдение тук се казва се казва, OK, , рибата започва от тази определена стойност х и тогава височината му може да се промени. Аз съм всъщност ще изберете произволна височина, че все още остава в рамките на ограниченията на сцената. И така, ето, това, което аз като се възползва от излъчване на събития. Така че виждате, че това събитие манипулатор е нова fish1. Така че, когато рибата получава нов fish1 случай, тя ще изпълни това. И тогава ще видите, че след като се движи напред си определена сума пъти, а след това действително излъчва отново OK, нови fish1. Но вместо това, какво ще кажеш да направим така, че само риба продължава до края на екрана, преди да го връща, вместо просто да ходят до центъра на. Така че, вместо да се каже, повторете пет пъти - защото ние не наистина знам колко пъти ще бъдат необходими, докато достигне до края на екрана, нека да използваме нещо друго. Така че аз отивам да се отдели това, защото ние наистина не искам това. За да изтриете блокове в Scratch, това, което правите, е просто плъзнете наляво, освобождаване, и след това той получава заличава. Ако решите, че не искате да направите това, тогава можете да винаги възстановя. Но ние искаме да се отърве от този. Това, което искаме да направим, е, че ние искаме да продължим да се движат на 50 стъпки и спирайки една секунда, докато докосне края на екрана. Така че, може ли някой да забележи една линия, за да можем да искате да използвате тази повтаря процес, само докато докоснете екрана. Ученик: Повторете, докато. ZAMYLA CHAN: чух "се повтаря, докато" и това е правилно. Така че, да, това се повтаря до блок се но ние виждаме, че това се повтаря до блок не е съвсем пълна, нали? Така че ние трябва да се каже, добре, добре, повторете до кога? Затова ние казваме, ОК, добре, се повтаря, докато рибата се допират до край на екрана. И така, аз ще ви кажа, че това е под Усещайки. Има тази трогателна Булев. И така, можете да изберете какво искате да се проверява че рибата се докосват. Така че тук, искаме да кажем докосва ръба. И тогава ние искаме да добавим това обратно. И така, сега, ако гледате нашата риба, след като докосва ръб, тя ще се движи отново. Добре. Така че аз съм щастлив с това. И нека отворен HungryShark1. Добре, нещо като шоу-кукинг, добавих малко повече функции. Така например, ще видите, че рибата сега е всъщност плъзгане съвсем гладко, за разлика от преди, когато беше вид на движението и спиране, се движат и спира - по същество просто скача поставените пиксела. Погледна под Предложение, тази декларация се плъзгат, и аз каза, OK, вместо просто да се движат и спира, преместване и спиране, аз отивам да се плъзгат 70 единици надясно, но да остане в същото г. позицията ми тук. Добре. Така че ние имаме акула, която може да Chomp. Cool. Но тя се нарича HungryShark, в края на краищата, така че нека да акула ядат риба. И така, как бихме могли да кажете на риба или да кажете на акулата, която има chomped? Как можем да комуникираме? Да. Ученик: На втория костюм на акула, хваща риба. ZAMYLA CHAN: Да, точно така. Така че ние знаем, че когато сме смяна на костюма на Chomp, че имаме Chomp надолу. Сега, ние в крайна сметка ще трябва да проверя. Кажем, че искаме рибата да изчезне, след като яде. Ние ще трябва по някакъв начин да съобщават на рибата, която , че ще трябва да се скрие, например, или изчезва от екрана, след като е бил chomped надолу. Така че, какъв вид на концепция, какъв инструмент можем да използвате, за да акула съобщават рибата, OK, Съм chomped? Ученик: Broadcasting. ZAMYLA CHAN: Да, точно, излъчване на дадено събитие. Така че нека да отидем да се контролира и да кажем, че предаването. И да излъчват Chomp. Добре. Но след като излъчва нещо, което е с предположението, че ние всъщност ще има нещо получава. И така, това ще бъде рибата. Така че, да речем, когато получа Chomp. Сега, когато акула Chomp надолу само празно пространство, ние не искате рибата да реагираме на тях изобщо. Така че нека да кажем, ОК, добре, само ако акулата се докосвате риба по време на Chomp това е, когато ние действително ще направим нещо. Значи, ние отиваме да използвате състояние, ако, нали, защото ние сме се провери дали нещо е вярно или не. Така че, ако се върнем към Усещайки, тогава ние можем използвате тук, ако докосване. А пък тук, ние ще изберем акула. След това под Изглежда, този блок Скрий , че ще направи основно рибата изчезва от сцената. Ние ще направим да го скрие, но ние искаме друга риба, нали? Нашата акула е гладен. Искаме да му се даде повече риба. И тъй, да се излъчват отново на риба. OK. Така че нека да видим какво прави. Cool. Така че chomps и друга риба. Но това е малко прекалено бързо за друга риба да отида. Така че нека да изчакаме секундата, преди излъчване на нови риби. Добре. OK. Така че това е доста добра цел на играта. Но всички игри се нуждаят от точки, нали? Така че това, което бихме могли да използвате, за да поддържате резултат? Да. УЧЕНИК: Други - ZAMYLA CHAN: Да. Точно така. Да. Така че ние искаме да следите основно как много риба е ял. За да направите това, ние ще трябва да направим променлива. Нека наречем този резултат. И така, вероятно, тъй като това е една игра, която играем, отиваме да искате рибата да бъде в състояние да да речем, след като яде, това може да увеличи резултата или нещо и след това на сцената вероятно ще трябва да направи нещо с болки, както добре. Така че аз отивам да решат да направят тази глобална променлива и да каже за всички спрайтове. OK. Така че, когато ние искаме да увеличим резултата? Когато рибата е ял. И така, ние вече имаме един процес, че тук има работа с риба се яде. Така че нека да добавим това твърдение тук - промени Резултат от 1. Cool. Така че след като ядете риба, оценка увеличава. Добре. Кажа, че съм уморен от тази игра. Спирам. И тогава, о, аз искам да се върна към играта. Искам да започна нова игра. Е, резултатът е все още 3, въпреки че аз съм играят нова игра. Ние наистина не искам никога да не вкара за нулиране, нали? Така че нека добавим изявление, когато играта се стартира в етап да кажа, Добре, добре, ние искаме да се нулира резултата. Така че тук сме променливата резултат на 0. И така, сега, когато започнете игра, резултата ще започне в 0. Cool. OK. OK. Така че сега, нека отидем на HungryShark2. Така че аз съм направил малко повече сега, и това, което съм направил е правото кликнали върху рибата дух. Исках повече риба, и така аз кликнали два екземпляра и го направи нов спрайт идентични, че едно и също копира във всички скриптове, както добре. Тогава този fish2 е по същество идентичен с fish1, с изключение вместо да се започне от лявата и се движи право, тя започва в дясно и ляво се движи. И тогава аз също избра нов костюм за него. Тогава открих друг костюм, който е петниста риба, и аз беше като готино, това изглежда отровни, така че нека се престорим, че че това е отровна риба. И така аз казах: Добре, добре, вместо да яде отровна риба и като увеличението на резултата си, аз всъщност искате да намалите. Така че тук имаме резултат намалява с 1 всеки път, когато акула го яде. И тогава, наистина ми хареса костюми, които нулата и аз погледнах и тогава открих shark's изглеждаше като болна акула. И така, след това го редактира го направи зелен. И аз бях като хладно, той е болен акула. Добре. Така че нека да добавите към нашия скрипт някакъв начин на вземане на акула преминаването е болен, когато тя яде отровена риба. OK. Така, защото ние копирали всички скриптове от нашата оригинална риба в отрова риба, вече има тази спрайт тук , който казва, когато съм chomped, аз съм всъщност chomped? Така че можем да се възползваме от това, за да съобщят на акула, о, добре, просто яде риба отрова. Ти си болен. И така, това би било какво действие? Какво ще бъде искате да направите? Излъчване. Да, точно така. Така че нека излъчване. Нека да го наречем акула болен. OK. Така че сега, акула, очевидно, е ще бъде този, който е получаване на това събитие. Така че нека добавим, когато получа акулата е болен. OK. Така че ние знаем, че имаме този костюм - акулата е болен. И тогава ние знаем от преди това ни се оценят , когато можем да спрем за малко, преди да преминат обратно. Да? Ученик: Как да копирате скрипт от един спрайт към друг? ZAMYLA CHAN: Ah. Така че в този случай, когато просто е дублирал Спрайт копирате един скрипт за друг спрайт, това, което направих тук само да кажа два екземпляра, а всъщност цяла нова Спрайт с всички скриптове. Но казвате, че искате да копирате само един определен скрипт за друг спрайт, тогава какво бихте направили всъщност е просто плъзнете това, мишката върху друга азбука, а сега и тук го дублира. В този случай, вече го има, така че може просто да изтриете отново. Но за да копирате един скрипт в друга, това, което правите е просто го плъзнете върху други духове. OK. Така че ние сме отново на акула е болен. Така че е получил акула е болен, и то се казва, добре, добре, след като аз съм болен, аз отивам да преминете към костюм, който ми казва "Акула болен", и сега, нека просто да добавите чакам да оценят зелено. И тогава отиваме отново да си гладен, така че можем само да превключите обратно на акула са гладни. Добре. Така че нека да ядем това лилаво риба. Това е добре. Добър въпрос. Какво се е случило до щанда? OK. Така че ние имаме резултат до 0 тук, но този резултат - какво тази отметка, не се крие или Показва променливата от екрана. Но какво можем да направим, вместо да го махнете отметката или проверка - ние всъщност може да има този блок казва: "покажете или скриете променлива. "Така че нека да се уверете, че всеки път, когато стартирате играта, че променливата е показано. OK. Така че сега променлива е показано. Ние ядем отрова риба, и ние се разболяват. Cool. Добре. Така че сега, че е странно за игра за нас, за да имат отрицателни точки, нали? Така тя продължава да яде тези и това е като - така че какво ще кажеш, когато стигнем отрицателен, ако сме яли прекалено много отровна риба, дивеч над акула е твърде болен. Добре. Така че това, което ще трябва да направите, е, че ние ще трябва да излъчват някакво събитие - играта свърши. Така че можем да направим това по няколко начина, всъщност. Ние може да има някъде в сцената скрипт, който непрекъснато проверки е отрицателен резултат? Отрицателен ли е резултатът? Ако отговорът е "да", тогава ние излъчи това събитие. Така че това е един начин да го направите. Или бихме могли да се възползват от факта, че ние знаем, че единственият начин, че резултатът ви може да бъде отрицателен е, когато ядете отровна риба, нали? Защото, когато ядете друга риба, резултат ще се увеличи. Така че не се използва при проверка дали трябва да бъде играта свърши или не. Така че това е процес, подобен на тук. Така че ние можем действително трябва само да добавите към това ", когато получа акула болен. " Така казват, че това състояние. Искаме да кажем, ако резултатът е по-малко от 0. Така че ние ще отидем на операторите, ние ще използваме това по-малко от един, отиваме да плъзнете резултат тук, да речем 0. И така, ако резултатът е 0, тогава ние искаме да излъчва нещо, наречено играта свърши. OK. Да предположим, че имаме играта свърши. Нека си го премести тук или нещо. Е, ние искаме акула само да се върна, за да са гладни, ако все още може да се играе играта. Така че, вместо да използват "ако", ние ще използваме "ако друго" изгради. Така че това, което прави - той казва, ОК, така че ако това условие е вярно, тогава направи това, но ако това е фалшиво това сторете. Така че нека добавим, ако резултатът е по-малко от 0, тогава вие излъчват играта свърши, но ако не - ако резултатът все още е положителна - след това се върна, за да са гладни. OK. Cool. Така че сега имаме тази игра през събитие, ние ще трябва да имат някакъв начин да реагира към него. Така че нека да направим нов скрипт, който казва: "когато получа играта . "И това, което имаме тук под контрол, е всъщност това спиране на всички бутона, така че основно имитира кликнете червен знак стоп. Така че нека да акула спирка. И така, ние също така искаме рибата да спре, така че нека да влачите и го копирате инча Искаме да спре всичката риба. И тогава нека на сцената спирка, както и. Добре. Така че, плуващи наоколо, ядат риба и тогава програмата замръзва. Аз щракване, но аз всъщност не може да направи нищо. Добре, но нека кажем, че ние не искаме да се напомни на потребителя, че те имат отрицателна стойност, например, тогава ние можем, за например, скриване на променлива от екрана. Така че, когато на сцената се получава играта свърши, а след това ще се скрие променливата резултат. OK. Така че нека да ядат повече риба. И тогава резултата изчезва, и просто трябва този екран. Добре. Така че това е една доста прилична игра, и ако имаше повече време, след което в крайна сметка може да добавите все повече и повече скриптове. И така, аз добавя още няколко риби, ги накара да прогресира с различна скорост, а след това, когато акулата яде отровна риба, всъщност казва, "Blech!" И тогава това, което направих е аз добавя нов фон етап - играта свърши фон. И така, какво прави на сцената по време на играта свърши събитието работа е превключва на фона на играта свърши фон. И както добре, аз скрих от спрайтове от сцената, така че само игра спрямо общия фон е показано. Има няколко други малки допълнения, които добавих аз, например, преди, когато се озовахме нашата програма, тогава нашата акула, следващия път, когато ние започнахме, ще започне в тази позиция, както добре. Това, което добавя е, когато се кликне върху зеленото знаме, а след това акулата се връща към произхода и след това е изправен към Добре, така че всеки път, имате акула започва там. Така че можете да експериментирате в движение и такива неща, че само да добавим малки щрихи, които правят вашия игра малко по-полиран. Някой има ли някакви въпроси относно HungryShark? Cool. Добре. Така че това е пример за нещо, което бихте могли да направите в Scratch използват всички инструменти, които обсъдихме по-рано. Така че аз също включени в репетиция пързалки. Ще ги видим по-късно. Това е само общ преглед на процесите, които направихме - напредва от HungryShark0 целия път до крайната ни. Един Да. Но това е за него. Ще остана зад, ако вие искате да задава въпроси. Това е репетиция 0. Благодаря на всички ви, че дойдохте, и аз ще ви видим в Walkthrough 1.