rocksndiamonds-1.2.0
[rocksndiamonds.git] / src / tools.h
index 4c7544df2fb191c619d31a8b2b30a7d8caee1901..6d70852092b5617f9eb67adb6195019e6eda5978 100644 (file)
 #include "main.h"
 
 /* for SetDrawtoField */
-#define DRAW_DIRECT    0
-#define DRAW_BUFFERED  1
-#define DRAW_BACKBUFFER        2
+#define DRAW_DIRECT            0
+#define DRAW_BUFFERED          1
+#define DRAW_BACKBUFFER                2
 
 /* for DrawElementShifted */
-#define NO_CUTTING     0
-#define CUT_ABOVE      1
-#define CUT_BELOW      2
-#define CUT_LEFT       4
-#define CUT_RIGHT      8
+#define NO_CUTTING             0
+#define CUT_ABOVE              (1 << 0)
+#define CUT_BELOW              (1 << 1)
+#define CUT_LEFT               (1 << 2)
+#define CUT_RIGHT              (1 << 3)
 
 /* for masking functions */
-#define NO_MASKING     0
-#define USE_MASKING    1
+#define NO_MASKING             0
+#define USE_MASKING            1
  
 /* for MoveDoor */
-#define DOOR_OPEN_1    (1 << 0)
-#define DOOR_OPEN_2    (1 << 1)
-#define DOOR_CLOSE_1   (1 << 2)
-#define DOOR_CLOSE_2   (1 << 3)
-#define DOOR_OPEN_BOTH (DOOR_OPEN_1 | DOOR_OPEN_2)
-#define DOOR_CLOSE_BOTH        (DOOR_CLOSE_1 | DOOR_CLOSE_2)
-#define DOOR_ACTION_1  (DOOR_OPEN_1 | DOOR_CLOSE_1)
-#define DOOR_ACTION_2  (DOOR_OPEN_2 | DOOR_CLOSE_2)
-#define DOOR_ACTION    (DOOR_ACTION_1 | DOOR_ACTION_2)
-#define DOOR_COPY_BACK (1 << 4)
-#define DOOR_NO_DELAY  (1 << 5)
-#define DOOR_GET_STATE (1 << 6)
+#define DOOR_OPEN_1            (1 << 0)
+#define DOOR_OPEN_2            (1 << 1)
+#define DOOR_CLOSE_1           (1 << 2)
+#define DOOR_CLOSE_2           (1 << 3)
+#define DOOR_OPEN_BOTH         (DOOR_OPEN_1 | DOOR_OPEN_2)
+#define DOOR_CLOSE_BOTH                (DOOR_CLOSE_1 | DOOR_CLOSE_2)
+#define DOOR_ACTION_1          (DOOR_OPEN_1 | DOOR_CLOSE_1)
+#define DOOR_ACTION_2          (DOOR_OPEN_2 | DOOR_CLOSE_2)
+#define DOOR_ACTION            (DOOR_ACTION_1 | DOOR_ACTION_2)
+#define DOOR_COPY_BACK         (1 << 4)
+#define DOOR_NO_DELAY          (1 << 5)
+#define DOOR_GET_STATE         (1 << 6)
 
 /* for Request */
-#define REQ_ASK                (1 << 0)
-#define REQ_OPEN       (1 << 1)
-#define REQ_CLOSE      (1 << 2)
-#define REQ_CONFIRM    (1 << 3)
-#define REQ_STAY_CLOSED        (1 << 4)
-#define REQ_STAY_OPEN  (1 << 5)
-#define REQ_PLAYER     (1 << 6)
+#define REQ_ASK                        (1 << 0)
+#define REQ_OPEN               (1 << 1)
+#define REQ_CLOSE              (1 << 2)
+#define REQ_CONFIRM            (1 << 3)
+#define REQ_STAY_CLOSED                (1 << 4)
+#define REQ_STAY_OPEN          (1 << 5)
+#define REQ_PLAYER             (1 << 6)
+
+#define REQUEST_WAIT_FOR       (REQ_ASK | REQ_CONFIRM | REQ_PLAYER)
 
 void SetDrawtoField(int);
 void BackToFront();
 void FadeToFront();
 void ClearWindow();
+void DrawTextF(int, int, int, char *, ...);
+void DrawTextFCentered(int, int, char *, ...);
 void DrawText(int, int, char *, int, int);
 void DrawTextExt(Drawable, GC, int, int, char *, int, int);
 void DrawAllPlayers(void);
@@ -94,7 +98,7 @@ void DrawMicroElement(int, int, int);
 void DrawLevel(void);
 void DrawMiniLevel(int, int);
 void DrawMicroLevel(int, int);
-BOOL Request(char *, unsigned int);
+boolean Request(char *, unsigned int);
 unsigned int OpenDoor(unsigned int);
 unsigned int CloseDoor(unsigned int);
 unsigned int GetDoorState(void);