rnd-20030809-1-src
[rocksndiamonds.git] / src / init.c
index dde09f6ddca940ca3787dff21d928f3e2f930dd1..cde94b1265cf5c75a46d9947c5d81354a92b5d86 100644 (file)
@@ -1284,7 +1284,7 @@ void InitElementPropertiesStatic()
     -1
   };
 
-  static int ep_collectible[] =
+  static int ep_collectible_only[] =
   {
     EL_BD_DIAMOND,
     EL_EMERALD,
@@ -2495,7 +2495,7 @@ void InitElementPropertiesStatic()
   } element_properties[] =
   {
     { ep_diggable,             EP_DIGGABLE             },
-    { ep_collectible,          EP_COLLECTIBLE          },
+    { ep_collectible_only,     EP_COLLECTIBLE_ONLY     },
     { ep_dont_run_into,                EP_DONT_RUN_INTO        },
     { ep_dont_collide_with,    EP_DONT_COLLIDE_WITH    },
     { ep_dont_touch,           EP_DONT_TOUCH           },
@@ -2639,7 +2639,7 @@ void InitElementPropertiesEngine(int engine_version)
   static int no_wall_properties[] =
   {
     EP_DIGGABLE,
-    EP_COLLECTIBLE,
+    EP_COLLECTIBLE_ONLY,
     EP_DONT_RUN_INTO,
     EP_DONT_COLLIDE_WITH,
     EP_CAN_MOVE,
@@ -2705,6 +2705,10 @@ void InitElementPropertiesEngine(int engine_version)
     SET_PROPERTY(i, EP_ACCESSIBLE, (IS_WALKABLE(i) ||
                                    IS_PASSABLE(i)));
 
+    /* ---------- COLLECTIBLE ---------------------------------------------- */
+    SET_PROPERTY(i, EP_COLLECTIBLE, (IS_COLLECTIBLE_ONLY(i) ||
+                                    IS_DROPPABLE(i)));
+
     /* ---------- SNAPPABLE ------------------------------------------------ */
     SET_PROPERTY(i, EP_SNAPPABLE, (IS_DIGGABLE(i) ||
                                   IS_COLLECTIBLE(i) ||
@@ -2773,6 +2777,9 @@ void InitElementPropertiesEngine(int engine_version)
                                     CAN_EXPLODE_SMASHED(i) ||
                                     CAN_EXPLODE_IMPACT(i)));
 
+    /* ---------- CAN_EXPLODE_3X3 ------------------------------------------ */
+    SET_PROPERTY(i, EP_CAN_EXPLODE_3X3, !CAN_EXPLODE_1X1(i));
+
     /* ---------- CAN_BE_CRUMBLED ------------------------------------------ */
     SET_PROPERTY(i, EP_CAN_BE_CRUMBLED,
                 element_info[i].crumbled[ACTION_DEFAULT] != IMG_EMPTY);
@@ -3195,17 +3202,8 @@ void InitLevelArtworkInfo()
 
 static void InitImages()
 {
-
-  TreeInfo *tst1 = getTreeInfoFromIdentifier(leveldir_first, "jue1");
-  TreeInfo *tst2 = getTreeInfoFromIdentifier(leveldir_first, "demojue");
-  printf("::: XXX 0 '%s' [%x, %x]\n", tst1->graphics_path,
-        tst1->graphics_path, tst2->graphics_path);
-
-
   setLevelArtworkDir(artwork.gfx_first);
 
-  printf("::: XXX 1 '%s'\n", tst1->graphics_path);
-
 #if 0
   printf("::: InitImages for '%s' ['%s', '%s'] ['%s', '%s']\n",
         leveldir_current->identifier,
@@ -3217,16 +3215,10 @@ static void InitImages()
 
   ReloadCustomImages();
 
-  printf("::: XXX 2 '%s'\n", tst1->graphics_path);
-
   LoadCustomElementDescriptions();
   LoadSpecialMenuDesignSettings();
 
-  printf("::: XXX 3 '%s'\n", tst1->graphics_path);
-
   ReinitializeGraphics();
-
-  printf("::: XXX 4 '%s'\n", tst1->graphics_path);
 }
 
 static void InitSound(char *identifier)