X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.h;h=3c68f01f925ee9b0ec4a333d2933d3e1b56fc774;hb=c5321d9d36d0a74062651d0352fbbaccbe125eca;hp=d95cce18fc76076f732c2ee7d3333e9684a45ab6;hpb=34efaa3925a28cb95ecb05bf2c693c16f6edfe2f;p=rocksndiamonds.git diff --git a/src/files.h b/src/files.h index d95cce18..3c68f01f 100644 --- a/src/files.h +++ b/src/files.h @@ -1,14 +1,14 @@ /*********************************************************** -* Rocks'n'Diamonds -- McDuffin Strikes Back! * +* 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 * +* (c) 1995-2002 Artsoft Entertainment * +* Holger Schemel * +* Detmolder Strasse 189 * +* 33604 Bielefeld * +* Germany * +* e-mail: info@artsoft.org * *----------------------------------------------------------* -* files.h * +* files.h * ***********************************************************/ #ifndef FILES_H @@ -16,26 +16,69 @@ #include "main.h" + +/* values for level file type identifier */ +#define LEVEL_FILE_TYPE_UNKNOWN 0 +#define LEVEL_FILE_TYPE_RND 1 +#define LEVEL_FILE_TYPE_BD 2 +#define LEVEL_FILE_TYPE_EM 3 +#define LEVEL_FILE_TYPE_SP 4 +#define LEVEL_FILE_TYPE_DX 5 +#define LEVEL_FILE_TYPE_SB 6 +#define LEVEL_FILE_TYPE_DC 7 + +#define NUM_LEVEL_FILE_TYPES 8 + +#define GAME_ENGINE_TYPE_UNKNOWN LEVEL_FILE_TYPE_UNKNOWN +#define GAME_ENGINE_TYPE_RND LEVEL_FILE_TYPE_RND +#define GAME_ENGINE_TYPE_EM LEVEL_FILE_TYPE_EM + +#define NUM_ENGINE_TYPES 3 + +#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 *); + +char *getDefaultLevelFilename(int); + +void LoadLevelFromFilename(struct LevelInfo *, char *); void LoadLevel(int); +void LoadLevelTemplate(int); void SaveLevel(int); +void SaveLevelTemplate(); +void DumpLevel(struct LevelInfo *); + +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 *); void LoadScore(int); void SaveScore(int); -int getLastPlayedLevelOfLevelSeries(char *); +void LoadSetup(); +void SaveSetup(); -void LoadLevelInfo(void); -void LoadSetup(void); -void SaveSetup(void); -void LoadLevelSetup(void); -void SaveLevelSetup(void); +void LoadCustomElementDescriptions(); +void LoadSpecialMenuDesignSettings(); +void LoadUserDefinedEditorElementList(int **, int *); +void LoadMusicInfo(); +void LoadHelpAnimInfo(); +void LoadHelpTextInfo(); -#ifdef MSDOS -FILE *openErrorFile(); -void dumpErrorFile(); -#endif +void ConvertLevels(void); #endif /* FILES_H */