rnd-19981005-1
[rocksndiamonds.git] / src / tools.h
index 43dcf1e0737bdf8d8bb948e8a57f31be85b8efed..4c7544df2fb191c619d31a8b2b30a7d8caee1901 100644 (file)
@@ -1,13 +1,12 @@
 /***********************************************************
 *  Rocks'n'Diamonds -- McDuffin Strikes Back!              *
 *----------------------------------------------------------*
-*  ©1995 Artsoft Development                               *
-*        Holger Schemel                                    *
-*        33659 Bielefeld-Senne                             *
-*        Telefon: (0521) 493245                            *
-*        eMail: aeglos@valinor.owl.de                      *
-*               aeglos@uni-paderborn.de                    *
-*               q99492@pbhrzx.uni-paderborn.de             *
+*  (c) 1995-98 Artsoft Entertainment                       *
+*              Holger Schemel                              *
+*              Oststrasse 11a                              *
+*              33604 Bielefeld                             *
+*              phone: ++49 +521 290471                     *
+*              email: aeglos@valinor.owl.de                *
 *----------------------------------------------------------*
 *  tools.h                                                 *
 ***********************************************************/
 #ifndef TOOLS_H
 #define TOOLS_H
 
+#include <sys/time.h>
 #include "main.h"
 
-#include <sys/time.h>
+/* for SetDrawtoField */
+#define DRAW_DIRECT    0
+#define DRAW_BUFFERED  1
+#define DRAW_BACKBUFFER        2
 
-/* für DrawElementShifted */
-#define CUT_NO_CUTTING 0
+/* for DrawElementShifted */
+#define NO_CUTTING     0
 #define CUT_ABOVE      1
 #define CUT_BELOW      2
 #define CUT_LEFT       4
 #define CUT_RIGHT      8
 
-/* für MoveDoor */
-#define DOOR_OPEN_1    1
-#define DOOR_OPEN_2    2
-#define DOOR_CLOSE_1   4
-#define DOOR_CLOSE_2   8
+/* for masking functions */
+#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 16
-#define DOOR_NO_DELAY  32
-#define DOOR_GET_STATE 64
+#define DOOR_COPY_BACK (1 << 4)
+#define DOOR_NO_DELAY  (1 << 5)
+#define DOOR_GET_STATE (1 << 6)
 
-/* für AreYouSure */
-#define AYS_ASK                1
-#define AYS_OPEN       2
-#define AYS_CLOSE      4
-#define AYS_CONFIRM    8
-#define AYS_STAY_CLOSED        16
-#define AYS_STAY_OPEN  32
+/* 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)
 
+void SetDrawtoField(int);
 void BackToFront();
 void FadeToFront();
 void ClearWindow();
 void DrawText(int, int, char *, int, int);
 void DrawTextExt(Drawable, GC, int, int, char *, int, int);
-void DrawPlayerField(void);
+void DrawAllPlayers(void);
+void DrawPlayerField(int, int);
+void DrawPlayer(struct PlayerInfo *);
+void DrawGraphicAnimationExt(int, int, int, int, int, int, int);
 void DrawGraphicAnimation(int, int, int, int, int, int);
+void DrawGraphicAnimationThruMask(int, int, int, int, int, int);
 void DrawGraphic(int, int, int);
 void DrawGraphicExt(Drawable, GC, int, int, int);
-void DrawGraphicExtHiRes(Drawable, GC, int, int, int);
 void DrawGraphicThruMask(int, int, int);
-void DrawElementThruMask(int, int, int);
+void DrawGraphicThruMaskExt(Drawable, int, int, int);
 void DrawMiniGraphic(int, int, int);
 void DrawMiniGraphicExt(Drawable, GC, int, int, int);
-void DrawMiniGraphicExtHiRes(Drawable, GC, int, int, int);
-void DrawGraphicShifted(int, int, int, int, int, int);
-void DrawElementShifted(int, int, int, int, int, int);
+void DrawGraphicShifted(int, int, int, int, int, int, int);
+void DrawGraphicShiftedThruMask(int, int, int, int, int, int);
+void DrawScreenElementExt(int, int, int, int, int, int, int);
+void DrawLevelElementExt(int, int, int, int, int, int, int);
+void DrawScreenElementShifted(int, int, int, int, int, int);
+void DrawLevelElementShifted(int, int, int, int, int, int);
+void DrawScreenElementThruMask(int, int, int);
+void DrawLevelElementThruMask(int, int, int);
+void DrawLevelFieldThruMask(int, int);
 void ErdreichAnbroeckeln(int, int);
 void DrawScreenElement(int, int, int);
 void DrawLevelElement(int, int, int);
@@ -76,7 +94,7 @@ void DrawMicroElement(int, int, int);
 void DrawLevel(void);
 void DrawMiniLevel(int, int);
 void DrawMicroLevel(int, int);
-BOOL AreYouSure(char *, unsigned int);
+BOOL Request(char *, unsigned int);
 unsigned int OpenDoor(unsigned int);
 unsigned int CloseDoor(unsigned int);
 unsigned int GetDoorState(void);