#define MV_BIT_RIGHT 1
#define MV_BIT_UP 2
#define MV_BIT_DOWN 3
-#define NUM_MV_DIRECTIONS 4
+#define NUM_DIRECTIONS 4
#define MV_NO_MOVING 0
#define MV_LEFT (1 << MV_BIT_LEFT)
/* default name for unknown player names */
#define ANONYMOUS_NAME "anonymous"
+/* default name for new levels */
+#define NAMELESS_LEVEL_NAME "nameless level"
+
/* default text for non-existant artwork */
#define NOT_AVAILABLE "(not available)"
/* default value for undefined filename */
#define UNDEFINED_FILENAME "[NONE]"
-/* default name for new levels */
-#define NAMELESS_LEVEL_NAME "nameless level"
+/* default values for undefined configuration file parameters */
+#define ARG_UNDEFINED "-1000000"
+#define ARG_UNDEFINED_VALUE (atoi(ARG_UNDEFINED))
/* definitions for game sub-directories */
#ifndef RO_GAME_DIR
int vx, vy;
int vxsize, vysize;
- boolean draw_deactivation_mask;
+ int draw_deactivation_mask;
+ int draw_background_mask;
Bitmap *background_bitmap;
+ int background_bitmap_mask;
};
struct FontInfo
{
char *token;
char *value;
+ int type;
};
struct FileInfo
int *parameter; /* array of file parameters */
};
+struct SetupFileList
+{
+ char *token;
+ char *value;
+
+ struct SetupFileList *next;
+};
+
struct ListNodeInfo
{
char *source_filename; /* primary key for node list */
struct FileInfo *file_list; /* static artwork file array */
struct ConfigInfo *suffix_list; /* parameter suffixes array */
+ struct SetupFileList *custom_setup_list; /* additional definitions */
struct ListNodeInfo **artwork_list; /* static artwork node array */
void InitGfxDoor1Info(int, int, int, int);
void InitGfxDoor2Info(int, int, int, int);
void InitGfxScrollbufferInfo(int, int);
-void SetDrawDeactivationMask(int );
-void SetBackgroundBitmap(Bitmap *);
+void SetDrawDeactivationMask(int);
+void SetDrawBackgroundMask(int);
+void SetMainBackgroundBitmap(Bitmap *);
+void SetDoorBackgroundBitmap(Bitmap *);
inline void InitVideoDisplay(void);
inline void CloseVideoDisplay(void);