/* boundaries of arrays etc. */
#define MAX_NAMELEN (10+1)
#define MAX_LEVEL_NAME_LEN 32
-#define MAX_LEVEL_AUTHOR_LEN 34
+#define MAX_LEVEL_AUTHOR_LEN 32
#define MAX_TAPELEN (1000 * 50) /* max. time * framerate */
#define MAX_LEVDIR_ENTRIES 100
#define MAX_SCORE_ENTRIES 100
int fieldy;
int time;
int edelsteine;
- char name[MAX_LEVEL_NAME_LEN];
- char author[MAX_LEVEL_AUTHOR_LEN];
+ char name[MAX_LEVEL_NAME_LEN + 1];
+ char author[MAX_LEVEL_AUTHOR_LEN + 1];
int score[LEVEL_SCORE_ELEMENTS];
int mampfer_inhalt[8][3][3];
int tempo_amoebe;
int dauer_sieb;
int dauer_ablenk;
int amoebe_inhalt;
- boolean high_speed;
+ boolean double_speed;
};
struct LevelDirInfo
int sort_priority;
boolean user_defined;
boolean readonly;
+ int color;
};
struct TapeInfo
extern char *sound_name[];
extern int background_loop[];
extern int num_bg_loops;
+extern char *element_info[];
/* often used screen positions */
#define GFX_FIREFLY_U 207
/* only available as size MINI_TILE */
-#define GFX_STEEL_UPPER_LEFT 208
-#define GFX_STEEL_UPPER_RIGHT 209
-#define GFX_STEEL_LOWER_LEFT 210
-#define GFX_STEEL_LOWER_RIGHT 211
-#define GFX_STEEL_HORIZONTAL 212
-#define GFX_STEEL_VERTICAL 213
+#define GFX_VSTEEL_UPPER_LEFT 208
+#define GFX_VSTEEL_UPPER_RIGHT 209
+#define GFX_VSTEEL_LOWER_LEFT 210
+#define GFX_VSTEEL_LOWER_RIGHT 211
+#define GFX_VSTEEL_HORIZONTAL 212
+#define GFX_VSTEEL_VERTICAL 213
+#define GFX_ISTEEL_UPPER_LEFT 214
+#define GFX_ISTEEL_UPPER_RIGHT 215
+#define GFX_ISTEEL_LOWER_LEFT 216
+#define GFX_ISTEEL_LOWER_RIGHT 217
+#define GFX_ISTEEL_HORIZONTAL 218
+#define GFX_ISTEEL_VERTICAL 219
/* elements with graphics borrowed from other elements */
#define GFX_SCHLUESSEL GFX_SCHLUESSEL1
#define MB_MENU_MARK TRUE
#define MB_MENU_INITIALIZE (-1)
#define MB_LEFT 1
-#ifdef MSDOS
-#define MB_MIDDLE 4
-#define MB_RIGHT 2
-#else
#define MB_MIDDLE 2
#define MB_RIGHT 3
-#endif
/* values for redraw_mask */
-#define REDRAW_ALL (1L << 0)
-#define REDRAW_FIELD (1L << 1)
-#define REDRAW_TILES (1L << 2)
-#define REDRAW_DOOR_1 (1L << 3)
-#define REDRAW_VIDEO_1 (1L << 4)
-#define REDRAW_VIDEO_2 (1L << 5)
-#define REDRAW_VIDEO_3 (1L << 6)
-#define REDRAW_MICROLEVEL (1L << 7)
-#define REDRAW_FROM_BACKBUFFER (1L << 8)
+#define REDRAW_ALL (1 << 0)
+#define REDRAW_FIELD (1 << 1)
+#define REDRAW_TILES (1 << 2)
+#define REDRAW_DOOR_1 (1 << 3)
+#define REDRAW_VIDEO_1 (1 << 4)
+#define REDRAW_VIDEO_2 (1 << 5)
+#define REDRAW_VIDEO_3 (1 << 6)
+#define REDRAW_MICROLEVEL (1 << 7)
+#define REDRAW_FROM_BACKBUFFER (1 << 8)
#define REDRAW_DOOR_2 (REDRAW_VIDEO_1 | \
REDRAW_VIDEO_2 | \
REDRAW_VIDEO_3)
-#define REDRAW_DOOR_3 (1L << 9)
+#define REDRAW_DOOR_3 (1 << 9)
#define REDRAW_DOORS (REDRAW_DOOR_1 | \
REDRAW_DOOR_2 | \
REDRAW_DOOR_3)