added more support for native Boulder Dash game engine code
[rocksndiamonds.git] / src / game_bd / export.h
1 #ifndef GAME_BD_EXPORT_H
2 #define GAME_BD_EXPORT_H
3
4 // ============================================================================
5 // functions and definitions exported from game_bd to main program
6 // ============================================================================
7
8
9 // ----------------------------------------------------------------------------
10 // constant definitions
11 // ----------------------------------------------------------------------------
12
13 #define BD_MAX_CAVE_WIDTH               MAX_PLAYFIELD_WIDTH
14 #define BD_MAX_CAVE_HEIGHT              MAX_PLAYFIELD_HEIGHT
15
16
17 // ----------------------------------------------------------------------------
18 // data structure definitions
19 // ----------------------------------------------------------------------------
20
21 struct GameInfo_BD
22 {
23   boolean level_solved;
24   boolean game_over;
25
26   // needed for updating panel
27   int time_played;
28   int gems_still_needed;
29   int score;
30 };
31
32 struct LevelInfo_BD
33 {
34   int width;
35   int height;
36
37   int cave[BD_MAX_CAVE_WIDTH][BD_MAX_CAVE_HEIGHT];
38 };
39
40 struct EngineSnapshotInfo_BD
41 {
42 };
43
44
45 // ----------------------------------------------------------------------------
46 // exported functions
47 // ----------------------------------------------------------------------------
48
49 extern struct GameInfo_BD game_bd;
50 extern struct LevelInfo_BD native_bd_level;
51 extern struct EngineSnapshotInfo_BD engine_snapshot_bd;
52
53 void setLevelInfoToDefaults_BD(void);
54
55 #endif  // GAME_BD_EXPORT_H