X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Fexport.h;h=f165712375a4f9138386b8abd1f509058695c9c9;hb=5ba7f2d9a3f07f342afdf215a3307d5487cb6d43;hp=27e3c6f0fa16d5f5ce0da5a3d63eb8438e1f5e1e;hpb=0cedc9a28aebd8a9791c374fe71d6c86a908a87d;p=rocksndiamonds.git diff --git a/src/game_em/export.h b/src/game_em/export.h index 27e3c6f0..f1657123 100644 --- a/src/game_em/export.h +++ b/src/game_em/export.h @@ -1,5 +1,5 @@ -#ifndef EXPORT_H -#define EXPORT_H +#ifndef GAME_SP_EXPORT_H +#define GAME_SP_EXPORT_H /* ========================================================================= */ /* functions and definitions exported from game_em to main program */ @@ -353,6 +353,12 @@ enum Xsand_stonesand_2, Xsand_stonesand_3, Xsand_stonesand_4, + +#ifdef EM_ENGINE_USE_ADDITIONAL_ELEMENTS + Xsand_stonesand_quickout_1, + Xsand_stonesand_quickout_2, +#endif + Xsand_stoneout_1, Xsand_stoneout_2, Xsand_sandstone_1, @@ -616,6 +622,8 @@ struct LEVEL short ball_array[8][8]; /* ball data */ short android_array[TILE_MAX];/* android clone table */ int num_ball_arrays; /* number of ball data arrays used */ + + int exit_x, exit_y; /* kludge for playing player exit sound */ }; struct PLAYER @@ -689,6 +697,22 @@ struct GraphicInfo_EM int unique_identifier; /* used to identify needed screen updates */ }; +struct EngineSnapshotInfo_EM +{ + struct GameInfo_EM game_em; + unsigned long RandomEM; + struct LEVEL lev; + struct PLAYER ply[MAX_PLAYERS]; + short Array[4][EM_MAX_CAVE_HEIGHT][EM_MAX_CAVE_WIDTH]; + int screen_x; + int screen_y; + int frame; + short **Boom; + short **Cave; + short **Next; + short **Draw; +}; + /* ------------------------------------------------------------------------- */ /* exported functions */ @@ -698,6 +722,7 @@ extern struct GlobalInfo_EM global_em_info; extern struct LevelInfo_EM native_em_level; extern struct GraphicInfo_EM graphic_info_em_object[TILE_MAX][8]; extern struct GraphicInfo_EM graphic_info_em_player[MAX_PLAYERS][SPR_MAX][8]; +extern struct EngineSnapshotInfo_EM engine_snapshot_em; extern void em_open_all(); extern void em_close_all(); @@ -705,7 +730,7 @@ extern void em_close_all(); extern void InitGameEngine_EM(); extern void GameActions_EM(byte *, boolean); -extern unsigned int InitEngineRND_EM(long); +extern unsigned int InitEngineRandom_EM(long); extern void setLevelInfoToDefaults_EM(); extern boolean LoadNativeLevel_EM(char *); @@ -715,4 +740,7 @@ extern void BlitScreenToBitmap_EM(Bitmap *); extern void RedrawPlayfield_EM(boolean); extern void DrawGameDoorValues_EM(); -#endif /* EXPORT_H */ +extern void LoadEngineSnapshotValues_EM(); +extern void SaveEngineSnapshotValues_EM(); + +#endif /* GAME_SP_EXPORT_H */