#define MAX_INITIAL_INVENTORY_SIZE 8
/* often used screen positions */
+#if 0
#define SX 8
#define SY 8
#define REAL_SX (SX - 2)
#define REAL_SY (SY - 2)
-#if 0
#define DX 566
#define DY 60
#define VX DX
#define GFX_SPECIAL_ARG_SETUP 9
#define GFX_SPECIAL_ARG_PLAYING 10
#define GFX_SPECIAL_ARG_DOOR 11
-#define GFX_SPECIAL_ARG_PANEL 12
-#define GFX_SPECIAL_ARG_PREVIEW 13
-#define GFX_SPECIAL_ARG_CRUMBLED 14
+#define GFX_SPECIAL_ARG_TAPE 12
+#define GFX_SPECIAL_ARG_PANEL 13
+#define GFX_SPECIAL_ARG_PREVIEW 14
+#define GFX_SPECIAL_ARG_CRUMBLED 15
-#define NUM_SPECIAL_GFX_ARGS 15
+#define NUM_SPECIAL_GFX_ARGS 16
/* these additional definitions are currently only used for draw offsets */
#define GFX_SPECIAL_ARG_INFO_MAIN 0
#define GFX_ARG_SORT_PRIORITY 45
#define GFX_ARG_CLASS 46
#define GFX_ARG_STYLE 47
+#define GFX_ARG_ACTIVE_XOFFSET 48
+#define GFX_ARG_ACTIVE_YOFFSET 49
+#define GFX_ARG_PRESSED_XOFFSET 50
+#define GFX_ARG_PRESSED_YOFFSET 51
-#define NUM_GFX_ARGS 48
+#define NUM_GFX_ARGS 52
/* values for sound configuration suffixes */
#define GAME_MODE_SETUP 9
#define GAME_MODE_PLAYING 10
#define GAME_MODE_PSEUDO_DOOR 11
-#define GAME_MODE_PSEUDO_PANEL 12
-#define GAME_MODE_PSEUDO_PREVIEW 13
-#define GAME_MODE_PSEUDO_CRUMBLED 14
+#define GAME_MODE_PSEUDO_TAPE 12
+#define GAME_MODE_PSEUDO_PANEL 13
+#define GAME_MODE_PSEUDO_PREVIEW 14
+#define GAME_MODE_PSEUDO_CRUMBLED 15
/* there are no special config file suffixes for these modes */
-#define GAME_MODE_PSEUDO_TYPENAME 15
-#define GAME_MODE_QUIT 16
+#define GAME_MODE_PSEUDO_TYPENAME 16
+#define GAME_MODE_QUIT 17
/* special definitions currently only used for custom artwork configuration */
#define MUSIC_PREFIX_BACKGROUND 0
/* program information and versioning definitions */
#define PROGRAM_VERSION_MAJOR 3
-#define PROGRAM_VERSION_MINOR 2
-#define PROGRAM_VERSION_PATCH 6
+#define PROGRAM_VERSION_MINOR 3
+#define PROGRAM_VERSION_PATCH 0
#define PROGRAM_VERSION_BUILD 2
#define PROGRAM_TITLE_STRING "Rocks'n'Diamonds"
#define PROGRAM_AUTHOR_STRING "Holger Schemel"
-#define PROGRAM_COPYRIGHT_STRING "Copyright ©1995-2009 by Holger Schemel"
+#define PROGRAM_COPYRIGHT_STRING "Copyright ©1995-2010 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"
int anim_mode;
};
+struct ViewportInfo
+{
+ struct RectWithBorder window;
+ struct RectWithBorder playfield[NUM_SPECIAL_GFX_ARGS];
+ struct RectWithBorder door_1[NUM_SPECIAL_GFX_ARGS];
+ struct RectWithBorder door_2[NUM_SPECIAL_GFX_ARGS];
+};
+
struct HiScore
{
char Name[MAX_PLAYER_NAME_LEN + 1];
int fading_status;
int fading_type;
#endif
-};
-struct SubViewportInfo
-{
- struct Rect menu;
- struct Rect game;
- struct Rect editor;
-};
-
-struct ViewportInfo
-{
- struct Rect window;
- struct SubViewportInfo playfield;
- struct SubViewportInfo door_1;
- struct SubViewportInfo door_2;
+ boolean use_envelope_request;
};
struct ElementChangeInfo
int class;
int style;
+ int active_xoffset;
+ int active_yoffset;
+ int pressed_xoffset;
+ int pressed_yoffset;
+
boolean use_image_size; /* use image size as default width and height */
#if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND)
};
+extern Bitmap *bitmap_db_store;
extern Bitmap *bitmap_db_cross;
extern Bitmap *bitmap_db_field;
extern Bitmap *bitmap_db_panel;
extern int WIN_XSIZE, WIN_YSIZE;
extern int SCR_FIELDX, SCR_FIELDY;
+extern int SX, SY;
+extern int REAL_SX, REAL_SY;
extern int DX, DY;
extern int VX, VY;
extern int EX, EY;
+extern int dDX, dDY;
extern int FX, FY;
extern int ScrollStepSize;