#define NUM_SPECIAL_GFX_INFO_ARGS 8
/* these additional definitions are currently only used for draw offsets */
+/* (must match SETUP_MODE_* values as defined in src/screens.c) */
+/* (should also match corresponding entries in src/conf_gfx.c) */
#define GFX_SPECIAL_ARG_SETUP_MAIN 0
#define GFX_SPECIAL_ARG_SETUP_GAME 1
#define GFX_SPECIAL_ARG_SETUP_EDITOR 2
#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_2 9
#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_3 10
#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_4 11
-#define GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK 12
-#define GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER 13
+#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_5 12
+#define GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK 13
+#define GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER 14
-#define NUM_SPECIAL_GFX_SETUP_ARGS 14
+#define NUM_SPECIAL_GFX_SETUP_ARGS 15
/* values for image configuration suffixes */
#define FONT_ENVELOPE_2 19
#define FONT_ENVELOPE_3 20
#define FONT_ENVELOPE_4 21
-#define FONT_INPUT_1_ACTIVE 22
-#define FONT_INPUT_2_ACTIVE 23
-#define FONT_INPUT_1 24
-#define FONT_INPUT_2 25
-#define FONT_OPTION_OFF 26
-#define FONT_OPTION_ON 27
-#define FONT_VALUE_1 28
-#define FONT_VALUE_2 29
-#define FONT_VALUE_OLD 30
-#define FONT_LEVEL_NUMBER_ACTIVE 31
-#define FONT_LEVEL_NUMBER 32
-#define FONT_TAPE_RECORDER 33
-#define FONT_GAME_INFO 34
-#define FONT_INFO_ELEMENTS 35
-#define FONT_INFO_LEVELSET 36
-
-#define NUM_FONTS 37
+#define FONT_REQUEST 22
+#define FONT_INPUT_1_ACTIVE 23
+#define FONT_INPUT_2_ACTIVE 24
+#define FONT_INPUT_1 25
+#define FONT_INPUT_2 26
+#define FONT_OPTION_OFF 27
+#define FONT_OPTION_ON 28
+#define FONT_VALUE_1 29
+#define FONT_VALUE_2 30
+#define FONT_VALUE_OLD 31
+#define FONT_LEVEL_NUMBER_ACTIVE 32
+#define FONT_LEVEL_NUMBER 33
+#define FONT_TAPE_RECORDER 34
+#define FONT_GAME_INFO 35
+#define FONT_INFO_ELEMENTS 36
+#define FONT_INFO_LEVELSET 37
+
+#define NUM_FONTS 38
#define NUM_INITIAL_FONTS 4
#if 0
/* special definitions currently only used for custom artwork configuration */
#define MUSIC_PREFIX_BACKGROUND 0
#define NUM_MUSIC_PREFIXES 1
-#define MAX_LEVELS 1000
/* definitions for demo animation lists */
#define HELPANIM_LIST_NEXT -1
/* program information and versioning definitions */
#define PROGRAM_VERSION_MAJOR 3
#define PROGRAM_VERSION_MINOR 3
-#define PROGRAM_VERSION_PATCH 0
-#define PROGRAM_VERSION_BUILD 2
+#define PROGRAM_VERSION_PATCH 1
+#define PROGRAM_VERSION_BUILD 3
#define PROGRAM_TITLE_STRING "Rocks'n'Diamonds"
#define PROGRAM_AUTHOR_STRING "Holger Schemel"
-#define PROGRAM_COPYRIGHT_STRING "Copyright ©1995-2010 by Holger Schemel"
+#define PROGRAM_COPYRIGHT_STRING "Copyright ©1995-2014 by Holger Schemel"
#define PROGRAM_EMAIL_STRING "info@artsoft.org"
#define PROGRAM_WEBSITE_STRING "http://www.artsoft.org/"
#define PROGRAM_GAME_BY_STRING "A Game by Artsoft Entertainment"
#define X11_ICON_FILENAME "rocks_icon.xbm"
#define X11_ICONMASK_FILENAME "rocks_iconmask.xbm"
-#define SDL_ICON_FILENAME "rocks_icon_32x32.pcx"
+#define SDL_ICON_FILENAME "RocksIcon32x32.png"
#define MSDOS_POINTER_FILENAME "mouse.pcx"
/* file version numbers for resource files (levels, tapes, score, setup, etc.)
boolean draw_masked_when_fading;
};
+struct RequestButtonInfo
+{
+ struct TextPosInfo yes;
+ struct TextPosInfo no;
+ struct TextPosInfo confirm;
+ struct TextPosInfo player_1;
+ struct TextPosInfo player_2;
+ struct TextPosInfo player_3;
+ struct TextPosInfo player_4;
+};
+
struct MenuMainButtonInfo
{
struct MenuPosInfo name;
struct DoorInfo
{
- int width;
- int height;
+ int width, height;
+ int step_offset;
+ int step_delay;
+ int anim_mode;
+};
+
+struct RequestInfo
+{
+ struct RequestButtonInfo button;
+ int x, y;
+ int width, height;
+ int border_size;
+ int line_spacing;
int step_offset;
int step_delay;
int anim_mode;
/* ---------- special element property values ---------- */
- unsigned long properties[NUM_EP_BITFIELDS]; /* element base properties */
+ unsigned int properties[NUM_EP_BITFIELDS]; /* element base properties */
boolean use_gfx_element; /* use custom graphic element */
int gfx_element_initial; /* initial optional custom graphic element */
extern struct InitInfo init, init_last;
extern struct MenuInfo menu;
extern struct DoorInfo door_1, door_2;
+extern struct RequestInfo request;
extern struct PreviewInfo preview;
extern struct ElementInfo element_info[];
extern struct ElementNameInfo element_name_info[];