1 /**************************************************************************\
2 * *
3 * Форматы карт Doom'а 2D Версия 2 *
4 * *
5 * Prikol Software 10.VII.1996 *
6 * *
7 * Разрешается свободно распространять этот файл, при условии сохранения *
8 * ссылки на Prikol Software, версии и даты выпуска файла. *
9 * *
10 * Этот include-файл расчитан на WATCOM C 10.0 и DOS4GW *
11 * Вы можете переделать его на любой другой язык/компилятор, но сохраните *
12 * этот файл (если собираетесь его распространять), а в своем укажите, *
13 * что он изменен (переделан). *
14 * *
15 \**************************************************************************/
17 /*
18 Copyright (C) Prikol Software 1996-1997
19 Copyright (C) Aleksey Volynskov 1996-1997
20 Copyright (C) <ARembo@gmail.com> 2011
22 This file is part of the Doom2D:Rembo project.
24 Doom2D:Rembo is free software; you can redistribute it and/or modify
25 it under the terms of the GNU General Public License version 2 as
26 published by the Free Software Foundation.
28 Doom2D:Rembo is distributed in the hope that it will be useful,
29 but WITHOUT ANY WARRANTY; without even the implied warranty of
30 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
31 GNU General Public License for more details.
33 You should have received a copy of the GNU General Public License
34 along with this program; if not, see <http://www.gnu.org/licenses/> or
35 write to the Free Software Foundation, Inc.,
36 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
37 */
39 #pragma pack(1)
41 /* Старый формат - версия 1.04 alpha (и раньше)
43 названия текстур (old_wall_t)
44 кончается пустой строкой (old_wall_t.n[0]==0)
46 фон - массив 100x100 байт - номера текстур
48 тип стенок - массив 100x100 байт:
49 0 - пусто
50 1 - стена
51 2 - закрытая дверь
52 3 - открытая дверь
53 4 - ступенька
55 передний план - массив 100x100 байт - номера текстур
57 вещи, монстры и др. (old_thing_t)
58 кончается нулевым типом (old_thing_t.t==0)
60 переключатели (old_switch_t)
61 кончается нулевым типом (old_switch_t.t==0)
63 */
84 /* Новый формат - начиная с версии 1.05 alpha
86 заголовок карты (map_header_t)
88 блоки (map_block_t)
89 кончается блоком MB_END (map_block_t.t==MB_END)
91 */
101 // если не используется, то должен быть 0
102 // (для будущей совместимости)
110 MB_SWITCH2,
111 MB__UNKNOWN
112 };
114 /* Версия 0 (Doom2D версии 1.05 alpha)
116 MB_COMMENT - комментарий
118 MB_WALLNAMES - названия текстур (см. старую версию)
119 количество - по размеру блока
121 MB_BACK,MB_WTYPE,MB_FRONT - фон,тип,передний план (см. старую версию)
122 подтип 0 - без упаковки (как в старой версии)
124 MB_THING - вещи,монстры и др. (см. старую версию)
125 количество - по размеру блока
127 MB_SWITCH - переключатели (см. старую версию)
128 количество - по размеру блока
130 */
132 /* Версия 1 (Doom2D версии 1.06 alpha)
134 MB_WALLNAMES
135 добавлены псевдо-текстуры _WATER_*
136 где * это 0=вода,1=кислота,2=кровь
138 MB_WTYPE
139 добавлен новый тип 5 - вода
141 MB_MUSIC - новый блок - название музыки (8 байт)
143 MB_SKY - новый блок - тип неба (2 байта - short)
144 1 = облака
145 2 = город
146 3 = ад
148 */
150 #define SW_PL_PRESS 1
151 #define SW_MN_PRESS 2
152 #define SW_PL_NEAR 4
153 #define SW_MN_NEAR 8
154 #define SW_KEY_R 16
155 #define SW_KEY_G 32
156 #define SW_KEY_B 64
167 /* Версия 2 (Doom2D версии 1.17 alpha)
169 блок MB_SWITCH заменен на MB_SWITCH2 (см. switch2_t)
171 */
175 #pragma pack()
177 /* КОНЕЦ */