Разноцветные миры
В этом проекте смайлик будет путешествовать по разноцветным мирам, пытаясь увернуться от врага. Мы научимся продвинутым способам работы в графическом редакторе.
Для начала нам понадобится создать фоны для разных миров. Начнём с красного. Изобрази на сцене прямоугольник тёмно-красного цвета таким же способом, как мы делали в проекте "Стадион".
Очень важно помнить: всё, что нарисовано внутри белой рамки будет отображаться на сцене. Область же за её границами нужна для удобства рисования. Мы воспользуемся этой областью, рисуя границы с закруглёнными краями. Выберем для них ярко-красный цвет. Начнем с рисования простого круга.
Чтобы круг получался без контура, необходимо установить в окошке "Контур" значение 0.
Для создания контура фона нам понадобится много кругов. Мы снова воспользуемся инструментом копирования. Немного изменяй размер круга через точки привязки, чтобы фон выглядел не таким однообразным.
В результате должен получиться фон, вдоль всего края которого расположены красные круги. Причём в редакторе мы видим больше, чем будет видно на сцене.
Синий мир можно сделать по аналогии с красным. В левом нижнем углу редактора фонов выбери пункт "Рисовать".
В отличие от красного мира, границами синего будут служить прямоугольники.
Границы жёлтого мира - треугольники. Однако такой фигуры в инструментах рисования нет. Но есть способ получить треугольник из прямоугольника.
Нарисуй прямоугольник без контура. Затем при активном инструменте "Изменение формы" щёлкни двойным кликом на одну из точек привязки прямоугольника. Точка исчезнет, а прямоугольник превратится в треугольник! После этого можно потянуть за одну из оставшихся точек привязки, чтобы изменить форму треугольника.
Итоговая форма треугольника, которая нам требуется:
Теперь нам необходимо создать контур из треугольников. Однако делать это, копируя всего один треугольник, очень долго. Воспользуемся возможностью группировки нескольких графических объектов. Для этого необходимо при активном инструменте "Выбрать" нажимать мышью на несколько треугольников при нажатой клавише "SHIFT". Таким образом получается выделить сразу несколько объектов. После этого необходимо нажать кнопку "Группировать".
Теперь два треугольника стали одним объектом, который можно перемещать. Кроме того, их можно и вращать. Для этого необходимо потянуть значок со стрелками, который появляется, если объект выбран.
Сгруппировать можно и больше, чем два объекта. Например, можно скопировать два сгруппированных треугольника, а затем сгруппировать их с предыдущими двумя. Таким образом можно очень быстро получить необходимый результат. Поэкспериментируй с этими инструментами графического редактора.
Нам осталось подготовить фон для зелёного мира. Его края будут похожи на края пещеры со свисающими сталактитами.
Их мы будем буквально "лепить", используя инструмент "Изменение формы".
После того, как контур будет готов, его необходимо разместить на краю фона, используя возможность размещать объект за границами видимой области.
Чем больше точек привязки ты поставишь на прямоугольник, тем более интересную форму можно будет получить.
Точки привязки можно добавлять уже в процессе получения желаемой формы. Поэкспериментируй с этими инструментами и создай интересный контур для пещеры.
Теперь можно либо копировать уже созданный контур, либо создавать новые и размещать их по контуру пещеры. В результате должен получиться фон для зеленого мира.
Все созданные фоны необходимо подписать, чтобы в дальнейшем было удобно создавать программу.
Теперь нарисуем игрового персонажа. Это будет смайлик, который путешествует по разноцветным мирам. В окне спрайтов выбери пункт "Нарисовать".
В окне рисования увеличь масштаб и нарисуй круг желаемого цвета, удерживая клавишу "SHIFT". Понять, что рисование происходит при увеличенном масштабе можно по появлению справа и снизу области рисования "лифтов" для протягивания изображения. Вернуться в обычный масштаб можно нажав кнопку "=" рядом с плюсом.
Приступим к рисования глаз. Чтобы они выглядели реалистично, желательно рисовать их из нескольких кругов, наложенных один поверх другого. Кроме того, глаза желательно рисовать не на самом персонаже, а рядом. В дальнейшем будет удобнее сгруппировать все нарисованные круги в один глаз, скопировать и перенести в нужное место.
Осталось только скопировать и вставить нарисованный глаз и разместить два глаза на нашем смайлике
Смайлику нужен рот. Его можно нарисовать, используя инструмент "Круг". А затем придать ему форму, используя инструмент "Изменение формы".
Для нашей игры осталось только подготовить персонаж врага. Мы будем называть его "Монстр". В качестве монстра используем спрайт Gobo, который мы раскрасим в цвета уже созданных миров.
Перейди в костюмы Gobo и удали все, кроме первого.
Теперь выбранный цвет можно использовать для закрашивания спрайта монстра. Для этого воспользуемся инструментом "Заливка", по порядку щёлкая на все части, из которых состоит Gobo.
Скопируй первый костюм монстра три раза и перекрась в цвета всех остальных фонов. Костюмы нужно подписать таким же образом, как и фоны!
Программа управления смайликом будет очень похожа на программу, которую мы создавали в проекте "Весёлая ферма" для управления цыплёнком. Размер смайлика на слайде не указан, так как его необходимо подобрать исходя из размеров нарисованного персонажа.
Для начала запрограммируем смену фонов. Следующий код необходимо создать в сцене .
Каждый раз при переключении фона смайлик будет сообщать, в каком мире он находится. Используем для этого новую команду "Когда фон сменился на..."
В каждом новом мире будет появляться монстр такого же цвета, что и мир, и атаковать персонажа. У монстра будет несколько скриптов. Основной его программой, которая не будет зависеть от текущего мира будет движение в сторону смайлика.
В красном мире монстр будет появляться в верхнем левом углу. В наших следующих проектах мы разберемся, как необходимо определять числа (координаты) для команды "Перейти в (x) (y)". Сейчас мы просто будем использовать эту команду.
Скрипты перехода монстра в других мирах похожи. Они отличаются только координатами перехода.
При касания монстра игра будет останавливаться - игрок проиграл. Для этого нам понадобится использовать команду "Стоп все" из блока команд управление.
Кроме этого нам понадобится остановить выполнение программы движения смайлика и сообщить игроку о его проигрыше. Полный скрипт будет выглядеть таким образом (это параллельная задача):
Цель нашей игры - продержаться до зелёного мира, в котором должен появиться волшебник. Загрузим спрайт волшебника.
Единственной задачей волшебника будет стоять и ждать игрока. Причём появиться он должен только в зелёном мире!
Задачей же смайлика является коснуться волшебника. Тогда игра пройдена. Программу касания волшебника можно сделать в том же скрипте, что и касания монстра. Они будут очень похожи. Поэтому можно воспользоваться возможностью дублирования уже готового кода. Для этого правой кнопкой мыши нужно нажать на блок команд "Если..." в скрипте персонажа и в открывшемся меню выбрать пункт "Дублировать".
Теперь скопированный блок "Если" нужно поместить ниже в бесконечном цикле. При этом очень важно следить, чтобы он не попал в верхний блок "Если...", а был именно ниже его!
Сейчас наша игра работает таким образом, что последним появляется зелёный мир. И больше он уже не переключается. Мы можем усложнить игру, сделав так, чтобы после зелёного мира снова переключался красный и далее по порядку. Для этого переработаем скрипт в сцене.
Очень важно понимать разницу этих двух скриптов. Первый скрипт представляет собой линейный алгоритм. Его выполнение прекратится после выполнения последней его команды. Второй скрипт является циклическим алгоритмом. Его выполнение не завершится до тех пор, пока игрок не нажмёт кнопку "СТОП".
Теперь нам необходимо сделать так, чтобы волшебник пропадал, когда мир снова сменяется на красный. Сделать это очень просто добавим ему ещё один скрипт.
Таким образом у игрока теперь только 3 секунды, чтобы успеть коснуться волшебника в зелёном мире. Игра стала намного сложнее!

Разноцветные миры (2.1 MB)

