Задание
В проекте «Полет большого вертолёта» реализуем такой сюжет. Управляемый кнопками движения курсора на клавиатуре вертолёт может смещаться вправо, влево, подниматься вверх, увеличиваясь в размере, опускаться вниз, уменьшаясь в размере. В небе на него двигаются облака одинаковой формы, но разные по цвету. Оба облака появляются в случайной координате x в верхней границе экрана: одно из них двигается по таймеру, проходит под вертолётом и исчезает, другое проходит над вертолётом и исчезает, достигнув нижнего края сцены.
Вертолёт в проекте представлен двумя спрайтами — спрайт вертолёта и спрайт лопасти. Их можно скачать (вертолёт.jpg, лопасти.svg) или нарисовать самостоятельно.
Вертолёт
Код вертолёта описывает его исходное положение при нажатом зелёном флажке. Сам вертолет надо разместить в заднем слое для того, чтобы лопасти вертолёта оказались сверху.
Также в этом коде нужно описать действия при использовании стрелок управления курсором на клавиатуре. При нажатии на кнопки влево и вправо вертолёт смещается на несколько пикселей по направлению x соответственно вправо со знаком «+» или влево со знаком «−». При нажатии на кнопки вверх или вниз изменяется размер вертолёта на несколько процентов с соответствующими знаками.
Лопасти
Особенность кода лопастей в том, что при каждом перемещении вертолёта лопасти должны перемещаться в центр вращения вертолёта. Для этого используем сенсор.
Рис. 1. Сенсор
При изменении на спрайте вертолёта станут доступными атрибуты этого спрайта.
Рис. 2. Атрибуты спрайта
Нам потребуются атрибуты «Положение x» и «Положение y». Таким образом, лопасти вертолёта всегда будут при нём.
При нажатом зелёном флажке установим лопасти в исходное положение, определив его с помощью сенсора, установим передний слой и в циклической конструкции «Повторять всегда» будем искать положение вертолёта и поворачивать лопасти на постоянный угол. Чем больше будет угол поворота, тем «быстрее» будут вращаться лопасти.
Также в этом коде нужно описать действия при использовании стрелок управления курсором на клавиатуре. Их можно скопировать из кода вертолета.
Облако 1
Облако появляется в случайной координате x в верхней границе экрана и двигается, изменяя в цикле координату y. В начале скрипта таймер сбрасывается, а в цикле проверяется условие, достиг ли таймер установленного значения. Если условие верно, то создаётся клон облака, устанавливается в исходное положение, сбрасывается таймер, а предыдущее облако исчезает. Облаком управлять нельзя.
Облако 2
Облако появляется в случайной координате x в верхней границе экрана и двигается, изменяя в цикле координату y. В цикле проверяется условие, достигло ли облако края. Если условие верно, то создаётся клон облака и устанавливается в исходное положение, а предыдущее облако исчезает. Облаком управлять нельзя.
Продолжая работу над проектом, ты можешь дополнить его красивым фоном, добавить разнообразные облака.