Import v6.12.6 of the Inform 6 standard library
[informlib.git] / linklpa.h
1 ! ==============================================================================
2 !   LINKLPA:  Link declarations of common properties and attributes.
3 !
4 !   Supplied for use with Inform 6 -- Release 6.12.6 -- Serial number 220219
5 !
6 !   Copyright Graham Nelson 1993-2004 and David Griffith 2012-2022
7 !
8 !   This file is free software: you can redistribute it and/or modify
9 !   it under the terms of the GNU Affero General Public License as
10 !   published by the Free Software Foundation, either version 3 of the
11 !   License, or (at your option) any later version.
12 !
13 !   This file is distributed in the hope that it will be useful, but
14 !   WITHOUT ANY WARRANTY; without even the implied warranty of
15 !   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 !   Affero General Public License for more details.
17 !
18 !   You should have received a copy of the GNU Affero General Public
19 !   License along with this program. If not, see
20 !   https://gnu.org/licenses/
21 !
22 !   This file is automatically Included in your game file by "parser".
23 ! ==============================================================================
24
25 System_file;
26
27 ! ------------------------------------------------------------------------------
28 !   Some VM-specific constants.
29 !   (WORDSIZE and TARGET_XXX are defined by the compiler.)
30 ! ------------------------------------------------------------------------------
31
32 #Ifdef TARGET_ZCODE;
33 Constant NULL         = $ffff;
34 Constant WORD_HIGHBIT = $8000;
35 #Ifnot; ! TARGET_GLULX
36 Constant NULL         = $ffffffff;
37 Constant WORD_HIGHBIT = $80000000;
38 #Endif; ! TARGET_
39
40 ! ------------------------------------------------------------------------------
41 !   The common attributes and properties.
42 ! ------------------------------------------------------------------------------
43
44 Attribute animate;
45 Attribute absent;       Attribute non_floating alias absent;
46 Attribute clothing;
47 Attribute concealed;
48 Attribute container;
49 Attribute door;
50 Attribute edible;
51 Attribute enterable;
52 Attribute general;
53 Attribute light;
54 Attribute lockable;
55 Attribute locked;
56 Attribute moved;
57 Attribute on;
58 Attribute open;
59 Attribute openable;
60 Attribute proper;
61 Attribute scenery;
62 Attribute scored;
63 Attribute static;
64 Attribute supporter;
65 Attribute switchable;
66 Attribute talkable;
67 Attribute transparent;
68 Attribute visited;
69 Attribute workflag;
70 Attribute worn;
71
72 Attribute male;
73 Attribute female;
74 Attribute neuter;
75 Attribute pluralname;
76
77 #Ifdef INFIX;
78 #Ifndef infix__watching;
79 Attribute infix__watching;
80 #Endif;
81 #Endif;
82
83 ! ------------------------------------------------------------------------------
84
85 Property additive before NULL;
86 Property additive after  NULL;
87 Property additive life   NULL;
88
89 Property n_to;
90 Property s_to;
91 Property e_to;
92 Property w_to;
93 Property ne_to;
94 Property nw_to;
95 Property se_to;
96 Property sw_to;
97 Property u_to;
98 Property d_to;
99 Property in_to;
100 Property out_to;
101
102 Property door_to;
103 Property with_key;
104 Property door_dir;
105 Property invent;
106 Property plural;
107 Property add_to_scope;
108 Property list_together;
109 Property react_before;
110 Property react_after;
111 Property grammar;
112 Property additive orders;
113
114 Property initial;
115 Property when_open;
116 Property when_closed;
117 Property when_on;
118 Property when_off;
119 Property description;
120 Property additive describe NULL;
121 Property article "a";
122
123 Property cant_go;
124
125 Property found_in;          ! For fiddly reasons this can't alias
126
127 Property time_left;
128 Property number;
129 Property additive time_out NULL;
130 Property daemon;
131 Property additive each_turn NULL;
132
133 Property capacity 100;
134
135 Property short_name 0;
136 Property short_name_indef 0;
137 Property parse_name 0;
138
139 Property articles;
140 Property inside_description;
141
142 ! ==============================================================================