User Tag List

Страница 36 из 68 ПерваяПервая ... 323334353637383940 ... ПоследняяПоследняя
Показано с 351 по 360 из 677

Тема: Dizzy-AGE: новые идеи

  1. #351

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    Я так понимаю, точно описаных алгоритмов нет? Придётся изобретать самому?
    В DizzyAge сделано так.

    Каждый обьект, наносящий повреждения (а стало быть могущий причинить смерть персонажа) имеет свой код (тип смерти).

    Когда Диззи погибает, вызывается или стандартный обработчик восстановления PlayerRespawn(), или, если для данного кода смерти был специальный обработчик, то вызывается специальный.

    В стандартном обработчике PlayerRespawn(), координаты Диззи восстанавливаются из переменных P_XSAFE и P_YSAFE. В них хранятся последние запомненные координаты 'стабильного' положения Диззи, т.е. безопасного. Например, когда диззи падает, эти координаты не обновляются. Когда катится головой вниз, хоть он и касается земли, но тоже не обновляются. А вот если встал лапками на твердую землю и при этом в этом месте нет обьектов отнимающих жизнь, то обновляются. Т.е. здесь стоять безопасно, а, стало быть, если чего, то воосстановиться можно отсюда.

    Вот пример си-подобного кода из движка с обновлением этих координат:

    Код:
    	// Check Respawn Position
    	status = PlayerGet(P_STATUS);
    	if( ( status==STATUS_IDLE || status==STATUS_WALK ) && 
    		IsPlayerSafe() && IsPlayerStable() && 
    		PlayerGet(P_SAFE) &&
    		PlayerGet(P_LIFE)>0 )
    	{
    		// remember relevant info to use in case of a respawn event
    		PlayerSet(P_XSAFE,PlayerGet(P_X));
    		PlayerSet(P_YSAFE,PlayerGet(P_Y));
    		MusicStore();
    	}
    Перевожу на русский: Если Диззи находится в статусе СТОИТ или ИДЕТ (а есть еще статусы ПРЫГАЕТ, ПАДАЕТ и т.д.), кроме того его позиция стабильная и безопасная (об этом позже), а так же никакой опасный обьект не сбросил флаг безопасности P_SAFE, то обновляем текущие координаты P_XSAFE и P_YSAFE.

    Безопасность позиции определяется так:
    Код:
    func IsPlayerSafe()
    {
    	matmask = (1<<MAT_AIR)|(1<<MAT_WATER)|(1<<MAT_CLOUD)|(1<<MAT_CLIMB)|(1<<MAT_WIND); // only those are allowed inside player's box
    	return ( 0 == ( PlayerGet(P_MATINSIDE) & (~matmask) ) ); // no other materials are allowed
    }
    По-русски: Если внутри прямоугольника с Диззи находятся безопасные материалы ВОЗДУХ, ВОДА, ОБЛАКА и т.д.), то функция дает положительный ответ. Соответственно, присутствие других материалов (приносящих смерть, или выталкивающих Диззи выше, например, нахождение внутри твердого обьекта), дают отрицательный ответ.

    Стабильность позиции определяется так:
    Код:
    func IsPlayerStable()
    {
    	matmask = (1<<MAT_BLOCK)|(1<<MAT_JUMPFIX)|(1<<MAT_JUMPPRO)|(1<<MAT_CLIMB); // at least one material with hard density must be under the player
    	return ( 0 != ( PlayerGet(P_MATUNDER) & matmask ) );
    }
    По-русски: Если под лапками персонажами есть как минимум один из материалов ТВЕРДОЕ, ТРАМПЛИН и т.д., то позиция считается стабильной.


    Кроме этого, как уже упоминалось выше, любому обьекту, причиняющему повреждения может быть создана своя функция типа PlayerRespawn(). Например, для водоема, в котором никогда нельзя восстанавливаться под водой (например, из-за того, что по сюжету в него можно сигануть без ласт, и застрять), может быть написана функция, в которой координаты игрока после смерти берутся не из P_XSAFE и P_YSAFE, а другие, например, координаты на берегу возле водоема.

    Вот и весь алгоритм движка.

  2. #352

    Регистрация
    10.11.2007
    Адрес
    Khimki
    Сообщений
    18,222
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    Круто! То, что нужно. Кстати об этих спрайтах, я кое кого неделями просил это отрисовать
    Ты лучше здесь спроси чего надо.

    Кстати, если нужны спрайты в динамике других героев, даже вечно спящего Дози, который ходит(!), пиши, хоть сейчас закину.

    А может вообще всю папку из той игры кинуть с графикой? Там много новых красивых спрайтов.

    Вот она, целиком - http://sderni.ru/225412
    Последний раз редактировалось Rindex; 11.04.2014 в 21:30.
    Может, мы обидели кого-то зря,
    Сбросив пару лишних мегатонн,
    И горит зелёным пламенем земля,
    Там, где был когда-то Пентагон!..

    Profi-576 v3.2/AY-3-8912A GI/FDD-5.25'

  3. #353

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,081
    Спасибо Благодарностей отдано 
    88
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Вот и весь алгоритм движка.
    У меня похожим образом работает, эти переменные доступны в том или ином виде. Буду прикручивать условия.

    Ты лучше здесь спроси чего надо.
    Да, пока вроде всё более менее есть. Графика рисуется, код пишется... влезло бы в памяти всё. Спектрум заставляет думать и оптимизировать всё

  4. #354

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    Да, пока вроде всё более менее есть. Графика рисуется, код пишется... влезло бы в памяти всё. Спектрум заставляет думать и оптимизировать всё
    Год 2147. В огне металлических войн выросло новое поколение солдат. Их зовут - Капитан Пауэр и солдаты будущего!
    Код для Диззи все еще пишется, графика рисуется)

  5. #355

    Регистрация
    10.11.2007
    Адрес
    Khimki
    Сообщений
    18,222
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Titus, ты лучше мне ответь на вопрос про игру сам знаешь где. Как идея?
    Может, мы обидели кого-то зря,
    Сбросив пару лишних мегатонн,
    И горит зелёным пламенем земля,
    Там, где был когда-то Пентагон!..

    Profi-576 v3.2/AY-3-8912A GI/FDD-5.25'

  6. #356

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,081
    Спасибо Благодарностей отдано 
    88
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Год 2147. В огне металлических войн выросло новое поколение солдат. Их зовут - Капитан Пауэр и солдаты будущего!
    Код для Диззи все еще пишется, графика рисуется)
    Это же не демка типа Dizzy-XX. Объём чистого кода колоссальный уже, до 13Кб дотягивает. Закладываю небывалые для диззи на спеке возможности, как по графике, так и по остальному.

    Плюс я редактор пишу параллельно, инструментарий отнимает 50% времени

  7. #357

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    Это же не демка типа Dizzy-XX. Объём чистого кода колоссальный уже, до 13Кб дотягивает. Закладываю небывалые для диззи на спеке возможности, как по графике, так и по остальному.

    Плюс я редактор пишу параллельно, инструментарий отнимает 50% времени
    Хоть бы дему сделал бы на несколько экранчиков для затравки)

  8. #358

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,081
    Спасибо Благодарностей отдано 
    88
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Хоть бы дему сделал бы на несколько экранчиков для затравки)
    Не хочу до релиза показывать. Отладочная демка есть, видео:

    http://gfile.ru/a5dRL

    пароль 911

  9. #359

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    Не хочу до релиза показывать. Отладочная демка есть, видео:

    http://gfile.ru/a5dRL

    пароль 911
    Классненько)

    Мне нравится такой плавный движок)

    Когда хоть примерно ждать релиза? Через месяц, год?

  10. #360

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,081
    Спасибо Благодарностей отдано 
    88
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Классненько)
    Мне нравится такой плавный движок)
    Когда хоть примерно ждать релиза? Через месяц, год?
    Не хотелось бы загадывать, графика полностью с нуля будет, от скорости её рисования зависит. 121 локация вроде получается Может на RGB'15

Страница 36 из 68 ПерваяПервая ... 323334353637383940 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Идеи демо
    от GM BIT в разделе Демо
    Ответов: 711
    Последнее: 24.03.2019, 19:24
  2. Dizzy-AGE: Winter World Dizzy
    от Titus в разделе Dizzy-AGE
    Ответов: 6
    Последнее: 12.11.2011, 00:13
  3. Dizzy-AGE: Magic Star Dizzy
    от Titus в разделе Dizzy-AGE
    Ответов: 43
    Последнее: 22.04.2010, 15:28
  4. идеи устройств
    от next в разделе Несортированное железо
    Ответов: 13
    Последнее: 10.08.2006, 19:24

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •