X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.h;h=558837256d5f30fb07ae49c97b8d8d0212ecd66a;hb=2362e426463cb445e119a4e3e5ce0b6ccb3fb33c;hp=ff528997a38a2988dc9e2acf3127ddf1d604318b;hpb=3140ab2a0de5599122e88579f48603146595e1c7;p=rocksndiamonds.git diff --git a/src/files.h b/src/files.h index ff528997..55883725 100644 --- a/src/files.h +++ b/src/files.h @@ -16,23 +16,69 @@ #include "main.h" -void LoadLevelFromFilename(char *); + +/* 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_EM(struct LevelInfo *); +void CopyNativeLevel_EM_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); -void LoadSetup(void); -void SaveSetup(void); +void LoadSetup(); +void SaveSetup(); void LoadCustomElementDescriptions(); void LoadSpecialMenuDesignSettings(); +void LoadUserDefinedEditorElementList(int **, int *); +void LoadMusicInfo(); +void LoadHelpAnimInfo(); +void LoadHelpTextInfo(); + +void ConvertLevels(void); #endif /* FILES_H */