Source:SLASH'EM 0.0.7E7F2/lev.h

Below is the full text to lev.h from the source code of SLASH'EM 0.0.7E7F2. To link to a particular line, write [[SLASH'EM 0.0.7E7F2/lev.h#line123 ]], for example.

The latest source code for vanilla NetHack is at Source code.

1.   /*	SCCS Id: @(#)lev.h	3.4	1994/03/18	*/ 2.   /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ 3.    /* NetHack may be freely redistributed. See license for details. */ 4.     5.    /*	Common include file for save and restore routines */ 6.    7.    #ifndef LEV_H 8.   #define LEV_H 9.    10.   #define COUNT_SAVE	0x1 11.  #define WRITE_SAVE	0x2 12.  #define FREE_SAVE	0x4 13.   14.   /* operations of the various saveXXXchn & co. routines */ 15.  #define perform_bwrite(mode)	((mode) & (COUNT_SAVE|WRITE_SAVE)) 16.  #define release_data(mode)	((mode) & FREE_SAVE) 17.   18.   /* The following are used in mkmaze.c */ 19.  struct container { 20.  	struct container *next; 21.  	xchar x, y;  22. short what; 23.  	genericptr_t list; 24.  };  25.    26.   #define CONS_OBJ   0 27.  #define CONS_MON   1 28.  #define CONS_HERO  2 29.  #define CONS_TRAP  3 30.   31.   struct bubble { 32.  	xchar x, y;	/* coordinates of the upper left corner */ 33.  	schar dx, dy;	/* the general direction of the bubble's movement */ 34.  	uchar *bm;	/* pointer to the bubble bit mask */ 35.  	struct bubble *prev, *next; /* need to traverse the list up and down */ 36.  	struct container *cons; 37.  };  38.    39.   /* used in light.c */ 40.  typedef struct ls_t { 41.      struct ls_t *next; 42.      xchar x, y;		/* source's position */ 43.      short range;	/* source's current range */ 44.      short flags; 45.      short type;		/* type of light source */ 46.      genericptr_t id;	/* source's identifier */ 47.  } light_source; 48.   49.   #endif /* LEV_H */