typedef struct { char name[MAX_QPATH]; int filepos, filelen; } packfile_t; #define PAK_STORED 0 #define PAK_SHRUNK 1 #define PAK_REDUCED1 2 #define PAK_REDUCED2 3 #define PAK_REDUCED3 4 #define PAK_REDUCED4 5 #define PAK_IMPLODED 6 #define PAK_DEFLATED 7 #define PAK_TOKENIZED 8 typedef struct pack_s { char filename[MAX_OSPATH]; int handle; int numfiles; packfile_t *files; short compression; short flags; } pack_t; // // on disk // typedef struct { char name[56]; int filepos, filelen; } dpackfile_t; typedef struct { char id[4]; int dirofs; int dirlen; } dpackheader_t; #define MAX_FILES_IN_PACK 2048 typedef struct searchpath_s { char filename[MAX_OSPATH]; pack_t *pack; // only one of filename / pack will be used struct searchpath_s *next; } searchpath_t; extern searchpath_t *com_searchpaths;