Паук готов!
Паук готов! Пришлось повозиться с этой паутиной, т.к. рисуется она отдельно от остальной анимации. И сдается мне, сделал я это слишком мудрено. Завтра попробую упростить. Из монстров осталось сделать Призрака, Череп и Вервольфа.
Блог разработчика
Паук готов! Пришлось повозиться с этой паутиной, т.к. рисуется она отдельно от остальной анимации. И сдается мне, сделал я это слишком мудрено. Завтра попробую упростить. Из монстров осталось сделать Призрака, Череп и Вервольфа.
Собственно, Паук самый простой из всех монстров в Дейве. Всего лишь следит за Дейвом по координате X и кидается на него, если Дейв ниже, чем паук. Поэтому, сделал я его быстро. Осталось только добавить нить, на которой он спускается, и потом ее убирать при подъеме Паука.
Теперь она уверенно гоняется за Дейвом по всему лабиринту, умудряясь даже сбивать его на лету, как ракета 🙂 В целом, я доволен получившимся ИИ. Для проверки побегал от Липучки по лабиринту — получилась целая игра в прятки 🙂 Дальше по плану Паук.
Обучение Липучки продолжается — теперь она уверенно опознает препятствия, не зацикливается на мелких опорах, когда с обоих сторон пустота, а также научилась спускаться сквозь лестницы и ящики, если ей хочется. В оригинальном Дейве мне удалось выманить Липучку наружу 🙂
Итак, Липучка научилась летать 🙂 В процессе выяснилось, что в оригинале она летает не так просто, как кажется — вверх прыгает с медленее и по другой траектории, чем вниз. Авторы были внимательны к мелочам. Звук прыжка добавил для пробы, он оказался громковат. Ну и саму липучку надо дообучить — пока что она иногда влетает в стены в некоторых местах.
Она же «Слизняк», она же «Жвачка», она же Эльза Кальценбоген. Сегодня начал делать эту самую Липчку. Поизучал движения в оригинале — в итоге смог минут 10 от нее спокойно убегать, хотя раньше шарахался, как черт от ладана. Принялся реализовывать. Пока что сделал движения по полу вправо и влево. Завтра буду делать прыжки. Интересно мне, как в оригинале задается начальное состояние Липучек в лабиринте? Ведь они могут и по потолку бегать и по полу, а код у нее один — 3. Или они все изначально на полу, а при старте начинают разбегаться кто куда? Поизучаю…
Сегодня сделал разлетание ошметков с учетом обстановки — они падают в ямы, отлетают от стены и все такое:
Переписываю вывод всей графики на новый формат команд блиттера. Помимо изменения способа задания размеров спрайта, добавился и новый способ позиционирования спрайтов на экране — теперь блиттеру можно указать координату Y в виде номера строки. Раньше это был 24-битный адрес. Так что переделывать пришлось много чего. Но уже почти все получилось.
Из-за длительного перерыва (отпуск на море!) дело шло со скрипом. Все-таки пока целиком погружен в проект — пишется легко, вся структура в голове. А немного отвлекся и приходится въезжать заново 🙂
Свежие комментарии