Как сделать переход уровней в scratch

Обновлено: 06.07.2024

В прошлых уроках мы соединяли блоки команд в конструкции, которые можно называть маленькими программками. Также их можно назвать скриптами. В одном проекте может быть множество скриптов. Например, если есть два героя-спрайта, вероятно у каждого будет свой скрипт, своя маленькая программа. А весь проект – это большая общая программа, состоящая из множества мелких.

В программировании отдельные части большой программы могут выполняться либо по очереди друг за другом, то есть последовательно, либо одновременно друг с другом, то есть параллельно. Во втором случае говорят о многопоточности, то есть каждый скрипт работает в своем потоке, а разные потоки текут во времени одновременно.

Когда для каждого спрайта одного проекта вы добавляете свою конструкцию блоков, которая начинается с команды "когда флажок нажат", то как только игра запускается, оба героя начинают параллельно независимо друг от друга выполнять свои команды. Это пример одновременного выполнения скриптов.

Более того, один и тот же спрайт может содержать два независимых скрипта, каждый из которых будет выполняться в своем потоке. Рассмотрим пример. Пусть кот ходит по сцене и при этом меняет свой костюм.

В Scratch многие спрайты на самом деле состоят не из одного изображения, а из нескольких. Это можно увидеть на вкладке "Костюмы".

Поэтому когда выполняется команда "следующий костюм", происходит переключение на следующее изображение спрайта. Если костюмов всего два, то они будут чередоваться.

В приведенном выше примере блоков кода оба скрипта будут выполняться одновременно. Мы увидим, что кот не только перемещается, но еще двигает ногами. Этот эффект возникает от того, что изображения-костюмы быстро меняются.

Если отсоединить блок "когда флажок нажат" от первого скрипта, то при запуске игры кот будет стоять на месте, будут двигаться только его ноги.

Если же мы отсоединим блок "когда флажок нажат" только от второго скрипта, то кот будет перемещаться, но его ноги не будут двигаться.

Таким образом, каждый скрипт вносит свой вклад и работает независимо от другого, но одновременно с ним.

Вы спросите, почему нельзя было вставить команду "следующий костюм" в цикл первого скрипта и вовсе отказаться от второго? На самом деле можно. Однако в этом случае кот начнет менять костюмы так часто, что у вас зарябит в глазах. Тогда почему бы сюда же не добавить команду "ждать … секунд"? Потому что в этом случае, кот будет останавливаться, и плавного движения не получиться. Движение будет урывистым, перед каждой сменой костюма будет возникать задержка.

Также бывает, что скрипт начинает выполняться только при определенных условиях. Например, когда нажимается одна из клавиш на клавиатуре. При этом работа других скриптов может как останавливаться, так и не останавливаться. Во втором случае это уже не может считаться последовательным исполнением.

Поскольку при запуске игры один из спрайтов должен быть видимым, а другой невидимым, воспользуемся командами "показаться" и "спрятаться". Вынесем их в отдельные скрипты, чтобы они не мешались в основной логике игры.

В итоге получится, что скрипты, отвечающие за ходьбу кота и собаки, будут выполняться последовательно, один за другим.

Составьте программу по следующему описанию:

Кот недолго ходит по сцене, потом останавливается, но не исчезает.

Появляется второй спрайт и тоже недолго ходит по сцене.

Когда второй спрайт останавливается, кот снова начинает недолго ходить по сцене.

Когда кот останавливается во второй раз, на сцене появляется третий недолго бегающий спрайт.

Жажда нового

У меня хорошая новость для тех, кто не любит выстукивать на клавиатуре буковки!

Обычная программа — это текст. Но есть язык, в котором программа собирается из блоков, как собирается игрушка из кубиков Лего.

Если Скретч -приложение ещё не установлено у вас на компьютере, пройдите в раздел Установка Скретч.

Откройте Скретч -приложение , и вы увидите на экране:

  • исполнителя (кота);
  • среду исполнителя (белое поле);
  • СКИ — набор команд, записанных на блоках;
  • поле для сборки программы.
  • исполнитель
  • среда исполнителя
  • СКИ
  • поле для сборки программы

Исполнитель может работать в двух режимах: и .

В командном режиме исполнитель получает команду, выполняет её и ждёт следующую. Чтобы задать команду на исполнение, нужно щёлкнуть на ней в СКИ.

Задание . Щёлкните в СКИ на команде , и вы увидите, как кот сместится на 10 шагов.

В программном режиме исполнитель получает программу — последовательность команд и выполняет по порядку все команды в неё входящие.

Программы собираются из блоков в поле программы, и именно этот режим интересен для нас — программистов!

Для начала повторяйте за мной!

  1. Перетащите мышкой блок с командой в поле для сборки программы. Щёлкните на этом блоке. Программа (состоящая из одной команды) сработает, кот сместится на 10 шагов.
  1. А если нужно сделать 20 шагов? Перетащите ещё одну команду и соедините два блока вместе. Щелчок на нашей программе (на любом блоке), и кот смещается на 20 шагов.
  1. На самом деле второй блок не нужен. В белом окошке любого блока можно менять значение.

Сбросьте нижний блок назад в область СКИ (так из программы удаляется последняя команда), щёлкните на белом окошке в оставшейся команде (в нём появится мигающий текстовый курсор) и исправьте значение 10 на 20.

Щёлкаем, кот смещается на 20 шагов.

  1. Воспользуемся блоком . Он расположен в СКИ в группе Управление . Этот блок резиновый! В него можно поместить сколько угодно блоков, и то, что им охвачено, повторяется непрерывно.

Добавьте в начало программы блок . Он расположен в СКИ в группе События .

Посмотрите, над средой исполнителя расположены две кнопки: — зелёный флажок и красный восьмиугольник.

Флажок запускает программу, если она начинается с блока . Восьмиугольник останавливает выполнение.

Щёлкаем на флажке!

  1. Жалко кота! Добавим в программу ещё одну команду: . Она расположена в группе Движение .
  1. Упс! Почему справа налево кот идёт вверх ногами? Дело в том, что когда кот отталкивается, он поворачивается. Стиль поворота задаётся в паспорте исполнителя.

Чтобы открыть паспорт кота, нажмите в разделе Спрайты , и измените стиль вращения:

Теперь кот не будет ходить подобно мухе по потолку! Проверьте.

Сохраним работу на диске ( Файл/Сохранить как ) и продолжим.

Спрайты, костюмы, скрипты, звуки

Спрайт — газированный напиток, со вкусом лайма и лимона, принадлежащий американской компании The Coca-Cola Company.

А у нас в Роботландии предпочитают чай с сухариками!

Но… Дело в том, что исполнитель в Скретч (тот самый кот, которого мы заставили бегать туда-сюда) является спрайтом !

Спрайт (англ. Sprite — фея; эльф) — графический объект в компьютерной графике. Спрайт может свободно перемещаться по экрану под управлением программы.

Если вы думаете, что исполнителем в среде Скретч может быть только фирменный кот, вы ошибаетесь!

Удалим кота и назначим исполнителем летучую мышь.

Удалить спрайт из среды можно разными способами.

  1. Можно взять инструмент Ножницы и щёлкнуть этим инструментом на коте:
  1. Можно открыть контекстное меню на исполнителе и выбрать в нём позицию Удалить :
  1. Можно открыть контекстное меню на паспорте исполнителя и выбрать в нём позицию Удалить :

Важно! При удалении спрайта программа, которая для него написана, тоже будет удалена.

Итак, кот удалён (вместе со своей программой). Выбрать новый спрайт можно разными способами:

Выбрать спрайт можно из библиотеки, нарисовать в редакторе, загрузить из файла, получить с видеокамеры компьютера

Выбираем в библиотеке спрайтов в группе Животные изображение летучей мыши.

Задача 2 ( 2 кука ). Изобразить полёт летучей мыши.

Можно заставить спрайт мыши, как ранее спрайт кота, двигаться в среде, отталкиваться от краёв и поворачиваться в сторону движения.

Программа, составленная для кота, будет прекрасно работать и для мыши! Тогда зачем мы её удалили вместе с котом?

Но такое движение далеко от реального! Почему? Кот, когда идёт, должен двигать лапками, а мышь — крыльями!

Вы, конечно, знаете, как устроены мультики — нам показывают друг за другом несколько фаз движения, глаз не успевает разглядеть их по отдельности, и рисунки сливаются в мультик.

Отдельные фазы движения персонажа. При быстрой смене фаз отдельные картинки сливаются, и мы видим бегущего зайца

Чтобы показать полёт, нужно иметь не одно, а несколько изображений, с разными положениями крыльев!

Откройте вкладку Костюмы . Оказывается у летучей мыши уже предусмотрено два костюма:

Костюм спрайта — это один из предусмотренных вариантов его изображений. При помощи смены костюмов удобно программировать мультипликацию

Теперь легко собрать код, отвечающий за смену костюмов.

Сколько времени будет ждать исполнитель по команде ? Если вы не знакомы с десятичными дробями, то вот краткое пояснение.

Запись Что означает
1 секунда одна секунда
0.1 секунды одна десятая часть секунды
0.2 секунды две десятых частей секунды
0.3 секунды три десятых частей секунды
0.4 секунды четыре десятых частей секунды

Число 0.2 в два раза больше числа 0.1 и в два раза меньше числа 0.4 .

Обе части программы запускает флажок, и они работают одновременно или, как говорят программисты, параллельно . Подробнее о параллельности (когда она нужна, а когда нет) будет рассказано в уроке 2.

Задача 3 ( 1 кук ). Добавить в мультик бегемота на водопое.

Для бегемота нарисовано 6 костюмов, картинки эти находятся в папке practical/sprlib/ . Имена файлов: hippo1.jpg , hippo2.jpg ,… hippo6.jpg :

Посмотрите: водопой бегемота правдоподобнее полёта мыши! Почему так? .

А можно ли добавить ещё одного исполнителя в среду? Да!

Скретч допускает сколько угодно исполнителей-спрайтов в среде, и для каждого спрайта записывается собственная программа работы.

  1. Загружаем новый спрайт с адреса practical/sprlib/hippo1.jpg . Эта картинка автоматически становится первым костюмом.
  2. Переходим на вкладку Костюмы и загружаем оставшиеся 5 костюмов.

Загружаем спрайт бегемота из 6 костюмов.
Устанавливаем исполнителя-мышь слева сверху, а исполнителя-бегемота справа внизу

Заметим, что загрузить все 5 костюмов можно, как обычно при работе с файлами, за один раз, выделяя нужные картинки.

Если файлы в поле выбора идут не подряд, то щёлкаем по первому, выделяя его, затем добавляем к выделению другие файлы щелчками с нажатой клавишей Ctrl .

Анимированный gif — это графический файл с расширением gif , содержащий набор картинок одинакового размера и сценарий смены этих картинок при показе на экране.

Если загрузить анимированный gif в качестве спрайта, он автоматически будет разделён на составляющие картинки-костюмы.

Часть программы полёта мыши, отвечающая за смену костюмов, вполне подойдёт и для бегемота. Копируем её:

Выделяем паспорт мыши. На вкладке Скрипты перетаскиваем нужный код мыши на паспорт бегемота (отпускаем, когда курсор мыши оказывается на паспорте бегемота)

Проверяем, выполнилось ли копирование:

Запускаем мультик, нажимая зелёный флажок.

Мышь летит, бегемот пьёт. Красота! У вас получилось?

Ещё раз отметим:

  • Каждым спрайтом управляет отдельная программа.
  • Программа может состоять из нескольких частей.
  • Программы находятся на вкладке Скрипты .
  • Чтобы увидеть программу спрайта, нужно щёлкнуть на паспорте этого спрайта (выделить паспорт).

Задача 4 ( 1 кук ). Пусть дополнительно мышь и бегемот, когда на них щёлкают, издают звуки.

Сначала займёмся мышью.

  1. Выделяем паспорт мыши.
  2. На вкладке Звуки выбираем пиктограмму Выбрать звук из библиотеки ( ).
  3. Выбираем в библиотеке звуков в группе Эффекты звук boing .

1. Выделяем паспорт мыши
2. Открываем библиотеку звуков
3. Выбираем звук для мыши (нажимая , можно прослушать звук)

Дополним программу мыши ещё одним фрагментом:

Новый фрагмент будет играть звук, когда щёлкают на исполнителе.
Звук в блоке Играть звук выбираем из выпадающего списка

Мы уже видели, что программа спрайта может состоять не из одного, а нескольких фрагментов.

Каждый из них начинает работать при наступлении события , обозначенного в его заголовке.

Первые два фрагмента начинают работать после щелчка на зелёном флажке ( ), третий — после щелчка на спрайте в среде.

Отдельные фрагменты, из которых состоит программа, называют в Скретч .

Пора заняться бегемотом. Перетаскиваем созданный для мыши скрипт на паспорт бегемота — так можно копировать скрипты от одного исполнителя к другому.

Остаётся загрузить для бегемота другой звук, например, wah beatbox и установить его в команде:

Сохраним работу на диске ( Файл/Сохранить как ).

  1. Прочитайте, что сегодня узнали (чтобы знания хорошо уложились в голове).
  2. Выполните зачёт (проверим, как знания уложились).
  3. Приступайте к практике (заставим знания работать).

Освоить любой предмет без практики невозможно. Освоить без практики программирование — просто немыслимо. Поэтому Кукарача настоятельно рекомендует выполнять задания, собранные в учебнике на специальных страницах Проекты.

Кроме того, в описания проектов будут выноситься важные технические подробности, без знакомства с которыми невозможно получить качественную программу.

— Ребята! В проектах учебника важны не только условия. Не пропустите важные моменты! Они могут быть.

Самое важное про Скретч :

№ Что узнали 1 Исполнителем может быть любой рисунок, свободно перемещаемый по среде.

Исполнителя в Скретч называют спрайтом . 2 Среда — прямоугольное поле, в котором находится исполнитель.

Поле-среду в Скретч называют сценой (ведь в среде, как на сцене действуют исполнители-спрайты). 3 Исполнителей может быть много. 4 Программа составляется для каждого исполнителя отдельно . 5 Программа состоит из скриптов . 6 Скрипт запускается по событию .

Cобытие задаётся в первом блоке скрипта (блок-шапочка). 7 Два события являются особенными: нажатие на зелёный флажок и нажатие на красный восьмиугольник.

Флажок считается командой запуска всего проекта (кроме того, флажок останавливает все скрипты проекта, если они работали до момента его нажатия).

Scratch – очень популярный и удобный инструмент для изучения основ программирования для детей и начинающих. Эта среда позволяет быстро создавать интересные и довольно сложные игры с графикой и анимацией почти без написания кода, не отрываясь от мышки. А если учесть, что Скретч позволяет создавать программы управления роботами или проектами Arduino, то ее значение для начинающих инженеров трудно переоценить.

Что такое Scratch

Scratch (скретч) – это бесплатная оболочка, в которой вы можете создавать и запускать программы, насыщенные графикой и мультимедиа. Если говорить более формально, то Scratch – это не язык программирования в традиционном понимании, а визуальная среда программирования для создания событийно-ориентированных приложений. В этой среде мы можем не только создавать алгоритмы, но и рисовать, выбирать фон, записывать звуки. В этой же среде производится запуск “написанной” программы. При этом можно даже ничего не скачивать – скретч прекрасно работает на сайте.

Scratch 3 на русском для детей

Scratch появился на свет в 2007 году в стенах всемирно известного университета MIT (Массачусетский технологический институт), выпустившего сотни крупнейших инженеров и исследователей мирового уровня. Изначально среда задумывалась как инструмент помощи для начинающих студентов. Но продукт оказался очень удобным и проект со временем получил поддержку тысяч учеников и разработчиков по всему миру.

Сегодня наиболее популярными версиями являются вторая (уже устарела) и третья. Вы можете скачать Scratch 3 прямо на сайте авторов программы (ссылки вы найдете в конце статьи). В конце статьи мы также добавили раздел с историей возникновения Scratch.

Событийно-ориентированная среда блочного программирования

Во-первых, скретч – это действительно среда визуального программирования. Программы Scratch пишутся не словами, а графичесикими блоками – картинками. Графические блоки соединяются друг к другу как кирпичики-пазлы. Каждый такой блок означает команду или какую-то конструкцию языка.

Блоки программы Scratch

В итоге вы строите из блоков нужную вам последовательность, не затрудняя себя в знании правил написания названий команд. Перетащили, положили, настроили, взяли следующую – и так далее. Как только вы запускаете программу, визуальная среда программирования Scratch анализирует собранный пазл и выполняет закодированные в картинках команды одну за одной. И ваша программа оживает.

Scratch 3. События и реакция на них

Скретч – это событийно ориентированная среда. Что это значит? Все просто – ваши блоки начинают выполняться тогда, когда возникают какие-то события. Вы нажали на кнопку клавиатуры или мышки – запустится блок команд, которые нужно сделать при нажатии. Картинка на экране дотронулась до края экрана или другой картинки – запустится другой блок команд. Все, что происходит на экране или в душе ваших персонажей, воспринимается как событие, и вы можете отреагировать на него. При этом все делается визуально – вы просто размещаете на экране специальные блоки с названием нужных событий и приклеиваете к ним нужные блоки с командами.

Все это все сделано очень логично и удобно, а поэтому доступно даже для тех, кто никогда не программировал. Или для тех, кто до сих пор читает и пишет с ошибками – для маленьких детей.

Scratch на уроках программирования для детей

У скретча есть еще несколько очень важных особенностей, которые являются его несомненными преимуществами. Именно поэтому в большинстве IT-школ занятия и уроки программирования для начинающих стартуют именно со Scratch. Разработчики среды создали огромное количество дополнительных методических материалов и ресурсов для педагогов. Найти их вы сможете как на официальном сайте, так и на многочисленных интернет-ресурсах.

Scratch для преподавателей кружков программирования

Возможности

  • Уже было отмечено, что Scratch – бесплатный для некоммерческого использования. Не нужно платить, не нужно искать взломанные версии, не нужно смотреть рекламу. Без рекламы, без денег – все для человека. Вы можете скачать бесплатную версию Scratch на русском c официального сайта, а можете работать онлайн даже без регистрации!
  • В среде программирования уже есть встроенные библиотеки, в которые добавлено огромное количество готовых картинок, фонов, фрагментов звука, из которых можно сразу создавать интересные программы. Все это тоже бесплатно и может быть использовано в вашей программе сразу после начала работы.
  • Если вы используете онлайн-версию, то после регистрации сможете быстро опубликовать вашу игру в общем каталоге программ. А еще можете бесплатно ознакомиться с другими программами, посмотреть, как они написаны, и взять это себе на заметку. Сегодня вокруг Scratch сформировано огромное сообщество энтузиастов – вы можете очень легко стать его частью.

Ограничения

Идеальной среды программирования не бывает. Конечно, у Scratch есть и свои ограничения и недостатки. Все они являются в какой-то степени продолжением достоинств этой технологии.

Установка Scratch 3

Сайт Scratch

Если вы все-таки решили скачать и установить Scratch, то воспользуйтесь следующим алгоритмом:

Русификация Scratch

После установки (или загрузки через браузер) приложения язык интерфейса должен автоматически переключиться на ваш основной системный. Если этого не произошло, вы можете с легкостью переключить на русский. Для этого в версии 3 щелкните на значок с глобусом в верхней части страницы и выберите из списка русский язык.

Scratch 3 на русском

Программирование в Scratch

Итак, будем надеяться, что вы установили себе программу или открыли ее в браузере. Перед вами должен быть отображен экран среды программирования Scratch. Цветовые решения могут немного отличаться, но в целом вы увидите примерно следующее.

Scratch 3 на русском для детей

Давайте разберемся с интерфейсом программы

Интерфейс среды программирования Скретч

Основный принцип, заложенный разработчиками – минимум дополнительных окон, все нужное перед глазами. Поэтому освоить интерфейс Scratch не составит большого труда даже тем, кто плохо ориентируется в программировании. Давайте рассмотрим основные элементы интерфейса, которые можно разделить на следующие основные области:

На этих рисунках мы отметили все основные области окна. Надеемся, никаких вопросов относительно предназначения ключевых элементов интерфейса у вас не останется.

Интерфейс Scratch 3.0

Вот вариант описания интерфейса для Scratch 2:

Интерфейс Scratch 2

Спрайты – персонажи

В отличие от других языков программирования, в Scratch вы сразу создаете визуальный образ вашей игры. Для этого вам нужно создать персонажей и добавить их на сцену. Логика самой программы потом просто добавляется к каждому из персонажу или всей сцене.

Персонажи в Скретч называются спрайтами. Они легко добавляются на экран, их можно свободно перемещать, вращать, менять размер как мышкой, так и внутри программы. Вы можете добавить столько спрайтов, сколько пожелаете – главное, чтобы им не было тесно на экране. В самом начале вы уже имеете в своем распоряжении спрайт по умолчанию – милого котика.

Спрайтом может быть любое изображение – вы можете добавлять его из библиотеки готовых персонажей или создавать свои рисунки прямо во встроенном графическом редакторе.

Спрайты и сцены Scratch

Для добавления спрайта просто воспользуйтесь соответствующими кнопками в окне спрайтов – там все настолько интуитивно и понятно, что особого описания не требуется. Поэкспериментируйте и убедитесь в этом! Так же просто выполнять различные действия – поворачивать, менять имя и, конечно же, удалять.

Сцены программы

Сцена – это фон, на котором разворачиваются действия вашей программы или игры в Scratch. Создание нового фона – очень простая задача. Просто выберите нужный вариант картинки из библиотеки. Вы можете создать свои рисунки во строенном редакторе. Сцены, как и спрайты, могут нести в себе программные блоки и многими параметрами вы можете управлять программно.

Сцены программы в Scratch

Программы для начинающих на Scratch 3

Первый проект на Scratch. Приветствие

Откройте среду программирования. Вы уже знакомы с интерфейсом и без труда найдете главное окно с изображением кота. Кот – это спрайт. Вам надо щелкнуть по нему (сделать спрайт активным) и начать создавать код в окне рядом.

Все программы пишутся с помощью блоков, которые надо соединять друг с другом. Нужные блоки берутся в отдельном окне (у нас на картинке – слева) и переносятся в окно с программой. Вы можете присоединять блоки друг к другу – тогда они будут выполняться друг за другом, сверху вниз. А можете просто положить блок в любое удобное место. Для того, чтобы блок с командой выполнился, надо просто щелкнуть на него.

Блоки Внешний вид

Итак, давайте выполним простые действия:

Звуки в Scratch

Осталось только соединить оба блока вместе. Поднесите один к другому, они склеятся. В вашей программе Scratch теперь два блока. Если вы щелкните на любом из них, сначала запустится первый блок, потом второй. Программа выполнится, и вы сначала увидите надпись, а потом услышите звук. Поздравляем!

Попробуйте поэкспериментировать с программой. Вы видите, что текст, который говорит кот, мы указываем в самом блоке. Поменяйте этот текст. Вы также можете менять длительность показа этого текста. И, конечно, звуки, которые говорит кот. Но не перестарайтесь!

Запуск программы в Scratch с помощью событий

Мы с вами научились уже запускать программу, нажимая на блок с кодом. Но этот метод очень не удобен в реальной практике. Правильный способ начать выполнение программы – отреагировать на какое-то событие, например, на нажатие на кнопку старт.

Старт программы в Scratch

Старт программы в Scratc

Попробуйте запустить программу. Вы можете нажимать на зеленый флажок любое количество раз – программа будет запускаться каждый раз после нажатия. Все блоки с командами будут выполнены и после этого программа завершится.

Другие события Scratch для запуска программы

Управление игрой в скретч

Теперь нажимайте на клавиши со стрелками и смотрите, как котик здоровается и прощается с вами.

Блоки движения

Ну что же, мы научили котика говорить и даже с легкостью управляем этим процессом. Давайте теперь научим его двигаться. Это очень простая задача, мы быстро с ней справимся.

Число 10, которое стоит в блоке по умолчанию, означает, что кот пройдет по экрану 10 условных пикселей. Это очень маленькое расстояние и поэтому движение будет не совсем заметным. Если вы нажмете на команду несколько раз, она повторится, и кот будет перемещаться все дальше и дальше.

Будьте внимательны – спрайт может выйти за границу видимой зоны экрана. Тогда вам нужно будет перетащить его обратно с помощью мышки или указать новые координаты в окне свойств спрайта (внизу).

Вы можете изменить число шагов перемещения спрайта при выполнении одной команды. Не ставьте слишком большие числа – кот сбежит с экрана и вам придется его ловить.

Ну что же, надеюсь, первые шаги с программой вы сделали и вам понравилось чувствовать себя программистами? Тогда мы обязательно продолжим после. Уроки, проекты на Scratch и подробное описание его возможностей вы сможете найти в нашей отдельной статье. А сейчас, как и обещали в самом начале – краткая история появления этого языка.

История создания Scratch в MIT

Scratch впервые появился в стенах Массачусетского технологического института, MIT. Еще с 70-х годов команда математика и детского психолога Сеймура Паперта работала над языком, который позволял бы постигать азы программирования юным инженерам. Именно эта команда создала всемирно известный язык LOGO,прекрасно доживший и до нашего времени. Если вы не знаете это название, то наверняка встречали главного его персонажа – черепашку. Движением черепашки можно было управлять c помощью простых команд и операторов, получая первые навыки создания настоящих алгоритмов. Сегодня Logo используется в тысячах школ по всему миру.

Группа систем непрерывного обучения MIT продолжила разработку доктора Паперта и представила среду StarLogo. В ней была добавлена возможность программирования для Logo в виде наборов графических блоков. Блочное программирование позволило существенно снизить количество ошибок при вводе команд и повысить вовлеченность детей в процесс программирования.

Язык Scratch появился в MIT Media Lab как естественный следующий шаг реализации данной концепции. Команда Lifelong Kindergarten под руководством Митчела Резника занималась разработкой новых технологий и видов деятельности для вовлечения детей в инженерное творчество. Придуманная ими новая среда позволяла максимально сократить препятствия на пути освоения детьми основ программирования. Резник является также основателем проекта Computer Clubhouse, объединяющей сотни центров дополнительного образования по всему миру. Это помогло новому проекту сразу же получить международную поддержку.

Сегодня последней версией Scratch является Scratch 3. После длительного периода тестирования она стала доступна сообществу в январе 2019 года. Для скачивания по-прежнему доступна только версия 2. Зато скачать и установить у себя на компьютере среду для работы offline можно абсолютно бесплатно.

Сегодня Scratch – это более 40 млн пользователей, которые опубликовали более 40 млн. проектов. Каждый месяц сайт посещают миллионы человек и количество участников продолжает расти. Если вы уже захотели присоединиться к большой компании – добро пожаловать!

Хотите научиться создавать клон одной из самых популярных среди детей игр Among Us в среде программирования Скретч? Следуйте нашим подробным инструкциям.

IT-сфера превратилась в неотъемлемую составляющую жизни подрастающего поколения. Дети активно осваивают навыки программирования, создания игр. Чтобы упростить им задачу, создаются визуальные среды программирования. Наибольшую популярность в последнее время приобрела Scratch, разработанная специалистами Массачусетского технологического института для тех, кто еще только учится кодить и мечтает в будущем стать программистом.

Scratch позволяет детям изучить азы программирования, с его помощью они начинают понимать, что такое циклы, условия, ветвления, переменные и т.д. Также он способствует развитию логического мышления, обретению навыков постановки задач и нахождения решений.

Так как Скретч является онлайн-средой, то для работы с ним не требуется скачивать и устанавливать специальное приложение. Достаточно пройти регистрацию на сайте. Здесь же на платформе можно опубликовать свою игру, чтобы и другие пользователи поиграли в нее.

Яркий, увлекательный дизайн вдохновляет детей на создание собственных проектов. А то, что игру можно продемонстрировать игрокам практически со всего мира, стимулирует к поиску новых интересных идей. С нашей точки зрения, проще всего приобщить ребят к программированию, научив их делать любимые игры. Хотя Скретч и кажется простым, с помощью этой платформы можно разрабатывать игры самых разнообразных жанров: симуляторы, шутеры, аркады, платформеры и т. п. А также создавать клоны пользующихся огромной популярностью игр, в том числе Among Us, Brawl Stars, Friday Night at Freddy’s.

Далее мы пошагово представим создание части игры Among Us. Если вы хотите ознакомиться с подробной видео-инструкцией, демонстрирующей, как создать игру в Скретч, листайте ниже.

Нами будут запрограммированы движения персонажа, смена фонов, а также выполнено одно задание — герой должен устранить неполадки с проводкой в коридоре.

простейшая игра на скрейтч

  • Перемещение вправо-влево (отдельно этот код описан в проекте — Едущая машинка (scratch для детей 6-7 лет))
  • Движение с изменением направления персонажа
  • Прыжок вверх (отдельное описание кода смотрите в статье — Как сделать прыжок в Scratch)
  • Появление и исчезновение спрайтов
  • Взаимодействие нескольких спрайтов (удар мечом, запуск молнии в противника)
  • Запрыгивание на другой объект
  • Преобразование спрайта в другой объект

Теперь поговорим о каждом из приведенных выше алгоритмах scratch по отдельности. Перед прочтением материала по возможности ознакомьтесь со статьями начального уровня — их я помечаю тегом: для детей 6-7 лет в основной рубрике по детскому программированию. Перед прочтением скачайте графическую часть будущей игры (ZIP-архив)

Программируем движение с изменением направления персонажа

Загружаем начальную графику для игры. Для начала загружаем спрайт и подгружаем первые три костюма для объекта. Если вы не знаете как загрузить спрайт и костюмы, то посмотрите начальные уроки по Скрейт на этом сайте. Дело не в том, что мне лень это написать здесь, а в том, что безопытные пользователи не смогу разобраться в следующем коде. Подробного описания не будет, так как материал расчитан на детей уже знакомых со Скрейтч. И так загружаем графику из скаченного архива:

Последовательность костюмов для идущего ниндзя

Последовательность костюмов для идущего ниндзя

ниндзя бьет по противникам в скрейтч

Ниндзя бьет по противникам в Скрейтч

Сразу загрузим костюм для Бомбермена (одного из врагов ниндзя)

bomberman scratch

Загружаем костюмы для первого врага

Переходим к написанию кода для движения нашего героя с разворотом в направлении выбранном нами на контроллере управления (пульт, джойстик, клавиатура или виртуальные кнопки). Для движения вправо готовый код выглядит следующим образом (движение вправо пишите самостоятельно):

направленное движение в скрейтч

  • Блок Показать — добавлен сюда из-за использования параметра Спрятаться в другом месте игры (пока можете написать код без него);
  • Блок Если касается края, оттолкнуться — позволяет персонажу не уходить за края игровой области (попробуйте вначале написать этот код и не добавлять блок Установить способ вращения и посмотрите, что получится);
  • Установить способ вращения вправо-влево — добавление кода позволяет убрать у персонажа эффект переворачивания с ног на голову при отталкивания от края;
  • Повернуть в направлении -90 — этот код является основным в алгоритме движения спрайта с разворотом в нужном направлении и отвечает непосредственно за поворот в нудном направлении;
  • Идти 10 шагов — отвечает за скорость перемещения персонажа. Отвечает за движение спрайта в том направлении, куда он повернут. Те.е герой не всегда будет идти слева на право ! (поиграйтесь с значением данного блока, а так же попробуйте использовать его без блока Повернуть в направлении -90 градусов)
  • Ждать 0,05 секунд — код добавлен для плавной смены костюмов и визуальной видимости тго, что спрайт идет.
  • Следующий костюм — после каждого нажатия на кнопку персонаж будет менять костюм (попробуйте понажимать на кнопку медленно,а затем просто зажмите ее и посмотрите, что из этого выйдет)


В этой части вы самостоятельно пишите код для движения вправо, а так же позиционирование персонажа при нажатии на запуск игры (Зеленый флажок). Не переживайте, в конце игры будет архив с фотографиями всего программного кода.

Алгоритм прыжка вверх в Scratch

Подробное описание смотрите в статье — Как сделать прыжок в Scratch). Код для ниндзя будет иметь следующий вид:

прыжок в скрейтч

Описание запрограммированных блоков:

  • Показать — показывает персонажа, если до этого по какой-то причине он имел параметр Скрыть (в нашем случае именно так);
  • Задать скорость прыжка значение 0 — Заводим переменную с названием: Скорость прыжка и устанавливаем значение: 0
  • Повторять всегда — блок, который позволяет постоянно выполнять указанный внутри код. Простейший цикл.
  • Если … то — простейший алгоритм условия. Выполняется в зависимости от действий на контроллере управления (клавиатуре)
  • Клавиша W нажата — непосредственное указание, пояснение думаю не требуется 🙂
  • Задать Скорость прыжка значение 20 — устанавливаем значение переменной равное 20 (поиграйтесь с этим параметром и посмотрите, что изменится при его корректировки)
  • Повторить 41 раз — цикл с определенным количеством повторений (Как ты думаешь изменив это значение, что изменится в действиях спрайта?)
  • Изменить y на скорость прыжка — меняем визуальное расположение спрайта в зависимости от значений в переменной. Данный алгоритм кода позволяет видеть плавный прыжок спрайта с постоянным изменением высоты прыжка)
  • Изменить скорость прыжка на -1 — блок отвечает за плавное опускание спрайта по y на изначальное место.

Появление и исчезновение спрайта — удар персонажа в игре

Чтобы проше написать алгоритм кода для удара ниндзя мечом создаем новый спрайт и загружаем 3 костюма удара мечом по противнику. Так как этот спрайт будет невидим во время старты игры и движения вправ и влево, а так же прыжка вверх, то добавляем следующий код:

удар мечом по противнику в скрейтч

Описание блоков:

  • Когда Зеленый флаг нажат — спрятать спрайт
  • Когда клавиша а нажата — спрятать спрайт (Обратите внимание на блоки синего цвета. Попробуйте вначале написать код без них и посмотрите,что изменится после их добавления!)
  • Когда клавиша d нажата — все так же прячем объект (Вопрос: Как ты думаешь почему для клавиш A и D описаны дополнительные синие блоки, а для прыжка вверх и запуска игры нет?)
  • Когда клавиша w нажата — прячем героя во время прыжка

Зачем написан алгоритм синего цвета:

направление удара мечом в scratch

Этот небольшой код позволяет разворачивать персонаж (а мы помним, что бьющий ниндзя — это другой спрайт) в ту сторону откуда идет противник. Без этого блока алгоритмов враг заходил бы слева от персонажа, а меч махал бы справа.

Читайте также: