Andrew771, угу
вот нашел в древнем архиве из бэкапа
Вся графика для фонов.
//стены
Кирпич
"настоящие"- 2020 год
"прошлое"- наши дни
"древние времена" - все что раньше "прошлого"
"будущее" -?
"нестабильные" -локации в которые попадает герой, после временной ловушки и тд.
Если потребуется экономия памяти на локациях и ПОЛУЧИТЬСЯ!
"базовым" уровнем является "прошлое(наши дни)", в данных локации "настоящие" храняться только изменения разрушений после катастрофы.
//Level
8 байт //(str) (REZERVED) Name_Level //название уровня
//(максимальное ограничение для zx-spectrum 6х4х512б=12288)
2 байта //(long)(REZERVED) Next_Level // адрес следующего уровня
//локация
//REZERVED -для других платформ или турбированных zx-spectrum (или неизвестно будет ли использовано)
//CHANGES_LEVEL_SECTION // описвает из какого уровня можно взять "базу" для изменения графики локации
// GFX_LAYER_SECTION
Layer0 //(REZERVED) описывает "задник" (облака,постройки, деревя и т. за основным Layer0/1, может быть анимированным)
Layer0/1 // основной слой фона, не содержит аннимированных тайлов
можед содержать иформацию, о симмеричных тайлах (половинки),повторяющихся блоков тайлов,одиночных тайлов.
Layer0/1/1 // описывает изменения на тайлах Layer0/1 (надписи,трещины и т.д)
Layer0/1/2 // описывает статические аннимированные спрайты Layer0/1 (открывающиеся окна,двери, эффекты и т.д)
Layer0/1/3 // описывает статические спрайты, прекрывающие все Layers по 0/1/2 (машины,решотки,деревья,NPC)
Layer2 // описывает cтатические спрайты, прекрывает героя,врагов,NPC и др. анимированные и
статичесие спрайты
Layer2/1/1 // описывает аннимированные спрайты,прекрывает героя,врагов,NPC и др. анимированные и
статичесие спрайты
Layer2/1/2 //(REZERVED) погодные условия (ветер,снег,дождь)
//COLLISION_SECTION
POSSIBALE_MOVE // описывает, где может передвигаться герой (лестницы,лифты,площадки, препятствия)
//ENEMY_SECTION //описыват врагов в локации
ENEMY_L
//ITEMS_SECTION // описывает предметы в локации
//TIGGERS_SECITON // описывает состяние триггеров локации
//NPC // случайные и нет "прохожие-расхожие"
/////вариант 1
Layer0/1
2 байт (long) // адрес слеудующего блока
1 байт (int) //симмметричен? (0/1)
1 байт (REZERVED)(int) //номер страницы в zx
2 байта (long) //адрес спрайта
2 байта (REZERVED) (long) //(ширина x высота)(для zx-spectrum возможно будет использоваться 1 байт)
//1- 1x8 (zx 1x1)
//2- 2x8 (zx 2x1)
//3- 3x8 (zx 3x1)
//4- 4x8 (zx 4x1) и тд.
//основной размер тайлов 32x32 и 16x16
1 байт (int) //количество повторений по X
1 байт (int) //количество повторений по Y
//
---------- Post added at 14:56 ---------- Previous post was at 14:55 ----------
и еще вот какой то бред
// GFX_LAYER_SECTION
//Layer0 ////(REZERVED) описывает "задник" (статические фоны: гор,городов, постройки, деревя,механизмы и т.д за основным Layer0.1 )
// тайлы выводяться без масок простым копированием в виртуальный буфер
//Layer0_Repreat // описывает повторяющиеся тайлы // 7-8 байт на группу тайлов
1 байт //(int) // количество повторяющихся разных тайлов (#FF -нет повторяющихся тайлов, следующий байт секции Layer0_Single )
//Layer0_Repreat_Data //стуктура данных
1 байт //(int) // (REZERVED) // страница памяти для zx-spectrum
2 байта //(long) // адрес тайла
1 байт //(int) // младшие 4 бита1 байт //(int) // количество повторяющихся разных тайлов (#FF -нет повторяющихся тайлов, следующий байт секции Layer0_Single )
// %0000 тайл 64x64(8x64)
// %0001 тайл 32x32(4x32)
// %0011 тайл 16x16(2x16)
// %0111 тайл 16x8 (2x8)
// старшие 4 бита
// %0000 тайл целый
// %1000 половина тайла
// %0001 (REZERVED) тайл требует зеркального отображения по вертикали
// %0011 (REZERVED) тайл требует зеркального отображения по горизонтали
1 байт //(int) // количество повторений по X
1 байт //(int) // количество повторений по Y
1 байт //(int) // координата по X
1 байт //(int) // координата по Y
//Layer0_Single // описывает одиночные тайлы
1 байт //(int) //количество одиночных тайлов (#FF -нет тайлов, следующий байт секции Layer0.1 )
//Layer0_Single_Dата // стуктура данных (6 байт на описатель -таких тайлов будет немного в этом слое)
1 байт //(int) // (REZERVED) // страница памяти для zx-spectrum
2 байта //(long) // адрес тайла
1 байт //(int) // младшие 4 бита
// %0000 тайл 64x64(8x64)
// %0001 тайл 32x32(4x32)
// %0011 тайл 16x16(2x16)
// %0111 тайл 16x8 (2x8)
// старшие 4 бита
// %0000 тайл целый
// %1000 половина тайла
// %0001 (REZERVED) тайл требует зеркального отображения по вертикали
// %0011 (REZERVED) тайл требует зеркального отображения по горизонтали
1 байт //(int) // координата по X
1 байт //(int) // координата по Y
//Layer0.1 // основной слой фона, не содержит анимированных тайлов
//Layer0.1_Repreat // описывает повторяющиеся тайлы
1 байт //(int) // количество повторяющихся разных тайлов (#FF -нет повторяющихся тайлов, следующий байт секции Layer0.1_Single )
//Layer0.1_Repreat_Data //стуктура данных
1 байт //(int) // (REZERVED) // страница памяти для zx-spectrum
2 байта //(long) // адрес тайла
1 байт //(int) // младшие 4 бита
// %0000 тайл 64x64(8x64)
// %0001 тайл 32x32(4x32)
// %0011 тайл 16x16(2x16)
// %0111 тайл 16x8 (2x8)
// %1111 тайл 8x8 (1x8)
// %1110 тайл 16x32(2x32)
// %1100 тайл 8x32 (2x32)
// %1000 тайл 8x16 (2x16)
// старшие 4 бита
// %0000 тайл целый
// %1000 половина тайла
// %0001 (REZERVED) тайл требует зеркального отображения по вертикали
// %0011 (REZERVED) тайл требует зеркального отображения по горизонтали
1 байт //(int) // количество повторений по X
1 байт //(int) // количество повторений по Y
1 байт //(int) // координата по X
1 байт //(int) // координата по Y
//Layer0.1_Single_Dата // стуктура данных
1 байт //(int) //полное количество одиночных тайлов
//Layer0.1_Single_Dата_Rereat// количество повторений одного и того же тайла
//встречающегося в различных координатах виртуального буфера
1 байт //(int) // количество повторений (#FF -нет повторений этого тайла)
1 байт //(int) // (REZERVED) // страница памяти для zx-spectrum
2 байта //(long) // адрес тайла
1 байт //(int) // младшие 4 бита
// %0000 тайл 64x64(8x64)
// %0001 тайл 32x32(4x32)
// %0011 тайл 16x16(2x16)
// %0111 тайл 16x8 (2x8)
// %1111 тайл 8x8 (1x8)
// %1110 тайл 16x32(2x32)
// %1100 тайл 8x32 (2x32)
// %1000 тайл 8x16 (2x16)
// старшие 4 бита
// %0000 тайл целый
// %1000 половина тайла
// %0001 (REZERVED) тайл требует зеркального отображения по вертикали
// %0011 (REZERVED) тайл требует зеркального отображения по горизонтали
//Layer0.1_Single_Dата_Rereat_Coord //для каждого такого тайла храняться только координаты
1 байт //(int) // координата по X
1 байт //(int) // координата по Y
//1 байт //(int) // координата по X // пример
//1 байт //(int) // координата по Y // пример




Ответить с цитированием