rnd-20051231-1-src
[rocksndiamonds.git] / src / main.h
index 5331d94a2126f4b30e0dc6e3209ec1ed8b98b23a..736d1c73dad3f1ab4eced01ae79b0a6e33c30b6c 100644 (file)
 #define EL_INTERNAL_CLIPBOARD_GROUP    (EL_FIRST_INTERNAL + 2)
 #define EL_INTERNAL_DUMMY              (EL_FIRST_INTERNAL + 3)
 
-#define EL_INTERNAL_CASCADE_BD         (EL_FIRST_INTERNAL + 4)
-#define EL_INTERNAL_CASCADE_BD_ACTIVE  (EL_FIRST_INTERNAL + 5)
-#define EL_INTERNAL_CASCADE_EM         (EL_FIRST_INTERNAL + 6)
-#define EL_INTERNAL_CASCADE_EM_ACTIVE  (EL_FIRST_INTERNAL + 7)
-#define EL_INTERNAL_CASCADE_EMC                (EL_FIRST_INTERNAL + 8)
-#define EL_INTERNAL_CASCADE_EMC_ACTIVE (EL_FIRST_INTERNAL + 9)
-#define EL_INTERNAL_CASCADE_RND                (EL_FIRST_INTERNAL + 10)
-#define EL_INTERNAL_CASCADE_RND_ACTIVE (EL_FIRST_INTERNAL + 11)
-#define EL_INTERNAL_CASCADE_SB         (EL_FIRST_INTERNAL + 12)
-#define EL_INTERNAL_CASCADE_SB_ACTIVE  (EL_FIRST_INTERNAL + 13)
-#define EL_INTERNAL_CASCADE_SP         (EL_FIRST_INTERNAL + 14)
-#define EL_INTERNAL_CASCADE_SP_ACTIVE  (EL_FIRST_INTERNAL + 15)
-#define EL_INTERNAL_CASCADE_DC         (EL_FIRST_INTERNAL + 16)
-#define EL_INTERNAL_CASCADE_DC_ACTIVE  (EL_FIRST_INTERNAL + 17)
-#define EL_INTERNAL_CASCADE_DX         (EL_FIRST_INTERNAL + 18)
-#define EL_INTERNAL_CASCADE_DX_ACTIVE  (EL_FIRST_INTERNAL + 19)
-#define EL_INTERNAL_CASCADE_TEXT       (EL_FIRST_INTERNAL + 20)
-#define EL_INTERNAL_CASCADE_TEXT_ACTIVE        (EL_FIRST_INTERNAL + 21)
-#define EL_INTERNAL_CASCADE_CE         (EL_FIRST_INTERNAL + 22)
-#define EL_INTERNAL_CASCADE_CE_ACTIVE  (EL_FIRST_INTERNAL + 23)
-#define EL_INTERNAL_CASCADE_GE         (EL_FIRST_INTERNAL + 24)
-#define EL_INTERNAL_CASCADE_GE_ACTIVE  (EL_FIRST_INTERNAL + 25)
-#define EL_INTERNAL_CASCADE_USER       (EL_FIRST_INTERNAL + 26)
-#define EL_INTERNAL_CASCADE_USER_ACTIVE        (EL_FIRST_INTERNAL + 27)
-#define EL_INTERNAL_CASCADE_GENERIC       (EL_FIRST_INTERNAL + 28)
-#define EL_INTERNAL_CASCADE_GENERIC_ACTIVE (EL_FIRST_INTERNAL + 29)
-#define EL_INTERNAL_CASCADE_DYNAMIC       (EL_FIRST_INTERNAL + 30)
-#define EL_INTERNAL_CASCADE_DYNAMIC_ACTIVE (EL_FIRST_INTERNAL + 31)
+#define EL_INTERNAL_CASCADE_BD                 (EL_FIRST_INTERNAL + 4)
+#define EL_INTERNAL_CASCADE_BD_ACTIVE          (EL_FIRST_INTERNAL + 5)
+#define EL_INTERNAL_CASCADE_EM                 (EL_FIRST_INTERNAL + 6)
+#define EL_INTERNAL_CASCADE_EM_ACTIVE          (EL_FIRST_INTERNAL + 7)
+#define EL_INTERNAL_CASCADE_EMC                        (EL_FIRST_INTERNAL + 8)
+#define EL_INTERNAL_CASCADE_EMC_ACTIVE         (EL_FIRST_INTERNAL + 9)
+#define EL_INTERNAL_CASCADE_RND                        (EL_FIRST_INTERNAL + 10)
+#define EL_INTERNAL_CASCADE_RND_ACTIVE         (EL_FIRST_INTERNAL + 11)
+#define EL_INTERNAL_CASCADE_SB                 (EL_FIRST_INTERNAL + 12)
+#define EL_INTERNAL_CASCADE_SB_ACTIVE          (EL_FIRST_INTERNAL + 13)
+#define EL_INTERNAL_CASCADE_SP                 (EL_FIRST_INTERNAL + 14)
+#define EL_INTERNAL_CASCADE_SP_ACTIVE          (EL_FIRST_INTERNAL + 15)
+#define EL_INTERNAL_CASCADE_DC                 (EL_FIRST_INTERNAL + 16)
+#define EL_INTERNAL_CASCADE_DC_ACTIVE          (EL_FIRST_INTERNAL + 17)
+#define EL_INTERNAL_CASCADE_DX                 (EL_FIRST_INTERNAL + 18)
+#define EL_INTERNAL_CASCADE_DX_ACTIVE          (EL_FIRST_INTERNAL + 19)
+#define EL_INTERNAL_CASCADE_CHARS              (EL_FIRST_INTERNAL + 20)
+#define EL_INTERNAL_CASCADE_CHARS_ACTIVE       (EL_FIRST_INTERNAL + 21)
+#define EL_INTERNAL_CASCADE_CE                 (EL_FIRST_INTERNAL + 22)
+#define EL_INTERNAL_CASCADE_CE_ACTIVE          (EL_FIRST_INTERNAL + 23)
+#define EL_INTERNAL_CASCADE_GE                 (EL_FIRST_INTERNAL + 24)
+#define EL_INTERNAL_CASCADE_GE_ACTIVE          (EL_FIRST_INTERNAL + 25)
+#define EL_INTERNAL_CASCADE_USER               (EL_FIRST_INTERNAL + 26)
+#define EL_INTERNAL_CASCADE_USER_ACTIVE                (EL_FIRST_INTERNAL + 27)
+#define EL_INTERNAL_CASCADE_GENERIC            (EL_FIRST_INTERNAL + 28)
+#define EL_INTERNAL_CASCADE_GENERIC_ACTIVE     (EL_FIRST_INTERNAL + 29)
+#define EL_INTERNAL_CASCADE_DYNAMIC            (EL_FIRST_INTERNAL + 30)
+#define EL_INTERNAL_CASCADE_DYNAMIC_ACTIVE     (EL_FIRST_INTERNAL + 31)
 
 #define EL_INTERNAL_CLIPBOARD_START    (EL_FIRST_INTERNAL + 0)
 #define EL_INTERNAL_CLIPBOARD_END      (EL_FIRST_INTERNAL + 2)
@@ -1986,6 +1986,7 @@ struct GameInfo
   /* (for the latest engine version, these flags should always be "FALSE") */
   boolean use_change_when_pushing_bug;
   boolean use_block_last_field_bug;
+  boolean max_num_changes_per_frame;
 
   /* variable within running game */
   int yamyam_content_nr;
@@ -2362,7 +2363,7 @@ extern short                      StorePlayer[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern short                   Back[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern boolean                 Stop[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern boolean                 Pushed[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
-extern boolean                 Changed[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
+extern short                   Changed[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern short                   ChangeEvent[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern short                   WasJustMoving[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern short                   WasJustFalling[MAX_LEV_FIELDX][MAX_LEV_FIELDY];