Урок "Разрушаемый ландшафт"

Данный урок рассчитан на опытных пользователей программы Construct. Прочитав его, вы научитесь работать с объектом Canvas и создавать с помощью него разрушаемый ландшафт, который потом без труда сможете использовать в своих играх. Также урок будет очень полезен тем, кто давно хотел создать игру, похожую на Worms.

Итак, приступим:

Как всегда создаём новую DirectX игру, добавляем управление клавиатурой и мышью и приступаем к созданию самого ландшафта.


Добавляем объект Canvas и в его редакторе изображения рисуем какой-нибудь ландшафт, например, этот:

Добавляем к объекту Canvas атрибут Solid.

После этого создаём спрайт, который будет маской взрыва. То есть, грубо говоря, это и будет форма, которая будет уничтожаться на ландшафте. Я использовал обыкновенный круг (создайте новый спрайт — круг). Для этого круга мы добавляем эффект Erase и поведение Mouse и выставляем галочку на пункте Invisible on start.

После этого переходим в редактор событий и создаем вот такие события и действия:

Это означает, что при нажатии левой кнопки мыши Canvas будет добавлять в себя спрайт, на котором стоит эффект Erase (Стирание), то есть вычитать из себя его, после чего Canvas "обновляется" и остаётся вырезанный кусок на ландшафте.

Теперь, после того, как мы разъяснили, как вообще уничтожается ландшафт, можно сделать, чтобы он уничтожался от какого-нибудь предмета, например, бомбы. Для этого создадим спрайт нашей бомбы, например, такой:

Добавляем бомбе поведение Physics и ставим галочку в свойствах в пункте Gravity (Гравитация).

В редакторе событий добавляем, что при нажатии правой кнопки мыши создаётся объект бомба с координатами mouseX и mouseY. У вас должно получиться вот такое событие:

А теперь создадим следующие событие — при соприкосновении бомбы и ландшафта, бомба будет создавать спрайт вычитания ландшафта. Также не забудьте создать действие, чтобы при соприкосновении бомбы с ландшафтом, бомба уничтожалась, а иначе бомба будет падать, уничтожая ландшафт до самого низа. Также нужно добавить несколько действий для объекта Canvas, а именно Update collision mask и Paste Sprite into canvas.

Для более эффектного взрыва добавьте Particles (Частицы) и в этом же событии создайте для них соответствующее действие, чтобы частицы появлялись на месте уничтожившейся бомбы. У вас должно получиться вот такое событие:

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



Автор урока: RamP

Опубликовано: 21 ноября, 2010

Категория: Другие уроки

Комментарии:

  1. Jecka:

    Вау вау вау круто типо Worms мне нравится 😀

  2. DARD4:

    Спасибо за статью, очень помогли =)