Source:Lev.h
From Wikihack
(Redirected from Lev.h)
Below is the full text to include/lev.h from NetHack 3.4.3. To link to a particular line, write [[lev.h#line123]], for example.
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.
| The NetHack General Public License applies to screenshots, source code and other content from NetHack. |
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 */
