X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_bd%2Fexport_bd.h;h=7778b066a4a8e37265111872ad1f0376d2283f5f;hb=ac8ca29d0e4dec7b621225457f6eb5179655ea14;hp=f14d8f843613e35d7ec16ad6337a97e35dd1b22f;hpb=35a2f21580d9bd01f55e1265fc8174cfcbdd5ad9;p=rocksndiamonds.git diff --git a/src/game_bd/export_bd.h b/src/game_bd/export_bd.h index f14d8f84..7778b066 100644 --- a/src/game_bd/export_bd.h +++ b/src/game_bd/export_bd.h @@ -43,10 +43,16 @@ struct GameInfo_BD boolean game_over; boolean cover_screen; + boolean player_moving; + boolean player_snapping; + // needed for updating panel - int time_played; + int time_left; int gems_still_needed; int score; + + // needed for saving score time + int frames_played; }; struct LevelInfo_BD @@ -65,10 +71,27 @@ struct GraphicInfo_BD Bitmap *bitmap; int src_x, src_y; int width, height; + + int graphic; + int frame; }; struct EngineSnapshotInfo_BD { + GdGame game; + + // data from pointers in game structure + int element_buffer[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + int last_element_buffer[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + int dir_buffer_from[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + int dir_buffer_to[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + int gfx_buffer[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + + GdCave cave; + + // data from pointers in cave structure + short map[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; + short hammered_reappear[MAX_PLAYFIELD_WIDTH][MAX_PLAYFIELD_HEIGHT]; }; @@ -93,6 +116,7 @@ boolean checkGamePlaying_BD(void); boolean checkBonusTime_BD(void); int getFramesPerSecond_BD(void); int getTimeLeft_BD(void); +void SetTimeFrames_BD(int); void InitGfxBuffers_BD(void); @@ -100,6 +124,7 @@ void setLevelInfoToDefaults_BD_Ext(int, int); void setLevelInfoToDefaults_BD(void); boolean LoadNativeLevel_BD(char *, int, boolean); boolean SaveNativeLevel_BD(char *); +void DumpLevelset_BD(void); void PreparePreviewTileBitmap_BD(Bitmap *, int); void SetPreviewTileBitmapReference_BD(Bitmap *); @@ -109,10 +134,21 @@ unsigned int InitEngineRandom_BD(int); void InitGameEngine_BD(void); void GameActions_BD(byte[MAX_PLAYERS]); -Bitmap *GetTitleScreen_BD(void); +boolean use_native_bd_graphics_engine(void); +boolean use_bd_smooth_movements(void); +boolean use_bd_pushing_graphics(void); +boolean use_bd_up_down_graphics(void); +boolean use_bd_falling_sounds(void); + +boolean hasColorTemplate_BD(void); + +Bitmap **GetTitleScreenBitmaps_BD(void); void CoverScreen_BD(void); void BlitScreenToBitmap_BD(Bitmap *); void RedrawPlayfield_BD(boolean); +void SaveEngineSnapshotValues_BD(void); +void LoadEngineSnapshotValues_BD(void); + #endif // EXPORT_BD_H