Category: Prince of Persia
Звуки фехтования
Добавил еще один звук взмаха мечом. Теперь их два, выбираются они случайно. Звуковая картина боя стала поинтересней.
И все-таки палитры!
Решил все же отказаться от полноэкранного мигания. Во-первых, для подготовки такого мигания приходится весь скрытый экран заливать белым или красным, а он вообще-то используется. Т.е. надо содержимое скрытого экрана сохранить, потом залить его белым/красным, потом помигать экранами, а потом еще и восстановить содержимое скрытого экрана. Получается ощутимая задержка перед срабатыванием эффекта. Во-вторых, во время такого мигания не может работать движок игры, т.к. скрытый экран занят. Не движутся факелы во время мигания, не двигаются решетки. Это, может, никто и не заметит, но неприятно. С палитрами таких проблем нет — они включаются по таймеру. Все движется, никаких затыков для подготовки. Пусть будут палитры. Выглядит это так:
И еще сегодня я сделал-таки вывод звука «пустого удара мечом» и стражнику. В оригинале и для принца и для стражника используется один и тот же звук, но мне показалось это однообразным. Завтра попробую стражнику выдать немного другой звучок.
Баги и мигания
Сегодня исправил несколько ошибок:
- при отключении звука стражники переставали слышать шаги Принца и вовремя разворачиваться к нему. Логично, звука шагов же нет))
- при повторном просмотре заставки целиком портился один спрайт
- вместо меча начинал бликовать один из элементов обстановки дворца — у них с мечом один код.
А так же продолжаю мучать мигание. Полноэкранное блымкание прикольное, но имеет задержку, обусловленную подготовкой скрытого экрана. Это не подходит для быстрого мигания при падении или получения удара в бою…
Мигание экраном
YellowRabbit подсказал, как сделать мигание экраном более скоростным, чем я делал это до этого. Я все извращался с инверсией, а он предложил залить один экран полностью белым и переключать видимые экраны. Таким образом, мигание будет наиболее скоростным. Как мне это раньше в голову не пришло? Я все заморачивался тем, что в оригинале мигает только черный фон, сами спрайты обстановки остаются неизменными. На БК такой фокус провернуть непросто. Ну вот брат подсказал подходящий вариант. Заодно попробовал и вариант с красным миганием, для случаев, когда выпивается яд. Bandicam отказался правильно захватить кадры мигания, он их пропустил. Пришлось захватывать самим эмулятором, а это там не очень удобно, да и звук пишется отдельно, скрещивай потом этих ужей с ежами… В итоге мигание все равно выглядит не так, как в игре. Потому видео удалил )
Меч обзавелся бликом
Дошли руки и до блика на мече. Как оказалось, пауза между бликами слегка случайна — от 82 до 98 кадров.
Настройка джойстика
Сделал настройку управления от джойстика (вызывается клавишами АР2+ J). Сначала определяется «нулевое» значения порта, в котором могут быть установлены какие-то биты, это значение сохраняется в качестве маски, по которой потом будут очищаться значения порта. Это должно помочь использовать джойстик даже с частично неисправным портом. Ну и, конечно, позволяет задать управление как удобно игроку.
Допиливаем
Сегодня занимался мелкими доделками:
- сделал включение/отключение музыки и звуков по клавише S
- поправил вывод информационных надписей, которые немного поломались после перехода на пропорциональный шрифт
- пофиксил режим «Пауза»
- сделал наконец-то сброс массива уже летящих плит при смене лабиринта, а то иногда лабиринт уже сменился, а еще грохочут плиты, которые начали падать еще в предыдущем лабиринте
Теперь надо заняться заданием управления от джойстика. Еще неясен вопрос насчет таймера в игре. Сейчас время считается на самом деле по количеству выведенных фаз принца в «секунду», а не по аппаратному таймеру. Собственно, это задумывалось как «честный» вариант, когда Принц успеет пробежать всю игру не смотря на возникающие иногда тормоза, ведь количество фаз останется прежним. Наверное поэтому на слабых PC игра длится на самом деле больше часа — значит там тоже нет привязки к аппаратному таймеру. Может быть из этих же соображений?
Отрегулировал часы
Поправил внутренние «часы», теперь идут более-менее прилично 🙂
А вот и ролик «Ваше время истекло»:
Финалы
Сделал оба варианта финалов — когда время кончилось и Принц не успел, и когда он успешно спас Принцессу. С вводом имени в таблицу рекордов и т.д. Обнаружилось, что часы в игре идут немного быстрее, чем надо. Будем регулировать!
Свежие комментарии