Если ваш ребенок увлекается спортом, например, пинг-понгом, он может создать собственную компьютерную игру, которая окунёт его в атмосферу любимого занятия. Для этого понадобятся базовые навыки программирования на Scratch и понимание основ разработки двухмерных игр.
Scratch – это простая и интуитивная платформа, идеально подходящая для начинающих программистов в создания игр «Скретч». С её помощью дети могут создавать интерактивные истории и анимации.
В этой статье мы подробно объясним, как создать игру в «Скретч» всего за несколько простых шагов. Вы узнаете, как настроить игровое поле, задать правила игры и даже внедрить элементы управления.
Содержание
- Создание игры в «Скретч»: подготовка фона
- Scratch для детей онлайн: создаем секции для счета
- Добавляем сенсоры для голов
- Scratch обучение для детей: спрайты для игры
- Уроки Scratch: изменение цвета и программирование мяча
- Scratch программирование бесплатно: настройка взаимодействия с ракеткой и счета
- «Скретч» игры: настройка фона для победителей и проверка скрипта для мяча
- Тестирование игры «Скретч»
Создание игры в «Скретч»: подготовка фона
Приступим к созданию основных элементов игры. Начните с рисования фона, представляющем стол для пинг-понга.
Сначала выберите цвет фона, предпочтительно зеленый, чтобы имитировать реальный игровой стол.
Используйте инструмент «Прямоугольник».
Заполните игровое поле этим цветом так, чтобы фигура полностью закрывала его и не видно было краёв прямоугольника.
Для создания Scratch игры выбираем инструмент «Линия» и ставим толщину обводки для формирования разметки на столе.
Цвет обводки должен быть белым, чтобы точно передать линии разлиновки настоящего стола для настольного тенниса. Затем переносим эту линию на центр экрана.
Убедитесь, что линии чётко обозначены и соответствуют реальным размерам стола, чтобы придать максимальную реалистичность процессу.
Scratch для детей онлайн: создаем секции для счета
После завершения работы над фоном добавьте секции для отображения счета. Для этого воспользуйтесь тем же инструментом. Нарисуйте горизонтальную (перпендикулярную) линию в верхней части экрана, она должна проходить через всю ширину игрового поля. Линию следует сделать тонкой и белой, чтобы она гармонично вписывалась в общий дизайн стола и была хорошо видна.
Линия разделит экран на две равные части. Наверху получились две секции для будущего счёта игры.
Добавляем сенсоры для голов
Создайте сенсоры, которые определят забитые мячи. Для этого используйте прямоугольники контрастных цветов, таких как красный и жёлтый.
Разместите красный прямоугольник в левой части экрана,
а желтый — в правой. Эти прямоугольники будут служить зонами определения гола, когда мяч пересекает одну из этих линий.
Важно убедиться, что цвета сенсоров достаточно различимы, чтобы избежать путаницы.
С фоном мы закончили. Он готов к игре. После этого приступаем к созданию ракеток и настройке управления игроками.
Scratch обучение для детей: спрайты для игры
Сейчас мы приступим к созданию ручки и накладки для ракетки. Перейдем к созданию спрайтов, которые будут представлять ракетки для пинг-понга. Начнем с создания нового спрайта.
Выберите инструмент «Прямоугольник» и растяните его, придавая форму ручке для пинг-понговой ракетки.
Добавьте обводку толщиной в два пункта, чтобы ручка выглядела более объемной и реалистичной.
Что касается выбора цвета, традиционно используется коричневый оттенок, символизирующий деревянную ручку, однако вы можете выбрать любой другой цвет, который вам нравится, чтобы добавить индивидуальности вашему проекту.
Переходим к созданию накладки, которая будет отвечать за взаимодействие с мячом. Так как мы рисуем вид сверху, форма накладки будет напоминать овал или эллипс.
Используя инструмент рисования овалов и кругов, нарисуйте эту фигуру поверх созданной ранее ручки.
Закрасьте накладку в выбранный вами цвет – например, в бордовый, чтобы она выделялась на фоне ручки.
Теперь аккуратно совместите обе части, чтобы ручка немного выглядывала из-под накладки. Это придаст спрайту больше реализма и сделает его похожим на настоящую ракетку для пинг-понга.
Когда оба элемента – ручка и накладка – готовы, выделите их оба и сгруппируйте в единый объект, используя кнопку «Группировать». Это позволит вам управлять ими как одним целым, что упростит дальнейшую работу.
После группировки скопируйте получившуюся ракетку, нажав комбинацию клавиш Ctrl + C, затем создайте новый спрайт для вставки копии.
Это обеспечит наличие двух одинаковых ракеток для каждого игрока.
Уроки Scratch: изменение цвета и программирование мяча
Теперь, когда у вас есть две одинаковые ракетки, измените цвет накладки на одной из них, чтобы игроки могли легко отличать свои ракетки друг от друга. Например, сделайте накладку на первой ракетке бордового цвета, а на второй – синего. Это добавит интересный визуальный эффект и облегчит управление.
Затем переименуйте созданные спрайты в «ракетка 1» и «ракетка 2», чтобы было проще ориентироваться в процессе программирования. Когда все готово, приступайте к программированию поведения первой ракетки («ракетка 1»).
Установите размер ракетки на 85%, чтобы она соответствовала пропорциям игрового поля, и задайте начальные координаты: x = -74, y = 14. Эти значения помогут разместить первую ракетку в нужном месте на экране.
После этого мы можем приступить к настройке управления ракетками. Для этого создадим цикл бесконечного повторения, который будет обрабатывать ввод от пользователя.
Для первой ракетки установим следующие условия:
- При нажатии клавиши W ракета перемещается вверх на 5 пунктов.
- При нажатии клавиши S ракета опускается вниз на 5 пунктов.
Таким образом, первая ракетка будет двигаться вдоль левого края игрового поля строго вертикально.
Вторая ракетка управляется аналогично, но с учетом зеркальной симметрии относительно центра экрана. Координаты запуска второй ракетки должны быть изменены следующим образом:
- X = 330 (фиксированное положение у правого края)
- Y = такое же значение, как у первой ракетки (для начальной синхронизации позиций).
Управление также осуществляется с помощью клавиш W и S, но теперь они будут двигать вторую ракетку вверх и вниз вдоль правого края игрового поля.
Копируем скрипт первой ракетки для второй. Изменяем клавиши управления: стрелка вверх вместо W, стрелка вниз вместо S.
Также нам необходимо создать мяч и счет для игроков. Для этого воспользуемся библиотекой Scratch, где уже есть готовый спрайт мяча.
Перетащите этот спрайт на рабочее пространство и разместите его в центре игрового поля.
Чтобы мяч выглядел более реалистичным, можно изменить его внешний вид, добавив градиент от белого к серому цвету. Это создаст иллюзию объёма и глубины, делая мяч визуально более привлекательным. Так как сделать 3 д игру в «Скретч» нельзя, мы используем специальные инструменты, имитирующие трехмерные эффекты, например, приближение и отдаление мяча.
Далее переходим к созданию нового алгоритма и выбираем «Когда флажок нажат» – «Показаться» – «Переключиться на фон стола».
Далее создаем новые переменные «Игрок 1» и «Игрок 2».
Обе этих переменные должны быть равны нулю.
Добавляем к ним переменную «Перейти» с координатами x=(-14), y=(-13). После этого добавляем поворот на 45 градусов и установку размера 75%.
Также нужно создать бесконечный цикл для движения мяча. Используйте команду «Идти 10 шагов» для движения без конкретного направления.
Добавьте условие «Если касается края, оттолкнуться» для предотвращения выхода за пределы поля.
Scratch программирование бесплатно: настройка взаимодействия с ракеткой и счета
Для большей динамики нам нужно настроить условия для взаимодействия мяча с ракетками. Выберите подходящие блоки, при которых, если мяч касается ракетки 1, то «повернуть на 180 градусов».
Если мяч касается ракетки 2, тоже повернуть на 180 градусов. Все эти манипуляции создадут эффект удара, когда мяч отскакивает от ракетки. То есть мяч летит, затем попадает в ракетку и отбивается от нее в обратную сторону.
Ниже добавляем два условия, которые оставим без изменений на некоторое время: «Если значение переменной игрока 1 равно 10» и «Если значение переменной игрока 2 равно 10».
Также нужно создать команду для подсчета очков при нажатии флажка. Используйте сенсор цвета для определения касания красного цвета (зона игрока слева).
Изменим значение игрока 2 на 1 очко при касании.
После этого необходимо подождать, пока мяч не перестанет касаться красного цвета. Теперь этот алгоритм выполняет функцию: если мяч игрока с синей ракеткой попал в красную зону первого игрока, то второй игрок получает очки.
Далее дублируем команду, но выбираем вместо красного цвета желтый, чтобы аналогичный алгоритм обработки действия произошел для первого игрока.
Перейдем к настройке вида очков. Перетаскиваем на рабочем экране плашку с надписью «игрок 1» ближе к центру,
нажимаем на нее правой кнопкой и выбираем «крупный вид».
Такую же операцию производим со счетом игрока 2.
«Скретч» игры: настройка фона для победителей и проверка скрипта для мяча
Приступим к созданию двух фонов для оповещения о победе того или иного игрока. Сначала удаляем ранее нарисованные объекты. Затем создаем прямоугольник, перекрывающий игровое поле. Назовем для удобства его «фон 1». А второй фон, соответственно, «фон 2».
Теперь выделяем все элементы в «фон 1» и удаляем их. Это нам нужно сделать для того, чтобы уведомление о победе выглядело не так же, как основной фон.
Выбираем инструмент «Прямоугольник» и растягиваем его на все поле. Цвет прямоугольника можно выбрать любой.
После этого выбираем инструмент для написания текста и пишем сообщение, которое увидит победитель. Например, можно написать «Победил игрок 1».
Чтобы надпись смотрелась – растяните область, в которой она находится и поместите в центр цветного прямоугольника.
Аналогичным образом поступаем со вторым фоном. Выделите все элементы и удалите. Остальные пункты повторите, но выберите другие цвета фона и текста.
Эти шаги помогут создать систему отображения результатов, показывающую победителя.
Вернемся к мячу. Помните, что остались недописанными два условия?
Возвращаемся к ним, чтобы логично завершить алгоритм. Определим условия победы для игроков:
– Если переменная игрока 1 достигает значения 10, игра автоматически завершается, и фон меняется на фон 1, который символизирует победу первого игрока. В этот момент также отображается сообщение о победе игрока 1.
– Если же переменная игрока 2 достигает значения 10 раньше, то игра также завершается, но уже с переходом на фон 2, символизирующий победу второго игрока. Аналогично, появляется уведомление о победе второго игрока.
Scratch игра для детей продолжается до тех пор, пока один из игроков не достигнет 10 очков первым.
Осталось прописать команды, когда игрок получит переданное «Сообщение 1». Выбираем код с выбором «Сообщение 1», а за ним ставим команду «Спрятаться».
Сообщение дублируется для двух оставшихся спрайтов ракеток. Это нужно, чтобы когда выходило сообщение о победе игрока, все остальные спрайты становились невидимыми.
Тестирование игры «Скретч»
Проверим функциональность проекта. Для этого нужно нажать зеленый флажок.
Управление с помощью выбранных клавиш должно работать корректно. Если ракетки передвигаются вверх и вниз при нажимании на кнопки W и S, а также при нажимании на клавишу со стрелкой вверх или вниз. Также показатель, что у вас все работает корректно: шарик летает по правильной траектории, очки меняются в соответствии с забитыми голами.
Система оповещения работает при достижении 10 очков одним из играющих.
Если при запуске игры всё так и работает, значит вы выполнили правильно настройку алгоритмов. Если ракетка не отбивает мяч, фон меняется или происходят иные проблемы, попробуйте начать новый проект и повторить все сначала.
Сегодня вы смогли создать свою первую полноценную игру в Scratch, не имея опыта в программировании. На курсе школы «Пиксель» вас познакомят со всеми тонкостями визуального программирования и помогут освоить навыки создания не только игр, но и анимации.