rnd-20030514-1-src
[rocksndiamonds.git] / src / libgame / system.h
index 50b82f3ad480086cbca7447102e9f119e6c648c0..d4c1884c17ce45a98010efe785613d3ad032a24b 100644 (file)
 #define DEFAULT_KEY_TOGGLE_PAUSE KSYM_space
 
 
-/* values for move directions and special "button" keys */
+/* values for basic move directions (effective at runtime) */
 #define MV_BIT_LEFT            0
 #define MV_BIT_RIGHT           1
 #define MV_BIT_UP              2
 #define MV_BIT_DOWN            3
+
 #define NUM_DIRECTIONS         4
 
+/* values for special move patterns (stored in level files) */
+#define MV_BIT_HORIZONTAL      4
+#define MV_BIT_VERTICAL                5
+#define MV_BIT_ALL_DIRECTIONS  6
+#define MV_BIT_TOWARDS_PLAYER  7
+#define MV_BIT_AWAY_FROM_PLAYER        8
+#define MV_BIT_ALONG_LEFT_SIDE 9
+#define MV_BIT_ALONG_RIGHT_SIDE        10
+
+#define NUM_MOVE_PATTERNS      11
+
+/* values for move direction and special "button" key bitmasks */
 #define MV_NO_MOVING           0
 #define MV_LEFT                        (1 << MV_BIT_LEFT)
 #define MV_RIGHT               (1 << MV_BIT_RIGHT)
@@ -329,7 +342,6 @@ struct FontBitmapInfo
 
 #if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND)
   Pixmap *clip_mask;           /* single-char-only clip mask array for X11 */
-  int last_num_chars;          /* to free last font clip masks */
 #endif
 };
 
@@ -546,6 +558,12 @@ struct ConfigInfo
   int type;
 };
 
+struct TokenIntPtrInfo
+{
+  char *token;
+  int *value;
+};
+
 struct FileInfo
 {
   char *token;