-
Notifications
You must be signed in to change notification settings - Fork 0
/
w_wad.h
85 lines (62 loc) · 1.28 KB
/
w_wad.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#ifndef __W_WAD__
#define __W_WAD__
typedef struct
{
char identification[4];
int numlumps;
int infotableofs;
} wadinfo_t;
typedef struct
{
int filepos;
int size;
char name[8];
} filelump_t;
typedef enum
{
source_iwad = 0,
source_pre,
source_auto_load,
source_pwad,
source_lmp,
source_net
} wad_source_t;
typedef struct
{
const char *name;
wad_source_t src;
int handle;
} wadfile_info_t;
typedef struct
{
char name[9];
int size;
int index;
int next;
enum
{
ns_global = 0,
ns_sprites,
ns_flats,
ns_prboom
} li_namespace;
wadfile_info_t *wadfile;
int position;
wad_source_t source;
} lumpinfo_t;
extern wadfile_info_t *wadfiles;
extern unsigned int numwadfiles;
extern lumpinfo_t *lumpinfo;
extern int numlumps;
int W_CheckNumForName(const char *name, int);
int W_GetNumForName(const char *name);
int W_LumpLength(int lump);
void W_ReadLump(int lump, void *dest);
const void *W_CacheLumpNum(int lump);
const void *W_LockLumpNum(int lump);
void W_UnlockLumpNum(int lump);
unsigned W_LumpNameHash(const char *s);
void W_Init(void);
#define W_CacheLumpName(name) W_CacheLumpNum(W_GetNumForName(name))
#define W_UnlockLumpName(name) W_UnlockLumpNum(W_GetNumForName(name))
#endif