Scratch — арканоид с клонами
Перед сборкой прочитайте §9 Клоны в справочнике Scratch.
Эскиз
Ракетка внизу ловит мяч. Кирпичики вверху — каждый клон; при ударе исчезает. Проигрыш, если мяч упал ниже ракетки; победа, когда кирпичей не осталось.
| Часть | Функция |
|---|---|
| А | Ракетка по стрелкам |
| Б | Мяч и отскок от стен |
| В | Отскок от ракетки (угол зависит от места удара) |
| Г | Клоны кирпичей |
| Д | Сообщения «игра окончена» / «вы выиграли» |
Часть А — ракетка
[Когда 🟢 нажат]
показаться
перейти в x: (0) y: (-150)
повторять всегда
если <нажата клавиша [стрелка вправо]?> то
изменить x на (8)
конец
если <нажата клавиша [стрелка влево]?> то
изменить x на (-8)
конец
если <x > (220)> то
установить x в (220)
конец
если <x < (-220)> то
установить x в (-220)
конец
ждать (0.02) сек.
конец
Часть Б — мяч
[Когда 🟢 нажат]
перейти в x: (0) y: (0)
установить [dx v] в (4)
установить [dy v] в (4)
повторять всегда
изменить x на (dx)
изменить y на (dy)
если <касается края?> то
отскочить от края
установить [dx v] в (dx)
установить [dy v] в (-1) * (dy)
конец
ждать (0.02) сек.
конец
Уточните отражение по осям под свой скрипт (иногда проще менять знак dx при abs x > 230).
Часть В — удар о ракетку
если <касается [Ракетка v]?> то
установить [dy v] в (abs (dy))
установить [dx v] в ((dx) + ((x) - (x позиция [Ракетка v])) / 10)
конец
Так мяч летит в сторону, куда ударили по ракетке.
Часть Г — кирпичи-клоны
У спрайта Кирпичик один костюм. При старте:
[Когда 🟢 нажат]
скрыть
повторить (5)
повторить (10)
создать клон самого себя
изменить x на (44)
конец
изменить x на (-440)
изменить y на (-32)
конец
У клона:
[Когда я начинаю как клон]
показаться
перейти в x: (x позиция [Кирпичик v]) y: (y позиция [Кирпичик v])
повторять всегда
если <касается [Мяч v]?> то
удалить клон
конец
ждать (0.02) сек.
конец
Родительский спрайт остаётся скрытым; на сцене только клоны.
Контрольная точка: сетка кирпичей; при ударе кирпич пропадает.
Часть Д — конец игры
- Переменная
кирпичей= число клонов при старте; приудалить клонуменьшайте счётчик; при 0 —отправить [победа]. - Если
y < (-170)у мяча —отправить [проигрыш]. - Спрайты с текстом показываются по
когда получено [победа].
Версия 2.0 (после базы)
| Улучшение | Блоки |
|---|---|
| Музыка | запустить звук в цикле |
| Хвост мяча | Перо, опустить перо у мяча |
| Анимация кирпича | изменить эффект [прозрачность] перед удалить клон |
Демосцена и эффекты — 32 § демосцена.
Вопросы для самопроверки
- Зачем родительский кирпич скрыт?
- Что будет, если забыть
удалить клон? - Как отличить скрипт «для клона» от скрипта основного спрайта?
Что дальше
| Дальше | Ссылка |
|---|---|
| Космический шутер | 37 — астероиды |
| Аркады в теории | 2-video-games/16 |
См. также
Другие статьи этого же раздела в боковом меню (как на странице "О разделе"). Введение в программирование для детей — от идеи и алгоритма к переменным, условиям, циклам и первым строкам кода. PascalABC.NET — среда Pascal на .NET для школ Росси: первая программа, модули, графика и связь с олимпиадами. А теперь — ключевой момент — графические блоки — это не игрушка и не ненастоящее программирование. Это то же самое, только в другой форме. Scratch - визуальное программирование в браузере и первые шаги на платформе MIT для детей и начинающих. На <a href="https://scratch.mit.edu/starter-projects" target="_blank" rel="noopener noreferrer">scratch.mit.edu/starter-projects</a> MIT собрал <strong>готовые проекты с подсказками внутри. Scratch — платформер и демосцена, учебные проекты курса 3 Scratch и связь с каталогом стартовых проектов. Пошагово — редактор Scratch, движение, направление в градусах и расширение Перо для арт-проекта в космосе. Пошаговая игра-лабиринт в Scratch — стрелки, касание цвета стен, яблоко, сообщения и смена уровней. Пошаговая мини-игра в Scratch — прыжок кота, гравитация, бросок мяча и хитбокс кольца. Пошаговый клон Asteroids в Scratch — мышь, выход за край экрана, стрельба, клоны и таймер. Пошаговый платформер в Scratch — склоны, хитбокс, анимация ходьбы, яблоко и простой ИИ краба. Эскиз игры, части А и Б, контрольные точки и готовые файлы — метод пошаговой сборки игр в Scratch.Введение в программирование
PascalABC.NET
Блоки
Scratch
Стартовые проекты MIT Scratch
Scratch: платформер и демосцена
Практика 1 — радуга
Практика 2 — лабиринт
Практика 3 — баскетбол
Практика 5 — астероиды
Практика 6 — платформер
Метод обучения