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: */
45: struct rm {
46: /*
47: KLUDGE: changing scrsym below to `unsigned :8' from `char' cuts the size of
48: the `rm' structure in half
49: */
50: unsigned scrsym:8;
51: unsigned typ:5;
52: unsigned new:1;
53: unsigned seen:1;
54: unsigned lit:1;
55: };
56: extern struct rm levl[COLNO][ROWNO];
Defined struct's
rm
defined in line
45; used 48 times
- in line 56(2)
- in /usr/src/games/hack/hack.Decl.c line
11(2)
- in /usr/src/games/hack/hack.apply.c line
252(2),
360(2)
- in /usr/src/games/hack/hack.c line
20(2),
56(2),
82(2)
- in /usr/src/games/hack/hack.mklev.c line
21(2),
466(2),
617(2)
- in /usr/src/games/hack/hack.mkshop.c line
238(2)
- in /usr/src/games/hack/hack.pri.c line
56(2),
187(2),
225(2),
294(2),
339(2),
394(2),
410(2),
566(2)
- in /usr/src/games/hack/hack.read.c line
328(2)
- in /usr/src/games/hack/hack.vault.c line
40(2),
167(2)
- in /usr/src/games/hack/hack.zap.c line
187(2),
403(2)
Defined macros
CORR
defined in line
13; used 27 times
- in /usr/src/games/hack/hack.apply.c line
295
- in /usr/src/games/hack/hack.mklev.c line
529,
538,
552,
561,
570,
578,
586,
648
- in /usr/src/games/hack/hack.pri.c line
305
- in /usr/src/games/hack/hack.read.c line
341,
455,
474,
502-508(4)
- in /usr/src/games/hack/hack.search.c line
17-20(4),
29,
70
- in /usr/src/games/hack/hack.vault.c line
98,
195,
228
- in /usr/src/games/hack/hack.zap.c line
237
DOOR
defined in line
12; used 32 times
- in line 24-26(2)
- in /usr/src/games/hack/hack.apply.c line
299,
405
- in /usr/src/games/hack/hack.c line
152(2),
162,
254,
275-277(2),
287
- in /usr/src/games/hack/hack.mklev.c line
299,
314-315(4),
334,
346-348(2),
651
- in /usr/src/games/hack/hack.mkshop.c line
240
- in /usr/src/games/hack/hack.mon.c line
504(2)
- in /usr/src/games/hack/hack.read.c line
345,
491
- in /usr/src/games/hack/hack.search.c line
25,
64
- in /usr/src/games/hack/hack.vault.c line
159,
195,
213,
225
- in /usr/src/games/hack/hack.zap.c line
233
HWALL
defined in line
5; used 7 times
LDOOR
defined in line
9; used 3 times
POOL
defined in line
10; used 19 times
ROOM
defined in line
14; used 15 times
SCORR
defined in line
8; used 14 times
SDOOR
defined in line
7; used 14 times
VWALL
defined in line
6; used 6 times
Usage of this include