Платформер-экшен в Scirra Construct для начинающих (часть 3)
dilovar50
опубликовал в
Construct Classic
Сейчас мы научим ГГ стрелять из автомата. Для начала загрузим спрайт пули в Construct, т.е как вы помните в редакторе уровня двойной клик, выбираем спрайт и в редакторе изображений рисуем пулю:
Не забываем обрезать прозрачную область (жмём по Crop):
Центр ставим в конце пули:
Называем пулю «pula». Настраиваем размеры пули, примерно как диаметр дула автомата:
Теперь ВО ВСЕХ кадрах, ВСЕХ анимаций нужно настроить точки, откуда должны вылетать пули. Двойной клик по ГГ и выбираем Image points (это такая синяя точка):
Ставим эту точку туда, откуда будет вылетать пуля:
Обратите внимание сюда:
«point» — имя этой точки. Такие точки можно добавлять свои нажав на плюсик. Но пока нам другие не нужны, так что мы будем работать с этой точкой. Как я уже говорил эту точку нужно поставить возле дула во ВСЕХ кадрах ВСЕХ анимаций, даже в анимациях прыжка и падения. После того как закончили переходим в редактор событий. Создаём событие (двойной клик) и выбираем объект мышь и клавиатура:
Дальше выбираем Key is down? (клавиша зажата?) и выбираем клавишу Space (пробел):
Жмём финиш. Создаём под событие к этому событию, выбираем System и дальше Every X milliseconds (каждые X миллисекунд):
В следующем окне пишем интервал времени между выстрелами (в миллисекундах), например 150:
Теперь к этому под событию создаём действие (жмём по New action), выбираем ГГ, а дальше Spawn another object:
В следующем окне в графе Object выбираем тот объект который мы хотим чтобы вылетал из точки point, т.е пулю, в графе Layer (слой) пишем на каком слое должна создаваться пуля, у нас пока один слой, так что пускай остаётся 1 (о слоях мы поговорим попозже). И в графе Image point name… пишем имя точки откуда должна вылетать пуля, т.е point:
Жмём финиш. Результат в событиях:
Если мы сейчас запустим игру то увидим что при нажатии на пробел пули появляются возле дула, но они не летят, а остаются на месте.Что бы это исправить достаточно просто дать пуле поведение Bullet (пуля), для этого кликаем по пуле и слева в свойствах ищем слово Behaviors (поведения) и нажать Add (добавить):
В открывшемся окне выбираем поведение Bullet (пуля):
У пули теперь поведение пули:
Скорость пули установите в 400. Вот и всё, наш ГГ умеет стрелять. Но пули плохо видно на белом фоне, давайте изменим фон на такой:
Для этого нужно создать новый слой и поместить туда этот фон. В правом нижнем углу переходим во вкладку Layers (слои):
И сверху жмём по зелёной стрелке с направлением вниз:
Появится новый слой, кликаем по нему, и добавляем спрайт фона на этот слой, проследите что бы фон был на нижнем слое:
Теперь расположите фон как следует и растяните его по всему уровню:
Теперь пули хорошо видны, можете установить для них другую скорость.
Как вы должно быть заметили управление получилось неудобным. Сейчас мы его изменим. Кликните по свободному полю в редакторе уровня и слева в свойствах, в конце списка выберите Properties (свойства):
Появятся другие свойства, опускаемся в самый низ и во вкладке Controls видим это:
Здесь настраивается управление. Давайте сделаем так: клавиша A — идти влево, клавиша D — идти вправо, Space (пробел) — прыжок:
Но как вы помните, чуть раньше мы сделали в событиях чтобы при зажатии пробела ГГ стрелял. Так вот в событиях просто кликните два раза по по этому событию и измените Space на любую другую, я изменил на клавишу M:
Теперь при запуске игры управление ГГ происходит при нажатии тех клавиш которые мы настроили ранее. Но как видите ГГ не поворачивается влево. Помните мы делали событие если клавиша «влево» зажата то Set angle (установить угол) в 180, и если клавиша «вправо» зажата то Set angle (установить угол) в 0. Так вот в этих событиях нужно просто изменить Left arrow (стрелка влево) на клавишу A, а Right arrow (стрелка вправо) на клавишу (D):
Теперь ГГ поворачивается правильно.
Вот исходник того, что у нас получилось на данном этапе.
Часть 1
Часть 2
Часть 3 (читаете)
Продолжение следует...
PDF версия
0 комментариев