rnd-20140225-2-src
authorHolger Schemel <info@artsoft.org>
Tue, 25 Feb 2014 16:12:53 +0000 (17:12 +0100)
committerHolger Schemel <info@artsoft.org>
Sat, 30 Aug 2014 09:01:00 +0000 (11:01 +0200)
src/conftime.h
src/tools.c

index 39730facd1686f6b1f24004804ad5b4208eaf158..615703227039e96650c02683073ee714a386316b 100644 (file)
@@ -1 +1 @@
-#define COMPILE_DATE_STRING "2014-02-25 02:23"
+#define COMPILE_DATE_STRING "2014-02-25 17:11"
index ee3ae43fd558c4072f4d28645b1aeee217ca5a3f..c590f455e92ab1ffd95208000e47548b0fc94c3c 100644 (file)
@@ -5479,8 +5479,10 @@ unsigned int MoveDoor(unsigned int door_state)
     boolean door_panel_drawn[NUM_DOORS];
     boolean door_part_done[NUM_DOORS * MAX_NUM_DOOR_PARTS];
     boolean door_part_done_all;
+#if 0
     int num_xsteps[NUM_DOORS * MAX_NUM_DOOR_PARTS];
     int num_ysteps[NUM_DOORS * MAX_NUM_DOOR_PARTS];
+#endif
     int max_move_delay = 0;    // delay for complete animations of all doors
     int max_step_delay = 0;    // delay (ms) between two animation frames
     int num_move_steps = 0;    // number of animation steps for all doors
@@ -5490,9 +5492,11 @@ unsigned int MoveDoor(unsigned int door_state)
     {
       int nr = door_part_order[i].nr;
       struct DoorPartControlInfo *dpc = &door_part_controls[nr];
+      struct GraphicInfo *g = &graphic_info[dpc->graphic];
       int door_token = dpc->door_nr;
 
-      door_part_done[nr] = !(door_state & door_token);
+      door_part_done[nr] = (!(door_state & door_token) ||
+                           !g->bitmap);
     }
 
     for (i = 0; i < NUM_DOORS * MAX_NUM_DOOR_PARTS; i++)
@@ -5528,9 +5532,10 @@ unsigned int MoveDoor(unsigned int door_state)
       max_move_delay = MAX(max_move_delay, move_delay);
       max_step_delay = (max_step_delay == 0 ? step_delay :
                        euclid(max_step_delay, step_delay));
-
+#if 0
       num_xsteps[i] = move_xsteps;
       num_ysteps[i] = move_ysteps;
+#endif
     }
 
     num_move_steps = max_move_delay / max_step_delay;
@@ -5542,6 +5547,12 @@ unsigned int MoveDoor(unsigned int door_state)
           max_move_delay, max_step_delay, num_move_steps);
 #endif
 
+#if 0
+    for (i = 0; i < NUM_DOORS * MAX_NUM_DOOR_PARTS; i++)
+      printf("::: door_part_done[%d] == %d\n", i, door_part_done[i]);
+    printf("\n");
+#endif
+
     for (k = 0; k < num_move_steps; k++)
     {
       for (i = 0; i < NUM_DOORS; i++)