X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftape.h;h=c4fba44dba2ba2351f33325e100a1a9f8b2838d2;hb=9c94b5f043a204edb69f88c95d6a44fafa95ddb2;hp=e47328179473d78eaa7e608ec1a6b4ade93178ad;hpb=881bd7909d3a28c07c0bed2185e60a437b407e7c;p=rocksndiamonds.git diff --git a/src/tape.h b/src/tape.h index e4732817..c4fba44d 100644 --- a/src/tape.h +++ b/src/tape.h @@ -38,6 +38,13 @@ // 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 @@ -203,6 +210,7 @@ struct TapeInfo boolean quick_resume; boolean single_step; boolean changed; + boolean solved; boolean player_participates[MAX_PLAYERS]; int num_participating_players; int centered_player_nr_next; @@ -232,6 +240,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 }; @@ -255,20 +264,26 @@ void TapeStartPlaying(void); void TapeStopPlaying(void); byte *TapePlayAction(void); void TapeStop(void); +void TapeStopGame(void); +void TapeStopTape(void); void TapeErase(void); unsigned int GetTapeLengthFrames(void); unsigned int GetTapeLengthSeconds(void); void TapeQuickSave(void); void TapeQuickLoad(void); +void TapeRestartGame(void); +void TapeReplayAndPauseBeforeEnd(void); boolean hasSolutionTape(void); boolean InsertSolutionTape(void); boolean PlaySolutionTape(void); +boolean PlayScoreTape(int); void UndoTape(void); void FixTape_ForceSinglePlayer(void); -void AutoPlayTapes(void); +int AutoPlayTapes(void); +int AutoPlayTapesContinue(void); void PatchTapes(void); void CreateTapeButtons(void);