fixed code to compile with current gcc and 64-bit systems
[rocksndiamonds.git] / src / tools.h
1 /***********************************************************
2 *  Rocks'n'Diamonds -- McDuffin Strikes Back!              *
3 *----------------------------------------------------------*
4 *  ©1995 Artsoft Development                               *
5 *        Holger Schemel                                    *
6 *        33659 Bielefeld-Senne                             *
7 *        Telefon: (0521) 493245                            *
8 *        eMail: aeglos@valinor.owl.de                      *
9 *               aeglos@uni-paderborn.de                    *
10 *               q99492@pbhrzx.uni-paderborn.de             *
11 *----------------------------------------------------------*
12 *  tools.h                                                 *
13 *                                                          *
14 *  Letzte Aenderung: 15.06.1995                            *
15 ***********************************************************/
16
17 #ifndef TOOLS_H
18 #define TOOLS_H
19
20 #include "main.h"
21
22 #include <sys/time.h>
23
24 /* für DrawElementShifted */
25 #define CUT_NO_CUTTING  0
26 #define CUT_ABOVE       1
27 #define CUT_BELOW       2
28 #define CUT_LEFT        4
29 #define CUT_RIGHT       8
30
31 /* für MoveDoor */
32 #define DOOR_OPEN_1     1
33 #define DOOR_OPEN_2     2
34 #define DOOR_CLOSE_1    4
35 #define DOOR_CLOSE_2    8
36 #define DOOR_OPEN_BOTH  (DOOR_OPEN_1 | DOOR_OPEN_2)
37 #define DOOR_CLOSE_BOTH (DOOR_CLOSE_1 | DOOR_CLOSE_2)
38 #define DOOR_ACTION_1   (DOOR_OPEN_1 | DOOR_CLOSE_1)
39 #define DOOR_ACTION_2   (DOOR_OPEN_2 | DOOR_CLOSE_2)
40 #define DOOR_ACTION     (DOOR_ACTION_1 | DOOR_ACTION_2)
41 #define DOOR_COPY_BACK  16
42 #define DOOR_NO_DELAY   32
43
44 /* für AreYouSure */
45 #define AYS_ASK         1
46 #define AYS_OPEN        2
47 #define AYS_CLOSE       4
48 #define AYS_CONFIRM     8
49 #define AYS_STAY_CLOSED 16
50 #define AYS_STAY_OPEN   32
51
52 void BackToFront();
53 void FadeToFront();
54 void ClearWindow();
55 void DrawText(int, int, char *, int, int);
56 void DrawTextExt(Drawable, GC, int, int, char *, int, int);
57 void DrawGraphic(int, int, int);
58 void DrawGraphicExt(Drawable, GC, int, int, int);
59 void DrawGraphicExtHiRes(Drawable, GC, int, int, int);
60 void DrawGraphicThruMask(int, int, int);
61 void DrawElementThruMask(int, int, int);
62 void DrawMiniGraphic(int, int, int);
63 void DrawMiniGraphicExt(Drawable, GC, int, int, int);
64 void DrawMiniGraphicExtHiRes(Drawable, GC, int, int, int);
65 int el2gfx(int);
66 void DrawGraphicShifted(int, int, int, int, int, int);
67 void DrawElementShifted(int, int, int, int, int, int);
68 void ErdreichAnbroeckeln(int, int);
69 void DrawScreenElement(int, int, int);
70 void DrawLevelElement(int, int, int);
71 void DrawScreenField(int, int);
72 void DrawLevelField(int, int);
73 void DrawMiniElement(int, int, int);
74 void DrawMiniElementOrWall(int, int, int, int);
75 void DrawMicroElement(int, int, int);
76 void DrawLevel(void);
77 void DrawMiniLevel(int, int);
78 void DrawMicroLevel(int, int);
79 BOOL AreYouSure(char *, unsigned int);
80 void OpenDoor(unsigned int);
81 void CloseDoor(unsigned int);
82 void MoveDoor(unsigned int);
83 int mainCounter(int);
84 void InitCounter(void);
85 int Counter(void);
86 int Counter2(void);
87 void WaitCounter(int);
88 void WaitCounter2(int);
89 void Delay(int);
90 BOOL DelayReached(int *, int);
91 int ReadPixel(Drawable, int, int);
92 int el2gfx(int);
93 void LoadJoystickData(void);
94 void SaveJoystickData(void);
95 void CheckJoystickData(void);
96 int JoystickPosition(int, int, int);
97 int Joystick(void);
98 int JoystickButton(void);
99 void CalibrateJoystick(void);
100
101 #endif