X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Ftape.h;h=23773684aeb794702b18ed56d3d4c1c6dc0b5536;hp=a33c859f13e9383df4e2b2f27e18be50f3cdc1a5;hb=38212569c2f58866417f26e9c813ed8b23c5b2c4;hpb=543cccf0bf7339f16c7d40276ce87114a4b99f39 diff --git a/src/tape.h b/src/tape.h index a33c859f..23773684 100644 --- a/src/tape.h +++ b/src/tape.h @@ -4,7 +4,7 @@ // (c) 1995-2014 by Artsoft Entertainment // Holger Schemel // info@artsoft.org -// http://www.artsoft.org/ +// https://www.artsoft.org/ // ---------------------------------------------------------------------------- // tape.h // ============================================================================ @@ -35,6 +35,10 @@ #define TAPE_ACTIONS_DEFAULT TAPE_USE_KEY_ACTIONS_ONLY +// values for tape properties stored in tape file +#define TAPE_PROPERTY_NONE 0 +#define TAPE_PROPERTY_EM_RANDOM_BUG (1 << 0) + // some positions in the video tape control window #define VIDEO_DISPLAY1_XPOS 5 #define VIDEO_DISPLAY1_YPOS 5 @@ -190,6 +194,8 @@ struct TapeInfo boolean deactivate_display; boolean auto_play; boolean auto_play_level_solved; + boolean auto_play_level_fixed; + boolean auto_play_level_not_fixable; boolean quick_resume; boolean single_step; boolean changed; @@ -202,6 +208,9 @@ struct TapeInfo boolean use_key_actions; boolean use_mouse_actions; + // bits to indicate which tape properties are stored in this tape + byte property_bits; + struct { byte action[MAX_TAPE_ACTIONS]; @@ -248,7 +257,11 @@ boolean hasSolutionTape(void); boolean InsertSolutionTape(void); boolean PlaySolutionTape(void); -void AutoPlayTape(void); +void UndoTape(void); +void FixTape_ForceSinglePlayer(void); + +void AutoPlayTapes(void); +void PatchTapes(void); void CreateTapeButtons(void); void FreeTapeButtons(void);