Как создать Friday Night Funkin' в Scratch — урок для школьников

a989ff1bcaeb87cb7776750671279450.png

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

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

На языке «Скретч» можно писать разные игры 

Хочу отметить игру Friday Night Funkin» и сказать, что ее можно сделать с помощью Scratch! FNF — это популярная ритм-игра: задача сводится к тому, чтобы пройти несколько музыкальных уровней и одержать победу над несколькими противниками с помощью танцев. Главный персонаж — Boyfriend, взаимно влюбленный в Girlfriend, но счастливому союзу мешает Daddy Dearest — отец девушки. Игрок должен пройти все музыкальные уровни, чтобы убедить отца в искренности своих намерений и завоевать благосклонность.

Интересно? Тогда хочу предложить вам создать Friday Night Funkin» с помощью короткой и простой инструкции по Scratch для детей. 

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

Делаем FNF на языке «Скретч»

Основная задача игры, которую нам предстоит сделать, — попадать стрелочками на клавиатуре в высвечивающиеся «подсказки»: это заставит персонажа Boyfriend двигаться под музыку. 

Давайте вместе повторим FNF и начнем именно со стрелок:

  1. Открываем Scratch, переходим в спрайты.

  2. Создаем первую стрелку. Для этого нарисуем прямоугольник без заливки, но сохраним контур и растянем фигуру по горизонтали. Теперь нам нужно изобразить стрелку. Выбираем инструмент «Изменение точек» и ставим их так, как показано в видео. 

Правая стрелка готова. Переименуем ее соответствующим образом и закрасим серым цветом. Затем потребуется продублировать полученную стрелку и сделать ее светлее. Используем имя «Вправо 2». Суть такова: обычное состояние стрелки обозначается серым цветом, который при условии попадания в трафарет будет становиться более светлым.

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

  1. Копируем изображения.

  2. Переносим их на новые спрайты.

  3. Устанавливаем корректные названия.

А теперь давайте сделаем активные стрелочки, которые, как в FNF, будут показываться снизу:

  1. Копируем костюм «Вправо» и называем его «Игровые стрелки».

  2. Пишем команды для трафаретов. Для первой стрелки, обозначающей движение в правую сторону, блочный код будет таким: когда флажок нажат, перейти в 134 115 и изменить цвет костюма на темный («Вправо»). Движение влево программируем так же, но меняем координаты и пишем 35 и 115. С верхней и нижней стрелочками работаем по той же схеме и устанавливаем следующие цифры: −122 и 115, −47 и 115 соответственно. Не забудьте об изменении цветов!

Теперь хочу рассказать, как запрограммировать основу игры FNF. Нам нужно:

  1. Создать условие для игровой стрелки. Какое — можно увидеть в уроке Scratch для детей.

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

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

  4. Создать переменную «Номер костюма». Она будет определять направление каждой новой вылетающей стрелки. Значения переменных, обозначающих костюмы в цикле, нужно установить в диапазоне от одного до четырех.

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

Теперь давайте установим координаты трафарета 134 и −168, а также зададим команду: после совпадения движения персонажа с требуемым направлением нужно плыть одну секунду вверх. Установим новую координату Y и присвоим ей значение 240.

Так же поступаем и с другими костюмами. Подробно об этом рассказано в уроке программирования в среде «Скретч» для детей. Обязательно посмотрите видео, чтобы узнать о:

  • Программировании подсчета очков;

  • Добавлении фона и персонажа, костюма для него, а также звуков.

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

Я верю, что вы справитесь! А если хочется научиться работать с языком на уровне опытного пользователя, стоит задуматься обобучении на курсах. Мы в школе Pixel проводим онлайн-занятия по Scratch как для младших школьников (6–9 лет), так и для детей постарше (8–12 лет).

Теперь хочу поговорить о том, чем язык «Скретч» полезен для детей.

Плюсы обучения детей программированию на языке Scratch

В первую очередь хочу отметить, что программа «Скретч» предназначена именно для детей: в ней они на примере использования ярких блоков и простых команд обучаются основам написания кода. Вместе с тем школьники постигают базовые принципы программирования:

  • Логику. Ни один код не может быть хаотичным: обязательны последовательности и связи. Понимание этого факта подготавливает детей к освоению более сложных языков: текстовых, а не визуальных;

  • Простоту. Уроки программирования на «Скретче» для детей приводят их к пониманию принципа KISS (Keep it Simple, Stupid). Люди, профессионально владеющие продвинутыми языками, говорят о следующем: совершенный код — это максимально простая программа, от которой нечего отнять. Поэтому именно упрощение — способ исключить множество ошибок. А потому как блочное программирование в среде Scratch для детей — это действительно просто, KISS усваивается ими с легкостью.

Хочу отметить, что рассматриваемый язык лишь помогает погружаться в основы и поддерживает интерес к теме написания кода. Это отличный старт для ребят, увлекающихся геймингом и разработкой. Бесплатные уроки программирования на «Скретче» становятся для детей первым шагом, постепенно формирующим устойчивый интерес к другим языкам, используемым профессиональными разработчиками.

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

1. Погружение в среду так называемых скретчеров

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

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

Встроенный визуальный редактор, возможность создавать игры и истории, а также взаимодействовать с другими начинающими скретчерами — огромное преимущество: благодаря этому каждый ребенок, постигающий основы программирования на Scratch, вовлекается в уникальную развивающую среду.

2. Возможность самообучения с нуля

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

А еще можно начать учиться с помощью подборок бесплатных видеоуроков:

3. Формирование устойчивого интереса к написанию кода через вовлечение в игровой процесс

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

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

4. Ускорение общего умственного развития

Писать код — значит думать. И это как нельзя лучше описывает уроки программирования на «Скретче» для детей онлайн. Ребята активно думают, когда учатся использовать блоки, прописывать условия и более сложные команды, а также реализовывать внутреннюю логику собственных проектов.

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

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

  • Приближают детей к пониманию основных принципов грамотного программирования — логики и простоты;

  • Погружают в азы и подготавливают к освоению более сложных языков;

  • Учат взаимодействовать с такими же начинающими программистами и разработчиками игр;

  • Формируют устойчивый интерес к написанию кода;

  • Активизируют мышление, прокачивают ум и ускоряют общее развитие.

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

Поделитесь опытом и советами в комментариях: с какого языка начинали вы, было ли сложно, подходит ли Scratch на роль первого языка программирования для детей?  

© Habrahabr.ru