diff options
Diffstat (limited to 'src/levelinfo.h')
-rw-r--r-- | src/levelinfo.h | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/src/levelinfo.h b/src/levelinfo.h deleted file mode 100644 index 8e1e916..0000000 --- a/src/levelinfo.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef __NEWER_LEVELINFO_H -#define __NEWER_LEVELINFO_H - -#include <common.h> -#include "fileload.h" - -struct LevelInfo_Header { - u32 magic; - u32 sectionCount; -}; - -struct LevelInfo_Section { - u32 levelCount; -}; - -struct LevelInfo_Entry { - u8 world; - u8 level; - u8 reserved1; - u8 reserved2; - u8 nameLength; - u8 reserved3; - u16 flags; - u32 nameOffset; -}; - -inline u32 LevelInfo_GetSectionCount(void *file) { - return ((LevelInfo_Header*)file)->sectionCount; -} - -inline u32 *LevelInfo_GetOffsets(void *file) { - return (u32*)(((LevelInfo_Header*)file)+1); -} - -inline LevelInfo_Section *LevelInfo_GetSection(void *file, int id) { - u32 offs = LevelInfo_GetOffsets(file)[id]; - return (LevelInfo_Section*)(((char*)file)+offs); -}; - -inline LevelInfo_Entry *LevelInfo_GetLevels(void *file, LevelInfo_Section *section) { - return (LevelInfo_Entry*)(section+1); -} - -inline LevelInfo_Entry *LevelInfo_GetLevels(void *file, int sectionID) { - return (LevelInfo_Entry*)(LevelInfo_GetSection(file, sectionID)+1); -} - -inline char *LevelInfo_GetName(void *file, LevelInfo_Entry *entry) { - return ((char*)file)+entry->nameOffset; -} - -void LevelInfo_Prepare(FileHandle *fh); -LevelInfo_Entry *LevelInfo_Search(void *file, int world, int level); - - -#endif |