avatar

Платформер-экшен в Scirra Construct для начинающих (часть 3)

опубликовал в Construct Classic
В прошлой части мы закончили на реализации управления ГГ. Продолжаем.

Сейчас мы научим ГГ стрелять из автомата. Для начала загрузим спрайт пули в Construct, т.е как вы помните в редакторе уровня двойной клик, выбираем спрайт и в редакторе изображений рисуем пулю:

Рисуем пулю

Не забываем обрезать прозрачную область (жмём по Crop):

Обрезаем прозрачную область

Центр ставим в конце пули:

Делаем пулю Scirra Construct

Называем пулю «pula». Настраиваем размеры пули, примерно как диаметр дула автомата:

Настраиваем размеры пули

Теперь ВО ВСЕХ кадрах, ВСЕХ анимаций нужно настроить точки, откуда должны вылетать пули. Двойной клик по ГГ и выбираем Image points (это такая синяя точка):

Image points

Ставим эту точку туда, откуда будет вылетать пуля:

Настраиваем пулю

Обратите внимание сюда:

point

«point» — имя этой точки. Такие точки можно добавлять свои нажав на плюсик. Но пока нам другие не нужны, так что мы будем работать с этой точкой. Как я уже говорил эту точку нужно поставить возле дула во ВСЕХ кадрах ВСЕХ анимаций, даже в анимациях прыжка и падения. После того как закончили переходим в редактор событий. Создаём событие (двойной клик) и выбираем объект мышь и клавиатура:

Мышь и клавиатура

Дальше выбираем Key is down? (клавиша зажата?) и выбираем клавишу Space (пробел):

Key is down

Жмём финиш. Создаём под событие к этому событию, выбираем System и дальше Every X milliseconds (каждые X миллисекунд):

Every X milliseconds

В следующем окне пишем интервал времени между выстрелами (в миллисекундах), например 150:

Интервал времени между выстрелами

Теперь к этому под событию создаём действие (жмём по New action), выбираем ГГ, а дальше Spawn another object:

Spawn another object

В следующем окне в графе Object выбираем тот объект который мы хотим чтобы вылетал из точки point, т.е пулю, в графе Layer (слой) пишем на каком слое должна создаваться пуля, у нас пока один слой, так что пускай остаётся 1 (о слоях мы поговорим попозже). И в графе Image point name… пишем имя точки откуда должна вылетать пуля, т.е point:

Image point name

Жмём финиш. Результат в событиях:

Результат в событиях

Если мы сейчас запустим игру то увидим что при нажатии на пробел пули появляются возле дула, но они не летят, а остаются на месте.Что бы это исправить достаточно просто дать пуле поведение Bullet (пуля), для этого кликаем по пуле и слева в свойствах ищем слово Behaviors (поведения) и нажать Add (добавить):

Behaviors Add

В открывшемся окне выбираем поведение Bullet (пуля):

Bullet

У пули теперь поведение пули:

Поведение пули

Скорость пули установите в 400. Вот и всё, наш ГГ умеет стрелять. Но пули плохо видно на белом фоне, давайте изменим фон на такой:

Фон

Для этого нужно создать новый слой и поместить туда этот фон. В правом нижнем углу переходим во вкладку Layers (слои):

Layers

И сверху жмём по зелёной стрелке с направлением вниз:

Настройка слоев

Появится новый слой, кликаем по нему, и добавляем спрайт фона на этот слой, проследите что бы фон был на нижнем слое:

Добавляем спрайт фона

Теперь расположите фон как следует и растяните его по всему уровню:

Фон по всему уровню

Теперь пули хорошо видны, можете установить для них другую скорость.

Как вы должно быть заметили управление получилось неудобным. Сейчас мы его изменим. Кликните по свободному полю в редакторе уровня и слева в свойствах, в конце списка выберите Properties (свойства):

Properties

Появятся другие свойства, опускаемся в самый низ и во вкладке Controls видим это:

Controls

Здесь настраивается управление. Давайте сделаем так: клавиша A — идти влево, клавиша D — идти вправо, Space (пробел) — прыжок:

Настройка управления

Но как вы помните, чуть раньше мы сделали в событиях чтобы при зажатии пробела ГГ стрелял. Так вот в событиях просто кликните два раза по по этому событию и измените Space на любую другую, я изменил на клавишу M:

Настраиваем событие

Теперь при запуске игры управление ГГ происходит при нажатии тех клавиш которые мы настроили ранее. Но как видите ГГ не поворачивается влево. Помните мы делали событие если клавиша «влево» зажата то Set angle (установить угол) в 180, и если клавиша «вправо» зажата то Set angle (установить угол) в 0. Так вот в этих событиях нужно просто изменить Left arrow (стрелка влево) на клавишу A, а Right arrow (стрелка вправо) на клавишу (D):

Set angle

Теперь ГГ поворачивается правильно.

Вот исходник того, что у нас получилось на данном этапе.

Часть 1
Часть 2
Часть 3 (читаете)
Продолжение следует...

PDF версия

0 комментариев

Чтобы оставить комментарий необходимо .