Перейти к содержимому

Как сделать игру на двоих в скретч

  • автор:

Как создать свою первую игру: видеоуроки Scratch для детей

В сегодняшней статье я покажу видеоуроки Scratch и подробно разберу процесс создания игр на Scratch версии 3.0.

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

Среда Scratch разработана медиа-лабораторией Массачусетского технологического института, последняя версия — Scratch 3.0 — совместима с мобильными устройствами и наборами наборами LEGO Education, а также адаптирован интерфейс для работы с планшетами. Благодаря этому, в Scratch дети также могут создавать сложные интерактивные проекты: анимированные презентации, мультфильмы и игры, рассчитанные на нескольких пользователей.

Начать изучение Scratch ребенок может уже в 6 лет. Для дошкольников существует отдельная версия этого языка — Scratch Junior. Подробнее о нём я писал в этой статье.

В сегодняшней статье я подробнее разберу процесс создания игр на Scratch версии 3.0.

Охота за привидениями

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

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

Гонки на двоих

Давайте попробуем посоревноваться на гоночной трассе. Для этого сначала спроектируем ее, а потом запусти игру.

Мультиплеерная игра

Помимо создания сетевой игры, на этом уроке мы рассмотрим переменные и их значение в коде.

Звездные войны

Программируем космический корабль и атакуем корабль соперника.

Головоломка Minecraft

Воссоздаем мини-вселенную Майнкрафт и стараемся как можно быстрее добраться до сундука в игре.

Among Us. Часть 1

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

Among Us. Часть 2

Совершенствуем карту и сбиваем астероиды.

Создаем Flappy Bird на Scratch

Моделируем игру-платформер с прыгающей птичкой.

Brawl Stars (Бравл Старс)

Пробуем создать игру менее, чем за 45 минут!

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

Создаем игру за 15 минут

Поверьте нам, это не так сложно!

Игровое меню на Скретч

Создаем игровое меню — лобби.

Обязательно попробуйте создать свои игры на Scratch, делитесь ими с друзьями и в официальном сообществе на сайте https://scratch.mit.edu/.

Следите за новыми постами по любимым темам

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

Как сделать игру Танчики на Scratch

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

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

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

Полезные ссылки из нашей базы знаний:

  • Интерфейс и инструменты Scratch
  • Что такое спрайт?
  • Блоки движения
  • Условия в Scratch

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

Немного о Танчиках

Первая версия игры вышла в 1985 году в Японии и называлась она «Battle City». Уже больше 35 лет назад! Эта игра была для приставок, ее компьютерная версия вышла спустя несколько лет. Однако «Battle City» не пользовалась популярностью на родине. Зато в России – это настоящий символ эпохи. В 90-е годы появилась «пиратская» версия, сделанная в Китае – «Tank-1990», именно она произвела фурор и получила народное название «Танчики». С тех пор как вышла первая версия, разработчики перевыпускают улучшенные версии игры и насыщают ее дополнительными функциями. Забавно, что «Танчики» сохранили свой интерфейс, даже в самых последних современных версиях, где по карте передвигаются 3D танки, мы узнаем прототип 1985 года. Игрок смотрит на поле боя сверху вниз, а на экране – танки разных команд и препятствия.

Интерфейс игры Танчики в 1980-е Интерфейс игры Танчики в 2010-ом

Создаем первый танк

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

Кнопка с котом

Галерея спрайтов Scratch

Но мы нарисуем танк сами. Он может быть каким угодно: с длинным дулом или коротким, ярким или нейтральным, с люком и без.

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

Танчик на Scratch

Центр рисунка и поля Scratch

Обязательно проследите, чтобы центр вашего танка — синий плюсик- сходился с центром поля (Рис. 5), потому что иначе танк потеряется в пространстве, запутается, а мы вместе с ним.

Давайте закончим оформление нашего танка настройками. На панели спрайтов есть есть графа для ввода, сейчас там написано «Спрайт 1». Мы предлагаем сразу изменять имена, чтобы в процессе программирования не путаться. Мы назовем наш спрайт – Танк 1, можно использовать свое имя и имя друга. Если вам покажется, что танк слишком большой и занимает много места на сцене, на этой же панели есть настройка размера. Базово это значение 100 (%), но мы предлагаем уменьшить до 50.

Когда рисунок будет готов, переходите во вкладку «Код» (сверху слева).

Настройки танка

Давайте закончим оформление нашего танка настройками. На панели спрайтов есть есть графа для ввода, сейчас там написано «Спрайт 1». Мы предлагаем сразу изменять имена, чтобы в процессе программирования не путаться. Мы назовем наш спрайт – Танк 1. Но вы можете использовать свое имя или имя того, с кем вы хотите сыграть.

Если покажется, что танк слишком большой и занимает много места на сцене, на этой же панели есть настройка размера. Базово значение 100 (100%), но мы предлагаем уменьшить до 50.

Когда рисунок будет готов, переходите во вкладку «Код» (сверху слева).

Учимся управлять танком

Научим наш танк передвигаться по сцене. Для того, чтобы это сделать переходим в группу «События» (слева) и выбираем блок «Когда зеленый флажок нажат». Именно эта кнопка запускает игру. Перетаскиваем его на рабочую панель справа. Мы будем перемещать сюда все блоки кода. Блоки магнитятся, достаточно приблизить их друг к другу.

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

Начало кода. Первый блок.

Далее: группа «Управление» и перетаскиваем блок «Повторять всегда».

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

Добавляем внутрь нашей конструкции еще одно условие из группы «Управление»: «если , то». Дополнения условий хранятся в группе «Сенсоры». Посмотрите, их края в виде ромбов, такие же, как в отверстие блока «если, то». То, что надо! Наш первый танк будет управляться при помощи стрелок, поэтому мы перетаскиваем блок «клавиша нажата», а вместо пробела выбираем «стрелка вверх» (Рис. 7.).

Выбор условия в блоке Scratch

Стрелка вверх – это движение вперед. Переходим в группу «Движение» и выбираем «идти 10 шагов». Получилось, что если «клавиша стрелка вверх нажата», то наш танк «идет 10 шагов». Повторяем условие для всех направлений движения. Обратите внимание, что для движения назад значение должно быть отрицательным: «идти -10 шагов», танк как будто отталкивается назад. Для движения в стороны выбираем блоки «повернуть на 15 градусов». У нас получилась такая структура (Рис. 8.).

Код движения танка

Для скорости вы можете изменить значения в блоках: чем больше цифра, тем быстрее двигается танк.

Направление движения

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

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

Если нажать на кнопку «Направление» в панели спрайтов, то вы увидите круг и стрелку. Стрелка показывает, куда на самом деле смотрит спрайт. Сейчас он смотрит по диагонали вправо, поэтому для него вперед и назад – это движение по диагонали, несмотря на то, что дуло смотрит совсем в другую сторону (Рис. 9.).

Направление танка

Как же это исправить? Нам нужно снова перейти во вкладку «Костюмы», выделить танк с помощью стрелки и покрутить его так, чтобы синхронизировать направление дула и стрелку на кружке справа, как показано на Рис. 10. Готово! Теперь танк правильно двигается во все стороны.

Настройка направления Танчика на Scratch

Поле боя

Танку необходима база. Давайте займемся сценой и нарисуем препятствия (стены и лабиринты).

Справа от панели спрайтов находится панель «Сцена», щелкаем на нее. Сверху место вкладки «Костюмы», появилась вкладка «Фон», выбираем ее и автоматически перемещаемся в режим рисования – сейчас будем строить.

Конфликт (взаимодействие/столкновение) между предметами в гейм-деве называется коллизия. Мы будем обрабатывать коллизию по цвету, то есть цвет стены должен быть уникальным. Если цвет танка и стены будет одинаковым, то могут возникнуть проблемы. Мы выбрали цвет и при помощи «Прямоугольника» нарисовали стену.

Рисуем стену

Обрабатываем коллизию

Переходим во вкладку «Код» и два раза щелкаем по танку. Если мы сейчас попробуем его подвигать, то увидим, что танк игнорирует препятствие и наезжает на стену, как будто это плоский рисунок на полу, а не объемное сооружение. Не дела…

Добавляем нашему танку еще одно условие из группы «Управление»: «если , то». Оно должно стоять внутри предыдущего! Заходим в группу «Сенсоры» и выбираем условие «касается цвета» (добавляем нужный — можно воспользоваться пипеткой). У нас получилось двойное условие: если стрелка вверх нажата, то танк едет вперед, и если танк идет вперед, он касается нашего запрещенного цвета, то он не может продолжать движение и идет назад (Рис. 12).

Условие для стены

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

Стена может заблокировать наши действия, поэтому танк должен отталкиваться от нее, пружинить. Чтобы не попасть внутрь стены, в условии касания нужно прописать бОльшее количество шагов, чем в первом значении. Например, если по стрелке вверх танк делает 10 шагов, то касаясь запрещенного цвета, он едет 12 назад, чуть отпрыгивает.

Теперь наш танк не сможет заехать внутрь стены. Вы можете нарисовать любое количество стен или сделать игровое поле с лабиринтами. Главное – танку нужно место для движения!

Танчик на Scratch и поле боя

Переходим к стрельбе

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

Ядро 1

Логика движения ядра

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

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

Этот блок должен быть отдельно от блока «повторять всегда», так как ядро прячется один раз в начале игры и никогда не показывается.

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

Наше основное ядро спрятано, поэтому в тот момент, когда мы будем стрелять, по условию будет создаваться его клон. Переходим обратно в группу «Управление» и выбираем «создать клон самого себя».

Условие для Ядро 1

Условие для клона ядра

Следующие условия мы будем задавать клону. Нам нужно синхронизировать положение Ядра 1 и положение Танка 1. В группе «Управление» выбираем блок «когда я начинаю как клон» и из группы «Внешний вид» обязательно добавляем «показаться», ведь на предыдущем шаге мы спрятали наше ядро. Переходим в группу «Движение» и выбираем: «перейти в x…, в y..». Вместо каких-либо значений, нам нужно задать унаследование от Танка 1. Для этого переходим в «Сенсоры» и выбираем блок (Рис. 16.). Добавляем его в оба кружка. Сначала меняем от кого – в нашем случае «Танк 1», а затем выбираем переменную – x, а затем y. Должно получится вот так (Рис. 17.).

Блок из группы

Условие для клона Ядра

Но ядро должно и лететь в направлении танка, поэтому из группы «Движение» выбираем «повернуть в направлении» и вновь вместо значения добавляем блок из группы «Сенсоры» (см. Рис. 16). Направление наследуется от Танка 1.

Если сейчас мы добавим нашему ядру блоки движения, то он будет игнорировать и нашего противника, и стены вокруг. Поэтому ядро должно лететь до тех пор, пока чего-нибудь не коснется. Переходим в группу «Управление» и выбираем «повторять пока не», а в качестве условия добавляем из группы «Операторы» блок «или». Так как условие тройное, мы создаем два ИЛИ и соединяем их как показано на Рис. 18.

Два оператора ИЛИ

Касания ядра

Из группы «Сенсоры» добавляем условия: «касается край», «касается цвета» (цвет наших стен) и последнее условия должно относится к Танку 2. Самое время его создать. Но сначала закончим с ядром, а пока оставь последнее условие пустым.

Внутрь условия добавляем блок из группы «Движение»: «идти на 10 шагов». Повторим, чем больше значение, тем быстрее движется предмет. 10 для ядра – это не серьезно, наш танк легко уедет от такого снаряда, поэтому мы поставим значение 20.

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

Давайте скорее настроим второй танк и попробуем пострелять!

Создаем второй танк

Чтобы на нашей сцене появился второй танк, продублируем первый. Нажимаем на него правой кнопкой мыши и выбираем «Дублировать».

Дублируем Танчик на Scratch

На экране появился второй танк, но пока они двигаются одновременно, потому что оба настроены на движение по стрелкам. Сейчас мы это исправим. Но сначала давай поменяем название спрайта на Танк 2 (или имя) и попробуем пострелять! Возвращайся в код Ядра 1, и добавь в условие – «касается Танк 2».

Изменяем условия для Танка 2 Два танчика на боле боя в Scratch

У нас все заработало и Танк 1 стреляет, а у вас?

Давайте поработаем над дизайном Танк 2 – изменим его цвет и кнопки управления.

Чтобы изменить цвет, нажимаем на второй танк, выбираем «Костюм» и с помощью заливки изменяем цвет. Проверьте, чтобы центр этого танка также совпадал с центром поля!

Если первый танк у нас двигается с помощью стрелок, то второй будет двигаться классическим сочетанием букв – WASD. (w – вверх, s – вниз, a – лево, d- право). Нам практически не нужно менять код, осталось только заменить стрелки на буквы (Рис. 22).

Код движения Танк 2

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

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

Условия для Ядра 2

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

Жизни

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

Переменные

Переходим в группу «Переменные» и нажимаем «Создать переменную». У нас их будет две – Жизнь 1 (для Танка 1) и Жизнь 2 (для Танка 2). Эти переменные можно ввести в любой участок кода, любого спрайта. Мы выбрали Ядро 1 и добавили переменные со значением 3 – у каждого танка по 3 жизни. В группе «Переменные» выбираем «задать .. значение».

Меню переменной Установка переменных в код

Наши переменные уже отображаются в верхнем левом углу сцены.

Переменные на поле игры Танчики на Scratch

Условие для ядра

Когда ядро касается вражеского танка, жизни должны уменьшаться. Давайте введем условие, при котором от касания ядра будут зависеть количество жизней танка. Для этого выберем наш Танк 1 и дополним его основной блок. Заходим в группу «Управление» и выбираем условие «если, то». Будьте внимательны, блок должен находится внутри «повторять всегда», но не попадать в остальные.

Далее переходим в «Сенсоры» и выбираем «касается». Для Танка 1 вражеское Ядро 2. Значит именно их он боится. В группе «Переменные» выбираем блок «изменить на». Танку 1 соответствуют Жизни 1, поэтому выбираем их, а в значении пишем -1. То же самое пишет для Танка 2, меняя условия на Ядро 1 и Жизни 2.

Коллизия взаимодействия может сработать несколько раз за короткий промежуток времени и отнять сразу все жизни у нашего танка, поэтому мы добавим небольшую задержку. Создадим ее искусственно, добавив в код условие «ждать 0.1 секунд». Переходим в группу «Управление» и выбираем нужное условие (Рис. 26).

Код зависимости Ядра 2 и Жизней 1

Теперь, когда мы стреляем, количество жизней в переменных уменьшается. Если вы не хотите заниматься сердечками, то переходите к заголовку Winner! Но мы рекомендуем выполнить все части урока Танчики на Scratch. Показатель количества жизней есть в каждой игре и уметь их писать — универсальный навык.

Рисуем сердечки

Создаем новый спрайт и рисуем. Жизни могут быть и в виде звездочек, и в виде кружочков. Всего у этого спрайта должно быть 4 костюма: 1 костюм – 3 сердечка, 2 костюм – 2 сердечка, 3 костюм – 1 сердечко и 4 костюм – без сердечек.

Чтобы продублировать сердечки используем кнопки скопировать и вставить (Рис. 27.), а костюм размножим с помощью кнопки «Дублировать», нажатием правой кнопкой мыши на костюм слева (Рис. 28).

Рисунок сердечек-жизней Как дублировать костюм

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

Мы хотим, чтобы сердечки отображались четко над танком. Переходим во вкладку Код. Начинаем с базовой схемы: «Событие» -> «когда зеленый флажок нажат», «Управление» -> «повторять всегда». Далее переходим в группу «Движение» и выбираем «перейти к x. y…». В качестве условий мы возьмем знакомый нам блок (Рис. 16.) и добавим его и к «x», и к «y».

Фиксируем уровень жизни над танком

И положение x, и положение y, наши сердечки наследуют от Танка 1. Но если мы закрепим сердечки, то увидим, что при поворотах они наезжают на танк и их практически не видно, поэтому мы решили их немного приподнять. Для этого заходим в «Операторы» и выбираем блок с +. Положение по y необходимо достать, а на его место поставить оператора: в первой области написать цифру – на сколько приподнимутся наши сердечки, а во вторую область вернуть зависимость от положения y. Вот что у нас получилось (Рис. 29).

Код для сердечек Закрепили сердечки у одного из Танчиков на Scratch

Дублируем костюм с сердечками для второго танка с помощью клика правой частью мыши и меняем название спрайта на Жизни 2. В коде меняем положения от Танк 1 на Танк 2.

Сердечки отображаются, но их количество не изменяется при попадании снаряда. Нам необходимо ввести зависимость количества жизней в переменной и костюма с сердечками. Если у нас 3 жизни, то выбираем костюм 3, а если 2 жизни, то 2, и так далее.

Сердечки = жизни

Выбираем спрайт Жизнь 1 и добавляем новый кусок кода. Начинаем как всегда: «Событие» -> «когда зеленый флажок нажат», «Управление» -> «повторять всегда». В той же группе «Управление» выбираем условие «если, то». Заходим в группу «Операторы» и выбираем форму в виде ромба со знаком равно. В первой части у нас должна быть переменная. Заходим в группу «Переменные» и перетаскиваем Жизни 1.

Переменная Жизни 1

После знака = пишем цифру 3. После этого заходим в группу «Внешний вид» и выбираем «изменить костюм на ..» И выбираем тот номер костюма, на котором изображено 3 сердечка. Теперь мы можем продублировать условие «если, то» еще 3 раза, и поменять количество жизней и номера костюмов. В конце последнего условия, когда количество жизней ровно 0, нам нужно не только сменить костюм на тот, у которого нет сердечек, но и добавить из группы «События»«Конец игры». У нас получился вот такой код (Рис. 32).

Код для Жизни 1

Дублируем эту часть кода для спрайта Жизни 2.

Для того, чтобы переменные поспели за циклом и успели обновиться, нам нужно поставить перед ним маленькую искусственную задержку. В группе «Управление» выбираем блок «ждать 1 секунду». Но целая секунда для нас много, сократим до 0.1.

Новое условие в коде

Не забывайте, что у нас 2 цикла с сердечками. Нужно добавить задержку и в Жизни 1, и в Жизни 2.

Winner!

Нам осталось вывести на экран имя победителя. Сделаем это в настройках сцены. Для этого нажимаем на панель «Сцена» рядом с панелью спрайтов. Переходим во вкладку «Фоны» и дублируем их. Всего у нас получится 3 фона – основной и 2 фона для победителей.

Выбираем текст и на одном пишем – «Победил игрок 1», а на втором – «Победил игрок 2». Если вы знаете с кем будете играть, можно ввести ваши имена или забавные псевдонимы.

Фон в игре Танчики на Scratch

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

Объявляем победителя

Но ведь в конце игры фон должен измениться? Да! Для этого в группе «События» выбираем «когда я получу конец игры», а в «Управлении» выбираем условие «если, то, иначе». Обратите внимание, что у этого блока два условия, он отличается от тех, что мы использовали ранее.

Эта часть работы похожа на наше решение с костюмами. Фоны также зависят от количества жизней. В группе «Операторы» выбираем блок со знаком больше (>) и добавляем в условие. На первом месте ставим Жизни 2, а на втором Жизни 1. Получается, что если в момент окончания игры значение переменной Жизни 2 больше, чем Жизни 1 победил Танк 2, и именно это нам должен сообщить фон.

В группе «Внешний вид» выбираем блок «переключить фон», и выбираем тот фон, на котором написано «Победил игрок 2». А после слова «иначе», добавляем такой же блок, но используем последний фон, который нам сообщит, что «Победил игрок 1».

Код для смены фона

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

Жизни в минусе

Мы должно остановить все процессы в игре, а для этого нужно остановить процессы у всех двигающихся спрайтов, а именно у танков и ядер. Переходим в группу «События» и выбираем «когда я получу конец игры», а в «Управлении»«стоп ..», по маленькой стрелочке выбираем «другие скрипты спрайта».

Остановка скриптов

Дублируем это условие к обоим танкам и снарядам.

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

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

(*)Респаун

В серьезных играх у героя всегда есть место постоянного появление героя. Ваша игра будет выглядеть еще круче и профессиональнее. А делается респаун очень просто. Мы переходим во вкладку «Код» любого из танков. Заходим в группу «Движение» и выбираем «перейти в x, y», и еще одно условие «повернуть в направлении» и ввести нужные значения. Чтобы танк всегда оказывался в этом месте в начале, нам нужно поставить блок до начала цикла.

Код для респауна в Scratch

Координаты выбирайте любые.

Финал

Финальная версия игры

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

Дальше вы сможете усложнить игру и придумать новые уровни, добавить больше стен или лабиринтов, сделать несколько типов снарядов. А можно подключить третьего игрока! Удачи!

Еще больше игр на Scratch на нашем онлайн-курсе! Итог каждого урока — новая игра. На курсе мы создаем змейку, Fruit ninja и даже свою версию легендарного Марио. Почитать о курсе вы можете ЗДЕСЬ.

Рабочая версия проекта по нашей инструкции

Делаем игру-стрелялку (шутер, shooter)

Творческое программирование для всех

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

Реализация 1. Стрельба из волшебной палочки

  • клавиши-стрелки вверх-вниз — направляем волшебную палочку (прицеливаемся)
  • клик мышью — выстрел (только одной пулей)

Найти и изучить проект на сайте Scratch можно по адресу: https://scratch.mit.edu/projects/302351889/

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

Реализация 2. Стрельба с использованием клонов Scratch

Здесь представлено две версии разработки. В отличие от 1-й реализации, здесь возможно стрелять очередями.

Версия 0.1
  • Поворачивай Кота, двигая мышь.
  • Нажимай на пробел для выстрела.

Найти и изучить проект на сайте Scratch можно по адресу: https://scratch.mit.edu/projects/188785347/

Версия 0.2
  • Поворачивай Кота, двигая мышь.
  • Кликай мышкой в нужном месте сцены для выстрела.

Найти и изучить проект на сайте Scratch можно по адресу: https://scratch.mit.edu/projects/188785635/

Вторая версия основана на первой с некоторыми изменениями.

Реализация 3. Стреляющий дракон

  • мышка влево-вправо — движение дракона
  • клик мышью — выстрелы.

Найти и изучить проект на сайте Scratch можно по адресу: https://scratch.mit.edu/projects/302408327/

Данный проект отличается от предыдущих тем, что наш персонаж стреляет двумя «пулями». Но во многом он очень похож на версию 0.2 реализации 2.

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

Программирование на Scratch для детей: как сделать первую игру?

Программист в 5–6 лет — возможно ли это? Да, если площадкой для освоения разработки станет среда Scratch.
Придумать и воплотить игру может и дошкольник. Программирование на Scratch для детей — верный способ познакомить ребенка с кодингом. Как это сделать и что можно создать в Скретч, рассказываем ниже.

Программирование на Scratch для детей

Дети программируют в среде Scratch 3.0

Что такое Scratch?

Scratch — язык программирования и одноименная визуальная платформа разработки игр и анимаций для детей. Скретч изобретен специально для ребят без опыта кодинга.

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

Среда программирования Scratch 3.0

Среда программирования Scratch 3.0

Scratch-программирование для детей подойдет любителям ПК и компьютерных игр. Работать на площадке легко уже с 8 лет. У дошкольников есть шанс испытать себя в программировании с отдельной версией — Scratch Junior. Блоки-функции не содержат текста, поэтому учиться кодингу ребенок может до того, как начнет читать.

  • Визуальность. Процесс конструирования похож на сборку деталей Lego: программист передвигает яркие блоки с командами, задавая алгоритм.
  • Простота. Дружественный интерфейс интуитивно легок для понимания.
  • Наглядность. Результат деятельности ребенок видит сразу — это мотивирует и вдохновляет на свершения.
  • Коммуникативность. Путем сервиса дети изобретают проекты, делятся ими и оценивают работы других ребят, обмениваясь идеями.
  • Прицел на будущее. Несмотря на игровой формат, Скретч включает в себя те же инструменты, что и текстовые языки: циклы, функции, переменные, логические операции. Позже ребенок без затруднений сможет переключиться на скриптовые языки профессиональных разработчиков.

Польза программирования на Scratch для детей

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

  • научится ставить задачи и решать возникающие проблемы;
  • станет усидчивее и целеустремленнее: стимул — игра, спроектированная своими руками;
  • раскроет в себе креативность. Ребенок создает персонажа и «оживляет» его: учит бегать и прыгать, петь и танцевать. На платформе можно перекрасить готового героя или сотворить собственный фон;
  • разовьет способность мыслить логически, аналитически и абстрактно;
  • поймет логику построения алгоритма, синтаксис и принципы выполнения команд. Дети знакомятся с понятиями переменных, циклов, ветвлений, вычислений. Знания способствуют использованию в играх меню, физики и интерактивности;
  • привыкнет взаимодействовать со сверстниками онлайн;
  • воплотит компьютерную игру, продумав механику и сюжет.

Как сделать игру в Скретч

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

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

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

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

Охота за привидениями при помощи Scratch-программирования

Подходящий вариант для первой встречи со Скретч. Миссия игрока — стрелять по привидениям и получать за это баллы. Призраки возникают каждые 3 секунды. За минуту требуется уничтожить 20 привидений. Итоги выводятся на экран.

Для игры устанавливается привлекательный фон и подготавливается небольшой скрипт.

Гонки на двоих: как создать игру в Скретч

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

Игра для двоих с одной клавиатуры делается за 20 минут: осталось нарисовать транспортные средства и трек для состязания, задать размер и направление спрайтов, составить скрипты.

За время проектирования дети применят цикл и познакомятся с условным оператором if.

Звездные войны на языке программирования Scratch

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

Для реализации «Звездных войн» нужно настроить космические судна и стрелы «наших», назначить положение и размеры спрайтов, прописать поведение противника и нарисовать пули. И, конечно, определить условия и переменную для подсчета баллов.

Раненые корабли приносят очки. При 10 подстреленных суднах появляется центральный соперник, и тогда начинается главная схватка.

Minecraft-головоломка: Scratch-программирование для детей

Поклонники Майнкрафт смогут воссоздать вселенную на платформе Скретч.

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

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

Раннер: создание игры в Скретч

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

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

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

Paint 3D в программе Scratch для детей

Сотворить предстоит не стандартный редактор Paint, а тот, в котором проектируются трехмерные объекты, способные вращаться.

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

Brawl Stars: программирование со Scratch

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

Игра получится энергичной и эпичной. Ребенок сделает фон, кнопки, главного персонажа и противников, счетчик времени, орудие борьбы и окончание игры.

Flappy Bird в Scratch для детей

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

Программируются логотип, ход и условия игры, подсчет очков, анимация и перемещение спрайта.

Бот для игры в крестики-нолики в Скретч 3.0

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

У игрока 3 жизни. Потеряли все — проигрыш, выиграли босса — победа. Ребенок запрограммирует партнера и комбинации игры.

Пакмен-игра в Scratch для детей

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

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

У игрока 3 жизни. Потеряли все — проигрыш, выиграли босса — победа. Ребенок запрограммирует партнера и комбинации игры.

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

Имея опыт программирования на Scratch для детей, дети могут развиваться в IT и в будущем найти увлекательную и высокооплачиваемую работу в отрасли. Познакомьте ребенка со Скретч-программированием: подарите ему радость открытий и новые умения.

Если вы в поисках курсов программирования для детей от 6 дет, посмотрите материал на нашем сайте на эту тему: Компьютерные курсы для детей 6 лет: зачем так рано и с чего начинать?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *