fixed playfield redraw bug when closing envelope after asking to play again
[rocksndiamonds.git] / src / engines.h
1 // ============================================================================
2 // Rocks'n'Diamonds - McDuffin Strikes Back!
3 // ----------------------------------------------------------------------------
4 // (c) 1995-2014 by Artsoft Entertainment
5 //                  Holger Schemel
6 //                  info@artsoft.org
7 //                  https://www.artsoft.org/
8 // ----------------------------------------------------------------------------
9 // engines.h
10 // ============================================================================
11
12 #ifndef ENGINES_H
13 #define ENGINES_H
14
15 #include "libgame/libgame.h"
16
17 #include "game_em/export.h"
18 #include "game_sp/export.h"
19 #include "game_mm/export.h"
20
21 #include "game.h"
22
23
24 // ============================================================================
25 // functions and definitions exported from main program to game_em
26 // ============================================================================
27
28 void UpdateEngineValues(int, int, int, int);
29
30 boolean swapTiles_EM(boolean);
31 boolean getTeamMode_EM(void);
32 boolean isActivePlayer_EM(int);
33
34 int getScreenFieldSizeX(void);
35 int getScreenFieldSizeY(void);
36
37 void PlayLevelSound_EM(int, int, int, int);
38 void InitGraphicInfo_EM(void);
39 boolean CheckSingleStepMode_EM(int, boolean, boolean, boolean);
40
41 void SetGfxAnimation_EM(struct GraphicInfo_EM *, int, int, int, int);
42 void getGraphicSourceObjectExt_EM(struct GraphicInfo_EM *, int, int, int, int);
43 void getGraphicSourcePlayerExt_EM(struct GraphicInfo_EM *, int, int, int);
44
45
46 // ============================================================================
47 // functions and definitions exported from main program to game_sp
48 // ============================================================================
49
50 void CheckSingleStepMode_SP(boolean, boolean);
51
52 void getGraphicSource_SP(struct GraphicInfo_SP *, int, int);
53 int getGraphicInfo_Delay(int);
54 boolean isNextAnimationFrame_SP(int, int);
55
56
57 // ============================================================================
58 // functions and definitions exported from main program to game_mm
59 // ============================================================================
60
61 void SetDrawtoField(int);
62
63 int el2img_mm(int);
64 int el_act2img_mm(int, int);
65
66 void CheckSingleStepMode_MM(boolean, boolean);
67 void ShowEnvelope_MM(int);
68
69 int getGraphicAnimationFrame(int, int);
70 int getGraphicAnimationFrameXY(int, int, int);
71
72 void getGraphicSource(int, int, Bitmap **, int *, int *);
73 void getMiniGraphicSource(int, Bitmap **, int *, int *);
74 void getSizedGraphicSource(int, int, int, Bitmap **, int *, int *);
75 boolean getGraphicInfo_NewFrame(int, int, int);
76
77 void AdvanceFrameCounter(void);
78 void AdvanceGfxFrame(void);
79
80 int getAnimationFrame(int, int, int, int, int);
81
82 #endif  // ENGINES_H