マクロ定義 | |
#define | CONSTANT_H_INCLUDED |
#define | CUR_VERSION_MAJ 5 /* version 5.5 */ |
#define | CUR_VERSION_MIN 5 |
#define | PATCH_LEVEL 0 |
#define | TRUE 1 |
#define | FALSE 0 |
#define | MAX_UCHAR 255 |
#define | MAX_SHORT 32767 /* maximum short/long signed ints */ |
#define | MAX_LONG 0x7FFFFFFFL |
#define | MSG_LINE 0 |
#define | MAX_SAVE_MSG 22 /* How many messages to save -CJS- */ |
#define | MAX_HEIGHT 66 /* Multiple of 11; >= 22 */ |
#define | MAX_WIDTH 198 /* Multiple of 33; >= 66 */ |
#define | SCREEN_HEIGHT 22 |
#define | SCREEN_WIDTH 66 |
#define | QUART_HEIGHT (SCREEN_HEIGHT / 4) |
#define | QUART_WIDTH (SCREEN_WIDTH / 4) |
#define | DUN_TUN_RND 9 /* 1/Chance of Random direction */ |
#define | DUN_TUN_CHG 70 /* Chance of changing direction (99 max) */ |
#define | DUN_TUN_CON 15 /* Chance of extra tunneling */ |
#define | DUN_ROO_MEA 32 /* Mean of # of rooms, standard dev2 */ |
#define | DUN_TUN_PEN 25 /* % chance of room doors */ |
#define | DUN_TUN_JCT 15 /* % chance of doors at tunnel junctions */ |
#define | DUN_STR_DEN 5 /* Density of streamers */ |
#define | DUN_STR_RNG 2 /* Width of streamers */ |
#define | DUN_STR_MAG 3 /* Number of magma streamers */ |
#define | DUN_STR_MC 90 /* 1/x chance of treasure per magma */ |
#define | DUN_STR_QUA 2 /* Number of quartz streamers */ |
#define | DUN_STR_QC 40 /* 1/x chance of treasure per quartz */ |
#define | DUN_UNUSUAL 300 /* Level/x chance of unusual room */ |
#define | MAX_OWNERS 18 /* Number of owners to choose from */ |
#define | MAX_STORES 6 /* Number of different stores */ |
#define | STORE_INVEN_MAX 24 /* Max number of discrete objs in inven */ |
#define | STORE_CHOICES 26 /* NUMBER of items to choose stock from */ |
#define | STORE_MAX_INVEN 18 /* Max diff objs in stock for auto buy */ |
#define | STORE_MIN_INVEN 10 /* Min diff objs in stock for auto sell */ |
#define | STORE_TURN_AROUND 9 /* Amount of buying and selling normally */ |
#define | COST_ADJ 100 /* Adjust prices for buying and selling */ |
#define | INVEN_ARRAY_SIZE 34 /* Size of inventory array(Do not change)*/ |
#define | MAX_OBJ_LEVEL 50 /* Maximum level of magic in dungeon */ |
#define | OBJ_GREAT 12 /* 1/n Chance of item being a Great Item */ |
#define | MAX_OBJECTS 420 /* Number of objects for universe */ |
#define | MAX_DUNGEON_OBJ 344 /* Number of dungeon objects */ |
#define | OBJ_OPEN_DOOR 367 |
#define | OBJ_CLOSED_DOOR 368 |
#define | OBJ_SECRET_DOOR 369 |
#define | OBJ_UP_STAIR 370 |
#define | OBJ_DOWN_STAIR 371 |
#define | OBJ_STORE_DOOR 372 |
#define | OBJ_TRAP_LIST 378 |
#define | OBJ_RUBBLE 396 |
#define | OBJ_MUSH 397 |
#define | OBJ_SCARE_MON 398 |
#define | OBJ_GOLD_LIST 399 |
#define | OBJ_NOTHING 417 |
#define | OBJ_RUINED_CHEST 418 |
#define | OBJ_WIZARD 419 |
#define | OBJECT_IDENT_SIZE |
#define | MAX_GOLD 18 /* Number of different types of gold */ |
#define | MAX_TALLOC 175 /* Max objects per level */ |
#define | MIN_TRIX 1 /* Minimum t_list index used */ |
#define | TREAS_ROOM_ALLOC 7 /* Amount of objects for rooms */ |
#define | TREAS_ANY_ALLOC 2 /* Amount of objects for corridors */ |
#define | TREAS_GOLD_ALLOC 2 /* Amount of gold (and gems) */ |
#define | OBJ_STD_ADJ 125 /* Adjust STD per level * 100 */ |
#define | OBJ_STD_MIN 7 /* Minimum STD */ |
#define | OBJ_TOWN_LEVEL 7 /* Town object generation level */ |
#define | OBJ_BASE_MAGIC 15 /* Base amount of magic */ |
#define | OBJ_BASE_MAX 70 /* Max amount of magic */ |
#define | OBJ_DIV_SPECIAL 6 /* magic_chance/# special magic */ |
#define | OBJ_DIV_CURSED 13 /* 10*magic_chance/# cursed items */ |
#define | OBJ_LAMP_MAX 15000 /* Maximum amount that lamp can be filled*/ |
#define | OBJ_BOLT_RANGE 18 /* Maximum range of bolts and balls */ |
#define | OBJ_RUNE_PROT 3000 /* Rune of protection resistance */ |
#define | MAX_CREATURES 279 /* Number of creatures defined for univ */ |
#define | N_MONS_ATTS 215 /* Number of monster attack types. */ |
#define | MAX_MALLOC 125 /* Max that can be allocated */ |
#define | MAX_MALLOC_CHANCE 160 /* 1/x chance of new monster each round */ |
#define | MAX_MONS_LEVEL 40 /* Maximum level of creatures */ |
#define | MAX_SIGHT 20 /* Maximum dis a creature can be seen */ |
#define | MAX_SPELL_DIS 20 /* Maximum dis creat. spell can be cast */ |
#define | MAX_MON_MULT 75 /* Maximum reproductions on a level */ |
#define | MON_MULT_ADJ 7 /* High value slows multiplication */ |
#define | MON_NASTY 50 /* 1/x chance of high level creat */ |
#define | MIN_MALLOC_LEVEL 14 /* Minimum number of monsters/level */ |
#define | MIN_MALLOC_TD 4 /* Number of people on town level (day) */ |
#define | MIN_MALLOC_TN 8 /* Number of people on town level (night)*/ |
#define | WIN_MON_TOT 2 /* Total number of "win" creatures */ |
#define | WIN_MON_APPEAR 50 /* Level where winning creatures begin */ |
#define | MON_SUMMON_ADJ 2 /* Adjust level of summoned creatures */ |
#define | MON_DRAIN_LIFE 2 /* Percent of player exp drained per hit */ |
#define | MAX_MON_NATTACK 4 /* Max num attacks (used in mons memory) -CJS-*/ |
#define | MIN_MONIX 2 /* Minimum index in m_list (1 = py, 0 = no mon)*/ |
#define | MAX_TRAP 18 /* Number of defined traps */ |
#define | SCARE_MONSTER 99 |
#define | MAX_COLORS 49 /* Used with potions */ |
#define | MAX_MUSH 22 /* Used with mushrooms */ |
#define | MAX_WOODS 25 /* Used with staffs */ |
#define | MAX_METALS 25 /* Used with wands */ |
#define | MAX_ROCKS 32 /* Used with rings */ |
#define | MAX_AMULETS 11 /* Used with amulets */ |
#define | MAX_TITLES 45 /* Used with scrolls */ |
#define | MAX_SYLLABLES 153 /* Used with scrolls */ |
#define | MAX_PLAYER_LEVEL 40 /* Maximum possible character level */ |
#define | MAX_EXP 9999999L /* Maximum amount of experience -CJS- */ |
#define | MAX_RACES 8 /* Number of defined races */ |
#define | MAX_CLASS 6 /* Number of defined classes */ |
#define | USE_DEVICE 3 /* x> Harder devices x< Easier devices */ |
#define | MAX_BACKGROUND 128 /* Number of types of histories for univ */ |
#define | PLAYER_FOOD_FULL 10000/* Getting full */ |
#define | PLAYER_FOOD_MAX 15000/* Maximum food value, beyond is wasted */ |
#define | PLAYER_FOOD_FAINT 300/* Character begins fainting */ |
#define | PLAYER_FOOD_WEAK 1000/* Warn player that he is getting very low*/ |
#define | PLAYER_FOOD_ALERT 2000/* Warn player that he is getting low */ |
#define | PLAYER_REGEN_FAINT 33 /* Regen factor*2^16 when fainting */ |
#define | PLAYER_REGEN_WEAK 98 /* Regen factor*2^16 when weak */ |
#define | PLAYER_REGEN_NORMAL 197 /* Regen factor*2^16 when full */ |
#define | PLAYER_REGEN_HPBASE 1442 /* Min amount hp regen*2^16 */ |
#define | PLAYER_REGEN_MNBASE 524 /* Min amount mana regen*2^16 */ |
#define | PLAYER_WEIGHT_CAP 130 /* "#"*(1/10 pounds) per strength point */ |
#define | PLAYER_EXIT_PAUSE 2 /* Pause time before player can re-roll */ |
#define | CLA_BTH 0 |
#define | CLA_BTHB 1 |
#define | CLA_DEVICE 2 |
#define | CLA_DISARM 3 |
#define | CLA_SAVE 4 |
#define | CLA_MISC_HIT 4 |
#define | MAX_LEV_ADJ 5 |
#define | BTH_PLUS_ADJ 3 /* Adjust BTH per plus-to-hit */ |
#define | INVEN_WIELD 22 /* must be first item in equipment list */ |
#define | INVEN_HEAD 23 |
#define | INVEN_NECK 24 |
#define | INVEN_BODY 25 |
#define | INVEN_ARM 26 |
#define | INVEN_HANDS 27 |
#define | INVEN_RIGHT 28 |
#define | INVEN_LEFT 29 |
#define | INVEN_FEET 30 |
#define | INVEN_OUTER 31 |
#define | INVEN_LIGHT 32 |
#define | INVEN_AUX 33 |
#define | A_STR 0 |
#define | A_INT 1 |
#define | A_WIS 2 |
#define | A_DEX 3 |
#define | A_CON 4 |
#define | A_CHR 5 |
#define | CTRL(x) (x & 0x1F) |
#define | DELETE 0x7f |
#define | ESCAPE '\033' /* ESCAPE character -CJS- */ |
#define | CNIL (char *)0 |
#define | NULL_WALL 0 |
#define | DARK_FLOOR 1 |
#define | LIGHT_FLOOR 2 |
#define | MAX_CAVE_ROOM 2 |
#define | CORR_FLOOR 3 |
#define | BLOCKED_FLOOR 4 /* a corridor space with cl/st/se door or rubble */ |
#define | MAX_CAVE_FLOOR 4 |
#define | MAX_OPEN_SPACE 3 |
#define | MIN_CLOSED_SPACE 4 |
#define | TMP1_WALL 8 |
#define | TMP2_WALL 9 |
#define | MIN_CAVE_WALL 12 |
#define | GRANITE_WALL 12 |
#define | MAGMA_WALL 13 |
#define | QUARTZ_WALL 14 |
#define | BOUNDARY_WALL 15 |
#define | STAT_COLUMN 0 |
#define | NONE 0 |
#define | MAGE 1 |
#define | PRIEST 2 |
#define | SPELL_OFFSET 0 |
#define | PRAYER_OFFSET 31 |
#define | NORMAL_TABLE_SIZE 256 |
#define | NORMAL_TABLE_SD 64 /* the standard deviation for the table */ |
#define | PY_HUNGRY 0x00000001L |
#define | PY_WEAK 0x00000002L |
#define | PY_BLIND 0x00000004L |
#define | PY_CONFUSED 0x00000008L |
#define | PY_FEAR 0x00000010L |
#define | PY_POISONED 0x00000020L |
#define | PY_FAST 0x00000040L |
#define | PY_SLOW 0x00000080L |
#define | PY_SEARCH 0x00000100L |
#define | PY_REST 0x00000200L |
#define | PY_STUDY 0x00000400L |
#define | PY_INVULN 0x00001000L |
#define | PY_HERO 0x00002000L |
#define | PY_SHERO 0x00004000L |
#define | PY_BLESSED 0x00008000L |
#define | PY_DET_INV 0x00010000L |
#define | PY_TIM_INFRA 0x00020000L |
#define | PY_SPEED 0x00040000L |
#define | PY_STR_WGT 0x00080000L |
#define | PY_PARALYSED 0x00100000L |
#define | PY_REPEAT 0x00200000L |
#define | PY_ARMOR 0x00400000L |
#define | PY_STATS 0x3F000000L |
#define | PY_STR 0x01000000L /* these 6 stat flags must be adjacent */ |
#define | PY_INT 0x02000000L |
#define | PY_WIS 0x04000000L |
#define | PY_DEX 0x08000000L |
#define | PY_CON 0x10000000L |
#define | PY_CHR 0x20000000L |
#define | PY_HP 0x40000000L |
#define | PY_MANA 0x80000000L |
#define | TR_STATS 0x0000003FL /* the stats must be the low 6 bits */ |
#define | TR_STR 0x00000001L |
#define | TR_INT 0x00000002L |
#define | TR_WIS 0x00000004L |
#define | TR_DEX 0x00000008L |
#define | TR_CON 0x00000010L |
#define | TR_CHR 0x00000020L |
#define | TR_SEARCH 0x00000040L |
#define | TR_SLOW_DIGEST 0x00000080L |
#define | TR_STEALTH 0x00000100L |
#define | TR_AGGRAVATE 0x00000200L |
#define | TR_TELEPORT 0x00000400L |
#define | TR_REGEN 0x00000800L |
#define | TR_SPEED 0x00001000L |
#define | TR_EGO_WEAPON 0x0007E000L |
#define | TR_SLAY_DRAGON 0x00002000L |
#define | TR_SLAY_ANIMAL 0x00004000L |
#define | TR_SLAY_EVIL 0x00008000L |
#define | TR_SLAY_UNDEAD 0x00010000L |
#define | TR_FROST_BRAND 0x00020000L |
#define | TR_FLAME_TONGUE 0x00040000L |
#define | TR_RES_FIRE 0x00080000L |
#define | TR_RES_ACID 0x00100000L |
#define | TR_RES_COLD 0x00200000L |
#define | TR_SUST_STAT 0x00400000L |
#define | TR_FREE_ACT 0x00800000L |
#define | TR_SEE_INVIS 0x01000000L |
#define | TR_RES_LIGHT 0x02000000L |
#define | TR_FFALL 0x04000000L |
#define | TR_BLIND 0x08000000L |
#define | TR_TIMID 0x10000000L |
#define | TR_TUNNEL 0x20000000L |
#define | TR_INFRA 0x40000000L |
#define | TR_CURSED 0x80000000L |
#define | CH_LOCKED 0x00000001L |
#define | CH_TRAPPED 0x000001F0L |
#define | CH_LOSE_STR 0x00000010L |
#define | CH_POISON 0x00000020L |
#define | CH_PARALYSED 0x00000040L |
#define | CH_EXPLODE 0x00000080L |
#define | CH_SUMMON 0x00000100L |
#define | CM_ALL_MV_FLAGS 0x0000003FL |
#define | CM_ATTACK_ONLY 0x00000001L |
#define | CM_MOVE_NORMAL 0x00000002L |
#define | CM_ONLY_MAGIC 0x00000004L |
#define | CM_RANDOM_MOVE 0x00000038L |
#define | CM_20_RANDOM 0x00000008L |
#define | CM_40_RANDOM 0x00000010L |
#define | CM_75_RANDOM 0x00000020L |
#define | CM_SPECIAL 0x003F0000L |
#define | CM_INVISIBLE 0x00010000L |
#define | CM_OPEN_DOOR 0x00020000L |
#define | CM_PHASE 0x00040000L |
#define | CM_EATS_OTHER 0x00080000L |
#define | CM_PICKS_UP 0x00100000L |
#define | CM_MULTIPLY 0x00200000L |
#define | CM_CARRY_OBJ 0x01000000L |
#define | CM_CARRY_GOLD 0x02000000L |
#define | CM_TREASURE 0x7C000000L |
#define | CM_TR_SHIFT 26 /* used for recall of treasure */ |
#define | CM_60_RANDOM 0x04000000L |
#define | CM_90_RANDOM 0x08000000L |
#define | CM_1D2_OBJ 0x10000000L |
#define | CM_2D2_OBJ 0x20000000L |
#define | CM_4D2_OBJ 0x40000000L |
#define | CM_WIN 0x80000000L |
#define | CS_FREQ 0x0000000FL |
#define | CS_SPELLS 0x0001FFF0L |
#define | CS_TEL_SHORT 0x00000010L |
#define | CS_TEL_LONG 0x00000020L |
#define | CS_TEL_TO 0x00000040L |
#define | CS_LGHT_WND 0x00000080L |
#define | CS_SER_WND 0x00000100L |
#define | CS_HOLD_PER 0x00000200L |
#define | CS_BLIND 0x00000400L |
#define | CS_CONFUSE 0x00000800L |
#define | CS_FEAR 0x00001000L |
#define | CS_SUMMON_MON 0x00002000L |
#define | CS_SUMMON_UND 0x00004000L |
#define | CS_SLOW_PER 0x00008000L |
#define | CS_DRAIN_MANA 0x00010000L |
#define | CS_BREATHE 0x00F80000L |
#define | CS_BR_LIGHT 0x00080000L |
#define | CS_BR_GAS 0x00100000L |
#define | CS_BR_ACID 0x00200000L |
#define | CS_BR_FROST 0x00400000L |
#define | CS_BR_FIRE 0x00800000L |
#define | CD_DRAGON 0x0001 |
#define | CD_ANIMAL 0x0002 |
#define | CD_EVIL 0x0004 |
#define | CD_UNDEAD 0x0008 |
#define | CD_WEAKNESS 0x03F0 |
#define | CD_FROST 0x0010 |
#define | CD_FIRE 0x0020 |
#define | CD_POISON 0x0040 |
#define | CD_ACID 0x0080 |
#define | CD_LIGHT 0x0100 |
#define | CD_STONE 0x0200 |
#define | CD_NO_SLEEP 0x1000 |
#define | CD_INFRA 0x2000 |
#define | CD_MAX_HP 0x4000 |
#define | ITEM_NEVER_STACK_MIN 0 |
#define | ITEM_NEVER_STACK_MAX 63 |
#define | ITEM_SINGLE_STACK_MIN 64 |
#define | ITEM_SINGLE_STACK_MAX 192 /* see NOTE below */ |
#define | ITEM_GROUP_MIN 192 |
#define | ITEM_GROUP_MAX 255 |
#define | OD_TRIED 0x1 |
#define | OD_KNOWN1 0x2 |
#define | ID_MAGIK 0x1 |
#define | ID_DAMD 0x2 |
#define | ID_EMPTY 0x4 |
#define | ID_KNOWN2 0x8 |
#define | ID_STOREBOUGHT 0x10 |
#define | ID_SHOW_HITDAM 0x20 |
#define | ID_NOSHOW_P1 0x40 |
#define | ID_SHOW_P1 0x80 |
#define | SN_NULL 0 |
#define | SN_R 1 |
#define | SN_RA 2 |
#define | SN_RF 3 |
#define | SN_RC 4 |
#define | SN_RL 5 |
#define | SN_HA 6 |
#define | SN_DF 7 |
#define | SN_SA 8 |
#define | SN_SD 9 |
#define | SN_SE 10 |
#define | SN_SU 11 |
#define | SN_FT 12 |
#define | SN_FB 13 |
#define | SN_FREE_ACTION 14 |
#define | SN_SLAYING 15 |
#define | SN_CLUMSINESS 16 |
#define | SN_WEAKNESS 17 |
#define | SN_SLOW_DESCENT 18 |
#define | SN_SPEED 19 |
#define | SN_STEALTH 20 |
#define | SN_SLOWNESS 21 |
#define | SN_NOISE 22 |
#define | SN_GREAT_MASS 23 |
#define | SN_INTELLIGENCE 24 |
#define | SN_WISDOM 25 |
#define | SN_INFRAVISION 26 |
#define | SN_MIGHT 27 |
#define | SN_LORDLINESS 28 |
#define | SN_MAGI 29 |
#define | SN_BEAUTY 30 |
#define | SN_SEEING 31 |
#define | SN_REGENERATION 32 |
#define | SN_STUPIDITY 33 |
#define | SN_DULLNESS 34 |
#define | SN_BLINDNESS 35 |
#define | SN_TIMIDNESS 36 |
#define | SN_TELEPORTATION 37 |
#define | SN_UGLINESS 38 |
#define | SN_PROTECTION 39 |
#define | SN_IRRITATION 40 |
#define | SN_VULNERABILITY 41 |
#define | SN_ENVELOPING 42 |
#define | SN_FIRE 43 |
#define | SN_SLAY_EVIL 44 |
#define | SN_DRAGON_SLAYING 45 |
#define | SN_EMPTY 46 |
#define | SN_LOCKED 47 |
#define | SN_POISON_NEEDLE 48 |
#define | SN_GAS_TRAP 49 |
#define | SN_EXPLOSION_DEVICE 50 |
#define | SN_SUMMONING_RUNES 51 |
#define | SN_MULTIPLE_TRAPS 52 |
#define | SN_DISARMED 53 |
#define | SN_UNLOCKED 54 |
#define | SN_SLAY_ANIMAL 55 |
#define | SN_ARRAY_SIZE 56 /* must be at end of this list */ |
#define | TV_NEVER -1 /* used by find_range() for non-search */ |
#define | TV_NOTHING 0 |
#define | TV_MISC 1 |
#define | TV_CHEST 2 |
#define | TV_MIN_WEAR 10 |
#define | TV_MIN_ENCHANT 10 |
#define | TV_SLING_AMMO 10 |
#define | TV_BOLT 11 |
#define | TV_ARROW 12 |
#define | TV_SPIKE 13 |
#define | TV_LIGHT 15 |
#define | TV_BOW 20 |
#define | TV_HAFTED 21 |
#define | TV_POLEARM 22 |
#define | TV_SWORD 23 |
#define | TV_DIGGING 25 |
#define | TV_BOOTS 30 |
#define | TV_GLOVES 31 |
#define | TV_CLOAK 32 |
#define | TV_HELM 33 |
#define | TV_SHIELD 34 |
#define | TV_HARD_ARMOR 35 |
#define | TV_SOFT_ARMOR 36 |
#define | TV_MAX_ENCHANT 39 |
#define | TV_AMULET 40 |
#define | TV_RING 45 |
#define | TV_MAX_WEAR 50 |
#define | TV_STAFF 55 |
#define | TV_WAND 65 |
#define | TV_SCROLL1 70 |
#define | TV_SCROLL2 71 |
#define | TV_POTION1 75 |
#define | TV_POTION2 76 |
#define | TV_FLASK 77 |
#define | TV_FOOD 80 |
#define | TV_MAGIC_BOOK 90 |
#define | TV_PRAYER_BOOK 91 |
#define | TV_MAX_OBJECT 99 |
#define | TV_GOLD 100 |
#define | TV_MAX_PICK_UP 100 |
#define | TV_INVIS_TRAP 101 |
#define | TV_MIN_VISIBLE 102 |
#define | TV_VIS_TRAP 102 |
#define | TV_RUBBLE 103 |
#define | TV_MIN_DOORS 104 |
#define | TV_OPEN_DOOR 104 |
#define | TV_CLOSED_DOOR 105 |
#define | TV_UP_STAIR 107 |
#define | TV_DOWN_STAIR 108 |
#define | TV_SECRET_DOOR 109 |
#define | TV_STORE_DOOR 110 |
#define | TV_MAX_VISIBLE 110 |
#define | GF_MAGIC_MISSILE 0 |
#define | GF_LIGHTNING 1 |
#define | GF_POISON_GAS 2 |
#define | GF_ACID 3 |
#define | GF_FROST 4 |
#define | GF_FIRE 5 |
#define | GF_HOLY_ORB 6 |
#define | SCOREFILE_SIZE 1000 |
変数 | |
Constant h should always be included after config | h |
#define A_CHR 5 |
#define A_CON 4 |
#define A_DEX 3 |
#define A_INT 1 |
#define A_STR 0 |
#define A_WIS 2 |
#define BLOCKED_FLOOR 4 /* a corridor space with cl/st/se door or rubble */ |
#define BOUNDARY_WALL 15 |
#define BTH_PLUS_ADJ 3 /* Adjust BTH per plus-to-hit */ |
#define CD_ACID 0x0080 |
#define CD_ANIMAL 0x0002 |
#define CD_DRAGON 0x0001 |
#define CD_EVIL 0x0004 |
#define CD_FIRE 0x0020 |
#define CD_FROST 0x0010 |
#define CD_INFRA 0x2000 |
#define CD_LIGHT 0x0100 |
#define CD_MAX_HP 0x4000 |
#define CD_NO_SLEEP 0x1000 |
#define CD_POISON 0x0040 |
#define CD_STONE 0x0200 |
#define CD_UNDEAD 0x0008 |
#define CD_WEAKNESS 0x03F0 |
#define CH_EXPLODE 0x00000080L |
#define CH_LOCKED 0x00000001L |
#define CH_LOSE_STR 0x00000010L |
#define CH_PARALYSED 0x00000040L |
#define CH_POISON 0x00000020L |
#define CH_SUMMON 0x00000100L |
#define CH_TRAPPED 0x000001F0L |
#define CLA_BTH 0 |
#define CLA_BTHB 1 |
#define CLA_DEVICE 2 |
#define CLA_DISARM 3 |
#define CLA_MISC_HIT 4 |
#define CLA_SAVE 4 |
#define CM_1D2_OBJ 0x10000000L |
#define CM_20_RANDOM 0x00000008L |
#define CM_2D2_OBJ 0x20000000L |
#define CM_40_RANDOM 0x00000010L |
#define CM_4D2_OBJ 0x40000000L |
#define CM_60_RANDOM 0x04000000L |
#define CM_75_RANDOM 0x00000020L |
#define CM_90_RANDOM 0x08000000L |
#define CM_ALL_MV_FLAGS 0x0000003FL |
#define CM_ATTACK_ONLY 0x00000001L |
#define CM_CARRY_GOLD 0x02000000L |
#define CM_CARRY_OBJ 0x01000000L |
#define CM_EATS_OTHER 0x00080000L |
#define CM_INVISIBLE 0x00010000L |
#define CM_MOVE_NORMAL 0x00000002L |
#define CM_MULTIPLY 0x00200000L |
#define CM_ONLY_MAGIC 0x00000004L |
#define CM_OPEN_DOOR 0x00020000L |
#define CM_PHASE 0x00040000L |
#define CM_PICKS_UP 0x00100000L |
#define CM_RANDOM_MOVE 0x00000038L |
#define CM_SPECIAL 0x003F0000L |
#define CM_TR_SHIFT 26 /* used for recall of treasure */ |
#define CM_TREASURE 0x7C000000L |
#define CM_WIN 0x80000000L |
#define CNIL (char *)0 |
#define CONSTANT_H_INCLUDED |
#define CORR_FLOOR 3 |
#define COST_ADJ 100 /* Adjust prices for buying and selling */ |
#define CS_BLIND 0x00000400L |
#define CS_BR_ACID 0x00200000L |
#define CS_BR_FIRE 0x00800000L |
#define CS_BR_FROST 0x00400000L |
#define CS_BR_GAS 0x00100000L |
#define CS_BR_LIGHT 0x00080000L |
#define CS_BREATHE 0x00F80000L |
#define CS_CONFUSE 0x00000800L |
#define CS_DRAIN_MANA 0x00010000L |
#define CS_FEAR 0x00001000L |
#define CS_FREQ 0x0000000FL |
#define CS_HOLD_PER 0x00000200L |
#define CS_LGHT_WND 0x00000080L |
#define CS_SER_WND 0x00000100L |
#define CS_SLOW_PER 0x00008000L |
#define CS_SPELLS 0x0001FFF0L |
#define CS_SUMMON_MON 0x00002000L |
#define CS_SUMMON_UND 0x00004000L |
#define CS_TEL_LONG 0x00000020L |
#define CS_TEL_SHORT 0x00000010L |
#define CS_TEL_TO 0x00000040L |
#define CTRL | ( | x | ) | (x & 0x1F) |
#define CUR_VERSION_MAJ 5 /* version 5.5 */ |
#define CUR_VERSION_MIN 5 |
#define DARK_FLOOR 1 |
#define DELETE 0x7f |
#define DUN_ROO_MEA 32 /* Mean of # of rooms, standard dev2 */ |
#define DUN_STR_DEN 5 /* Density of streamers */ |
#define DUN_STR_MAG 3 /* Number of magma streamers */ |
#define DUN_STR_MC 90 /* 1/x chance of treasure per magma */ |
#define DUN_STR_QC 40 /* 1/x chance of treasure per quartz */ |
#define DUN_STR_QUA 2 /* Number of quartz streamers */ |
#define DUN_STR_RNG 2 /* Width of streamers */ |
#define DUN_TUN_CHG 70 /* Chance of changing direction (99 max) */ |
#define DUN_TUN_CON 15 /* Chance of extra tunneling */ |
#define DUN_TUN_JCT 15 /* % chance of doors at tunnel junctions */ |
#define DUN_TUN_PEN 25 /* % chance of room doors */ |
#define DUN_TUN_RND 9 /* 1/Chance of Random direction */ |
#define DUN_UNUSUAL 300 /* Level/x chance of unusual room */ |
#define ESCAPE '\033' /* ESCAPE character -CJS- */ |
#define FALSE 0 |
#define GF_ACID 3 |
#define GF_FIRE 5 |
#define GF_FROST 4 |
#define GF_HOLY_ORB 6 |
#define GF_LIGHTNING 1 |
#define GF_MAGIC_MISSILE 0 |
#define GF_POISON_GAS 2 |
#define GRANITE_WALL 12 |
#define ID_DAMD 0x2 |
#define ID_EMPTY 0x4 |
#define ID_KNOWN2 0x8 |
#define ID_MAGIK 0x1 |
#define ID_NOSHOW_P1 0x40 |
#define ID_SHOW_HITDAM 0x20 |
#define ID_SHOW_P1 0x80 |
#define ID_STOREBOUGHT 0x10 |
#define INVEN_ARM 26 |
#define INVEN_ARRAY_SIZE 34 /* Size of inventory array(Do not change)*/ |
#define INVEN_AUX 33 |
#define INVEN_BODY 25 |
#define INVEN_FEET 30 |
#define INVEN_HANDS 27 |
#define INVEN_HEAD 23 |
#define INVEN_LEFT 29 |
#define INVEN_LIGHT 32 |
#define INVEN_NECK 24 |
#define INVEN_OUTER 31 |
#define INVEN_RIGHT 28 |
#define INVEN_WIELD 22 /* must be first item in equipment list */ |
#define ITEM_GROUP_MAX 255 |
#define ITEM_GROUP_MIN 192 |
#define ITEM_NEVER_STACK_MAX 63 |
#define ITEM_NEVER_STACK_MIN 0 |
#define ITEM_SINGLE_STACK_MAX 192 /* see NOTE below */ |
#define ITEM_SINGLE_STACK_MIN 64 |
#define LIGHT_FLOOR 2 |
#define MAGE 1 |
#define MAGMA_WALL 13 |
#define MAX_AMULETS 11 /* Used with amulets */ |
#define MAX_BACKGROUND 128 /* Number of types of histories for univ */ |
#define MAX_CAVE_FLOOR 4 |
#define MAX_CAVE_ROOM 2 |
#define MAX_CLASS 6 /* Number of defined classes */ |
#define MAX_COLORS 49 /* Used with potions */ |
#define MAX_CREATURES 279 /* Number of creatures defined for univ */ |
#define MAX_DUNGEON_OBJ 344 /* Number of dungeon objects */ |
#define MAX_EXP 9999999L /* Maximum amount of experience -CJS- */ |
#define MAX_GOLD 18 /* Number of different types of gold */ |
#define MAX_HEIGHT 66 /* Multiple of 11; >= 22 */ |
#define MAX_LEV_ADJ 5 |
#define MAX_LONG 0x7FFFFFFFL |
#define MAX_MALLOC 125 /* Max that can be allocated */ |
#define MAX_MALLOC_CHANCE 160 /* 1/x chance of new monster each round */ |
#define MAX_METALS 25 /* Used with wands */ |
#define MAX_MON_MULT 75 /* Maximum reproductions on a level */ |
#define MAX_MON_NATTACK 4 /* Max num attacks (used in mons memory) -CJS-*/ |
#define MAX_MONS_LEVEL 40 /* Maximum level of creatures */ |
#define MAX_MUSH 22 /* Used with mushrooms */ |
#define MAX_OBJ_LEVEL 50 /* Maximum level of magic in dungeon */ |
#define MAX_OBJECTS 420 /* Number of objects for universe */ |
#define MAX_OPEN_SPACE 3 |
#define MAX_OWNERS 18 /* Number of owners to choose from */ |
#define MAX_PLAYER_LEVEL 40 /* Maximum possible character level */ |
#define MAX_RACES 8 /* Number of defined races */ |
#define MAX_ROCKS 32 /* Used with rings */ |
#define MAX_SAVE_MSG 22 /* How many messages to save -CJS- */ |
#define MAX_SHORT 32767 /* maximum short/long signed ints */ |
#define MAX_SIGHT 20 /* Maximum dis a creature can be seen */ |
#define MAX_SPELL_DIS 20 /* Maximum dis creat. spell can be cast */ |
#define MAX_STORES 6 /* Number of different stores */ |
#define MAX_SYLLABLES 153 /* Used with scrolls */ |
#define MAX_TALLOC 175 /* Max objects per level */ |
#define MAX_TITLES 45 /* Used with scrolls */ |
#define MAX_TRAP 18 /* Number of defined traps */ |
#define MAX_UCHAR 255 |
#define MAX_WIDTH 198 /* Multiple of 33; >= 66 */ |
#define MAX_WOODS 25 /* Used with staffs */ |
#define MIN_CAVE_WALL 12 |
#define MIN_CLOSED_SPACE 4 |
#define MIN_MALLOC_LEVEL 14 /* Minimum number of monsters/level */ |
#define MIN_MALLOC_TD 4 /* Number of people on town level (day) */ |
#define MIN_MALLOC_TN 8 /* Number of people on town level (night)*/ |
#define MIN_TRIX 1 /* Minimum t_list index used */ |
#define MON_DRAIN_LIFE 2 /* Percent of player exp drained per hit */ |
#define MON_MULT_ADJ 7 /* High value slows multiplication */ |
#define MON_NASTY 50 /* 1/x chance of high level creat */ |
#define MON_SUMMON_ADJ 2 /* Adjust level of summoned creatures */ |
#define MSG_LINE 0 |
#define N_MONS_ATTS 215 /* Number of monster attack types. */ |
#define NONE 0 |
#define NORMAL_TABLE_SD 64 /* the standard deviation for the table */ |
#define NORMAL_TABLE_SIZE 256 |
#define NULL_WALL 0 |
#define OBJ_BASE_MAGIC 15 /* Base amount of magic */ |
#define OBJ_BASE_MAX 70 /* Max amount of magic */ |
#define OBJ_BOLT_RANGE 18 /* Maximum range of bolts and balls */ |
#define OBJ_CLOSED_DOOR 368 |
#define OBJ_DIV_CURSED 13 /* 10*magic_chance/# cursed items */ |
#define OBJ_DIV_SPECIAL 6 /* magic_chance/# special magic */ |
#define OBJ_DOWN_STAIR 371 |
#define OBJ_GOLD_LIST 399 |
#define OBJ_GREAT 12 /* 1/n Chance of item being a Great Item */ |
#define OBJ_LAMP_MAX 15000 /* Maximum amount that lamp can be filled*/ |
#define OBJ_MUSH 397 |
#define OBJ_NOTHING 417 |
#define OBJ_OPEN_DOOR 367 |
#define OBJ_RUBBLE 396 |
#define OBJ_RUINED_CHEST 418 |
#define OBJ_RUNE_PROT 3000 /* Rune of protection resistance */ |
#define OBJ_SCARE_MON 398 |
#define OBJ_SECRET_DOOR 369 |
#define OBJ_STD_ADJ 125 /* Adjust STD per level * 100 */ |
#define OBJ_STD_MIN 7 /* Minimum STD */ |
#define OBJ_STORE_DOOR 372 |
#define OBJ_TOWN_LEVEL 7 /* Town object generation level */ |
#define OBJ_TRAP_LIST 378 |
#define OBJ_UP_STAIR 370 |
#define OBJ_WIZARD 419 |
#define OBJECT_IDENT_SIZE |
#define OD_KNOWN1 0x2 |
#define OD_TRIED 0x1 |
#define PATCH_LEVEL 0 |
#define PLAYER_EXIT_PAUSE 2 /* Pause time before player can re-roll */ |
#define PLAYER_FOOD_ALERT 2000/* Warn player that he is getting low */ |
#define PLAYER_FOOD_FAINT 300/* Character begins fainting */ |
#define PLAYER_FOOD_FULL 10000/* Getting full */ |
#define PLAYER_FOOD_MAX 15000/* Maximum food value, beyond is wasted */ |
#define PLAYER_FOOD_WEAK 1000/* Warn player that he is getting very low*/ |
#define PLAYER_REGEN_FAINT 33 /* Regen factor*2^16 when fainting */ |
#define PLAYER_REGEN_HPBASE 1442 /* Min amount hp regen*2^16 */ |
#define PLAYER_REGEN_MNBASE 524 /* Min amount mana regen*2^16 */ |
#define PLAYER_REGEN_NORMAL 197 /* Regen factor*2^16 when full */ |
#define PLAYER_REGEN_WEAK 98 /* Regen factor*2^16 when weak */ |
#define PLAYER_WEIGHT_CAP 130 /* "#"*(1/10 pounds) per strength point */ |
#define PRAYER_OFFSET 31 |
#define PRIEST 2 |
#define PY_ARMOR 0x00400000L |
#define PY_BLESSED 0x00008000L |
#define PY_BLIND 0x00000004L |
#define PY_CHR 0x20000000L |
#define PY_CON 0x10000000L |
#define PY_CONFUSED 0x00000008L |
#define PY_DET_INV 0x00010000L |
#define PY_DEX 0x08000000L |
#define PY_FAST 0x00000040L |
#define PY_FEAR 0x00000010L |
#define PY_HERO 0x00002000L |
#define PY_HP 0x40000000L |
#define PY_HUNGRY 0x00000001L |
#define PY_INT 0x02000000L |
#define PY_INVULN 0x00001000L |
#define PY_MANA 0x80000000L |
#define PY_PARALYSED 0x00100000L |
#define PY_POISONED 0x00000020L |
#define PY_REPEAT 0x00200000L |
#define PY_REST 0x00000200L |
#define PY_SEARCH 0x00000100L |
#define PY_SHERO 0x00004000L |
#define PY_SLOW 0x00000080L |
#define PY_SPEED 0x00040000L |
#define PY_STATS 0x3F000000L |
#define PY_STR 0x01000000L /* these 6 stat flags must be adjacent */ |
#define PY_STR_WGT 0x00080000L |
#define PY_STUDY 0x00000400L |
#define PY_TIM_INFRA 0x00020000L |
#define PY_WEAK 0x00000002L |
#define PY_WIS 0x04000000L |
#define QUART_HEIGHT (SCREEN_HEIGHT / 4) |
#define QUART_WIDTH (SCREEN_WIDTH / 4) |
#define QUARTZ_WALL 14 |
#define SCARE_MONSTER 99 |
#define SCOREFILE_SIZE 1000 |
#define SCREEN_HEIGHT 22 |
#define SCREEN_WIDTH 66 |
#define SN_ARRAY_SIZE 56 /* must be at end of this list */ |
#define SN_BEAUTY 30 |
#define SN_BLINDNESS 35 |
#define SN_CLUMSINESS 16 |
#define SN_DF 7 |
#define SN_DISARMED 53 |
#define SN_DRAGON_SLAYING 45 |
#define SN_DULLNESS 34 |
#define SN_EMPTY 46 |
#define SN_ENVELOPING 42 |
#define SN_EXPLOSION_DEVICE 50 |
#define SN_FB 13 |
#define SN_FIRE 43 |
#define SN_FREE_ACTION 14 |
#define SN_FT 12 |
#define SN_GAS_TRAP 49 |
#define SN_GREAT_MASS 23 |
#define SN_HA 6 |
#define SN_INFRAVISION 26 |
#define SN_INTELLIGENCE 24 |
#define SN_IRRITATION 40 |
#define SN_LOCKED 47 |
#define SN_LORDLINESS 28 |
#define SN_MAGI 29 |
#define SN_MIGHT 27 |
#define SN_MULTIPLE_TRAPS 52 |
#define SN_NOISE 22 |
#define SN_NULL 0 |
#define SN_POISON_NEEDLE 48 |
#define SN_PROTECTION 39 |
#define SN_R 1 |
#define SN_RA 2 |
#define SN_RC 4 |
#define SN_REGENERATION 32 |
#define SN_RF 3 |
#define SN_RL 5 |
#define SN_SA 8 |
#define SN_SD 9 |
#define SN_SE 10 |
#define SN_SEEING 31 |
#define SN_SLAY_ANIMAL 55 |
#define SN_SLAY_EVIL 44 |
#define SN_SLAYING 15 |
#define SN_SLOW_DESCENT 18 |
#define SN_SLOWNESS 21 |
#define SN_SPEED 19 |
#define SN_STEALTH 20 |
#define SN_STUPIDITY 33 |
#define SN_SU 11 |
#define SN_SUMMONING_RUNES 51 |
#define SN_TELEPORTATION 37 |
#define SN_TIMIDNESS 36 |
#define SN_UGLINESS 38 |
#define SN_UNLOCKED 54 |
#define SN_VULNERABILITY 41 |
#define SN_WEAKNESS 17 |
#define SN_WISDOM 25 |
#define SPELL_OFFSET 0 |
#define STAT_COLUMN 0 |
#define STORE_CHOICES 26 /* NUMBER of items to choose stock from */ |
#define STORE_INVEN_MAX 24 /* Max number of discrete objs in inven */ |
#define STORE_MAX_INVEN 18 /* Max diff objs in stock for auto buy */ |
#define STORE_MIN_INVEN 10 /* Min diff objs in stock for auto sell */ |
#define STORE_TURN_AROUND 9 /* Amount of buying and selling normally */ |
#define TMP1_WALL 8 |
#define TMP2_WALL 9 |
#define TR_AGGRAVATE 0x00000200L |
#define TR_BLIND 0x08000000L |
#define TR_CHR 0x00000020L |
#define TR_CON 0x00000010L |
#define TR_CURSED 0x80000000L |
#define TR_DEX 0x00000008L |
#define TR_EGO_WEAPON 0x0007E000L |
#define TR_FFALL 0x04000000L |
#define TR_FLAME_TONGUE 0x00040000L |
#define TR_FREE_ACT 0x00800000L |
#define TR_FROST_BRAND 0x00020000L |
#define TR_INFRA 0x40000000L |
#define TR_INT 0x00000002L |
#define TR_REGEN 0x00000800L |
#define TR_RES_ACID 0x00100000L |
#define TR_RES_COLD 0x00200000L |
#define TR_RES_FIRE 0x00080000L |
#define TR_RES_LIGHT 0x02000000L |
#define TR_SEARCH 0x00000040L |
#define TR_SEE_INVIS 0x01000000L |
#define TR_SLAY_ANIMAL 0x00004000L |
#define TR_SLAY_DRAGON 0x00002000L |
#define TR_SLAY_EVIL 0x00008000L |
#define TR_SLAY_UNDEAD 0x00010000L |
#define TR_SLOW_DIGEST 0x00000080L |
#define TR_SPEED 0x00001000L |
#define TR_STATS 0x0000003FL /* the stats must be the low 6 bits */ |
#define TR_STEALTH 0x00000100L |
#define TR_STR 0x00000001L |
#define TR_SUST_STAT 0x00400000L |
#define TR_TELEPORT 0x00000400L |
#define TR_TIMID 0x10000000L |
#define TR_TUNNEL 0x20000000L |
#define TR_WIS 0x00000004L |
#define TREAS_ANY_ALLOC 2 /* Amount of objects for corridors */ |
#define TREAS_GOLD_ALLOC 2 /* Amount of gold (and gems) */ |
#define TREAS_ROOM_ALLOC 7 /* Amount of objects for rooms */ |
#define TRUE 1 |
#define TV_AMULET 40 |
#define TV_ARROW 12 |
#define TV_BOLT 11 |
#define TV_BOOTS 30 |
#define TV_BOW 20 |
#define TV_CHEST 2 |
#define TV_CLOAK 32 |
#define TV_CLOSED_DOOR 105 |
#define TV_DIGGING 25 |
#define TV_DOWN_STAIR 108 |
#define TV_FLASK 77 |
#define TV_FOOD 80 |
#define TV_GLOVES 31 |
#define TV_GOLD 100 |
#define TV_HAFTED 21 |
#define TV_HARD_ARMOR 35 |
#define TV_HELM 33 |
#define TV_INVIS_TRAP 101 |
#define TV_LIGHT 15 |
#define TV_MAGIC_BOOK 90 |
#define TV_MAX_ENCHANT 39 |
#define TV_MAX_OBJECT 99 |
#define TV_MAX_PICK_UP 100 |
#define TV_MAX_VISIBLE 110 |
#define TV_MAX_WEAR 50 |
#define TV_MIN_DOORS 104 |
#define TV_MIN_ENCHANT 10 |
#define TV_MIN_VISIBLE 102 |
#define TV_MIN_WEAR 10 |
#define TV_MISC 1 |
#define TV_NEVER -1 /* used by find_range() for non-search */ |
#define TV_NOTHING 0 |
#define TV_OPEN_DOOR 104 |
#define TV_POLEARM 22 |
#define TV_POTION1 75 |
#define TV_POTION2 76 |
#define TV_PRAYER_BOOK 91 |
#define TV_RING 45 |
#define TV_RUBBLE 103 |
#define TV_SCROLL1 70 |
#define TV_SCROLL2 71 |
#define TV_SECRET_DOOR 109 |
#define TV_SHIELD 34 |
#define TV_SLING_AMMO 10 |
#define TV_SOFT_ARMOR 36 |
#define TV_SPIKE 13 |
#define TV_STAFF 55 |
#define TV_STORE_DOOR 110 |
#define TV_SWORD 23 |
#define TV_UP_STAIR 107 |
#define TV_VIS_TRAP 102 |
#define TV_WAND 65 |
#define USE_DEVICE 3 /* x> Harder devices x< Easier devices */ |
#define WIN_MON_APPEAR 50 /* Level where winning creatures begin */ |
#define WIN_MON_TOT 2 /* Total number of "win" creatures */ |
Constant h should always be included after config h |