initscr() does a savetty() call; new curses doesn't have savetty().
[unix-history] / usr / src / games / hack / def.rm.h
CommitLineData
b72f0cc4
KB
1/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
2/* def.rm.h - version 1.0.2 */
3
4/* Level location types */
5#define HWALL 1
6#define VWALL 2
7#define SDOOR 3
8#define SCORR 4
9#define LDOOR 5
10#define POOL 6 /* not yet fully implemented */
11 /* this should in fact be a bit like lit */
12#define DOOR 7
13#define CORR 8
14#define ROOM 9
15#define STAIRS 10
16
17/*
18 * Avoid using the level types in inequalities:
19 * these types are subject to change.
20 * Instead, use one of the macros below.
21 */
22#define IS_WALL(typ) ((typ) <= VWALL)
23#define IS_ROCK(typ) ((typ) < POOL) /* absolutely nonaccessible */
24#define ACCESSIBLE(typ) ((typ) >= DOOR) /* good position */
25#define IS_ROOM(typ) ((typ) >= ROOM) /* ROOM or STAIRS */
26#define ZAP_POS(typ) ((typ) > DOOR)
27
28/*
29 * A few of the associated symbols are not hardwired.
30 */
31#ifdef QUEST
32#define CORR_SYM ':'
33#else
34#define CORR_SYM '#'
35#endif QUEST
36#define POOL_SYM '}'
37
38#define ERRCHAR '{'
39
40/*
41 * The structure describing a coordinate position.
42 * Before adding fields, remember that this will significantly affect
43 * the size of temporary files and save files.
44 */
45struct rm {
46 char scrsym;
47 unsigned typ:5;
48 unsigned new:1;
49 unsigned seen:1;
50 unsigned lit:1;
51};
52extern struct rm levl[COLNO][ROWNO];