Wikia

Wikihack

Source:NetHack 3.3.0/dgn file.h

2,032pages on
this wiki
Talk0

Below is the full text to dgn_file.h from the source code of NetHack 3.3.0. To link to a particular line, write [[NetHack 3.3.0/dgn_file.h#line123]], for example.

Warning! This is the source code from an old release. For the latest release, see Source code

The NetHack General Public License applies to screenshots, source code and other content from NetHack.
1.    /*	SCCS Id: @(#)dgn_file.h 3.3	93/01/17	*/
2.    /* Copyright (c) 1989 by M. Stephenson				  */
3.    /* NetHack may be freely redistributed.  See license for details. */
4.    
5.    #ifndef DGN_FILE_H
6.    #define DGN_FILE_H
7.    
8.    #ifndef ALIGN_H
9.    #include "align.h"
10.   #endif
11.   
12.   /*
13.    * Structures manipulated by the dungeon loader & compiler
14.    */
15.   
16.   struct	couple {
17.   	short	base, rand;
18.   };
19.   
20.   struct tmpdungeon {
21.   	char	name[24],
22.   		protoname[24];
23.   	struct	couple	lev;
24.   	int	flags,
25.   		chance,
26.   		levels,
27.   		branches,
28.   		entry_lev;		/* entry level for this dungeon */
29.   	char	boneschar;
30.   };
31.   
32.   struct tmplevel {
33.   	char	name[24];
34.   	struct	couple	lev;
35.   	int	chance, rndlevs, chain, flags;
36.   	char	boneschar;
37.   };
38.   
39.   struct tmpbranch {
40.   	char	name[24];	/* destination dungeon name */
41.   	struct	couple	lev;
42.   	int	chain;		/* index into tmplevel array (chained branch)*/
43.   	int	type;		/* branch type (see below) */
44.   	int	up;		/* branch is up or down */
45.   };
46.   
47.   /*
48.    *	Values for type for tmpbranch structure.
49.    */
50.   #define TBR_STAIR   0	/* connection with both ends having a staircase */
51.   #define TBR_NO_UP   1	/* connection with no up staircase */
52.   #define TBR_NO_DOWN 2	/* connection with no down staircase */
53.   #define TBR_PORTAL  3	/* portal connection */
54.   
55.   /*
56.    *	Flags that map into the dungeon flags bitfields.
57.    */
58.   #define TOWN	    1	/* levels only */
59.   #define HELLISH     2
60.   #define MAZELIKE    4
61.   #define ROGUELIKE   8
62.   
63.   #define D_ALIGN_NONE	0
64.   #define D_ALIGN_CHAOTIC	(AM_CHAOTIC << 4)
65.   #define D_ALIGN_NEUTRAL	(AM_NEUTRAL << 4)
66.   #define D_ALIGN_LAWFUL	(AM_LAWFUL << 4)
67.   
68.   #define D_ALIGN_MASK	0x70
69.   
70.   /*
71.    *	Max number of prototype levels and branches.
72.    */
73.   #define LEV_LIMIT	50
74.   #define BRANCH_LIMIT	32
75.   
76.   #endif /* DGN_FILE_H */

Around Wikia's network

Random Wiki