… | |
… | |
66 | #define MAX_BUF 1024 /* Used for all kinds of things */ |
66 | #define MAX_BUF 1024 /* Used for all kinds of things */ |
67 | |
67 | |
68 | #define MAX_NAME 48 |
68 | #define MAX_NAME 48 |
69 | |
69 | |
70 | #define ATTUNE_REPELL 16 // levels diff for attune/repell |
70 | #define ATTUNE_REPELL 16 // levels diff for attune/repell |
71 | |
|
|
72 | //TODO: remove all calls to fatal and replace them by cleanup |
|
|
73 | #define OUT_OF_MEMORY 0 |
|
|
74 | #define MAP_ERROR 1 |
|
|
75 | #define ARCHTABLE_TOO_SMALL 2 // unused |
|
|
76 | #define TOO_MANY_ERRORS 3 |
|
|
77 | |
71 | |
78 | /* TYPE DEFINES */ |
72 | /* TYPE DEFINES */ |
79 | |
73 | |
80 | /* Only add new values to this list if somewhere in the program code, |
74 | /* Only add new values to this list if somewhere in the program code, |
81 | * it is actually needed. Just because you add a new monster does not |
75 | * it is actually needed. Just because you add a new monster does not |
… | |
… | |
181 | #define EXIT 66 |
175 | #define EXIT 66 |
182 | #define ENCOUNTER 67 |
176 | #define ENCOUNTER 67 |
183 | #define SHOP_FLOOR 68 |
177 | #define SHOP_FLOOR 68 |
184 | #define SHOP_MAT 69 |
178 | #define SHOP_MAT 69 |
185 | #define RING 70 |
179 | #define RING 70 |
186 | #define FLOOR 71 /* this is a floor tile -> native layer 0 */ |
180 | //#define FLOOR 71 /* this is a floor tile -> native layer 0 */ // UNUSED??? |
187 | #define FLESH 72 /* animal 'body parts' -b.t. */ |
181 | #define FLESH 72 /* animal 'body parts' -b.t. */ |
188 | #define INORGANIC 73 /* metals and minerals */ |
182 | #define INORGANIC 73 /* metals and minerals */ |
189 | #define SKILL_TOOL 74 /* Allows the use of a skill */ |
183 | #define SKILL_TOOL 74 /* Allows the use of a skill */ |
190 | #define LIGHTER 75 |
184 | #define LIGHTER 75 |
191 | //76 |
185 | //76 |
… | |
… | |
286 | |
280 | |
287 | #define NUM_TYPES 166 // must be max(type) + 1 |
281 | #define NUM_TYPES 166 // must be max(type) + 1 |
288 | |
282 | |
289 | /* END TYPE DEFINE */ |
283 | /* END TYPE DEFINE */ |
290 | |
284 | |
|
|
285 | typedef std::bitset<NUM_TYPES> typeset; |
|
|
286 | |
|
|
287 | /* These are the items that currently can change digestion, regeneration, |
|
|
288 | * spell point recovery and mana point recovery. Seems sort of an arbitary |
|
|
289 | * list, but other items store other info into stats array. |
|
|
290 | * As a special exception, bows use stats.sp for their own purposes. |
|
|
291 | */ |
|
|
292 | static const struct digest_types : typeset |
|
|
293 | { |
|
|
294 | digest_types () |
|
|
295 | { |
|
|
296 | set (WEAPON); |
|
|
297 | set (BOW); |
|
|
298 | set (ARMOUR); |
|
|
299 | set (HELMET); |
|
|
300 | set (SHIELD); |
|
|
301 | set (RING); |
|
|
302 | set (BOOTS); |
|
|
303 | set (GLOVES); |
|
|
304 | set (AMULET); |
|
|
305 | set (GIRDLE); |
|
|
306 | set (BRACERS); |
|
|
307 | set (CLOAK); |
|
|
308 | set (DISEASE); |
|
|
309 | set (FORCE); |
|
|
310 | set (SKILL); |
|
|
311 | } |
|
|
312 | } digest_types; |
|
|
313 | |
291 | // maximum supported subtype number + 1, can be increased to 256 |
314 | // maximum supported subtype number + 1, can be increased to 256 |
292 | // currently (2007-09) in use: 50 |
315 | // currently (2007-09) in use: 50 |
293 | #define NUM_SUBTYPES 64 |
316 | #define NUM_SUBTYPES 64 |
294 | |
317 | |
295 | /* Subtypes for BUILDER */ |
318 | /* Subtypes for BUILDER */ |
… | |
… | |
591 | * slow down the game */ |
614 | * slow down the game */ |
592 | #define MAX_DARKNESS 5 /* maximum map darkness, there is no |
615 | #define MAX_DARKNESS 5 /* maximum map darkness, there is no |
593 | * practical reason to exceed this */ |
616 | * practical reason to exceed this */ |
594 | #define LOS_MAX 4 /* max. los value for non-blocked spaces */ |
617 | #define LOS_MAX 4 /* max. los value for non-blocked spaces */ |
595 | #define LOS_BLOCKED 100 /* fully blocked spaces */ |
618 | #define LOS_BLOCKED 100 /* fully blocked spaces */ |
596 | #define BRIGHTNESS(xyz) (xyz)->glow_radius>MAX_LIGHT_RADII? \ |
619 | #define BRIGHTNESS(xyz) (xyz)->glow_radius>MAX_LIGHT_RADII ? \ |
597 | MAX_LIGHT_RADII:(xyz)->glow_radius; |
620 | MAX_LIGHT_RADII : (xyz)->glow_radius; |
598 | // player position in blocked_los code |
621 | // player position in blocked_los code |
599 | #define LOS_X0 (MAP_CLIENT_X / 2 - 1) |
622 | #define LOS_X0 (MAP_CLIENT_X / 2 - 1) |
600 | #define LOS_Y0 (MAP_CLIENT_Y / 2 - 1) |
623 | #define LOS_Y0 (MAP_CLIENT_Y / 2 - 1) |
601 | |
624 | |
602 | |
625 | |