#include "libgame/libgame.h"
#include "game_em/game_em.h"
+#include "game_sp/game_sp.h"
#include "conf_gfx.h" /* include auto-generated data structure definitions */
#include "conf_snd.h" /* include auto-generated data structure definitions */
#include "conf_mus.h" /* include auto-generated data structure definitions */
+
#define IMG_UNDEFINED (-1)
#define IMG_EMPTY IMG_EMPTY_SPACE
#define IMG_SP_EMPTY IMG_SP_EMPTY_SPACE
#define IS_DC_STEELWALL_2(e) ((e) >= EL_DC_STEELWALL_2_LEFT && \
(e) <= EL_DC_STEELWALL_2_SINGLE)
+#if 1
+
#if 1
#define GFX_ELEMENT(e) (element_info[e].gfx_element)
+#else
+#define GFX_ELEMENT(e) (element_info[e].gfx_element == \
+ (element_info[e].use_gfx_element ? \
+ element_info[e].gfx_element : e) ? \
+ element_info[e].gfx_element : \
+ element_info[e].gfx_element + \
+ 0 * printf("::: %d: %d <-> %d\n", \
+ e, \
+ element_info[e].gfx_element, \
+ element_info[e].use_gfx_element ? \
+ element_info[e].gfx_element : e))
+#endif
+
#else
#define GFX_ELEMENT(e) (element_info[e].use_gfx_element ? \
element_info[e].gfx_element : e)
#define EL_QUICKSAND_FAST_EMPTY 861
#define EL_QUICKSAND_FAST_FULL 862
-#define NUM_FILE_ELEMENTS 863
+#define EL_FROM_LEVEL_TEMPLATE 863
+
+#define NUM_FILE_ELEMENTS 864
/* "real" (and therefore drawable) runtime elements */
#define PROGRAM_VERSION_MAJOR 3
#define PROGRAM_VERSION_MINOR 2
#define PROGRAM_VERSION_PATCH 6
-#define PROGRAM_VERSION_BUILD 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-2008 by Holger Schemel"
+#define PROGRAM_COPYRIGHT_STRING "Copyright ©1995-2009 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 GAME_ENGINE_TYPE_UNKNOWN LEVEL_FILE_TYPE_UNKNOWN
#define GAME_ENGINE_TYPE_RND LEVEL_FILE_TYPE_RND
#define GAME_ENGINE_TYPE_EM LEVEL_FILE_TYPE_EM
+#define GAME_ENGINE_TYPE_SP LEVEL_FILE_TYPE_SP
-#define NUM_ENGINE_TYPES 3
+#define NUM_ENGINE_TYPES 4
struct BorderInfo
/* level stored in native format for the alternative native game engines */
struct LevelInfo_EM *native_em_level;
+ struct LevelInfo_SP *native_sp_level;
int file_version; /* file format version the level is stored with */
int game_version; /* game release version the level was created with */