Приветствую вас в серии статей на тему создания игр для платформы Я.Игры. В этой серии статей я буду раз в неделю выкладывать свои успехи и неудачи за неделю.
Применяем ассеты
За неделю я применил новые ассеты, которые не успел применить на прошлой неделе. Теперь уровень выглядит так:
Здесь есть 2 вида платформ, через зеленые можно прыгать снизу, но они неподвижны, а вторая платформа двигается и на нее можно попасть снизу или сверху.
Создание врагов
Далее я начал заниматься врагами и поражениями. Начал с самого простого врага - неподвижные шипы, к сожалению, сначала шипы были со мной не согласны и почему-то двигались:
Пошаманив немного над кодом подпер данный вопросик и теперь шипы работают как надо:
Шипы были только началом, дальше я начал реализовывать шипы, которые перемещались бы от стенки к стенке:
На данных шипах можно кататься сверху и если подойти к ним с любой стороны, то это сразу приведет к поражению.
Награды игры
Теперь нужно как-то наградить будущего игрока. В моей игре предполагается множество плюшек на уровне, я решил начать с самых простых - яблоки. Для этого я раскидал яблок на карте объектов, создал состояние в сцене для счета яблок и вывел результат в верхний левый угол:
Технические тонкости
Для рисования карты я использовал Tiled и его компоненты, чтобы создавать интерактивные сущности на подобии платформ, шипов и яблок. Для этого на данный момент в игре есть 2 слоя и в Tiled это выглядит так:
При разработке я столкнулся с тем, что Phaser, к сожалению, не парсит стандартные проперти шаблонов, поэтому пришлось написать собственный скрипт, который будет парсить xml шаблонов и добавлять его в карту в слой объектов.
Также переписалось много кода компонентов, которые изначально были написаны совершенно неправильно (будем надеяться, что это было в последний раз и на следующей неделе его не придется переписывать снова).
А логика движения шипов была заранее вынесена в отдельный модуль, который в будущем, я надеюсь, я смогу переиспользовать и для других врагов.
Итоги недели
В результате недели получилось сделать вот такие вещи:
- принести новые ассеты для мира
- сделать базовую награду для игрока
- сделать 2 вида самых глупых врагов
- поддержать систему компонентов из Tiled
Пока что на текущей стадии проекта получилось собрать вот такой уровень: