rnd-20020607-1-src
authorHolger Schemel <info@artsoft.org>
Fri, 7 Jun 2002 19:02:28 +0000 (21:02 +0200)
committerHolger Schemel <info@artsoft.org>
Sat, 30 Aug 2014 08:37:53 +0000 (10:37 +0200)
src/files.c
src/game.c
src/libgame/setup.c
src/main.h
src/timestamp.h

index 4de97c6c89736aeba2381600806ef3fae9fe8d85..b3557c182e235d2e41127d1f95520771dbc5b1fa 100644 (file)
@@ -444,6 +444,10 @@ void LoadLevel(int level_nr)
       /* player was faster than monsters in (pre-)1.0 levels */
       level.double_speed = TRUE;
     }
+
+    /* Default behaviour for EM style gems was "slippery" only in 2.0.1 */
+    if (level.game_version == VERSION_IDENT(2,0,1))
+      level.em_slippery_gems = TRUE;
   }
   else
   {
index 020cdc8910375e5e1271d8f6c561cb41c685b48a..8157320c70d80b292499ed86e3894e28ad931ed3 100644 (file)
@@ -837,6 +837,7 @@ void InitGame()
   {
     static int ep_em_slippery_wall[] =
     {
+      EL_BETON,                /* dummy entry; may be overwritten with EL_MAUERND */
       EL_BETON,
       EL_MAUERWERK,
       EL_MAUER_LEBT,
@@ -851,10 +852,23 @@ void InitGame()
       sizeof(ep_em_slippery_wall) / sizeof(int);
 #endif
 
+#if 1
+    printf("level %d: level version == %06d\n", level_nr, level.game_version);
+    printf("         tape version == %06d\n", tape.game_version);
+    printf("      => game.version == %06d\n", game.version);
+
     /*
     printf("level %d: game.version == %06d\n", level_nr, level.game_version);
     printf("         file_version == %06d\n", level.file_version);
     */
+#endif
+
+    if (game.version > VERSION_IDENT(2,0,1))
+      ep_em_slippery_wall[0] = EL_MAUERND;
+    else
+      ep_em_slippery_wall[0] = EL_BETON;       /* dummy entry */
+
+    Elementeigenschaften2[EL_MAUERND] &= ~EP_BIT_EM_SLIPPERY_WALL;
 
     for (i=0; i<ep_em_slippery_wall_num; i++)
     {
@@ -869,6 +883,11 @@ void InitGame()
        Elementeigenschaften2[ep_em_slippery_wall[i]] &=
          ~EP_BIT_EM_SLIPPERY_WALL;
     }
+
+    if (IS_EM_SLIPPERY_WALL(EL_MAUERND))
+      printf("IS_EM_SLIPPERY_WALL(EL_MAUERND)\n");
+    else
+      printf("! IS_EM_SLIPPERY_WALL(EL_MAUERND)\n");
   }
 
   if (BorderElement == EL_LEERRAUM)
index 5ce14db2245335eb9b72044ba3171e7442cf5a66..27c05e55d16e00d5ba87069a21b43701355da1e2 100644 (file)
@@ -1442,6 +1442,8 @@ static boolean LoadLevelInfoFromLevelConf(TreeInfo **node_first,
   else
     setTreeInfoToDefaults(leveldir_new, TREE_TYPE_LEVEL_DIR);
 
+  leveldir_new->filename = getStringCopy(directory_name);
+
   checkSetupFileListIdentifier(setup_file_list, getCookie("LEVELINFO"));
 
   /* set all structure fields according to the token/value pairs */
@@ -1465,8 +1467,6 @@ static boolean LoadLevelInfoFromLevelConf(TreeInfo **node_first,
   if (leveldir_new->name_sorting == NULL)
     leveldir_new->name_sorting = getStringCopy(leveldir_new->name);
 
-  leveldir_new->filename = getStringCopy(directory_name);
-
   if (node_parent == NULL)             /* top level group */
   {
     leveldir_new->basepath = level_directory;
index a4d392c6e85f942f8d4271e744d744c079a6c8a0..52f9e850e7e4ffc6929c85e358dbdd7306f75b75 100644 (file)
@@ -1624,8 +1624,8 @@ extern struct SoundEffectInfo     sound_effects[];
 #define SETUP                  8
 
 #define PROGRAM_VERSION_MAJOR  2
-#define PROGRAM_VERSION_MINOR  0
-#define PROGRAM_VERSION_PATCH  2
+#define PROGRAM_VERSION_MINOR  1
+#define PROGRAM_VERSION_PATCH  0
 #define PROGRAM_VERSION_STRING "2.1.0"
 
 #define PROGRAM_TITLE_STRING   "Rocks'n'Diamonds"
index 0b27fae4dc6753772c21c79966e6ada1be89fcb2..a5e8de3fe5e081300c82bcdfc4faa57db6c008a4 100644 (file)
@@ -1 +1 @@
-#define COMPILE_DATE_STRING "[2002-06-01 00:23]"
+#define COMPILE_DATE_STRING "[2002-06-07 21:01]"