X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftape.h;h=4b914c73d2ac394debdce2a290264708861062ec;hb=5a4a6f4051fc89de7e47cf41d4d3e78dab4283d6;hp=a829448a5e007c5c959d66dfc32baa1b9e46457c;hpb=f5b65dacd63ac8767720f317ed227291a286e306;p=rocksndiamonds.git diff --git a/src/tape.h b/src/tape.h index a829448a..4b914c73 100644 --- a/src/tape.h +++ b/src/tape.h @@ -38,6 +38,16 @@ // values for tape properties stored in tape file #define TAPE_PROPERTY_NONE 0 #define TAPE_PROPERTY_EM_RANDOM_BUG (1 << 0) +#define TAPE_PROPERTY_GAME_SPEED (1 << 1) +#define TAPE_PROPERTY_PAUSE_MODE (1 << 2) +#define TAPE_PROPERTY_SINGLE_STEP (1 << 3) +#define TAPE_PROPERTY_SNAPSHOT (1 << 4) +#define TAPE_PROPERTY_REPLAYED (1 << 5) +#define TAPE_PROPERTY_TAS_KEYS (1 << 6) +#define TAPE_PROPERTY_SMALL_GRAPHICS (1 << 7) + +// values for score tape basename length (date, time, name hash, no extension) +#define MAX_SCORE_TAPE_BASENAME_LEN 24 // some positions in the video tape control window #define VIDEO_DISPLAY1_XPOS 5 @@ -178,6 +188,7 @@ struct TapeInfo int game_version; // game release version the tape was created with int engine_version; // game engine version the tape was recorded with + char score_tape_basename[MAX_FILENAME_LEN + 1]; char level_identifier[MAX_FILENAME_LEN + 1]; int level_nr; unsigned int random_seed; @@ -228,6 +239,7 @@ struct TapeInfo boolean show_game_buttons; // show game buttons in tape viewport + boolean no_info_chunk; // used to identify old tape file format boolean no_valid_file; // set when tape file missing or invalid }; @@ -264,7 +276,8 @@ boolean PlaySolutionTape(void); void UndoTape(void); void FixTape_ForceSinglePlayer(void); -void AutoPlayTapes(void); +int AutoPlayTapes(void); +int AutoPlayTapesContinue(void); void PatchTapes(void); void CreateTapeButtons(void);