diff options
author | nlanza <nlanza@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-08-13 02:19:00 +0000 |
---|---|---|
committer | nlanza <nlanza@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-08-13 02:19:00 +0000 |
commit | aa88fdd8c6ad2da5eb5bd933e2d53d56cd8c176f (patch) | |
tree | d0551b96eaebb5b55694579fb8dae4abc7a38407 /trunk/source/enum.h | |
parent | 2b32f164e6ca1c4b3d587789f6cf46f46fe02fe8 (diff) | |
download | crawl-ref-aa88fdd8c6ad2da5eb5bd933e2d53d56cd8c176f.tar.gz crawl-ref-aa88fdd8c6ad2da5eb5bd933e2d53d56cd8c176f.zip |
Clean up a mistake in the SVN import.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'trunk/source/enum.h')
-rw-r--r-- | trunk/source/enum.h | 3219 |
1 files changed, 0 insertions, 3219 deletions
diff --git a/trunk/source/enum.h b/trunk/source/enum.h deleted file mode 100644 index 1306540f2b..0000000000 --- a/trunk/source/enum.h +++ /dev/null @@ -1,3219 +0,0 @@ -/* - * File: enum.h - * Summary: Global (ick) enums. - * Written by: Daniel Ligon - * - * Change History (most recent first): - * - * <11> 7 Aug 01 MV Changed MSLOT_UNASSIGNED_I to MSLOT_MISCELLANY - * added NUM_MISCELLANY, changed MONS_ANOTHER_ - * LAVA_THING to MONS_SALAMANDER - * <10> 7/29/00 JDJ Changed NUM_SPELL_TYPES to 14 (from 32767!). - * 24jun2000 jmf Changed comment spacing so stuff fit in 80 - * columns; deleted some leading numbers in - * comments (reasoning as above). - * Also removed many "must be last" comments, - * esp. where less-than-accurate. - * <9> 10jan2000 dlb extensive - see changes.340 S - * <8> 04nov1999 cdl added killed_by - * <7> 29sep1999 BCR Added comments showing where uniques are - * <6> 25sep1999 CDL Added commands - * <5> 09sep1999 BWR Removed Great Swords skill - * <4> 06aug1999 BWR added branch and level types - * <3> 02jun1999 DML beams, clouds, ench, ms, kill, - * other minor changes - * <2> 26may1999 JDJ Added a header guard. - * <1> --/--/-- CDL Created - */ - - -#ifndef ENUM_H -#define ENUM_H - -enum ABILITIES -{ - ABIL_NON_ABILITY = -1, - ABIL_SPIT_POISON = 1, // 1 - ABIL_GLAMOUR, - ABIL_MAPPING, - ABIL_TELEPORTATION, - ABIL_BREATHE_FIRE, // 5 - ABIL_BLINK, - ABIL_BREATHE_FROST, - ABIL_BREATHE_POISON, - ABIL_BREATHE_LIGHTNING, - ABIL_SPIT_ACID, // 10 - ABIL_BREATHE_POWER, - ABIL_EVOKE_BERSERK, - ABIL_BREATHE_STICKY_FLAME, - ABIL_BREATHE_STEAM, - ABIL_FLY, // 15 - ABIL_SUMMON_MINOR_DEMON, - ABIL_SUMMON_DEMON, - ABIL_HELLFIRE, - ABIL_TORMENT, - ABIL_RAISE_DEAD, // 20 - ABIL_CONTROL_DEMON, - ABIL_TO_PANDEMONIUM, - ABIL_CHANNELING, - ABIL_THROW_FLAME, - ABIL_THROW_FROST, // 25 - ABIL_BOLT_OF_DRAINING, - ABIL_BREATHE_HELLFIRE, - ABIL_FLY_II, - ABIL_DELAYED_FIREBALL, - ABIL_MUMMY_RESTORATION, // 30 - ABIL_EVOKE_MAPPING, - ABIL_EVOKE_TELEPORTATION, - ABIL_EVOKE_BLINK, // 33 - ABIL_EVOKE_TURN_INVISIBLE = 51, // 51 - ABIL_EVOKE_TURN_VISIBLE, - ABIL_EVOKE_LEVITATE, - ABIL_EVOKE_STOP_LEVITATING, - ABIL_END_TRANSFORMATION, // 55 - ABIL_ZIN_REPEL_UNDEAD = 110, // 110 - ABIL_ZIN_HEALING, - ABIL_ZIN_PESTILENCE, - ABIL_ZIN_HOLY_WORD, - ABIL_ZIN_SUMMON_GUARDIAN, // 114 - ABIL_TSO_REPEL_UNDEAD = 120, // 120 - ABIL_TSO_SMITING, - ABIL_TSO_ANNIHILATE_UNDEAD, - ABIL_TSO_THUNDERBOLT, - ABIL_TSO_SUMMON_DAEVA, // 124 - ABIL_KIKU_RECALL_UNDEAD_SLAVES = 130, // 130 - ABIL_KIKU_ENSLAVE_UNDEAD = 132, // 132 - ABIL_KIKU_INVOKE_DEATH, // 133 - ABIL_YRED_ANIMATE_CORPSE = 140, // 140 - ABIL_YRED_RECALL_UNDEAD, - ABIL_YRED_ANIMATE_DEAD, - ABIL_YRED_DRAIN_LIFE, - ABIL_YRED_CONTROL_UNDEAD, // 144 - ABIL_VEHUMET_CHANNEL_ENERGY = 160, // 160 - ABIL_OKAWARU_MIGHT = 170, // 170 - ABIL_OKAWARU_HEALING, - ABIL_OKAWARU_HASTE, // 172 - ABIL_MAKHLEB_MINOR_DESTRUCTION = 180, // 180 - ABIL_MAKHLEB_LESSER_SERVANT_OF_MAKHLEB, - ABIL_MAKHLEB_MAJOR_DESTRUCTION, - ABIL_MAKHLEB_GREATER_SERVANT_OF_MAKHLEB, // 183 - ABIL_SIF_MUNA_FORGET_SPELL = 190, // 190 - ABIL_TROG_BERSERK = 200, // 200 - ABIL_TROG_MIGHT, - ABIL_TROG_HASTE_SELF, // 202 - ABIL_ELYVILON_LESSER_HEALING = 220, // 220 - ABIL_ELYVILON_PURIFICATION, - ABIL_ELYVILON_HEALING, - ABIL_ELYVILON_RESTORATION, - ABIL_ELYVILON_GREATER_HEALING, // 224 - ABIL_CHARM_SNAKE, - ABIL_TRAN_SERPENT_OF_HELL, - ABIL_ROTTING, - ABIL_TORMENT_II, - ABIL_SHUGGOTH_SEED, - ABIL_RENOUNCE_RELIGION = 250 // 250 -}; - -enum ABILITY_FLAGS -{ - ABFLAG_NONE = 0x00000000, - ABFLAG_BREATH = 0x00000001, // ability uses DUR_BREATH_WEAPON - ABFLAG_DELAY = 0x00000002, // ability has its own delay (ie glamour) - ABFLAG_PAIN = 0x00000004, // ability must hurt player (ie torment) - ABFLAG_EXHAUSTION = 0x00000008, // fails if you.exhausted - ABFLAG_INSTANT = 0x00000010, // doesn't take time to use - ABFLAG_PERMANENT_HP = 0x00000020, // costs permanent HPs - ABFLAG_PERMANENT_MP = 0x00000040 // costs permanent MPs -}; - -enum ACTIVITY -{ - ACT_NONE = 0, - ACT_MULTIDROP, - ACT_RUNNING, - ACT_TRAVELING, - ACT_MACRO, - - ACT_ACTIVITY_COUNT -}; - -enum ACT_INTERRUPT -{ - AI_FORCE_INTERRUPT = 0, // Forcibly kills any activity - AI_KEYPRESS = 0x01, - AI_FULL_HP = 0x02, // Player is fully healed - AI_FULL_MP = 0x04, // Player has recovered all mp - AI_STATUE = 0x08, // Bad statue has come into view - AI_HUNGRY = 0x10, // Hunger increased - AI_MESSAGE = 0x20, // Message was displayed - AI_HP_LOSS = 0x40, - AI_BURDEN_CHANGE = 0x80, - AI_STAT_CHANGE = 0x100, - AI_SEE_MONSTER = 0x200, - AI_TELEPORT = 0x400, -}; - -enum AI_PAYLOAD -{ - AIP_NONE, - AIP_INT, - AIP_STRING, - AIP_MONSTER, - AIP_HP_LOSS, -}; - -enum AMMUNITION_DESCRIPTIONS -{ - DAMMO_ORCISH = 3, // 3 - DAMMO_ELVEN, - DAMMO_DWARVEN // 5 -}; - -// Various ways to get the acquirement effect. -enum AQ_AGENTS -{ - AQ_SCROLL = 0, - - // Empty space for the gods - - AQ_CARD_ACQUISITION = 100, - AQ_CARD_VIOLENCE, - AQ_CARD_PROTECTION, - AQ_CARD_KNOWLEDGE, - - AQ_WIZMODE = 200, -}; - -enum ARMOUR -{ - ARM_ROBE, // 0 - ARM_LEATHER_ARMOUR, - ARM_RING_MAIL, - ARM_SCALE_MAIL, - ARM_CHAIN_MAIL, - ARM_SPLINT_MAIL, // 5 - ARM_BANDED_MAIL, - ARM_PLATE_MAIL, - ARM_SHIELD, - ARM_CLOAK, - ARM_HELMET, // 10 - ARM_GLOVES, - ARM_BOOTS, - ARM_BUCKLER, - ARM_LARGE_SHIELD, - ARM_DRAGON_HIDE, // 15 - ARM_TROLL_HIDE, - ARM_CRYSTAL_PLATE_MAIL, - ARM_DRAGON_ARMOUR, - ARM_TROLL_LEATHER_ARMOUR, - ARM_ICE_DRAGON_HIDE, // 20 - ARM_ICE_DRAGON_ARMOUR, - ARM_STEAM_DRAGON_HIDE, - ARM_STEAM_DRAGON_ARMOUR, - ARM_MOTTLED_DRAGON_HIDE, - ARM_MOTTLED_DRAGON_ARMOUR, // 25 - ARM_STORM_DRAGON_HIDE, - ARM_STORM_DRAGON_ARMOUR, - ARM_GOLD_DRAGON_HIDE, - ARM_GOLD_DRAGON_ARMOUR, - ARM_ANIMAL_SKIN, // 30 - ARM_SWAMP_DRAGON_HIDE, - ARM_SWAMP_DRAGON_ARMOUR, - NUM_ARMOURS -}; - -enum ARMOUR_DESCRIPTIONS -{ - DARM_PLAIN, // added for the heck of it, 15 Apr 2000 {dlb} - DARM_EMBROIDERED_SHINY = 1, // which it is dependent upon armour subtype {dlb} - DARM_RUNED, - DARM_GLOWING, - DARM_ELVEN, - DARM_DWARVEN, // 5 - DARM_ORCISH -}; - -enum ARMOUR_PROPERTIES -{ - PARM_AC, // 0 - PARM_EVASION -}; - -// Note: currently the size of the attr array is hard coded at 30! ick! -- bwr -enum ATTRIBUTES -{ - ATTR_DIVINE_LIGHTNING_PROTECTION, // 0 - // ATTR_SPEC_AIR, // don't use this! - // ATTR_SPEC_EARTH, - ATTR_CONTROL_TELEPORT = 3, - ATTR_WALK_SLOWLY, - ATTR_TRANSFORMATION, // 5 - ATTR_CARD_COUNTDOWN, - ATTR_CARD_TABLE, - ATTR_NUM_DEMONIC_POWERS, - ATTR_WAS_SILENCED, //jmf: added for silenced messages - ATTR_GOD_GIFT_COUNT, //jmf: added to help manage god gift giving - ATTR_EXPENSIVE_FLIGHT, //jmf: flag for "manual flight" (ie wings) - ATTR_DEMONIC_SCALES, //jmf: remember which kind of scales to improve - ATTR_WALLS, - ATTR_LAST_WALLS, - ATTR_DELAYED_FIREBALL, // bwr: reserve fireballs - NUM_ATTRIBUTES // must always remain last member {dlb} -}; - -enum BANDS -{ - BAND_NO_BAND = 0, - BAND_KOBOLDS = 1, - BAND_ORCS, - BAND_ORC_KNIGHT, - BAND_KILLER_BEES, - BAND_FLYING_SKULLS, // 5 - BAND_SLIME_CREATURES, - BAND_YAKS, - BAND_UGLY_THINGS, - BAND_HELL_HOUNDS, - BAND_JACKALS, // 10 - BAND_HELL_KNIGHTS, - BAND_ORC_HIGH_PRIEST, - BAND_GNOLLS, // 13 - BAND_BUMBLEBEES = 16, - BAND_CENTAURS, - BAND_YAKTAURS, - BAND_INSUBSTANTIAL_WISPS, - BAND_OGRE_MAGE, // 20 - BAND_DEATH_YAKS, - BAND_NECROMANCER, - BAND_BALRUG, - BAND_CACODEMON, - BAND_EXECUTIONER, // 25 - BAND_HELLWING, - BAND_DEEP_ELF_FIGHTER, - BAND_DEEP_ELF_KNIGHT, - BAND_DEEP_ELF_HIGH_PRIEST, - BAND_KOBOLD_DEMONOLOGIST, // 30 - BAND_NAGAS, - BAND_WAR_DOGS, - BAND_GREY_RATS, - BAND_GREEN_RATS, - BAND_ORANGE_RATS, // 35 - BAND_SHEEP, - BAND_GHOULS, - BAND_DEEP_TROLLS, - BAND_HOGS, - BAND_HELL_HOGS, // 40 - BAND_GIANT_MOSQUITOES, - BAND_BOGGARTS, - BAND_BLINK_FROGS, - BAND_SKELETAL_WARRIORS, // 44 - NUM_BANDS // always last -}; - -enum BEAMS // beam[].flavour -{ - BEAM_MISSILE, // 0 - BEAM_MMISSILE, // 1 - and similarly unresistable things - BEAM_FIRE, - BEAM_COLD, - BEAM_MAGIC, - BEAM_ELECTRICITY, // 5 - BEAM_POISON, - BEAM_NEG, - BEAM_ACID, // 8 - BEAM_EXPLOSION = 10, // 10 - BEAM_SPORE, // 11 - BEAM_POISON_ARROW, // 12 - BEAM_HELLFIRE, // 13 - found 11jan2000 {dlb} - BEAM_ENERGY = 17, - BEAM_HOLY = 18, // 18 - aka beam of cleansing, golden flame - BEAM_FRAG, - BEAM_LAVA, // 20 - BEAM_BACKLIGHT, - BEAM_SLEEP, - BEAM_ICE, // 23 - BEAM_NUKE = 27, // 27 - BEAM_RANDOM, // currently translates into FIRE..ACID - - // These used to be handled in the colour field: - BEAM_SLOW, // BLACK - BEAM_HASTE, // BLUE - BEAM_HEALING, // GREEN - BEAM_PARALYSIS, // CYAN - BEAM_CONFUSION, // RED - BEAM_INVISIBILITY, // MAGENTA - BEAM_DIGGING, // BROWN - BEAM_TELEPORT, // LIGHTGREY - BEAM_POLYMORPH, // DARKGREY - BEAM_CHARM, // LIGHTBLUE - BEAM_BANISH, // LIGHTGREEN - BEAM_DEGENERATE, // LIGHTCYAN - BEAM_ENSLAVE_UNDEAD, // LIGHTRED - BEAM_PAIN, // LIGHTMAGENTA - BEAM_DISPEL_UNDEAD, // YELLOW - BEAM_DISINTEGRATION, // WHITE - BEAM_ENSLAVE_DEMON, // colour "16" - - // new beams for evaporate - BEAM_POTION_STINKING_CLOUD, - BEAM_POTION_POISON, - BEAM_POTION_MIASMA, - BEAM_POTION_STEAM, - BEAM_POTION_FIRE, - BEAM_POTION_COLD, - BEAM_POTION_BLACK_SMOKE, - BEAM_POTION_BLUE_SMOKE, - BEAM_POTION_PURP_SMOKE, - BEAM_POTION_RANDOM -}; - -enum BOOKS -{ - BOOK_MINOR_MAGIC_I, // 0 - BOOK_MINOR_MAGIC_II, - BOOK_MINOR_MAGIC_III, - BOOK_CONJURATIONS_I, - BOOK_CONJURATIONS_II, - BOOK_FLAMES, // 5 - BOOK_FROST, - BOOK_SUMMONINGS, - BOOK_FIRE, - BOOK_ICE, - BOOK_SURVEYANCES, // 10 - BOOK_SPATIAL_TRANSLOCATIONS, - BOOK_ENCHANTMENTS, - BOOK_YOUNG_POISONERS, - BOOK_TEMPESTS, - BOOK_DEATH, // 15 - BOOK_HINDERANCE, - BOOK_CHANGES, - BOOK_TRANSFIGURATIONS, - BOOK_PRACTICAL_MAGIC, - BOOK_WAR_CHANTS, // 20 - BOOK_CLOUDS, - BOOK_HEALING, - BOOK_NECROMANCY, - BOOK_NECRONOMICON, - BOOK_CALLINGS, // 25 - BOOK_CHARMS, - BOOK_DEMONOLOGY, - BOOK_AIR, - BOOK_SKY, - BOOK_DIVINATIONS, // 30 - BOOK_WARP, - BOOK_ENVENOMATIONS, - BOOK_ANNIHILATIONS, - BOOK_UNLIFE, - BOOK_DESTRUCTION, // 35 - BOOK_CONTROL, - BOOK_MUTATIONS, - BOOK_TUKIMA, - BOOK_GEOMANCY, - BOOK_EARTH, // 40 - BOOK_MANUAL, - BOOK_WIZARDRY, - BOOK_POWER, - BOOK_CANTRIPS, //jmf: 04jan2000 - BOOK_PARTY_TRICKS, // 45 //jmf: 04jan2000 - BOOK_BEASTS, - BOOK_STALKING, // renamed -- assassination was confusing -- bwr - NUM_BOOKS -}; - -enum BRANCHES // you.where_are_you -{ - BRANCH_MAIN_DUNGEON, // 0 - BRANCH_DIS, - BRANCH_GEHENNA, - BRANCH_VESTIBULE_OF_HELL, - BRANCH_COCYTUS, - BRANCH_TARTARUS, // 5 - BRANCH_INFERNO, // unimplemented - BRANCH_THE_PIT, // 7 // unimplemented - BRANCH_ORCISH_MINES = 10, // 10 - BRANCH_HIVE, - BRANCH_LAIR, - BRANCH_SLIME_PITS, - BRANCH_VAULTS, - BRANCH_CRYPT, // 15 - BRANCH_HALL_OF_BLADES, - BRANCH_HALL_OF_ZOT, - BRANCH_ECUMENICAL_TEMPLE, - BRANCH_SNAKE_PIT, - BRANCH_ELVEN_HALLS, // 20 - BRANCH_TOMB, - BRANCH_SWAMP -}; - -enum BRANCH_STAIRS // you.branch_stairs[] - 10 less than BRANCHES {dlb} -{ - STAIRS_ORCISH_MINES, // 0 - STAIRS_HIVE, - STAIRS_LAIR, - STAIRS_SLIME_PITS, - STAIRS_VAULTS, - STAIRS_CRYPT, // 5 - STAIRS_HALL_OF_BLADES, - STAIRS_HALL_OF_ZOT, - STAIRS_ECUMENICAL_TEMPLE, - STAIRS_SNAKE_PIT, - STAIRS_ELVEN_HALLS, // 10 - STAIRS_TOMB, - STAIRS_SWAMP -}; - -enum BURDEN_STATES // you.burden_state -{ - BS_UNENCUMBERED, // 0 - BS_ENCUMBERED = 2, // 2 - BS_OVERLOADED = 5 // 5 -}; - -enum CANNED_MESSAGES // canned_msg() - unsigned char -{ - MSG_SOMETHING_APPEARS, // 0 - MSG_NOTHING_HAPPENS, - MSG_YOU_RESIST, - MSG_TOO_BERSERK, - MSG_NOTHING_CARRIED, - MSG_CANNOT_DO_YET, - MSG_OK, - MSG_UNTHINKING_ACT, - MSG_SPELL_FIZZLES, - MSG_HUH, - MSG_EMPTY_HANDED -}; - -enum CLOUD_TYPES // cloud_type[], place_cloud(), big_cloud() -{ - CLOUD_NONE, // 0 - CLOUD_FIRE, // 1 - CLOUD_STINK, // 2 - CLOUD_COLD, // 3 - CLOUD_POISON, // 4 - CLOUD_GREY_SMOKE = 5, // 5: found 11jan2000 {dlb} - CLOUD_BLUE_SMOKE = 6, // 6: found 11jan2000 {dlb} - CLOUD_PURP_SMOKE = 7, // was: CLOUD_ENERGY and wrong 19jan2000 {dlb} - CLOUD_STEAM, // 8 - CLOUD_MIASMA = 9, // 9: found 11jan2000 {dlb} - CLOUD_BLACK_SMOKE = 10, //was: CLOUD_STICKY_FLAME and wrong 19jan2000 {dlb} - CLOUD_DEBUGGING = 99, // 99: used once as 'nonexistent cloud' {dlb} -// if env.cloud_type > 100, it is a monster's cloud {dlb} - CLOUD_FIRE_MON = 101, // 101: found 11jan2000 {dlb} - CLOUD_STINK_MON = 102, // 102: found 11jan2000 {dlb} - CLOUD_COLD_MON = 103, // 103: added 11jan2000 {dlb} - CLOUD_POISON_MON = 104, // 104 - CLOUD_GREY_SMOKE_MON = 105, // 105: found 11jan2000 {dlb} - CLOUD_BLUE_SMOKE_MON = 106, // 106: found 11jan2000 {dlb} - CLOUD_PURP_SMOKE_MON = 107, // 107: - CLOUD_STEAM_MON = 108, // 108: added 11jan2000 {dlb} - CLOUD_MIASMA_MON = 109, // 109: added 11jan2000 {dlb} - CLOUD_BLACK_SMOKE_MON = 110 // 110: added 19jan2000 {dlb} -}; - -enum COMMANDS -{ - CMD_NO_CMD = 1000, // 1000 - CMD_MOVE_NOWHERE, - CMD_MOVE_LEFT, - CMD_MOVE_DOWN, - CMD_MOVE_UP, - CMD_MOVE_RIGHT, - CMD_MOVE_UP_LEFT, - CMD_MOVE_DOWN_LEFT, - CMD_MOVE_UP_RIGHT, - CMD_MOVE_DOWN_RIGHT, - CMD_RUN_LEFT, // 1000 + 10 - CMD_RUN_DOWN, - CMD_RUN_UP, - CMD_RUN_RIGHT, - CMD_RUN_UP_LEFT, - CMD_RUN_DOWN_LEFT, - CMD_RUN_UP_RIGHT, - CMD_RUN_DOWN_RIGHT, - CMD_OPEN_DOOR_LEFT, - CMD_OPEN_DOOR_DOWN, - CMD_OPEN_DOOR_UP, // 1000 + 20 - CMD_OPEN_DOOR_RIGHT, - CMD_OPEN_DOOR_UP_LEFT, - CMD_OPEN_DOOR_DOWN_LEFT, - CMD_OPEN_DOOR_UP_RIGHT, - CMD_OPEN_DOOR_DOWN_RIGHT, - CMD_OPEN_DOOR, - CMD_CLOSE_DOOR, - CMD_REST, - CMD_GO_UPSTAIRS, - CMD_GO_DOWNSTAIRS, // 1000 + 30 - CMD_TOGGLE_AUTOPICKUP, - CMD_PICKUP, - CMD_DROP, - CMD_BUTCHER, - CMD_INSPECT_FLOOR, - CMD_EXAMINE_OBJECT, - CMD_EVOKE, - CMD_WIELD_WEAPON, - CMD_WEAPON_SWAP, - CMD_THROW, // 1000 + 40 - CMD_FIRE, - CMD_WEAR_ARMOUR, - CMD_REMOVE_ARMOUR, - CMD_WEAR_JEWELLERY, - CMD_REMOVE_JEWELLERY, - CMD_LIST_WEAPONS, - CMD_LIST_ARMOUR, - CMD_LIST_JEWELLERY, - CMD_ZAP_WAND, - CMD_CAST_SPELL, // 1000 + 50 - CMD_MEMORISE_SPELL, - CMD_USE_ABILITY, - CMD_PRAY, - CMD_EAT, - CMD_QUAFF, - CMD_READ, - CMD_LOOK_AROUND, - CMD_SEARCH, - CMD_SHOUT, - CMD_DISARM_TRAP, // 1000 + 60 - CMD_CHARACTER_DUMP, - CMD_DISPLAY_COMMANDS, - CMD_DISPLAY_INVENTORY, - CMD_DISPLAY_KNOWN_OBJECTS, - CMD_DISPLAY_MUTATIONS, - CMD_DISPLAY_SKILLS, - CMD_DISPLAY_MAP, - CMD_DISPLAY_OVERMAP, - CMD_DISPLAY_RELIGION, - CMD_DISPLAY_CHARACTER_STATUS, // 1000 + 70 - CMD_EXPERIENCE_CHECK, - CMD_GET_VERSION, - CMD_ADJUST_INVENTORY, - CMD_REPLAY_MESSAGES, - CMD_REDRAW_SCREEN, - CMD_MACRO_ADD, - CMD_MACRO_SAVE, - CMD_SAVE_GAME, - CMD_SAVE_GAME_NOW, - CMD_SUSPEND_GAME, // 1000 + 80 - CMD_QUIT, - CMD_WIZARD, - CMD_DESTROY_ITEM, - CMD_OBSOLETE_INVOKE, - - CMD_MARK_STASH, - CMD_FORGET_STASH, - CMD_SEARCH_STASHES, - CMD_EXPLORE, - CMD_INTERLEVEL_TRAVEL, - CMD_FIX_WAYPOINT, - - CMD_CLEAR_MAP, -}; - -enum CONFIRM_LEVEL -{ - CONFIRM_NONE_EASY, - CONFIRM_SAFE_EASY, - CONFIRM_ALL_EASY -}; - -enum CORPSE_EFFECTS -{ - CE_NOCORPSE, // 0 - CE_CLEAN, // 1 - CE_CONTAMINATED, // 2 - CE_POISONOUS, // 3 - CE_HCL, // 4 - CE_MUTAGEN_RANDOM, // 5 - CE_MUTAGEN_GOOD, // 6 - may be worth implementing {dlb} - CE_MUTAGEN_BAD, // 7 - may be worth implementing {dlb} - CE_RANDOM, // 8 - not used, but may be worth implementing {dlb} - CE_ROTTEN = 50 // 50 - must remain at 50 for now {dlb} -}; - -enum CORPSES -{ - CORPSE_BODY, // 0 - CORPSE_SKELETON -}; - -enum DEATH_KNIGHT_CHOICES -{ - DK_NO_SELECTION, - DK_NECROMANCY, - DK_YREDELEMNUL, - DK_RANDOM -}; - -enum DECKS -{ - DECK_OF_WONDERS, // 0 - DECK_OF_SUMMONING, - DECK_OF_TRICKS, - DECK_OF_POWER, - DECK_OF_PUNISHMENT -}; - -enum DELAY -{ - DELAY_NOT_DELAYED, - DELAY_EAT, - DELAY_ARMOUR_ON, - DELAY_ARMOUR_OFF, - DELAY_MEMORIZE, - DELAY_BUTCHER, - DELAY_AUTOPICKUP, - DELAY_WEAPON_SWAP, // for easy_butcher - DELAY_PASSWALL, - DELAY_DROP_ITEM, - DELAY_ASCENDING_STAIRS, - DELAY_DESCENDING_STAIRS, - DELAY_INTERUPTABLE = 100, // simple interuptable delay - DELAY_UNINTERUPTABLE // simple uninteruptable delay -}; - -enum DEMON_BEAMS -{ - DMNBM_HELLFIRE, // 0 - DMNBM_SMITING, - DMNBM_BRAIN_FEED, - DMNBM_MUTATION -}; - -enum DEMON_CLASSES // summon_any_demon() -{ - DEMON_LESSER, // 0: Class V - DEMON_COMMON, // 1: Class II-IV - DEMON_GREATER // 2: Class I -}; - -enum DESCRIPTION_LEVEL -{ - DESC_CAP_THE, // 0 - DESC_NOCAP_THE, // 1 - DESC_CAP_A, // 2 - DESC_NOCAP_A, // 3 - DESC_CAP_YOUR, // 4 - DESC_NOCAP_YOUR, // 5 - DESC_PLAIN, // 6 - DESC_NOCAP_ITS, // 7 - DESC_INVENTORY_EQUIP, // 8 - DESC_INVENTORY // 8 -}; - -enum DIRECTION // (unsigned char) you.char_direction -{ - DIR_DESCENDING = 0, // 0 - change and lose savefile compatibility (!!!) - DIR_ASCENDING = 1 // 1 - change and lose savefile compatibility (!!!) -}; - -enum DROP_MODE -{ - DM_SINGLE, - DM_MULTI -}; - -enum DUNGEON_FEATURES // (unsigned char) grd[][] -{ - DNGN_UNSEEN, // 0 - DNGN_ROCK_WALL, - DNGN_STONE_WALL, - DNGN_CLOSED_DOOR, - DNGN_METAL_WALL, - DNGN_SECRET_DOOR, // 5 - DNGN_GREEN_CRYSTAL_WALL, - DNGN_ORCISH_IDOL, - DNGN_WAX_WALL, // 8 - DNGN_PERMAROCK_WALL, // 9 - for undiggable walls - DNGN_LAST_SOLID_TILE = 10, // 10 - just here temporarily {dlb} - - DNGN_LAVA_X = 11, // 11 - DNGN_WATER_X, // 12 - DNGN_SILVER_STATUE = 21, // 21 - DNGN_GRANITE_STATUE, - DNGN_ORANGE_CRYSTAL_STATUE, // 23 - DNGN_STATUE_39 = 39, // 39 - - DNGN_LAVA = 61, // 61 - DNGN_DEEP_WATER, // 62 - DNGN_SHALLOW_WATER = 65, // 65 - DNGN_WATER_STUCK, - - DNGN_FLOOR, // 67 - DNGN_ENTER_HELL = 69, // 69 - DNGN_OPEN_DOOR, // 70 - DNGN_BRANCH_STAIRS, // 71 - DNGN_TRAP_MECHANICAL = 75, // 75 - DNGN_TRAP_MAGICAL, - DNGN_TRAP_III, - DNGN_UNDISCOVERED_TRAP, // 78 - - DNGN_ENTER_SHOP = 80, // 80 - DNGN_ENTER_LABYRINTH, - - DNGN_STONE_STAIRS_DOWN_I, - DNGN_STONE_STAIRS_DOWN_II, - DNGN_STONE_STAIRS_DOWN_III, - DNGN_ROCK_STAIRS_DOWN, // 85 - was this supposed to be a ladder? {dlb} - - DNGN_STONE_STAIRS_UP_I, - DNGN_STONE_STAIRS_UP_II, - DNGN_STONE_STAIRS_UP_III, - DNGN_ROCK_STAIRS_UP, // 89 - was this supposed to be a ladder? {dlb} - - DNGN_ENTER_DIS = 92, // 92 - DNGN_ENTER_GEHENNA, - DNGN_ENTER_COCYTUS, - DNGN_ENTER_TARTARUS, // 95 - DNGN_ENTER_ABYSS, - DNGN_EXIT_ABYSS, - DNGN_STONE_ARCH, - DNGN_ENTER_PANDEMONIUM, - DNGN_EXIT_PANDEMONIUM, // 100 - DNGN_TRANSIT_PANDEMONIUM, // 101 - - DNGN_BUILDER_SPECIAL_WALL = 105, // 105; builder() only - DNGN_BUILDER_SPECIAL_FLOOR, // 106; builder() only - - DNGN_ENTER_ORCISH_MINES = 110, // 110 - DNGN_ENTER_HIVE, - DNGN_ENTER_LAIR, - DNGN_ENTER_SLIME_PITS, - DNGN_ENTER_VAULTS, - DNGN_ENTER_CRYPT, // 115 - DNGN_ENTER_HALL_OF_BLADES, - DNGN_ENTER_ZOT, - DNGN_ENTER_TEMPLE, - DNGN_ENTER_SNAKE_PIT, - DNGN_ENTER_ELVEN_HALLS, // 120 - DNGN_ENTER_TOMB, - DNGN_ENTER_SWAMP, // 122 - - DNGN_RETURN_FROM_ORCISH_MINES = 130, // 130 - DNGN_RETURN_FROM_HIVE, - DNGN_RETURN_FROM_LAIR, - DNGN_RETURN_FROM_SLIME_PITS, - DNGN_RETURN_FROM_VAULTS, - DNGN_RETURN_FROM_CRYPT, // 135 - DNGN_RETURN_FROM_HALL_OF_BLADES, - DNGN_RETURN_FROM_ZOT, - DNGN_RETURN_FROM_TEMPLE, - DNGN_RETURN_FROM_SNAKE_PIT, - DNGN_RETURN_FROM_ELVEN_HALLS, // 140 - DNGN_RETURN_FROM_TOMB, - DNGN_RETURN_FROM_SWAMP, // 142 - - DNGN_ALTAR_ZIN = 180, // 180 - DNGN_ALTAR_SHINING_ONE, - DNGN_ALTAR_KIKUBAAQUDGHA, - DNGN_ALTAR_YREDELEMNUL, - DNGN_ALTAR_XOM, - DNGN_ALTAR_VEHUMET, // 185 - DNGN_ALTAR_OKAWARU, - DNGN_ALTAR_MAKHLEB, - DNGN_ALTAR_SIF_MUNA, - DNGN_ALTAR_TROG, - DNGN_ALTAR_NEMELEX_XOBEH, // 190 - DNGN_ALTAR_ELYVILON, // 191 - - DNGN_BLUE_FOUNTAIN = 200, // 200 - DNGN_DRY_FOUNTAIN_I, - DNGN_SPARKLING_FOUNTAIN, // aka 'Magic Fountain' {dlb} - DNGN_DRY_FOUNTAIN_II, - DNGN_DRY_FOUNTAIN_III, - DNGN_DRY_FOUNTAIN_IV, // 205 - DNGN_DRY_FOUNTAIN_V, - DNGN_DRY_FOUNTAIN_VI, - DNGN_DRY_FOUNTAIN_VII, - DNGN_DRY_FOUNTAIN_VIII, - DNGN_PERMADRY_FOUNTAIN = 210 // added (from dungeon.cc/maps.cc) 22jan2000 {dlb} -}; - -enum DURATIONS // you.duration[] -{ - DUR_LIQUID_FLAMES, // 0 - DUR_ICY_ARMOUR, - DUR_REPEL_MISSILES, - DUR_PRAYER, - DUR_REGENERATION, - DUR_SWIFTNESS, // 5 - DUR_INSULATION, - DUR_STONEMAIL, - DUR_CONTROLLED_FLIGHT, - DUR_TELEPORT, - DUR_CONTROL_TELEPORT, // 10 - DUR_RESIST_POISON, - DUR_BREATH_WEAPON, - DUR_TRANSFORMATION, - DUR_DEATH_CHANNEL, - DUR_DEFLECT_MISSILES, // 15 -//jmf: new durations: - DUR_FORESCRY, - DUR_SEE_INVISIBLE, - DUR_WEAPON_BRAND, // general "branding" spell counter - DUR_SILENCE, - DUR_GLAMOUR, // 20 - DUR_SHUGGOTH_SEED_RELOAD, - DUR_INFECTED_SHUGGOTH_SEED, - DUR_CONDENSATION_SHIELD, // 23 - DUR_STONESKIN, - DUR_REPEL_UNDEAD, // 25 - DUR_LAST_DUR, //jmf: for asserts - NUM_DURATIONS = 30 - // set at 30 to prevent savefile incompatibilities 12mar2000{dlb} -}; - -enum ENCHANTMENT // menv[].enchantment[] -{ - ENCH_NONE = 0, // 0 - ENCH_SLOW, - ENCH_HASTE, // 2 - ENCH_FEAR = 4, // 4 - ENCH_CONFUSION, // 5 - ENCH_INVIS, - ENCH_YOUR_POISON_I, - ENCH_YOUR_POISON_II, - ENCH_YOUR_POISON_III, - ENCH_YOUR_POISON_IV, // 10 - ENCH_YOUR_SHUGGOTH_I, //jmf: Shuggothim! - ENCH_YOUR_SHUGGOTH_II, - ENCH_YOUR_SHUGGOTH_III, - ENCH_YOUR_SHUGGOTH_IV, - ENCH_YOUR_ROT_I, // 15 //jmf: rotting effect for monsters - ENCH_YOUR_ROT_II, - ENCH_YOUR_ROT_III, - ENCH_YOUR_ROT_IV, - ENCH_SUMMON = 19, // 19 - ENCH_ABJ_I, // 20 - ENCH_ABJ_II, - ENCH_ABJ_III, - ENCH_ABJ_IV, - ENCH_ABJ_V, - ENCH_ABJ_VI, // 25 - ENCH_BACKLIGHT_I, //jmf: backlight for Corona spell - ENCH_BACKLIGHT_II, - ENCH_BACKLIGHT_III, - ENCH_BACKLIGHT_IV, - ENCH_CHARM = 30, // 30 - ENCH_YOUR_STICKY_FLAME_I, - ENCH_YOUR_STICKY_FLAME_II, - ENCH_YOUR_STICKY_FLAME_III, - ENCH_YOUR_STICKY_FLAME_IV, // 34 - ENCH_GLOWING_SHAPESHIFTER = 38, // 38 - ENCH_SHAPESHIFTER, - ENCH_TP_I, // 40 - ENCH_TP_II, - ENCH_TP_III, - ENCH_TP_IV, // 43 - ENCH_POISON_I = 57, // 57 - ENCH_POISON_II, - ENCH_POISON_III, - ENCH_POISON_IV, // 60 - ENCH_STICKY_FLAME_I, - ENCH_STICKY_FLAME_II, - ENCH_STICKY_FLAME_III, - ENCH_STICKY_FLAME_IV, - ENCH_FRIEND_ABJ_I, // no longer used - ENCH_FRIEND_ABJ_II, // no longer used - ENCH_FRIEND_ABJ_III, // no longer used - ENCH_FRIEND_ABJ_IV, // no longer used - ENCH_FRIEND_ABJ_V, // no longer used - ENCH_FRIEND_ABJ_VI, // no longer used - ENCH_CREATED_FRIENDLY, // no longer used - ENCH_SLEEP_WARY, - ENCH_SUBMERGED, // 73 (includes air elementals in air) - ENCH_SHORT_LIVED, // 74 for ball lightning - NUM_ENCHANTMENTS -}; - -enum ENCHANT_STATS -{ - ENCHANT_TO_HIT, - ENCHANT_TO_DAM -}; - -enum EQUIPMENT -{ - EQ_WEAPON, // 0 - EQ_CLOAK, - EQ_HELMET, - EQ_GLOVES, - EQ_BOOTS, - EQ_SHIELD, // 5 - EQ_BODY_ARMOUR, - EQ_LEFT_RING, - EQ_RIGHT_RING, - EQ_AMULET, - NUM_EQUIP, - - // these aren't actual equipment slots, they're categories for functions - EQ_STAFF = 100, // weapon with base_type OBJ_STAVES - EQ_RINGS, // check both rings - EQ_RINGS_PLUS, // check both rings and sum plus - EQ_RINGS_PLUS2, // check both rings and sum plus2 - EQ_ALL_ARMOUR // check all armour types -}; - -enum FIRE_TYPES -{ - FIRE_NONE, - FIRE_LAUNCHER, - FIRE_DART, - FIRE_STONE, - FIRE_DAGGER, - FIRE_SPEAR, - FIRE_HAND_AXE, - FIRE_CLUB, - NUM_FIRE_TYPES -}; - -enum FLUSH_REASONS -{ - FLUSH_ON_FAILURE, // spell/ability failed to cast - FLUSH_BEFORE_COMMAND, // flush before getting a command - FLUSH_ON_MESSAGE, // flush when printing a message - FLUSH_LUA, // flush when Lua wants us to - NUM_FLUSH_REASONS -}; - -enum FOODS // mitm[].sub_type[] -{ - FOOD_MEAT_RATION, // 0 - FOOD_BREAD_RATION, - FOOD_PEAR, - FOOD_APPLE, - FOOD_CHOKO, - FOOD_HONEYCOMB, // 5 - FOOD_ROYAL_JELLY, - FOOD_SNOZZCUMBER, - FOOD_PIZZA, - FOOD_APRICOT, - FOOD_ORANGE, // 10 - FOOD_BANANA, - FOOD_STRAWBERRY, - FOOD_RAMBUTAN, - FOOD_LEMON, - FOOD_GRAPE, // 15 - FOOD_SULTANA, - FOOD_LYCHEE, - FOOD_BEEF_JERKY, - FOOD_CHEESE, - FOOD_SAUSAGE, // 20 - FOOD_CHUNK, - NUM_FOODS -}; - -enum GENUS_PLAYER // see player::player_genus() -{ - GENPC_DRACONIAN, // 0 - GENPC_ELVEN, // 1 - GENPC_DWARVEN // 2 -}; - -enum GENDER -{ - GENDER_NEUTER, - GENDER_MALE, - GENDER_FEMALE -}; - -enum GHOST_VALUES -{ - GVAL_MAX_HP, // 0 - GVAL_EV, - GVAL_AC, - GVAL_SEE_INVIS, - GVAL_RES_FIRE, - GVAL_RES_COLD, // 5 - GVAL_RES_ELEC, - GVAL_DAMAGE, - GVAL_BRAND, - GVAL_SPECIES, - GVAL_BEST_SKILL, // 10 - GVAL_SKILL_LEVEL, - GVAL_EXP_LEVEL, - GVAL_CLASS, - GVAL_SPELL_1, // 14 - GVAL_SPELL_2, - GVAL_SPELL_3, - GVAL_SPELL_4, - GVAL_SPELL_5, - GVAL_SPELL_6, // 19 - NUM_GHOST_VALUES, // should always be last value - - // these values are for demonlords, which override the above: - GVAL_DEMONLORD_SPELLCASTER = 9, - GVAL_DEMONLORD_FLY, // 10 - GVAL_DEMONLORD_UNUSED, // 11 - GVAL_DEMONLORD_HIT_DICE, // 12 - GVAL_DEMONLORD_CYCLE_COLOUR // 13 -}; - -enum GODS // you.religion -{ - GOD_NO_GOD, // 0 - GOD_ZIN, - GOD_SHINING_ONE, - GOD_KIKUBAAQUDGHA, - GOD_YREDELEMNUL, - GOD_XOM, // 5 - GOD_VEHUMET, - GOD_OKAWARU, - GOD_MAKHLEB, - GOD_SIF_MUNA, - GOD_TROG, // 10 - GOD_NEMELEX_XOBEH, - GOD_ELYVILON, - NUM_GODS, // always after last god - - GOD_RANDOM = 100 -}; - -enum GOOD_THINGS -{ - GOOD_KILLED_LIVING = 1, // 1 - killed a living monster in god's name - GOOD_KILLED_UNDEAD, // 2 - killed an undead in god's name - GOOD_KILLED_DEMON, // 3 - killed a demon in god's name - GOOD_KILLED_ANGEL_I, // 4 - killed an angel (any time) - GOOD_KILLED_ANGEL_II, // 5 - killed an angel in god's name - // (all above pass HD of monster as pgain) - GOOD_HACKED_CORPSE, // 6 - hacked up a corpse in god's name - GOOD_OFFER_STUFF, // 7 - offered inanimate stuff at an altar - GOOD_OFFER_CORPSE, // as above,including at least one corpse - GOOD_SLAVES_KILL_LIVING,// 9 - undead slaves killed a living thing - GOOD_SERVANTS_KILL, // 10 - any servants kill anything - GOOD_CARDS, // 11 - cards (Nemelex) - GOOD_KILLED_WIZARD, - GOOD_KILLED_PRIEST, - GOOD_POISON, - GOOD_ATTACKED_FRIEND, - NUM_GOOD_THINGS -}; - -enum HANDS_REQUIRED -{ - HANDS_ONE_HANDED = 1, // 1 - HANDS_TWO_HANDED, - HANDS_ONE_OR_TWO_HANDED -}; - -enum HELMET_TYPES // used in pluses2 -{ - THELM_HELMET = 0x0000, - THELM_HELM = 0x0001, - THELM_CAP = 0x0002, - THELM_WIZARD_HAT = 0x0003, - THELM_NUM_TYPES = 4, - - THELM_SPECIAL = 0x0004, // type used only for artefacts (mask, hat) - THELM_TYPE_MASK = 0x00ff, - - - THELM_DESC_PLAIN = 0x0000, - THELM_DESC_WINGED = 0x0100, - THELM_DESC_HORNED = 0x0200, - THELM_DESC_CRESTED = 0x0300, - THELM_DESC_PLUMED = 0x0400, - THELM_DESC_SPIKED = 0x0500, - THELM_DESC_VISORED = 0x0600, - THELM_DESC_JEWELLED = 0x0700, - - THELM_DESC_MASK = 0xff00 -}; - -#if 0 -enum HELMET_DESCRIPTIONS -{ - DHELM_WINGED = 1, // 1 - DHELM_HORNED, - DHELM_CRESTED, - DHELM_PLUMED, - DHELM_SPIKED, // 5 - DHELM_VISORED, - DHELM_JEWELLED -}; - -enum HELMET_TYPES // used in pluses2 -{ - THELM_HELMET = 0, - THELM_HELM, - THELM_CAP, - THELM_WIZARD_HAT, - NUM_HELMET_TYPES, - THELM_SPECIAL // type used only for artefacts (mask, hat) -}; -#endif - -enum BOOT_TYPES // used in pluses2 -{ - TBOOT_BOOTS = 0, - TBOOT_NAGA_BARDING, - TBOOT_CENTAUR_BARDING, - NUM_BOOT_TYPES -}; - - -enum HUNGER_STATES // you.hunger_state -{ - HS_RAVENOUS, // 0: not used within code, really - HS_STARVING, - HS_HUNGRY, - HS_SATIATED, // "not hungry" state - HS_FULL, - HS_ENGORGED // 5 -}; - -enum ITEM_STATUS_FLAGS // per item flags: ie. ident status, cursed status -{ - ISFLAG_KNOW_CURSE = 0x00000001, // curse status - ISFLAG_KNOW_TYPE = 0x00000002, // artefact name, sub/special types - ISFLAG_KNOW_PLUSES = 0x00000004, // to hit/to dam/to AC/charges - ISFLAG_KNOW_PROPERTIES = 0x00000008, // know special artefact properties - ISFLAG_IDENT_MASK = 0x0000000F, // mask of all id related flags - - // these three masks are of the minimal flags set upon using equipment: - ISFLAG_EQ_WEAPON_MASK = 0x0000000B, // mask of flags for weapon equip - ISFLAG_EQ_ARMOUR_MASK = 0x0000000F, // mask of flags for armour equip - ISFLAG_EQ_JEWELLERY_MASK = 0x0000000F, // mask of flags for known jewellery - - ISFLAG_CURSED = 0x00000100, // cursed - ISFLAG_RESERVED_1 = 0x00000200, // reserved (re-curses on wield?) - ISFLAG_RESERVED_2 = 0x00000400, // reserved (heavy cursed?) - ISFLAG_RESERVED_3 = 0x00000800, // reserved (perma-cursed?) - ISFLAG_CURSE_MASK = 0x00000F00, // mask of all curse related flags - - ISFLAG_RANDART = 0x00001000, // special value is seed - ISFLAG_UNRANDART = 0x00002000, // is an unrandart - ISFLAG_ARTEFACT_MASK = 0x00003000, // randart or unrandart - ISFLAG_DROPPED = 0x00004000, // dropped item (no autopickup) - ISFLAG_THROWN = 0x00008000, // thrown missile weapon - - ISFLAG_NO_DESC = 0x00000000, // used for clearing these flags - ISFLAG_GLOWING = 0x00010000, // weapons or armour - ISFLAG_RUNED = 0x00020000, // weapons or armour - ISFLAG_EMBROIDERED_SHINY = 0x00040000, // armour: depends on sub-type - ISFLAG_COSMETIC_MASK = 0x00070000, // mask of cosmetic descriptions - - ISFLAG_NO_RACE = 0x00000000, // used for clearing these flags - ISFLAG_ORCISH = 0x01000000, // low quality items - ISFLAG_DWARVEN = 0x02000000, // strong and robust items - ISFLAG_ELVEN = 0x04000000, // light and accurate items - ISFLAG_RACIAL_MASK = 0x07000000, // mask of racial equipment types - - ISFLAG_DEBUG_MARK = 0x80000000 // used for testing item structure -}; - -enum ITEM_DESCRIPTIONS -{ - IDESC_WANDS, - IDESC_POTIONS, - IDESC_SCROLLS, // special field (like the others) - IDESC_RINGS, - IDESC_SCROLLS_II // pluses field -}; - -enum ITEM_MAKE_SPECIES // used only for race during creation -{ - MAKE_ITEM_ELVEN = 1, - MAKE_ITEM_DWARVEN = 2, - MAKE_ITEM_ORCISH = 3, - - MAKE_ITEM_NO_RACE = 100, - MAKE_ITEM_RANDOM_RACE = 250 -}; - -enum ITEM_ORIGIN_DUMP_SELECT -{ - IODS_PRICE = 0, // Extra info is provided based on price - IODS_ARTIFACTS = 1, // Extra information on artifacts - IODS_EGO_ARMOUR = 2, - IODS_EGO_WEAPON = 4, - IODS_JEWELLERY = 8, - IODS_RUNES = 16, - IODS_RODS = 32, - IODS_STAVES = 64, - IODS_BOOKS = 128, - IODS_EVERYTHING = 0xFF -}; - -enum ITEM_TYPE_ID // used for first index of id[4][50] -{ - IDTYPE_WANDS = 0, - IDTYPE_SCROLLS, - IDTYPE_JEWELLERY, - IDTYPE_POTIONS -}; - -enum ITEM_TYPE_ID_STATE // used for values in id[4][50] -{ - ID_UNKNOWN_TYPE = 0, - ID_KNOWN_TYPE, - ID_TRIED_TYPE -}; - -enum JEWELLERY -{ - RING_REGENERATION, // 0 - RING_PROTECTION, - RING_PROTECTION_FROM_FIRE, - RING_POISON_RESISTANCE, - RING_PROTECTION_FROM_COLD, - RING_STRENGTH, // 5 - RING_SLAYING, - RING_SEE_INVISIBLE, - RING_INVISIBILITY, - RING_HUNGER, - RING_TELEPORTATION, // 10 - RING_EVASION, - RING_SUSTAIN_ABILITIES, - RING_SUSTENANCE, - RING_DEXTERITY, - RING_INTELLIGENCE, // 15 - RING_WIZARDRY, - RING_MAGICAL_POWER, - RING_LEVITATION, - RING_LIFE_PROTECTION, - RING_PROTECTION_FROM_MAGIC, // 20 - RING_FIRE, - RING_ICE, - RING_TELEPORT_CONTROL, // 23 - AMU_RAGE = 35, // 35 - AMU_RESIST_SLOW, - AMU_CLARITY, - AMU_WARDING, - AMU_RESIST_CORROSION, - AMU_THE_GOURMAND, // 40 - AMU_CONSERVATION, - AMU_CONTROLLED_FLIGHT, - AMU_INACCURACY, - AMU_RESIST_MUTATION, - NUM_JEWELLERY -}; - -enum JOB -{ - JOB_FIGHTER, // 0 - JOB_WIZARD, - JOB_PRIEST, - JOB_THIEF, - JOB_GLADIATOR, - JOB_NECROMANCER, // 5 - JOB_PALADIN, - JOB_ASSASSIN, - JOB_BERSERKER, - JOB_HUNTER, - JOB_CONJURER, // 10 - JOB_ENCHANTER, - JOB_FIRE_ELEMENTALIST, - JOB_ICE_ELEMENTALIST, - JOB_SUMMONER, - JOB_AIR_ELEMENTALIST, // 15 - JOB_EARTH_ELEMENTALIST, - JOB_CRUSADER, - JOB_DEATH_KNIGHT, - JOB_VENOM_MAGE, - JOB_CHAOS_KNIGHT, // 20 - JOB_TRANSMUTER, - JOB_HEALER, // 22 - JOB_QUITTER, // 23 -- this is job 'x', don't use - JOB_REAVER, // 24 - JOB_STALKER, // 25 - JOB_MONK, - JOB_WARPER, - JOB_WANDERER, // 23 - NUM_JOBS, // always after the last job - - JOB_UNKNOWN = 100 -}; - -enum KILLBY -{ - KILLED_BY_MONSTER, // 0 - KILLED_BY_POISON, - KILLED_BY_CLOUD, - KILLED_BY_BEAM, // 3 - KILLED_BY_DEATHS_DOOR, // should be deprecated, but you never know {dlb} - KILLED_BY_LAVA, // 5 - KILLED_BY_WATER, - KILLED_BY_STUPIDITY, - KILLED_BY_WEAKNESS, - KILLED_BY_CLUMSINESS, - KILLED_BY_TRAP, // 10 - KILLED_BY_LEAVING, - KILLED_BY_WINNING, - KILLED_BY_QUITTING, - KILLED_BY_DRAINING, - KILLED_BY_STARVATION, // 15 - KILLED_BY_FREEZING, - KILLED_BY_BURNING, - KILLED_BY_WILD_MAGIC, - KILLED_BY_XOM, - KILLED_BY_STATUE, // 20 - KILLED_BY_ROTTING, - KILLED_BY_TARGETTING, - KILLED_BY_SPORE, - KILLED_BY_TSO_SMITING, - KILLED_BY_PETRIFICATION, // 25 - KILLED_BY_SHUGGOTH, - KILLED_BY_SOMETHING, - KILLED_BY_FALLING_DOWN_STAIRS, - KILLED_BY_ACID, - NUM_KILLBY -}; - -enum KillCategory -{ - KC_YOU, - KC_FRIENDLY, - KC_OTHER, - KC_NCATEGORIES -}; - -enum KILLER // monster_die(), thing_thrown -{ - KILL_YOU = 1, // 1 - KILL_MON, - KILL_YOU_MISSILE, - KILL_MON_MISSILE, - KILL_MISC, // 5 - KILL_RESET // abjuration, etc. -}; - -#define YOU_KILL(x) ((x) == KILL_YOU || (x) == KILL_YOU_MISSILE) -#define MON_KILL(x) ((x) == KILL_MON || (x) == KILL_MON_MISSILE) - -enum LEVEL_TYPES // you.level_type -{ - LEVEL_DUNGEON, // 0 - LEVEL_LABYRINTH, - LEVEL_ABYSS, - LEVEL_PANDEMONIUM -}; - -enum LOAD_MODE -{ - LOAD_START_GAME, - LOAD_RESTART_GAME, - LOAD_ENTER_LEVEL -}; - -enum MAP_SECTIONS // see maps.cc and dungeon.cc {dlb} -{ - MAP_NORTH = 1, // 1 - MAP_NORTHWEST, - MAP_NORTHEAST, - MAP_SOUTHWEST, - MAP_SOUTHEAST, // 5 - MAP_ENCOMPASS, - MAP_NORTH_DIS -}; - -// if you mess with this list, you'll need to make changes in initfile.cc -enum MESSAGE_CHANNEL -{ - MSGCH_PLAIN, // regular text - MSGCH_PROMPT, // various prompts - MSGCH_GOD, // god/religion (param is god) - MSGCH_DURATION, // effect down/warnings - MSGCH_DANGER, // serious life threats (ie very large HP attacks) - MSGCH_WARN, // much less serious threats - MSGCH_FOOD, // hunger notices - MSGCH_RECOVERY, // recovery from disease/stat/poison condition - MSGCH_TALK, // monster talk (param is monster type) - MSGCH_INTRINSIC_GAIN, // player level/stat/species-power gains - MSGCH_MUTATION, // player gain/lose mutations - MSGCH_MONSTER_SPELL, // monsters casting spells - MSGCH_MONSTER_ENCHANT,// monsters enchantments up and down - MSGCH_MONSTER_DAMAGE, // monster damage reports (param is level) - MSGCH_ROTTEN_MEAT, // messages about chunks/corpses becoming rotten - MSGCH_EQUIPMENT, // equipment listing messages - MSGCH_DIAGNOSTICS, // various diagnostic messages - NUM_MESSAGE_CHANNELS // always last -}; - -enum MESSAGE_COLOURS -{ - MSGCOL_BLACK = 0, // the order of these colours is important - MSGCOL_BLUE, - MSGCOL_GREEN, - MSGCOL_CYAN, - MSGCOL_RED, - MSGCOL_MAGENTA, - MSGCOL_BROWN, - MSGCOL_LIGHTGRAY, - MSGCOL_DARKGRAY, - MSGCOL_LIGHTBLUE, - MSGCOL_LIGHTGREEN, - MSGCOL_LIGHTCYAN, - MSGCOL_LIGHTMAGENTA, - MSGCOL_YELLOW, - MSGCOL_WHITE, - MSGCOL_DEFAULT, // use default colour - MSGCOL_ALTERNATE, // use secondary default colour scheme - MSGCOL_MUTED, // don't print messages - MSGCOL_PLAIN // same as plain channel -}; - -enum MISCELLANY // mitm[].sub_type -{ - MISC_BOTTLED_EFREET, // 0 - MISC_CRYSTAL_BALL_OF_SEEING, - MISC_AIR_ELEMENTAL_FAN, - MISC_LAMP_OF_FIRE, - MISC_STONE_OF_EARTH_ELEMENTALS, - MISC_LANTERN_OF_SHADOWS, // 5 - MISC_HORN_OF_GERYON, - MISC_BOX_OF_BEASTS, - MISC_DECK_OF_WONDERS, - MISC_DECK_OF_SUMMONINGS, - MISC_CRYSTAL_BALL_OF_ENERGY, // 10 - MISC_EMPTY_EBONY_CASKET, - MISC_CRYSTAL_BALL_OF_FIXATION, - MISC_DISC_OF_STORMS, - MISC_RUNE_OF_ZOT, - MISC_DECK_OF_TRICKS, // 15 - MISC_DECK_OF_POWER, - MISC_PORTABLE_ALTAR_OF_NEMELEX, - NUM_MISCELLANY // mv: used for random generation -}; - -enum MISSILES // (unsigned char) -{ - MI_STONE, // 0 - MI_ARROW, - MI_BOLT, - MI_DART, - MI_NEEDLE, - MI_LARGE_ROCK, //jmf: it'd be nice to move MI_LARGE_ROCK to DEBRIS_ROCK - NUM_MISSILES, - MI_EGGPLANT -}; - -enum MON_TARG_MODE -{ - TARG_ANY, - TARG_ENEMY, - TARG_FRIEND, - TARG_NUM_MODES -}; - -enum MONSTERS // (int) menv[].type -{ - MONS_GIANT_ANT, // 0 - MONS_GIANT_BAT, - MONS_CENTAUR, - MONS_RED_DEVIL, - MONS_ETTIN, - MONS_FUNGUS, // 5 - MONS_GOBLIN, - MONS_HOUND, - MONS_IMP, - MONS_JACKAL, - MONS_KILLER_BEE, // 10 - MONS_KILLER_BEE_LARVA, - MONS_MANTICORE, - MONS_NECROPHAGE, - MONS_ORC, - MONS_PHANTOM, // 15 - MONS_QUASIT, - MONS_RAT, - MONS_SCORPION, // 18 - //MONS_TUNNELING_WORM, // deprecated and now officially removed {dlb} - MONS_UGLY_THING = 20, // 20 - MONS_FIRE_VORTEX, - MONS_WORM, - MONS_ABOMINATION_SMALL, - MONS_YELLOW_WASP, - MONS_ZOMBIE_SMALL, // 25 - MONS_ANGEL, - MONS_GIANT_BEETLE, - MONS_CYCLOPS, - MONS_DRAGON, - MONS_TWO_HEADED_OGRE, // 30 - MONS_FIEND, - MONS_GIANT_SPORE, - MONS_HOBGOBLIN, - MONS_ICE_BEAST, - MONS_JELLY, // 35 - MONS_KOBOLD, - MONS_LICH, - MONS_MUMMY, - MONS_GUARDIAN_NAGA, - MONS_OGRE, // 40 - MONS_PLANT, - MONS_QUEEN_BEE, - MONS_RAKSHASA, - MONS_SNAKE, - MONS_TROLL, // 45 - MONS_UNSEEN_HORROR, - MONS_VAMPIRE, - MONS_WRAITH, - MONS_ABOMINATION_LARGE, - MONS_YAK, // 50 - MONS_ZOMBIE_LARGE, - MONS_ORC_WARRIOR, - MONS_KOBOLD_DEMONOLOGIST, - MONS_ORC_WIZARD, - MONS_ORC_KNIGHT, // 55 - //MONS_WORM_TAIL = 56, // deprecated and now officially removed {dlb} - MONS_WYVERN = 57, // 57 - MONS_BIG_KOBOLD, - MONS_GIANT_EYEBALL, - MONS_WIGHT, // 60 - MONS_OKLOB_PLANT, - MONS_WOLF_SPIDER, - MONS_SHADOW, - MONS_HUNGRY_GHOST, - MONS_EYE_OF_DRAINING, // 65 - MONS_BUTTERFLY, - MONS_WANDERING_MUSHROOM, - MONS_EFREET, - MONS_BRAIN_WORM, - MONS_GIANT_ORANGE_BRAIN, // 70 - MONS_BOULDER_BEETLE, - MONS_FLYING_SKULL, - MONS_HELL_HOUND, - MONS_MINOTAUR, - MONS_ICE_DRAGON, // 75 - MONS_SLIME_CREATURE, - MONS_FREEZING_WRAITH, - MONS_RAKSHASA_FAKE, - MONS_GREAT_ORB_OF_EYES, - MONS_HELLION, // 80 - MONS_ROTTING_DEVIL, - MONS_TORMENTOR, - MONS_REAPER, - MONS_SOUL_EATER, - MONS_HAIRY_DEVIL, // 85 - MONS_ICE_DEVIL, - MONS_BLUE_DEVIL, - MONS_BEAST, - MONS_IRON_DEVIL, // 89 - MONS_GLOWING_SHAPESHIFTER = 98, // 98 - MONS_SHAPESHIFTER, - MONS_GIANT_MITE, // 100 - MONS_STEAM_DRAGON, - MONS_VERY_UGLY_THING, - MONS_ORC_SORCERER, - MONS_HIPPOGRIFF, - MONS_GRIFFON, // 105 - MONS_HYDRA, - MONS_SKELETON_SMALL, - MONS_SKELETON_LARGE, - MONS_HELL_KNIGHT, - MONS_NECROMANCER, // 110 - MONS_WIZARD, - MONS_ORC_PRIEST, - MONS_ORC_HIGH_PRIEST, - MONS_HUMAN, - MONS_GNOLL, // 115 - MONS_CLAY_GOLEM, - MONS_WOOD_GOLEM, - MONS_STONE_GOLEM, - MONS_IRON_GOLEM, - MONS_CRYSTAL_GOLEM, // 120 - MONS_TOENAIL_GOLEM, - MONS_MOTTLED_DRAGON, - MONS_EARTH_ELEMENTAL, - MONS_FIRE_ELEMENTAL, - MONS_AIR_ELEMENTAL, // 125 - MONS_ICE_FIEND, - MONS_SHADOW_FIEND, - MONS_BROWN_SNAKE, - MONS_GIANT_LIZARD, - MONS_SPECTRAL_WARRIOR, // 130 - MONS_PULSATING_LUMP, - MONS_STORM_DRAGON, - MONS_YAKTAUR, - MONS_DEATH_YAK, - MONS_ROCK_TROLL, // 135 - MONS_STONE_GIANT, - MONS_FLAYED_GHOST, - MONS_BUMBLEBEE, - MONS_REDBACK, - MONS_INSUBSTANTIAL_WISP, // 140 - MONS_VAPOUR, - MONS_OGRE_MAGE, - MONS_SPINY_WORM, - MONS_DANCING_WEAPON, - MONS_TITAN, // 145 - MONS_GOLDEN_DRAGON, - MONS_ELF, - MONS_LINDWURM, - MONS_ELEPHANT_SLUG, - MONS_WAR_DOG, // 150 - MONS_GREY_RAT, - MONS_GREEN_RAT, - MONS_ORANGE_RAT, - MONS_BLACK_SNAKE, - MONS_SHEEP, // 155 - MONS_GHOUL, - MONS_HOG, - MONS_GIANT_MOSQUITO, - MONS_GIANT_CENTIPEDE, - MONS_IRON_TROLL, // 160 - MONS_NAGA, - MONS_FIRE_GIANT, - MONS_FROST_GIANT, - MONS_FIREDRAKE, - MONS_SHADOW_DRAGON, // 165 - MONS_YELLOW_SNAKE, - MONS_GREY_SNAKE, - MONS_DEEP_TROLL, - MONS_GIANT_BLOWFLY, - MONS_RED_WASP, // 170 - MONS_SWAMP_DRAGON, - MONS_SWAMP_DRAKE, - MONS_SOLDIER_ANT, - MONS_HILL_GIANT, - MONS_QUEEN_ANT, // 175 - MONS_ANT_LARVA, - MONS_GIANT_FROG, - MONS_GIANT_BROWN_FROG, - MONS_SPINY_FROG, - MONS_BLINK_FROG, // 180 - MONS_GIANT_COCKROACH, - MONS_SMALL_SNAKE, // 182 - //jmf: new monsters - MONS_SHUGGOTH, //jmf: added for evil spells - MONS_WOLF, //jmf: added - MONS_WARG, //jmf: added for orc mines - MONS_BEAR, //jmf: added bears! - MONS_GRIZZLY_BEAR, - MONS_POLAR_BEAR, - MONS_BLACK_BEAR, // 189 - MONS_SIMULACRUM_SMALL, - MONS_SIMULACRUM_LARGE, - //jmf: end new monsters - MONS_WHITE_IMP = 220, // 220 - MONS_LEMURE, - MONS_UFETUBUS, - MONS_MANES, - MONS_MIDGE, - MONS_NEQOXEC, // 225 - MONS_ORANGE_DEMON, - MONS_HELLWING, - MONS_SMOKE_DEMON, - MONS_YNOXINUL, - MONS_EXECUTIONER, // 230 - MONS_GREEN_DEATH, - MONS_BLUE_DEATH, - MONS_BALRUG, - MONS_CACODEMON, - MONS_DEMONIC_CRAWLER, // 235 - MONS_SUN_DEMON, - MONS_SHADOW_IMP, - MONS_SHADOW_DEMON, - MONS_LOROCYPROCA, - MONS_SHADOW_WRAITH, // 240 - MONS_GIANT_AMOEBA, - MONS_GIANT_SLUG, - MONS_GIANT_SNAIL, - MONS_SPATIAL_VORTEX, - MONS_PIT_FIEND, // 245 - MONS_BORING_BEETLE, - MONS_GARGOYLE, - MONS_METAL_GARGOYLE, - MONS_MOLTEN_GARGOYLE, - MONS_PROGRAM_BUG, // 250 -// BCR - begin first batch of uniques. - MONS_MNOLEG, - MONS_LOM_LOBON, - MONS_CEREBOV, - MONS_GLOORX_VLOQ, // 254 - MONS_MOLLUSC_LORD, // 255 - deprecated, but still referenced in code {dlb} -// BCR - End first batch of uniques. - MONS_NAGA_MAGE = 260, // 260 - MONS_NAGA_WARRIOR, - MONS_ORC_WARLORD, - MONS_DEEP_ELF_SOLDIER, - MONS_DEEP_ELF_FIGHTER, - MONS_DEEP_ELF_KNIGHT, // 265 - MONS_DEEP_ELF_MAGE, - MONS_DEEP_ELF_SUMMONER, - MONS_DEEP_ELF_CONJURER, - MONS_DEEP_ELF_PRIEST, - MONS_DEEP_ELF_HIGH_PRIEST, // 270 - MONS_DEEP_ELF_DEMONOLOGIST, - MONS_DEEP_ELF_ANNIHILATOR, - MONS_DEEP_ELF_SORCERER, - MONS_DEEP_ELF_DEATH_MAGE, - MONS_BROWN_OOZE, // 275 - MONS_AZURE_JELLY, - MONS_DEATH_OOZE, - MONS_ACID_BLOB, - MONS_ROYAL_JELLY, -// BCR - begin second batch of uniques. - MONS_TERENCE, // 280 - MONS_JESSICA, - MONS_IJYB, - MONS_SIGMUND, - MONS_BLORK_THE_ORC, - MONS_EDMUND, // 285 - MONS_PSYCHE, - MONS_EROLCHA, - MONS_DONALD, - MONS_URUG, - MONS_MICHAEL, // 290 - MONS_JOSEPH, - MONS_SNORG, // was Anita - Snorg is correct 16jan2000 {dlb} - MONS_ERICA, - MONS_JOSEPHINE, - MONS_HAROLD, // 295 - MONS_NORBERT, - MONS_JOZEF, - MONS_AGNES, - MONS_MAUD, - MONS_LOUISE, // 300 - MONS_FRANCIS, - MONS_FRANCES, - MONS_RUPERT, - MONS_WAYNE, - MONS_DUANE, // 305 - MONS_XTAHUA, - MONS_NORRIS, - MONS_ADOLF, - MONS_MARGERY, - MONS_BORIS, // 310 -// BCR - end second batch of uniques. - - // The Lords of Hell: - MONS_GERYON = 340, // 340 - MONS_DISPATER, - MONS_ASMODEUS, - MONS_ANTAEUS, - MONS_ERESHKIGAL, // 344 - - MONS_ANCIENT_LICH = 356, // 356 - MONS_OOZE, // 357 - - MONS_VAULT_GUARD = 360, // 360 - MONS_CURSE_SKULL, - MONS_VAMPIRE_KNIGHT, - MONS_VAMPIRE_MAGE, - MONS_SHINING_EYE, - MONS_ORB_GUARDIAN, // 365 - MONS_DAEVA, - MONS_SPECTRAL_THING, - MONS_GREATER_NAGA, - MONS_SKELETAL_DRAGON, - MONS_TENTACLED_MONSTROSITY, // 370 - MONS_SPHINX, - MONS_ROTTING_HULK, - MONS_GUARDIAN_MUMMY, - MONS_GREATER_MUMMY, - MONS_MUMMY_PRIEST, // 375 - MONS_CENTAUR_WARRIOR, - MONS_YAKTAUR_CAPTAIN, - MONS_KILLER_KLOWN, - MONS_ELECTRIC_GOLEM, // replacing the guardian robot -- bwr - MONS_BALL_LIGHTNING, // replacing the dorgi -- bwr - MONS_ORB_OF_FIRE, // Swords renamed to fit -- bwr - MONS_QUOKKA, // Quokka are a type of wallaby, returned -- bwr 382 - - - MONS_EYE_OF_DEVASTATION = 385, // 385 - MONS_MOTH_OF_WRATH, - MONS_DEATH_COB, - MONS_CURSE_TOE, - MONS_GOLD_MIMIC, - MONS_WEAPON_MIMIC, // 390 - MONS_ARMOUR_MIMIC, - MONS_SCROLL_MIMIC, - MONS_POTION_MIMIC, - MONS_HELL_HOG, - MONS_SERPENT_OF_HELL, // 395 - MONS_BOGGART, - MONS_QUICKSILVER_DRAGON, - MONS_IRON_DRAGON, - MONS_SKELETAL_WARRIOR, // 399 - MONS_PLAYER_GHOST, // 400 - MONS_PANDEMONIUM_DEMON, // 401 - - MONS_GIANT_NEWT, // 402 - MONS_GIANT_GECKO, // 403 - MONS_GIANT_IGUANA, // 404 - MONS_GILA_MONSTER, // 405 - MONS_KOMODO_DRAGON, // 406 - - // Lava monsters: - MONS_LAVA_WORM = 420, // 420 - MONS_LAVA_FISH, - MONS_LAVA_SNAKE, - MONS_SALAMANDER, // 423 mv: was another lava thing - - // Water monsters: - MONS_BIG_FISH = 430, // 430 - MONS_GIANT_GOLDFISH, - MONS_ELECTRICAL_EEL, - MONS_JELLYFISH, - MONS_WATER_ELEMENTAL, - MONS_SWAMP_WORM, // 435 - - NUM_MONSTERS, // used for polymorph - RANDOM_MONSTER = 1000, // used to distinguish between a random monster and using program bugs for error trapping {dlb} - WANDERING_MONSTER = 2500 // only used in monster placement routines - forced limit checks {dlb} - -}; - -enum MONSTER_BEHAVIOUR // create_monster() -{ - BEH_SLEEP, // 0 - BEH_WANDER, - BEH_SEEK, - BEH_FLEE, - BEH_CORNERED, - NUM_BEHAVIOURS, // max # of legal states - BEH_CHARMED, // hostile-but-charmed; create only - BEH_FRIENDLY, // used during creation only - BEH_HOSTILE, // creation only - BEH_GOD_GIFT // creation only -}; - -enum MONSTER_ATTITUDES -{ - ATT_HOSTILE, // 0, default in most cases - ATT_FRIENDLY, // created friendly (or tamed?) - ATT_NEUTRAL -}; - -enum MONSTER_EVENTS -{ - ME_EVAL, // 0, evaluate monster AI state - ME_DISTURB, // noisy - ME_ANNOY, // annoy at range - ME_ALERT, // alert to presence - ME_WHACK, // physical attack - ME_SCARE, // frighten monster - ME_CORNERED // cannot flee -}; - -#if 0 -// Obsolete... use mons_charclass() -enum MONSTER_CATEGORIES -{ - MC_MIMIC, // 0 - NUM_MC, - MC_UNSPECIFIED = 255 // keep at end !!! mind the upper limit of 255 {dlb} -}; -#endif - -// Note: These are currently stored in chars!!! -// Need to fix struct monsters and the savefile if you want more. -enum MONSTER_FLAGS -{ - MF_CREATED_FRIENDLY = 0x01, // no benefit from killing - MF_GOD_GIFT = 0x02, // player not penalized by its death - MF_BATTY = 0x04, // flutters like a bat - MF_JUST_SUMMONED = 0x08, // monster skips next available action - MF_TAKING_STAIRS = 0x10, // is following player through stairs - - MF_UNUSED_I = 0x20, - MF_UNUSED_II = 0x40, - MF_UNUSED_III = 0x80 -}; - -enum MONSTER_DAMAGE -{ - MDAM_OKAY, - MDAM_LIGHTLY_DAMAGED, - MDAM_MODERATELY_DAMAGED, - MDAM_HEAVILY_DAMAGED, - MDAM_HORRIBLY_DAMAGED, - MDAM_ALMOST_DEAD, - MDAM_DEAD -}; - -enum MONSTER_DESCRIPTORS // things that cross categorical lines {dlb} -{ - MDSC_LEAVES_HIDE, // 0 - MDSC_REGENERATES, - MDSC_NOMSG_WOUNDS -}; - -enum MONSTER_HOLINESS // matches (char) H_foo in mon-util.h, see: monster_holiness() -{ - MH_HOLY, // 0 - was -1 - MH_NATURAL, // 1 - was 0 - MH_UNDEAD, // 2 - was 1 - MH_DEMONIC, // 3 - was 2 - MH_NONLIVING, // golems and other constructs - MH_PLANT // plants -}; - -enum MONSTER_INVENTORY_SLOTS // (int) menv[].inv[] -{ - MSLOT_WEAPON, - MSLOT_MISSILE, // although it is a second weapon for MONS_TWO_HEADED_OGRE - how to reconcile cleanly? {dlb} - MSLOT_ARMOUR, - MSLOT_MISCELLANY, //mv: used for misc. obj. (7 Aug 2001) - MSLOT_POTION, // mv: now used only for potions (7 Aug 2001) - MSLOT_WAND, // - MSLOT_SCROLL, - MSLOT_GOLD, //mv: used for money :) (7 Aug 2001) - NUM_MONSTER_SLOTS = 8 // value must remain 8 for savefile compatibility {dlb} -}; - -enum MONSTER_ITEM_USE -{ - MONUSE_NOTHING, - MONUSE_EATS_ITEMS, - MONUSE_OPEN_DOORS, - MONUSE_STARTING_EQUIPMENT, - MONUSE_WEAPONS_ARMOUR -}; - -enum MONSTER_SPELLS // mons_cast(), mspell_list[], mons_spells() -{ - MS_MMISSILE, // 0 - MS_FLAME, - MS_FROST, - MS_PARALYSIS, - MS_SLOW, - MS_HASTE, // 5 - MS_CONFUSE, // 6 - do not deprecate!!! 13jan2000 {dlb} - MS_VENOM_BOLT, - MS_FIRE_BOLT, - MS_COLD_BOLT, - MS_LIGHTNING_BOLT, // 10 - MS_INVIS, - MS_FIREBALL, - MS_HEAL, - MS_TELEPORT, - MS_TELEPORT_OTHER, // 15 - MS_BLINK, - MS_CRYSTAL_SPEAR, - MS_DIG, - MS_NEGATIVE_BOLT, - MS_HELLFIRE_BURST, // 20 - MS_VAMPIRE_SUMMON, - MS_ORB_ENERGY, - MS_BRAIN_FEED, - MS_LEVEL_SUMMON, - MS_FAKE_RAKSHASA_SUMMON, // 25 - MS_STEAM_BALL, - MS_SUMMON_DEMON, - MS_ANIMATE_DEAD, - MS_PAIN, - MS_SMITE, // 30 - MS_STICKY_FLAME, - MS_POISON_BLAST, - MS_SUMMON_DEMON_LESSER, - MS_SUMMON_UFETUBUS, - MS_PURPLE_BLAST, // 35 - MS_SUMMON_BEAST, // MS_GERYON was not descriptive - renamed 13jan2000 {dlb} - MS_ENERGY_BOLT, - MS_STING, - MS_IRON_BOLT, - MS_STONE_ARROW, // 40 - MS_POISON_SPLASH, - MS_SUMMON_UNDEAD, - MS_MUTATION, // 43 - MS_CANTRIP, - MS_DISINTEGRATE, // 45 - MS_MARSH_GAS, - MS_QUICKSILVER_BOLT, - MS_TORMENT, - MS_HELLFIRE, - MS_METAL_SPLINTERS, // 50 - MS_SUMMON_DEMON_GREATER, // [foo]_1 was confusing - renamed 13jan2000 {dlb} - MS_BANISHMENT, - NUM_MONSTER_SPELLS, - MS_NO_SPELL = 100 -}; - -// XXX: These still need to be applied in mon-data.h -enum MONSTER_SPELL_TEMPLATES -{ - MST_ORC_WIZARD_I = 0, - MST_ORC_WIZARD_II, - MST_ORC_WIZARD_III, - MST_GUARDIAN_NAGA = 10, - MST_LICH_I = 20, - MST_LICH_II, - MST_LICH_III, - MST_LICH_IV, - MST_BURNING_DEVIL = 30, - MST_VAMPIRE = 40, - MST_VAMPIRE_KNIGHT, - MST_VAMPIRE_MAGE, - MST_EFREET = 50, - MST_BRAIN_WORM = 52, - MST_GIANT_ORANGE_BRAIN, - MST_RAKSHASA, - MST_GREAT_ORB_OF_EYES, // 55 - MST_ORC_SORCERER, - MST_STEAM_DRAGON, - MST_HELL_KNIGHT_I, - MST_HELL_KNIGHT_II, - MST_NECROMANCER_I, // 60 - MST_NECROMANCER_II, - MST_WIZARD_I, - MST_WIZARD_II, - MST_WIZARD_III, - MST_WIZARD_IV, // 65 - MST_WIZARD_V, - MST_ORC_PRIEST, - MST_ORC_HIGH_PRIEST, - MST_MOTTLED_DRAGON, - MST_ICE_FIEND, // 70 - MST_SHADOW_FIEND, - MST_TORMENTOR, - MST_STORM_DRAGON, - MST_WHITE_IMP, - MST_YNOXINUL, // 75 - MST_NEQOXEC, - MST_HELLWING, - MST_SMOKE_DEMON, - MST_CACODEMON, - MST_GREEN_DEATH, // 80 - MST_BALRUG, - MST_BLUE_DEATH, - MST_GERYON, - MST_DISPATER, - MST_ASMODEUS, // 85 - MST_ERESHKIGAL, - MST_ANTAEUS, // 87 - MST_MNOLEG = 90, - MST_LOM_LOBON, - MST_CEREBOV, - MST_GLOORX_VLOQ, - MST_TITAN, - MST_GOLDEN_DRAGON, // 95 - MST_DEEP_ELF_SUMMONER, - MST_DEEP_ELF_CONJURER_I, - MST_DEEP_ELF_CONJURER_II, - MST_DEEP_ELF_PRIEST, - MST_DEEP_ELF_HIGH_PRIEST, // 100 - MST_DEEP_ELF_DEMONOLOGIST, - MST_DEEP_ELF_ANNIHILATOR, - MST_DEEP_ELF_SORCERER, - MST_DEEP_ELF_DEATH_MAGE, - MST_KOBOLD_DEMONOLOGIST, // 105 - MST_NAGA, - MST_NAGA_MAGE, - MST_CURSE_SKULL, - MST_SHINING_EYE, - MST_FROST_GIANT, // 110 - MST_ANGEL, - MST_DAEVA, - MST_SHADOW_DRAGON, - MST_SPHINX, - MST_MUMMY, // 115 - MST_ELECTRIC_GOLEM, - MST_ORB_OF_FIRE, - MST_SHADOW_IMP, - MST_GHOST, - MST_HELL_HOG, // 120 - MST_SWAMP_DRAGON, - MST_SWAMP_DRAKE, - MST_SERPENT_OF_HELL, - MST_BOGGART, - MST_EYE_OF_DEVASTATION, // 125 - MST_QUICKSILVER_DRAGON, - MST_IRON_DRAGON, // 127 - MST_SKELETAL_WARRIOR, - NUM_MSTYPES, - MST_NO_SPELLS = 250 -}; - -enum MUTATIONS -{ - MUT_TOUGH_SKIN, // 0 - MUT_STRONG, - MUT_CLEVER, - MUT_AGILE, - MUT_GREEN_SCALES, - MUT_BLACK_SCALES, // 5 - MUT_GREY_SCALES, - MUT_BONEY_PLATES, - MUT_REPULSION_FIELD, - MUT_POISON_RESISTANCE, - MUT_CARNIVOROUS, // 10 - MUT_HERBIVOROUS, - MUT_HEAT_RESISTANCE, - MUT_COLD_RESISTANCE, - MUT_SHOCK_RESISTANCE, - MUT_REGENERATION, // 15 - MUT_FAST_METABOLISM, - MUT_SLOW_METABOLISM, - MUT_WEAK, - MUT_DOPEY, - MUT_CLUMSY, // 20 - MUT_TELEPORT_CONTROL, - MUT_TELEPORT, - MUT_MAGIC_RESISTANCE, - MUT_FAST, - MUT_ACUTE_VISION, // 25 - MUT_DEFORMED, - MUT_TELEPORT_AT_WILL, - MUT_SPIT_POISON, - MUT_MAPPING, - MUT_BREATHE_FLAMES, // 30 - MUT_BLINK, - MUT_HORNS, - MUT_STRONG_STIFF, - MUT_FLEXIBLE_WEAK, - MUT_LOST, // 35 - MUT_CLARITY, - MUT_BERSERK, - MUT_DETERIORATION, - MUT_BLURRY_VISION, - MUT_MUTATION_RESISTANCE, // 40 - MUT_FRAIL, - MUT_ROBUST, - MUT_TORMENT_RESISTANCE, - MUT_NEGATIVE_ENERGY_RESISTANCE, - MUT_SUMMON_MINOR_DEMONS, // 45 - MUT_SUMMON_DEMONS, - MUT_HURL_HELLFIRE, - MUT_CALL_TORMENT, - MUT_RAISE_DEAD, - MUT_CONTROL_DEMONS, // 50 - MUT_PANDEMONIUM, - MUT_DEATH_STRENGTH, - MUT_CHANNEL_HELL, - MUT_DRAIN_LIFE, - MUT_THROW_FLAMES, // 55 - MUT_THROW_FROST, - MUT_SMITE, // 57 - MUT_CLAWS, //jmf: added - MUT_HOOVES, //jmf: etc. - MUT_BREATHE_POISON, // 60 - MUT_STINGER, - MUT_BIG_WINGS, - MUT_BLUE_MARKS, // 63 - decorative, as in "mark of the devil" - MUT_GREEN_MARKS, // 64 - MUT_RED_SCALES = 70, // 70 - MUT_NACREOUS_SCALES, - MUT_GREY2_SCALES, - MUT_METALLIC_SCALES, - MUT_BLACK2_SCALES, - MUT_WHITE_SCALES, // 75 - MUT_YELLOW_SCALES, - MUT_BROWN_SCALES, - MUT_BLUE_SCALES, - MUT_PURPLE_SCALES, - MUT_SPECKLED_SCALES, // 80 - MUT_ORANGE_SCALES, - MUT_INDIGO_SCALES, - MUT_RED2_SCALES, - MUT_IRIDESCENT_SCALES, - MUT_PATTERNED_SCALES, // 85 - NUM_MUTATIONS -}; - -enum NAUGHTY_THINGS -{ - NAUGHTY_NECROMANCY = 1, // 1 - using necromancy (spell or device) - NAUGHTY_UNHOLY, // 2 - using unholy stuff (call imp, summon things) - NAUGHTY_KILLING, // 3 - killing in the name of a peaceful deity - NAUGHTY_ATTACK_HOLY, // 4 - attacking holy things - NAUGHTY_ATTACK_FRIEND, // 5 - attacking friendly things - NAUGHTY_FRIEND_DIES, // 6 - allowing friendly things to die - NAUGHTY_BUTCHER, // 7 - butchering in the name of a peaceful deity - NAUGHTY_STABBING, // 8 - stabbing - NAUGHTY_SPELLCASTING, // 9 - spellcasting - NAUGHTY_POISON, // 10 - poisoning - NAUGHTY_STIMULANTS, //jmf: next three new, some not yet used - NAUGHTY_ATE_MEAT, - NAUGHTY_CREATED_LIFE, - NUM_NAUGHTY_THINGS -}; - -enum OBJECT_CLASSES // (unsigned char) mitm[].base_type -{ - OBJ_WEAPONS, // 0 - OBJ_MISSILES, - OBJ_ARMOUR, - OBJ_WANDS, - OBJ_FOOD, // 4 - OBJ_UNKNOWN_I = 5, // (use unknown) labeled as books in invent.cc {dlb} - OBJ_SCROLLS = 6, // 6 - OBJ_JEWELLERY, - OBJ_POTIONS, // 8 - OBJ_UNKNOWN_II = 9, // (use unknown, stackable) labeled as gems in invent.cc {dlb} - OBJ_BOOKS = 10, // 10 - OBJ_STAVES, - OBJ_ORBS, - OBJ_MISCELLANY, - OBJ_CORPSES, - OBJ_GOLD, // important role as upper limit to chardump::dump_inventory() {dlb} - OBJ_GEMSTONES, // found in itemname.cc, labeled as miscellaneous in invent.cc {dlb} - NUM_OBJECT_CLASSES, - OBJ_UNASSIGNED = 100, // must remain set to 100 {dlb} - OBJ_RANDOM = 255 // must remain set to 255 {dlb} - also used - // for blanket random sub_type .. see dungeon::items() -}; - -enum OBJECT_SELECTORS -{ - OSEL_ANY = -1, - OSEL_WIELD = -2, -}; - -enum ORBS -{ - ORB_ZOT // 0 -}; - -enum POTIONS -{ - POT_HEALING, // 0 - POT_HEAL_WOUNDS, - POT_SPEED, - POT_MIGHT, - POT_GAIN_STRENGTH, - POT_GAIN_DEXTERITY, // 5 - POT_GAIN_INTELLIGENCE, - POT_LEVITATION, - POT_POISON, - POT_SLOWING, - POT_PARALYSIS, // 10 - POT_CONFUSION, - POT_INVISIBILITY, - POT_PORRIDGE, - POT_DEGENERATION, - POT_DECAY, // 15 - POT_WATER, - POT_EXPERIENCE, - POT_MAGIC, - POT_RESTORE_ABILITIES, - POT_STRONG_POISON, // 20 - POT_BERSERK_RAGE, - POT_CURE_MUTATION, - POT_MUTATION, - NUM_POTIONS -}; - -enum PRONOUN_TYPE -{ - PRONOUN_CAP, // 0 - PRONOUN_NOCAP, // 1 - PRONOUN_CAP_POSSESSIVE, // 2 - PRONOUN_NOCAP_POSSESSIVE, // 3 - PRONOUN_REFLEXIVE // 4 (reflexive is always lowercase) -}; - -enum PROXIMITY // proximity to player to create monster -{ - PROX_ANYWHERE, - PROX_CLOSE_TO_PLAYER, - PROX_AWAY_FROM_PLAYER, - PROX_NEAR_STAIRS -}; - -enum RANDART_PROP -{ - RAP_BRAND, // 0 - RAP_AC, - RAP_EVASION, - RAP_STRENGTH, - RAP_INTELLIGENCE, - RAP_DEXTERITY, // 5 - RAP_FIRE, - RAP_COLD, - RAP_ELECTRICITY, - RAP_POISON, - RAP_NEGATIVE_ENERGY, // 10 - RAP_MAGIC, - RAP_EYESIGHT, - RAP_INVISIBLE, - RAP_LEVITATE, - RAP_BLINK, // 15 - RAP_CAN_TELEPORT, - RAP_BERSERK, - RAP_MAPPING, - RAP_NOISES, - RAP_PREVENT_SPELLCASTING, // 20 - RAP_CAUSE_TELEPORTATION, - RAP_PREVENT_TELEPORTATION, - RAP_ANGRY, - RAP_METABOLISM, - RAP_MUTAGENIC, // 25 - RAP_ACCURACY, - RAP_DAMAGE, - RAP_CURSED, - RAP_STEALTH -}; - -enum READ_BOOK_ACTION -{ - RBOOK_USE_STAFF, - RBOOK_MEMORIZE, - RBOOK_READ_SPELL -}; - -enum RUN_DIR -{ - RDIR_UP = 0, - RDIR_UP_RIGHT, - RDIR_RIGHT, - RDIR_DOWN_RIGHT, - RDIR_DOWN, - RDIR_DOWN_LEFT, - RDIR_LEFT, - RDIR_UP_LEFT, - RDIR_REST -}; - -enum RUNE_TYPES -{ - // Note: that runes DIS-SWAMP have the same numberic value as the branch - RUNE_DIS = 1, - RUNE_GEHENNA, - RUNE_COCYTUS = 4, - RUNE_TARTARUS, - RUNE_SLIME_PITS = 13, - RUNE_VAULTS, - RUNE_SNAKE_PIT = 19, - RUNE_ELVEN_HALLS, // unused - RUNE_TOMB, - RUNE_SWAMP, - - // Runes 50 and 51 are for Pandemonium (general demon) and the Abyss - RUNE_DEMONIC = 50, - RUNE_ABYSSAL, - - // Runes 60-63 correspond to the Pandemonium demonlords, - // and are equal to the corresponding vault. - RUNE_MNOLEG = 60, - RUNE_LOM_LOBON, - RUNE_CEREBOV, - RUNE_GLOORX_VLOQ, - NUM_RUNE_TYPES // should always be last -}; - -enum SCORE_FORMAT -{ - SCORE_TERSE, // one line - SCORE_REGULAR, // two lines (name, cause, blank) - SCORE_VERBOSE // everything (dates, times, god, etc) -}; - -enum SCROLLS -{ - SCR_IDENTIFY, // 0 - SCR_TELEPORTATION, - SCR_FEAR, - SCR_NOISE, - SCR_REMOVE_CURSE, - SCR_DETECT_CURSE, // 5 - SCR_SUMMONING, - SCR_ENCHANT_WEAPON_I, - SCR_ENCHANT_ARMOUR, - SCR_TORMENT, - SCR_RANDOM_USELESSNESS, // 10 - SCR_CURSE_WEAPON, - SCR_CURSE_ARMOUR, - SCR_IMMOLATION, - SCR_BLINKING, - SCR_PAPER, // 15 - SCR_MAGIC_MAPPING, - SCR_FORGETFULNESS, - SCR_ACQUIREMENT, - SCR_ENCHANT_WEAPON_II, - SCR_VORPALISE_WEAPON, // 20 - SCR_RECHARGING, - SCR_ENCHANT_WEAPON_III, - NUM_SCROLLS -}; - -enum SHOPS // (unsigned char) env.sh_type[], item_in_shop(), in_a_shop() -{ - SHOP_WEAPON, // 0 - SHOP_ARMOUR, - SHOP_WEAPON_ANTIQUE, - SHOP_ARMOUR_ANTIQUE, - SHOP_GENERAL_ANTIQUE, - SHOP_JEWELLERY, // 5 - SHOP_WAND, - SHOP_BOOK, - SHOP_FOOD, - SHOP_DISTILLERY, - SHOP_SCROLL, // 10 - SHOP_GENERAL, - NUM_SHOPS, // must remain last 'regular' member {dlb} - SHOP_UNASSIGNED = 100, // keep set at 100 for now {dlb} - SHOP_RANDOM = 255 // keep set at 255 for now {dlb} -}; - -enum SKILLS -{ - SK_FIGHTING, // 0 - SK_SHORT_BLADES, - SK_LONG_SWORDS, - SK_UNUSED_1, // SK_GREAT_SWORDS - now unused - SK_AXES, - SK_MACES_FLAILS, // 5 - SK_POLEARMS, - SK_STAVES, - SK_SLINGS, - SK_BOWS, - SK_CROSSBOWS, // 10 - SK_DARTS, - SK_THROWING, - SK_ARMOUR, - SK_DODGING, - SK_STEALTH, // 15 - SK_STABBING, - SK_SHIELDS, - SK_TRAPS_DOORS, - SK_UNARMED_COMBAT, // 19 - SK_SPELLCASTING = 25, // 25 - SK_CONJURATIONS, - SK_ENCHANTMENTS, - SK_SUMMONINGS, - SK_NECROMANCY, - SK_TRANSLOCATIONS, // 30 - SK_TRANSMIGRATION, - SK_DIVINATIONS, - SK_FIRE_MAGIC, - SK_ICE_MAGIC, - SK_AIR_MAGIC, // 35 - SK_EARTH_MAGIC, - SK_POISON_MAGIC, - SK_INVOCATIONS, - SK_EVOCATIONS, - NUM_SKILLS // must remain last member {dlb} -}; - -enum SPECIAL_ARMOR -{ - SPARM_NORMAL, // 0 - SPARM_RUNNING, - SPARM_FIRE_RESISTANCE, - SPARM_COLD_RESISTANCE, - SPARM_POISON_RESISTANCE, - SPARM_SEE_INVISIBLE, // 5 - SPARM_DARKNESS, - SPARM_STRENGTH, - SPARM_DEXTERITY, - SPARM_INTELLIGENCE, - SPARM_PONDEROUSNESS, // 10 - SPARM_LEVITATION, - SPARM_MAGIC_RESISTANCE, - SPARM_PROTECTION, - SPARM_STEALTH, - SPARM_RESISTANCE, // 15 - SPARM_POSITIVE_ENERGY, - SPARM_ARCHMAGI, - SPARM_PRESERVATION, // 18 - SPARM_RANDART_I = 25, // must remain at 25 for now - how high do they go? {dlb} - SPARM_RANDART_II = 26, // 26 - SPARM_RANDART_III = 27, // 27 - SPARM_RANDART_IV = 28, // 28 - SPARM_RANDART_V = 29 // 29 - highest value found thus far {dlb} -}; - -enum SPECIAL_MISSILES // to separate from weapons in general {dlb} -{ - SPMSL_NORMAL, // 0 - SPMSL_FLAME, // 1 - SPMSL_ICE, // 2 - SPMSL_POISONED, // 3 - from poison_ammo() enchantment {dlb} - SPMSL_POISONED_II, // 4 -}; - -enum SPECIAL_ROOMS -{ - SROOM_LAIR_ORC, // 0 - SROOM_LAIR_KOBOLD, - SROOM_TREASURY, - SROOM_BEEHIVE, - SROOM_MORGUE, - NUM_SPECIAL_ROOMS // 5 - must remain final member {dlb} -}; - -enum SPECIAL_RINGS // jewellery mitm[].special values -{ - SPRING_RANDART = 200, - SPRING_UNRANDART = 201 -}; - -enum SPECIAL_WEAPONS // equivalent to (you.inv[].special or mitm[].special) % 30 -{ - SPWPN_NORMAL, // 0 - SPWPN_FLAMING, - SPWPN_FREEZING, - SPWPN_HOLY_WRATH, - SPWPN_ELECTROCUTION, - SPWPN_ORC_SLAYING, // 5 - SPWPN_VENOM, - SPWPN_PROTECTION, - SPWPN_DRAINING, - SPWPN_SPEED, - SPWPN_VORPAL, // 10 - SPWPN_FLAME, - SPWPN_FROST, - SPWPN_VAMPIRICISM, - SPWPN_DISRUPTION, - SPWPN_PAIN, // 15 - SPWPN_DISTORTION, - SPWPN_REACHING, // 17 - SPWPN_CONFUSE, - SPWPN_RANDART_I = 25, // 25 - SPWPN_RANDART_II, - SPWPN_RANDART_III, - SPWPN_RANDART_IV, - SPWPN_RANDART_V, - NUM_SPECIAL_WEAPONS, - SPWPN_DUMMY_CRUSHING, // ONLY TEMPORARY USAGE -- converts to VORPAL - - // everything above this point is a special artefact wield: - SPWPN_SINGING_SWORD = 181, // 181 - SPWPN_WRATH_OF_TROG, - SPWPN_SCYTHE_OF_CURSES, - SPWPN_MACE_OF_VARIABILITY, - SPWPN_GLAIVE_OF_PRUNE, // 185 - SPWPN_SCEPTRE_OF_TORMENT, - SPWPN_SWORD_OF_ZONGULDROK, - - // these three are not generated randomly {dlb} - SPWPN_SWORD_OF_CEREBOV, - SPWPN_STAFF_OF_DISPATER, - SPWPN_SCEPTRE_OF_ASMODEUS, // 190 - - SPWPN_SWORD_OF_POWER, - SPWPN_KNIFE_OF_ACCURACY, - SPWPN_STAFF_OF_OLGREB, - SPWPN_VAMPIRES_TOOTH, - SPWPN_STAFF_OF_WUCAD_MU // 195 -}; - -enum SPECIAL_WIELD // you.special_wield -{ - SPWLD_NONE, // 0 - SPWLD_SING, - SPWLD_TROG, - SPWLD_CURSE, - SPWLD_VARIABLE, // 4 - SPWLD_PRUNE, // 5 - implicit in it_use3::special_wielded() {dlb} - SPWLD_TORMENT, // 6 - SPWLD_ZONGULDROK, - SPWLD_POWER, - SPWLD_WUCAD_MU, // 9 - SPWLD_OLGREB, // 10 - SPWLD_SHADOW = 50, // 50 - SPWLD_HUM, // 51 - see it_use3::special_wielded() {dlb} - SPWLD_CHIME, // 52 - see it_use3::special_wielded() {dlb} - SPWLD_BECKON, // 53 - see it_use3::special_wielded() {dlb} - SPWLD_SHOUT // 54 - see it_use3::special_wielded() {dlb} -}; - -enum SPECIES -{ - SP_HUMAN = 1, // 1 - SP_ELF, - SP_HIGH_ELF, - SP_GREY_ELF, - SP_DEEP_ELF, // 5 - SP_SLUDGE_ELF, - SP_HILL_DWARF, - SP_MOUNTAIN_DWARF, - SP_HALFLING, - SP_HILL_ORC, // 10 - SP_KOBOLD, - SP_MUMMY, - SP_NAGA, - SP_GNOME, - SP_OGRE, // 15 - SP_TROLL, - SP_OGRE_MAGE, - SP_RED_DRACONIAN, - SP_WHITE_DRACONIAN, - SP_GREEN_DRACONIAN, // 20 - SP_GOLDEN_DRACONIAN, - SP_GREY_DRACONIAN, - SP_BLACK_DRACONIAN, - SP_PURPLE_DRACONIAN, - SP_MOTTLED_DRACONIAN, // 25 - SP_PALE_DRACONIAN, - SP_UNK0_DRACONIAN, - SP_UNK1_DRACONIAN, - SP_UNK2_DRACONIAN, - SP_CENTAUR, // 30 - SP_DEMIGOD, - SP_SPRIGGAN, - SP_MINOTAUR, - SP_DEMONSPAWN, - SP_GHOUL, // 35 - SP_KENKU, - SP_MERFOLK, - NUM_SPECIES, // always after the last species - - SP_UNKNOWN = 100 -}; - -enum SPELLS -{ - SPELL_IDENTIFY, // 0 - SPELL_TELEPORT_SELF, - SPELL_CAUSE_FEAR, - SPELL_CREATE_NOISE, - SPELL_REMOVE_CURSE, - SPELL_MAGIC_DART, // 5 - SPELL_FIREBALL, - SPELL_SWAP, - SPELL_APPORTATION, - SPELL_TWIST, - SPELL_FAR_STRIKE, // 10 - SPELL_DELAYED_FIREBALL, - SPELL_STRIKING, - SPELL_CONJURE_FLAME, - SPELL_DIG, - SPELL_BOLT_OF_FIRE, // 15 - SPELL_BOLT_OF_COLD, - SPELL_LIGHTNING_BOLT, - SPELL_BOLT_OF_MAGMA, // 18 - SPELL_POLYMORPH_OTHER = 20, // 20 - SPELL_SLOW, - SPELL_HASTE, - SPELL_PARALYZE, - SPELL_CONFUSE, - SPELL_INVISIBILITY, // 25 - SPELL_THROW_FLAME, - SPELL_THROW_FROST, - SPELL_CONTROLLED_BLINK, - SPELL_FREEZING_CLOUD, - SPELL_MEPHITIC_CLOUD, // 30 - SPELL_RING_OF_FLAMES, - SPELL_RESTORE_STRENGTH, - SPELL_RESTORE_INTELLIGENCE, - SPELL_RESTORE_DEXTERITY, - SPELL_VENOM_BOLT, // 35 - SPELL_OLGREBS_TOXIC_RADIANCE, - SPELL_TELEPORT_OTHER, - SPELL_LESSER_HEALING, - SPELL_GREATER_HEALING, - SPELL_CURE_POISON_I, // 40 - SPELL_PURIFICATION, - SPELL_DEATHS_DOOR, - SPELL_SELECTIVE_AMNESIA, - SPELL_MASS_CONFUSION, - SPELL_SMITING, // 45 - SPELL_REPEL_UNDEAD, - SPELL_HOLY_WORD, - SPELL_DETECT_CURSE, - SPELL_SUMMON_SMALL_MAMMAL, - SPELL_ABJURATION_I, // 50 - SPELL_SUMMON_SCORPIONS, - SPELL_LEVITATION, - SPELL_BOLT_OF_DRAINING, - SPELL_LEHUDIBS_CRYSTAL_SPEAR, - SPELL_BOLT_OF_INACCURACY, // 55 - SPELL_POISONOUS_CLOUD, - SPELL_FIRE_STORM, - SPELL_DETECT_TRAPS, - SPELL_BLINK, - SPELL_ISKENDERUNS_MYSTIC_BLAST, // 60 - SPELL_SWARM, - SPELL_SUMMON_HORRIBLE_THINGS, - SPELL_ENSLAVEMENT, - SPELL_MAGIC_MAPPING, - SPELL_HEAL_OTHER, // 65 - SPELL_ANIMATE_DEAD, - SPELL_PAIN, - SPELL_EXTENSION, - SPELL_CONTROL_UNDEAD, - SPELL_ANIMATE_SKELETON, // 70 - SPELL_VAMPIRIC_DRAINING, - SPELL_SUMMON_WRAITHS, - SPELL_DETECT_ITEMS, - SPELL_BORGNJORS_REVIVIFICATION, - SPELL_BURN, // 75 - SPELL_FREEZE, - SPELL_SUMMON_ELEMENTAL, - SPELL_OZOCUBUS_REFRIGERATION, - SPELL_STICKY_FLAME, - SPELL_SUMMON_ICE_BEAST, // 80 - SPELL_OZOCUBUS_ARMOUR, - SPELL_CALL_IMP, - SPELL_REPEL_MISSILES, - SPELL_BERSERKER_RAGE, - SPELL_DISPEL_UNDEAD, // 85 - SPELL_GUARDIAN, - SPELL_PESTILENCE, - SPELL_THUNDERBOLT, - SPELL_FLAME_OF_CLEANSING, - SPELL_SHINING_LIGHT, // 90 - SPELL_SUMMON_DAEVA, - SPELL_ABJURATION_II, - SPELL_FULSOME_DISTILLATION, // 93 - SPELL_POISON_ARROW, // 94 - SPELL_TWISTED_RESURRECTION = 110, // 110 - SPELL_REGENERATION, - SPELL_BONE_SHARDS, - SPELL_BANISHMENT, - SPELL_CIGOTUVIS_DEGENERATION, - SPELL_STING, // 115 - SPELL_SUBLIMATION_OF_BLOOD, - SPELL_TUKIMAS_DANCE, - SPELL_HELLFIRE, - SPELL_SUMMON_DEMON, - SPELL_DEMONIC_HORDE, // 120 - SPELL_SUMMON_GREATER_DEMON, - SPELL_CORPSE_ROT, - SPELL_TUKIMAS_VORPAL_BLADE, - SPELL_FIRE_BRAND, - SPELL_FREEZING_AURA, // 125 - SPELL_LETHAL_INFUSION, - SPELL_CRUSH, - SPELL_BOLT_OF_IRON, - SPELL_STONE_ARROW, - SPELL_TOMB_OF_DOROKLOHE, // 130 - SPELL_STONEMAIL, - SPELL_SHOCK, - SPELL_SWIFTNESS, - SPELL_FLY, - SPELL_INSULATION, // 135 - SPELL_ORB_OF_ELECTROCUTION, - SPELL_DETECT_CREATURES, - SPELL_CURE_POISON_II, - SPELL_CONTROL_TELEPORT, - SPELL_POISON_AMMUNITION, // 140 - SPELL_POISON_WEAPON, - SPELL_RESIST_POISON, - SPELL_PROJECTED_NOISE, - SPELL_ALTER_SELF, - SPELL_DEBUGGING_RAY, // 145 - SPELL_RECALL, - SPELL_PORTAL, - SPELL_AGONY, - SPELL_SPIDER_FORM, - SPELL_DISRUPT, // 150 - SPELL_DISINTEGRATE, - SPELL_BLADE_HANDS, - SPELL_STATUE_FORM, - SPELL_ICE_FORM, - SPELL_DRAGON_FORM, // 155 - SPELL_NECROMUTATION, - SPELL_DEATH_CHANNEL, - SPELL_SYMBOL_OF_TORMENT, - SPELL_DEFLECT_MISSILES, - SPELL_ORB_OF_FRAGMENTATION, // 160 - SPELL_ICE_BOLT, - SPELL_ICE_STORM, - SPELL_ARC, - SPELL_AIRSTRIKE, - SPELL_SHADOW_CREATURES, // 165 - SPELL_CONFUSING_TOUCH, - SPELL_SURE_BLADE, -//jmf: new spells - SPELL_FLAME_TONGUE, - SPELL_PASSWALL, - SPELL_IGNITE_POISON, // 170 - SPELL_STICKS_TO_SNAKES, - SPELL_SUMMON_LARGE_MAMMAL, // e.g. hound - SPELL_SUMMON_DRAGON, - SPELL_TAME_BEASTS, // charm/enslave but only animals - SPELL_SLEEP, // 175 - SPELL_MASS_SLEEP, - SPELL_DETECT_MAGIC, //jmf: unfinished, perhaps useless - SPELL_DETECT_SECRET_DOORS, - SPELL_SEE_INVISIBLE, - SPELL_FORESCRY, // 180 - SPELL_SUMMON_BUTTERFLIES, - SPELL_WARP_BRAND, - SPELL_SILENCE, - SPELL_SHATTER, - SPELL_DISPERSAL, // 185 - SPELL_DISCHARGE, - SPELL_BEND, - SPELL_BACKLIGHT, - SPELL_INTOXICATE, // confusion but only "smart" creatures - SPELL_GLAMOUR, // charm/confuse/sleep but only "smart" creatures 190 - SPELL_EVAPORATE, // turn a potion into a cloud - SPELL_ERINGYAS_SURPRISING_BOUQUET, // turn sticks into herbivore food - SPELL_FRAGMENTATION, // replacement for "orb of frag" - SPELL_AIR_WALK, // "dematerialize" (air/transmigration) - SPELL_SANDBLAST, // mini-frag; can use stones for material comp 195 - SPELL_ROTTING, // evil god power or necromantic transmigration - SPELL_SHUGGOTH_SEED, // evil god power or necromantic summoning - SPELL_MAXWELLS_SILVER_HAMMER, // vorpal-brand maces etc. - SPELL_CONDENSATION_SHIELD, // "shield" of icy vapour - SPELL_SEMI_CONTROLLED_BLINK, //jmf: to test effect 200 - SPELL_STONESKIN, - SPELL_SIMULACRUM, - SPELL_CONJURE_BALL_LIGHTNING, // 203 (be wary of 210, see below) - NUM_SPELLS, - SPELL_NO_SPELL = 210 // 210 - added 22jan2000 {dlb} -}; - -enum SPELL_TYPES //jmf: 24jul2000: changed from integer-list to bitfield -{ - SPTYP_NONE = 0, // "0" is reserved for no type at all {dlb} - SPTYP_CONJURATION = 1, // was 11, but only for old typematch routine {dlb} - SPTYP_ENCHANTMENT = 1<<1, - SPTYP_FIRE = 1<<2, - SPTYP_ICE = 1<<3, - SPTYP_TRANSMIGRATION = 1<<4, - SPTYP_NECROMANCY = 1<<5, - SPTYP_SUMMONING = 1<<6, - SPTYP_DIVINATION = 1<<7, - SPTYP_TRANSLOCATION = 1<<8, - SPTYP_POISON = 1<<9, - SPTYP_EARTH = 1<<10, - SPTYP_AIR = 1<<11, - SPTYP_HOLY = 1<<12, //jmf: moved to accomodate "random" miscast f/x - SPTYP_LAST_EXPONENT = 12, //jmf: ``NUM_SPELL_TYPES'' kinda useless - NUM_SPELL_TYPES = 14, - SPTYP_RANDOM = 1<<14 -}; - -enum SLOT_SELECT_MODES -{ - SS_FORWARD = 0, - SS_BACKWARD = 1, -}; - -enum STATS -{ - STAT_STRENGTH, // 0 - STAT_DEXTERITY, - STAT_INTELLIGENCE, - NUM_STATS, // added for increase_stats() {dlb} - STAT_ALL, // must remain after NUM_STATS -- added to handle royal jelly, etc. {dlb} - STAT_RANDOM = 255 // leave at 255, added for increase_stats() handling {dlb} -}; - -enum STATUE_TYPES -{ - STATUE_SILVER, - STATUE_ORANGE_CRYSTAL, - NUM_STATUE_TYPES -}; - -enum STATUS_REDRAW_FLAGS -{ - REDRAW_HUNGER = 0x00000001, - REDRAW_BURDEN = 0x00000002, - REDRAW_LINE_1_MASK = 0x00000003, - - REDRAW_PRAYER = 0x00000100, - REDRAW_REPEL_UNDEAD = 0x00000200, - REDRAW_BREATH = 0x00000400, - REDRAW_REPEL_MISSILES = 0x00000800, - REDRAW_REGENERATION = 0x00001000, - REDRAW_INSULATION = 0x00002000, - REDRAW_FLY = 0x00004000, - REDRAW_INVISIBILITY = 0x00008000, - REDRAW_LINE_2_MASK = 0x0000ff00, - - REDRAW_CONFUSION = 0x00010000, - REDRAW_POISONED = 0x00020000, - REDRAW_LIQUID_FLAMES = 0x00040000, - REDRAW_DISEASED = 0x00080000, - REDRAW_CONTAMINATED = 0x00100000, - REDRAW_SWIFTNESS = 0x00200000, - REDRAW_SPEED = 0x00400000, - REDRAW_LINE_3_MASK = 0x007f0000 -}; - -enum STAVES -{ - STAFF_WIZARDRY, // 0 - STAFF_POWER, - STAFF_FIRE, - STAFF_COLD, - STAFF_POISON, - STAFF_ENERGY, // 5 - STAFF_DEATH, - STAFF_CONJURATION, - STAFF_ENCHANTMENT, - STAFF_SUMMONING, - STAFF_SMITING, // 10 - STAFF_SPELL_SUMMONING, - STAFF_DESTRUCTION_I, - STAFF_DESTRUCTION_II, - STAFF_DESTRUCTION_III, - STAFF_DESTRUCTION_IV, // 15 - STAFF_WARDING, - STAFF_DISCOVERY, - STAFF_DEMONOLOGY, // 18 - STAFF_STRIKING, // 19 - STAFF_AIR = 25, // 25 - STAFF_EARTH, - STAFF_CHANNELING, - NUM_STAVES // must remain last member {dlb} -}; - -enum SYMBOLS // beam[].type - note that this (and its variants) also accepts values from other enums - confusing {dlb} -{ - SYM_SPACE = ' ', // 32 - SYM_FLASK = '!', // 33 - SYM_BOLT = '#', // 35 - SYM_CHUNK = '%', // 37 - SYM_OBJECT = '(', // 40 - actually used for books, but... {dlb} - SYM_WEAPON = ')', // 41 - SYM_ZAP = '*', // 42 - SYM_BURST = '+', // 43 - SYM_STICK = '/', // 47 - SYM_TRINKET = '=', // 61 - SYM_SCROLL = '?', // 63 - SYM_DEBUG = 'X', // 88 - SYM_ARMOUR = '[', // 91 - SYM_MISSILE = '`' // 96 -}; - -enum TAGS // used during save/load process to identify data blocks -{ - TAG_VERSION = 0, // should NEVER be read in! - TAG_YOU = 1, // 'you' structure - TAG_YOU_ITEMS, // your items - TAG_YOU_DUNGEON, // dungeon specs (stairs, branches, features) - TAG_LEVEL, // various grids & clouds - TAG_LEVEL_ITEMS, // items/traps - TAG_LEVEL_MONSTERS, // monsters - TAG_GHOST, // ghost - TAG_LEVEL_ATTITUDE, // monster attitudes - NUM_TAGS -}; - -enum TAGTYPES // file types supported by tag system -{ - TAGTYPE_PLAYER=0, // Foo.sav - TAGTYPE_LEVEL, // Foo.00a, .01a, etc. - TAGTYPE_GHOST // bones.xxx -}; - - -enum TRANSFORMATIONS -{ - TRAN_NONE, // 0 - TRAN_SPIDER, - TRAN_BLADE_HANDS, - TRAN_STATUE, - TRAN_ICE_BEAST, - TRAN_DRAGON, // 5 - TRAN_LICH, - TRAN_SERPENT_OF_HELL, - TRAN_AIR, - NUM_TRANSFORMATIONS // must remain last member {dlb} -}; - -enum TRAPS // env.trap_type[] -{ - TRAP_DART, // 0 - TRAP_ARROW, - TRAP_SPEAR, - TRAP_AXE, - TRAP_TELEPORT, - TRAP_AMNESIA, // 5 - TRAP_BLADE, - TRAP_BOLT, - TRAP_ZOT, - TRAP_NEEDLE, - NUM_TRAPS, // must remain last 'regular' member {dlb} - TRAP_UNASSIGNED = 100, // keep set at 100 for now {dlb} - TRAP_RANDOM = 255 // set at 255 to avoid potential conflicts {dlb} -}; - -enum UNARMED_ATTACKS -{ - UNAT_NO_ATTACK, // 0 - UNAT_KICK, - UNAT_HEADBUTT, - UNAT_TAILSLAP, - UNAT_PUNCH -}; - -enum UNDEAD_STATES // you.is_undead -{ - US_ALIVE, // 0 - US_HUNGRY_DEAD, - US_UNDEAD -}; - -enum UNIQUE_ITEM_STATUS -{ - UNIQ_NOT_EXISTS = 0, - UNIQ_EXISTS = 1, - UNIQ_LOST_IN_ABYSS = 2 -}; - -enum VORPAL_DESCRIPTIONS -{ - DVORP_CRUSHING, // 0 - DVORP_SLICING, - DVORP_PIERCING, - DVORP_CHOPPING -}; - -// NOTE: This order is very special! Its basically the same as ZAP_*, -// and there are bits of the code that still use that fact.. see zap_wand(). -enum WANDS // mitm[].subtype -{ - WAND_FLAME, // 0 - WAND_FROST, - WAND_SLOWING, - WAND_HASTING, - WAND_MAGIC_DARTS, - WAND_HEALING, // 5 - WAND_PARALYSIS, - WAND_FIRE, - WAND_COLD, - WAND_CONFUSION, - WAND_INVISIBILITY, // 10 - WAND_DIGGING, - WAND_FIREBALL, - WAND_TELEPORTATION, - WAND_LIGHTNING, - WAND_POLYMORPH_OTHER, // 15 - WAND_ENSLAVEMENT, - WAND_DRAINING, - WAND_RANDOM_EFFECTS, - WAND_DISINTEGRATION, - NUM_WANDS // must remain last member {dlb} -}; - -enum WEAPONS -{ -// Base weapons - WPN_CLUB, // 0 - WPN_MACE, - WPN_FLAIL, - WPN_DAGGER, - WPN_MORNINGSTAR, - WPN_SHORT_SWORD, // 5 - WPN_LONG_SWORD, - WPN_GREAT_SWORD, - WPN_SCIMITAR, - WPN_HAND_AXE, - WPN_BATTLEAXE, // 10 - WPN_SPEAR, - WPN_HALBERD, - WPN_SLING, - WPN_BOW, - WPN_CROSSBOW, // 15 - WPN_HAND_CROSSBOW, - WPN_GLAIVE, - WPN_QUARTERSTAFF, -// these three not created ordinarily - WPN_SCYTHE, - WPN_GIANT_CLUB, // 20 - WPN_GIANT_SPIKED_CLUB, -// "rare" weapons - some have special cases and are uncommon - WPN_EVENINGSTAR, - WPN_QUICK_BLADE, - WPN_KATANA, - WPN_EXECUTIONERS_AXE, // 25 - WPN_DOUBLE_SWORD, - WPN_TRIPLE_SWORD, - WPN_HAMMER, - WPN_ANCUS, - WPN_WHIP, // 30 - WPN_SABRE, - WPN_DEMON_BLADE, - WPN_DEMON_WHIP, - WPN_DEMON_TRIDENT, - WPN_BROAD_AXE, // 35 -// base items (continued) - WPN_WAR_AXE, - WPN_TRIDENT, - WPN_SPIKED_FLAIL, - WPN_GREAT_MACE, - WPN_GREAT_FLAIL, // 40 - WPN_KNIFE, - WPN_BLOWGUN, - WPN_FALCHION, - NUM_WEAPONS, // 44 - must remain last regular member {dlb} -// special cases - WPN_UNARMED = 500, // 500 - WPN_UNKNOWN = 1000, // 1000 - WPN_RANDOM -}; - -enum WEAPON_DESCRIPTIONS -{ - DWPN_PLAIN = 0, // 0 - added to round out enum {dlb} - DWPN_RUNED = 1, // 1 - DWPN_GLOWING, - DWPN_ORCISH, - DWPN_ELVEN, - DWPN_DWARVEN // 5 -}; - -enum WEAPON_PROPERTIES -{ - PWPN_DAMAGE, // 0 - PWPN_HIT, - PWPN_SPEED -}; - -#ifdef WIZARD - -enum WIZARD_OPTIONS -{ - WIZ_NEVER, // protect player from accidental wiz - WIZ_NO, // don't start character in wiz mode - WIZ_YES // start character in wiz mode -}; - -#endif - -enum ZAPS // zapping(), zappy() -{ - ZAP_FLAME, // 0 - ZAP_FROST, - ZAP_SLOWING, - ZAP_HASTING, - ZAP_MAGIC_DARTS, - ZAP_HEALING, // 5 - ZAP_PARALYSIS, - ZAP_FIRE, - ZAP_COLD, - ZAP_CONFUSION, - ZAP_INVISIBILITY, // 10 - ZAP_DIGGING, - ZAP_FIREBALL, - ZAP_TELEPORTATION, - ZAP_LIGHTNING, - ZAP_POLYMORPH_OTHER, // 15 - ZAP_VENOM_BOLT, - ZAP_NEGATIVE_ENERGY, - ZAP_CRYSTAL_SPEAR, - ZAP_BEAM_OF_ENERGY, - ZAP_MYSTIC_BLAST, // 20 - ZAP_ENSLAVEMENT, - ZAP_PAIN, - ZAP_STICKY_FLAME, - ZAP_DISPEL_UNDEAD, - ZAP_CLEANSING_FLAME, // 25 - ZAP_BONE_SHARDS, - ZAP_BANISHMENT, - ZAP_DEGENERATION, - ZAP_STING, - ZAP_HELLFIRE, // 30 - ZAP_IRON_BOLT, - ZAP_STRIKING, - ZAP_STONE_ARROW, - ZAP_ELECTRICITY, - ZAP_ORB_OF_ELECTRICITY, // 35 - ZAP_SPIT_POISON, - ZAP_DEBUGGING_RAY, - ZAP_BREATHE_FIRE, - ZAP_BREATHE_FROST, - ZAP_BREATHE_ACID, // 40 - ZAP_BREATHE_POISON, - ZAP_BREATHE_POWER, - ZAP_ENSLAVE_UNDEAD, - ZAP_AGONY, - ZAP_DISRUPTION, // 45 - ZAP_DISINTEGRATION, // 46 - ZAP_ISKS_CROSS, // 47: Isk's Cross -- commented out, deprecated {dlb} - ZAP_BREATHE_STEAM = 48, // 48 - ZAP_CONTROL_DEMON, - ZAP_ORB_OF_FRAGMENTATION, // 50 - ZAP_ICE_BOLT, - ZAP_ICE_STORM, - ZAP_BACKLIGHT, //jmf: added next bunch 19mar2000 - ZAP_SLEEP, - ZAP_FLAME_TONGUE, - ZAP_SANDBLAST, - ZAP_SMALL_SANDBLAST, - ZAP_MAGMA, - ZAP_POISON_ARROW, - NUM_ZAPS // must remain last member {dlb} -}; - - -#endif // ENUM_H |