X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.h;h=3c68f01f925ee9b0ec4a333d2933d3e1b56fc774;hb=ef9242bb9320d705010959ba11fdf697dc1e5b70;hp=fe7be5ca939b9b687cd238b9ff8c63fcc130575f;hpb=9c285b0e8e4d81c5559815c5f7142685ce865206;p=rocksndiamonds.git diff --git a/src/files.h b/src/files.h index fe7be5ca..3c68f01f 100644 --- a/src/files.h +++ b/src/files.h @@ -16,6 +16,35 @@ #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 *); @@ -28,6 +57,9 @@ 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); @@ -47,4 +79,6 @@ void LoadMusicInfo(); void LoadHelpAnimInfo(); void LoadHelpTextInfo(); +void ConvertLevels(void); + #endif /* FILES_H */