added some game control code for native BD engine (not used yet)
[rocksndiamonds.git] / src / libgame / system.h
index f321f217c0d16e71d044d25d017bb08df390d50d..3cee3696a8a3502f8cd5f944b8aac43a19d59e55 100644 (file)
 #define POS_BOTTOM             6
 #define POS_ANY                        7
 #define POS_CE                 8
-#define POS_LAST               9
+#define POS_CE_TRIGGER         9
+#define POS_LAST               10
 
 // values for text alignment
 #define ALIGN_LEFT             (1 << 0)
@@ -1240,11 +1241,12 @@ struct GfxInfo
   char * (*get_token_from_font_function)(int);
 
   int anim_random_frame;
+  int anim_first_level;
 
   void (*draw_busy_anim_function)(boolean);
   void (*draw_global_anim_function)(int, int);
   void (*draw_global_border_function)(int);
-  void (*draw_tile_cursor_function)(int);
+  void (*draw_tile_cursor_function)(int, int);
   void (*draw_envelope_request_function)(int);
 
   int cursor_mode;
@@ -1335,6 +1337,7 @@ struct SetupInputInfo
 struct SetupEditorInfo
 {
   boolean el_boulderdash;
+  boolean el_boulderdash_native;
   boolean el_emerald_mine;
   boolean el_emerald_mine_club;
   boolean el_more;
@@ -1379,6 +1382,7 @@ struct SetupLevelSetupInfo
 struct SetupEditorCascadeInfo
 {
   boolean el_bd;
+  boolean el_bd_native;
   boolean el_em;
   boolean el_emc;
   boolean el_rnd;
@@ -1516,6 +1520,7 @@ struct SetupInfo
   boolean sound_music;
   boolean sound_simple;
   boolean toons;
+  boolean global_animations;
   boolean scroll_delay;
   boolean forced_scroll_delay;
   int scroll_delay_value;
@@ -1979,7 +1984,7 @@ void InitGfxClipRegion(boolean, int, int, int, int);
 void InitGfxDrawBusyAnimFunction(void (*draw_busy_anim_function)(boolean));
 void InitGfxDrawGlobalAnimFunction(void (*draw_global_anim_function)(int, int));
 void InitGfxDrawGlobalBorderFunction(void (*draw_global_border_function)(int));
-void InitGfxDrawTileCursorFunction(void (*draw_tile_cursor_function)(int));
+void InitGfxDrawTileCursorFunction(void (*draw_tile_cursor_function)(int, int));
 void InitGfxDrawEnvelopeRequestFunction(void (*draw_envelope_request_function)(int));
 void InitGfxCustomArtworkInfo(void);
 void InitGfxOtherSettings(void);
@@ -2008,10 +2013,12 @@ void InitVideoDefaults(void);
 void InitVideoDisplay(void);
 void CloseVideoDisplay(void);
 void InitVideoBuffer(int, int, int, boolean);
+void ResetBitmapAlpha(Bitmap *);
 Bitmap *CreateBitmapStruct(void);
 Bitmap *CreateBitmap(int, int, int);
 void ReCreateBitmap(Bitmap **, int, int);
 void FreeBitmap(Bitmap *);
+void SetBitmapAlphaNextBlit(Bitmap *, int);
 void BlitBitmap(Bitmap *, Bitmap *, int, int, int, int, int, int);
 void BlitBitmapTiled(Bitmap *, Bitmap *, int, int, int, int, int, int, int, int);
 void FadeRectangle(int, int, int, int, int, int, int,