X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Ffiles.h;h=46dcae9c9aa4f588c59c0e8cf11b3ff65129489b;hp=c0050d3615d0e65eb340c3f31fc6504b8981de04;hb=0d214d4e314f6f42df24be140bb433e980319767;hpb=823bddb0d9cc63ddda17a2cd20266aa3b82bde38 diff --git a/src/files.h b/src/files.h index c0050d36..46dcae9c 100644 --- a/src/files.h +++ b/src/files.h @@ -1,68 +1,79 @@ -/*********************************************************** -* Rocks'n'Diamonds -- McDuffin Strikes Back! * -*----------------------------------------------------------* -* (c) 1995-98 Artsoft Entertainment * -* Holger Schemel * -* Oststrasse 11a * -* 33604 Bielefeld * -* phone: ++49 +521 290471 * -* email: aeglos@valinor.owl.de * -*----------------------------------------------------------* -* files.h * -***********************************************************/ +// ============================================================================ +// Rocks'n'Diamonds - McDuffin Strikes Back! +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// files.h +// ============================================================================ #ifndef FILES_H #define FILES_H #include "main.h" -/* names file mode: local level setup or global game setup */ -#define PLAYER_LEVEL 0 -#define PLAYER_SETUP 1 - -/* Setup-Bits */ -#define SETUP_TOONS (1<<0) -#define SETUP_SOUND (1<<1) -#define SETUP_SOUND_LOOPS (1<<2) -#define SETUP_SOUND_MUSIC (1<<3) -#define SETUP_DIRECT_DRAW (1<<4) -#define SETUP_FADING (1<<5) -#define SETUP_AUTO_RECORD (1<<6) -#define SETUP_2ND_JOYSTICK (1<<7) -#define SETUP_QUICK_DOORS (1<<8) -#define SETUP_SCROLL_DELAY (1<<9) -#define SETUP_SOFT_SCROLL (1<<10) - -#define DEFAULT_SETUP (SETUP_TOONS | \ - SETUP_SOUND | \ - SETUP_SOUND_LOOPS | \ - SETUP_SOUND_MUSIC) - -/* Setup-Voreinstellungen */ -#define SETUP_TOONS_ON(x) (((x) & SETUP_TOONS) != 0) -#define SETUP_SOUND_ON(x) (((x) & SETUP_SOUND) != 0) -#define SETUP_SOUND_LOOPS_ON(x) (((x) & SETUP_SOUND_LOOPS) != 0) -#define SETUP_SOUND_MUSIC_ON(x) (((x) & SETUP_SOUND_MUSIC) != 0) -#define SETUP_DIRECT_DRAW_ON(x) (((x) & SETUP_DIRECT_DRAW) != 0) -#define SETUP_FADING_ON(x) (((x) & SETUP_FADING) != 0) -#define SETUP_AUTO_RECORD_ON(x) (((x) & SETUP_AUTO_RECORD) != 0) -#define SETUP_2ND_JOYSTICK_ON(x) (((x) & SETUP_2ND_JOYSTICK) != 0) -#define SETUP_QUICK_DOORS_ON(x) (((x) & SETUP_QUICK_DOORS) != 0) -#define SETUP_SCROLL_DELAY_ON(x) (((x) & SETUP_SCROLL_DELAY) != 0) -#define SETUP_SOFT_SCROLL_ON(x) (((x) & SETUP_SOFT_SCROLL) != 0) - -BOOL CreateNewScoreFile(void); -BOOL CreateNewNamesFile(int); -BOOL LoadLevelInfo(void); + +#define LEVEL_PACKED_START 100 +#define PACKED_LEVELS(x) (LEVEL_PACKED_START + x) + +#define LEVEL_FILE_TYPE_RND_PACKED PACKED_LEVELS(LEVEL_FILE_TYPE_RND) +#define LEVEL_FILE_TYPE_EM_PACKED PACKED_LEVELS(LEVEL_FILE_TYPE_EM) + +#define IS_SINGLE_LEVEL_FILE(x) (x < LEVEL_PACKED_START) +#define IS_PACKED_LEVEL_FILE(x) (x > LEVEL_PACKED_START) + + +void setElementChangePages(struct ElementInfo *, int); +void setElementChangeInfoToDefaults(struct ElementChangeInfo *); +void copyElementInfo(struct ElementInfo *, struct ElementInfo *); + +char *getDefaultLevelFilename(int); +char *getLocalLevelTemplateFilename(); +char *getGlobalLevelTemplateFilename(); + +void LoadLevelFromFilename(struct LevelInfo *, char *); void LoadLevel(int); -void LoadLevelTape(int); -void LoadScore(int); -void LoadPlayerInfo(int); +void LoadLevelTemplate(int); +void LoadLevelInfoOnly(int); void SaveLevel(int); -void SaveLevelTape(int); +void SaveLevelTemplate(); +void SaveNativeLevel(struct LevelInfo *); +void DumpLevel(struct LevelInfo *); +boolean SaveLevelChecked(int); + +void CopyNativeLevel_RND_to_Native(struct LevelInfo *); +void CopyNativeLevel_Native_to_RND(struct LevelInfo *); + +void LoadTapeFromFilename(char *); +void LoadTape(int); +void LoadSolutionTape(int); +void SaveTape(int); +void DumpTape(struct TapeInfo *); +boolean SaveTapeChecked(int); + +void LoadScore(int); void SaveScore(int); -void SavePlayerInfo(int); -void LoadJoystickData(void); -void SaveJoystickData(void); -#endif +void LoadSetupFromFilename(char *); +void LoadSetup(); +void SaveSetup(); + +void LoadSetup_EditorCascade(); +void SaveSetup_EditorCascade(); + +void LoadCustomElementDescriptions(); +void InitMenuDesignSettings_Static(); +void LoadMenuDesignSettings(); +void LoadMenuDesignSettings_AfterGraphics(); +void LoadUserDefinedEditorElementList(int **, int *); +void LoadMusicInfo(); +void LoadHelpAnimInfo(); +void LoadHelpTextInfo(); + +void ConvertLevels(); +void CreateLevelSketchImages(); +void CreateCustomElementImages(char *); + +#endif /* FILES_H */