added optional button to restart game (door, panel and touch variants)
[rocksndiamonds.git] / src / game_mm / main_mm.h
1 #ifndef MAIN_MM_H
2 #define MAIN_MM_H
3
4 // ============================================================================
5 // external functions and definitions imported from main program to game_mm
6 // ============================================================================
7
8 #include "../engines.h"
9 #include "../conf_gfx.h"
10
11
12 // ============================================================================
13 // functions and definitions that are exported from game_mm to main program
14 // ============================================================================
15
16 #include "export.h"
17
18
19 // ============================================================================
20 // internal functions and definitions that are not exported to main program
21 // ============================================================================
22
23
24 // ----------------------------------------------------------------------------
25 // constant definitions
26 // ----------------------------------------------------------------------------
27
28 // screen sizes and positions for MM engine
29
30 extern int                      TILESIZE_VAR;
31
32 #define TILESIZE                32
33 #define TILEX                   TILESIZE
34 #define TILEY                   TILESIZE
35 #define TILEX_VAR               TILESIZE_VAR
36 #define TILEY_VAR               TILESIZE_VAR
37
38 #define MINI_TILESIZE           (TILESIZE / 2)
39 #define MINI_TILEX              (TILEX / 2)
40 #define MINI_TILEY              (TILEY / 2)
41
42 extern int                      SCR_FIELDX, SCR_FIELDY;
43
44 #define MAX_BUF_XSIZE           SCR_FIELDX
45 #define MAX_BUF_YSIZE           SCR_FIELDY
46
47 // often used screen positions
48
49 extern int                      SX, SY;
50
51 #define SXSIZE                  (SCR_FIELDX * TILEX_VAR)
52 #define SYSIZE                  (SCR_FIELDY * TILEY_VAR)
53 #define FXSIZE                  (MAX_BUF_XSIZE * TILEX_VAR)
54 #define FYSIZE                  (MAX_BUF_YSIZE * TILEY_VAR)
55
56 extern int                      REAL_SX, REAL_SY;
57
58 #define FULL_SXSIZE             (2 + SXSIZE + 2)
59 #define FULL_SYSIZE             (2 + SYSIZE + 2)
60
61
62 // ----------------------------------------------------------------------------
63 // data structure definitions
64 // ----------------------------------------------------------------------------
65
66 // ----------------------------------------------------------------------------
67 // exported variables
68 // ----------------------------------------------------------------------------
69
70 extern struct LevelInfo_MM native_mm_level;
71
72
73 // ----------------------------------------------------------------------------
74 // exported functions
75 // ----------------------------------------------------------------------------
76
77 #endif  // MAIN_MM_H