X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Fexport.h;h=837a9baf5e336c46e77c3d87bafb8609bb452e13;hb=f78f30b84a0345ea31b30c5bd95e338c9d9ebd4b;hp=e7cfae0e67480342295a6ebff9c4ea4f36e3632f;hpb=7c0b78ef65acbe880d7f905a5e38fb7bdac8f007;p=rocksndiamonds.git diff --git a/src/game_em/export.h b/src/game_em/export.h index e7cfae0e..837a9baf 100644 --- a/src/game_em/export.h +++ b/src/game_em/export.h @@ -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, @@ -659,6 +665,7 @@ struct GlobalInfo_EM struct GameInfo_EM { boolean any_player_moving; + boolean any_player_snapping; int last_moving_player; int last_player_direction[MAX_PLAYERS]; }; @@ -691,6 +698,22 @@ struct GraphicInfo_EM int unique_identifier; /* used to identify needed screen updates */ }; +struct EngineSnapshotInfo_EM +{ + struct GameInfo_EM game_em; + unsigned int 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 */ @@ -700,21 +723,26 @@ 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(); +extern void InitGfxBuffers_EM(); + extern void InitGameEngine_EM(); extern void GameActions_EM(byte *, boolean); -extern unsigned int InitEngineRND_EM(long); +extern unsigned int InitEngineRandom_EM(int); extern void setLevelInfoToDefaults_EM(); -extern boolean LoadNativeLevel_EM(char *); +extern boolean LoadNativeLevel_EM(char *, boolean); extern void BackToFront_EM(void); extern void BlitScreenToBitmap_EM(Bitmap *); extern void RedrawPlayfield_EM(boolean); -extern void DrawGameDoorValues_EM(); + +extern void LoadEngineSnapshotValues_EM(); +extern void SaveEngineSnapshotValues_EM(); #endif /* EXPORT_H */