2 Copyright (C) 2004-2010 Parallel Realities
4 This program is free software; you can redistribute it and/or
5 modify it under the terms of the GNU General Public License
6 as published by the Free Software Foundation; either version 2
7 of the License, or (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 See the GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21 // Read in the define list used by the map data also
24 #define min(a, b) ((a) < (b) ? (a) : (b))
25 #define max(a, b) ((a) > (b) ? (a) : (b))
27 #define PI 3.14159265359
29 /* ############## errors ########### */
31 #define ERR_FILE "A required file (%s) was not found in PAK file"
32 #define ERR_LOCALE "Locale information missing for section '%s' (contains only partial translation)"
34 /* ########### maximums ############ */
38 #define MAX_WEAPONS 25
40 #define MAX_ENEMIES 25
46 /* ########### dead flags ############ */
52 /* ########### game sections ######## */
54 #define SECTION_INTRO 0
55 #define SECTION_TITLE 1
57 #define SECTION_GAME 3
58 #define SECTION_GAMEOVER 4
59 #define SECTION_CREDITS 5
60 #define SECTION_EASYOVER 6
62 /* ############ sounds ############ */
116 SND_CHEAT = MAX_SOUNDS - 3,
117 SND_HIGHLIGHT = MAX_SOUNDS - 2,
118 SND_SELECT = MAX_SOUNDS - 1
122 /* ########### channels ########### */
130 #define CH_AMBIANCE 6
133 /* ########## keyboard ############# */
152 /* ############ replay ############ */
164 /* ########### widgets ############ */
166 const char widgetName[][25] = {
181 #define WG_SMOOTH_SLIDER 2
184 #define WG_KEYBOARD 5
187 /* ############## skill ############# */
189 const char skill[][10] = {
198 /* ############## text ############## */
201 #define TXT_CENTERED 1
204 #define INFO_NORMAL 0
205 #define INFO_OBJECTIVE 1
207 #define INFO_ACTIVATE 3
210 /* ########## weapons ############# */
213 #define WP_MACHINEGUN 1
215 #define WP_GRENADES 3
219 #define WP_PLASMARIFLE 6
220 #define WP_FLAMETHROWER 7
222 #define WP_LAVABALL1 9
223 #define WP_LAVABALL2 10
224 #define WP_AIMEDPISTOL 11
225 #define WP_ALIENSPREAD 12
228 #define WP_STALAGTITE 15
230 #define WP_ALIENLASER 17
231 #define WP_ALIENGRENADE 18
232 #define WP_AIMEDMACHINE 19
234 /* ########### entity defs ######### */
246 #define PLAYER_WALK_SPEED 4
247 #define PLAYER_FLY_SPEED 8
248 #define PLAYER_JUMP_SPEED -10.25
250 /* ######### paticle flags ########### */
252 #define PAR_WEIGHTLESS 1
253 #define PAR_COLLIDES 2
255 /* ######### effect flags ########### */
258 #define EFF_TRAILSFIRE 2
260 #define EFF_WEIGHTLESS 8
261 #define EFF_COLORED 16
263 /* ########## item defs ############ */
288 /* ########### map ############ */
291 #define MAPHEIGHT 300
302 #define MAP_BREAKABLE 4
303 #define MAP_BREAKABLE2 8
305 #define MAP_NORESET 115
306 #define MAP_DECORATION 120
307 #define MAP_EXITSIGN 196
308 #define MAP_WATERANIM 200
309 #define MAP_SLIMEANIM 207
310 #define MAP_LAVAANIM 214
311 #define MAP_TOPLAYER 221
313 #define MAP_AIR_WALL_1 127
314 #define MAP_AIR_WALL_2 129
315 #define MAP_AIR_CEILING_1 242
316 #define MAP_AIR_WALL_3 243
317 #define MAP_AIR_WALL_4 244
318 #define MAP_AIR_CEILING_2 247
320 #define MAP_WATER_WALL 246
322 #define MAP_SHAKEAMOUNT 2
324 /* ########### mia stuff ############## */
326 #define MIAPERCENT 0.70
328 /* ########### mission stuff ############ */
330 #define MIS_INPROGRESS 0
331 #define MIS_COMPLETE 1
332 #define MIS_PLAYEROUT 2
333 #define MIS_PLAYERDEAD 3
334 #define MIS_PLAYERQUIT 4
335 #define MIS_PLAYERESCAPE 5
336 #define MIS_GAMECOMPLETE 6
338 #define MIS_PLAYERRESTART 8
340 /* ########### pak file stuff ######## */
342 #define PAK_MAX_FILENAME 60
348 #define PAKLOCATION ""
351 #define PAKNAME "blobwars.pak"
354 #define PAKFULLPATH PAKLOCATION PAKNAME
357 #define PATH_MAX 4096
359 #ifndef GAMEPLAYMANUAL
360 #define GAMEPLAYMANUAL "manual.html"
362 #ifndef MEDAL_SERVER_HOST
363 #define MEDAL_SERVER_HOST "localhost"
365 #ifndef MEDAL_SERVER_PORT
366 #define MEDAL_SERVER_PORT 80
379 /* ############# debug ################## */
382 #define debug(x) {printf("*** DEBUG: "); printf x;}
387 #ifndef IGNORE_FLAGTOKEN_ERRORS
388 #define IGNORE_FLAGTOKEN_ERRORS 0