1 #pragma once 2 3 #include "tag-version.h" 4 5 enum attribute_type 6 { 7 #if TAG_MAJOR_VERSION == 34 8 ATTR_DIVINE_LIGHTNING_PROTECTION, 9 ATTR_DIVINE_REGENERATION, 10 #endif 11 ATTR_DIVINE_DEATH_CHANNEL, 12 ATTR_CARD_COUNTDOWN, 13 ATTR_BANISHMENT_IMMUNITY, // banishment immunity until 14 #if TAG_MAJOR_VERSION == 34 15 ATTR_DELAYED_FIREBALL, // bwr: reserve fireballs 16 #endif 17 ATTR_HELD, // caught in a net or web 18 ATTR_ABYSS_ENTOURAGE, // maximum number of hostile monsters in 19 // sight of the player while in the Abyss. 20 ATTR_DIVINE_VIGOUR, // strength of Ely's Divine Vigour 21 ATTR_DIVINE_STAMINA, // strength of Zin's Divine Stamina 22 ATTR_DIVINE_SHIELD, // strength of TSO's Divine Shield 23 #if TAG_MAJOR_VERSION == 34 24 ATTR_WEAPON_SWAP_INTERRUPTED, 25 #endif 26 ATTR_GOLD_FOUND, 27 ATTR_PURCHASES, // Gold amount spent at shops. 28 ATTR_DONATIONS, // Gold amount donated to Zin. 29 ATTR_MISC_SPENDING, // Spending for things like ziggurats. 30 #if TAG_MAJOR_VERSION == 34 31 ATTR_UNUSED1, // was ATTR_RND_LVL_BOOKS 32 ATTR_NOISES, 33 ATTR_SHADOWS, // Lantern of shadows effect. 34 ATTR_UNUSED2, // was ATTR_FRUIT_FOUND 35 ATTR_FLIGHT_UNCANCELLABLE, // Potion of flight is in effect. 36 ATTR_INVIS_UNCANCELLABLE, // Spell/potion of invis is in effect. 37 #endif 38 ATTR_PERM_FLIGHT, // Cache for flight from equipment 39 ATTR_SEEN_INVIS_TURN, // Last turn you saw something invisible. 40 ATTR_SEEN_INVIS_SEED, // Random seed for invis monster positions. 41 #if TAG_MAJOR_VERSION == 34 42 ATTR_UNUSED3, // old Beastly Appendage 43 #endif 44 ATTR_TITHE_BASE, // Remainder of untithed gold. 45 ATTR_EVOL_XP, // XP gained since last evolved mutation 46 ATTR_LIFE_GAINED, // XL when a felid gained a life. 47 ATTR_TEMP_MUTATIONS, // Number of temporary mutations the player has. 48 ATTR_TEMP_MUT_XP, // Amount of XP remaining before some temp muts 49 // will be removed 50 ATTR_NEXT_RECALL_TIME, // aut remaining until next ally will be recalled 51 ATTR_NEXT_RECALL_INDEX, // index+1 into recall_list for next recall 52 #if TAG_MAJOR_VERSION == 34 53 ATTR_EVOKER_XP, // How much xp remaining until next evoker charge 54 #endif 55 ATTR_SEEN_BEOGH, // Did an orc priest already offer conversion? 56 #if TAG_MAJOR_VERSION == 34 57 ATTR_XP_DRAIN, // Severity of current skill drain 58 #endif 59 ATTR_SEARING_RAY, // Are we currently firing a searing ray? 60 ATTR_RECITE_TYPE, // Recitation type. 61 ATTR_RECITE_SEED, // Recite text seed. 62 #if TAG_MAJOR_VERSION == 34 63 ATTR_RECITE_HP, // HP on start of recitation. 64 #endif 65 ATTR_SWIFTNESS, // Duration of future antiswiftness. 66 #if TAG_MAJOR_VERSION == 34 67 ATTR_BARBS_MSG, // Have we already printed a message on move? 68 #endif 69 ATTR_BARBS_POW, // How badly we are currently skewered 70 #if TAG_MAJOR_VERSION == 34 71 ATTR_REPEL_MISSILES, // Repel missiles active 72 ATTR_DEFLECT_MISSILES, // Deflect missiles active 73 #endif 74 ATTR_PORTAL_PROJECTILE, // Accuracy bonus during portal projectile 75 ATTR_GOD_WRATH_XP, // How much XP before our next god wrath check? 76 ATTR_GOD_WRATH_COUNT, // Number of stored retributions 77 ATTR_NEXT_DRAGON_TIME, // aut remaining until Dragon's Call summons another 78 ATTR_GOLD_GENERATED, // Count gold generated on non-Abyss levels this game. 79 #if TAG_MAJOR_VERSION == 34 80 ATTR_GOZAG_POTIONS, // Number of times you've bought potions from Gozag. 81 #endif 82 ATTR_GOZAG_SHOPS, // Number of shops you've funded from Gozag. 83 ATTR_GOZAG_SHOPS_CURRENT, // As above, but since most recent time worshipping. 84 #if TAG_MAJOR_VERSION == 34 85 ATTR_DIVINE_FIRE_RES, // Divine fire resistance (Qazlal). 86 ATTR_DIVINE_COLD_RES, // Divine cold resistance (Qazlal). 87 ATTR_DIVINE_ELEC_RES, // Divine electricity resistance (Qazlal). 88 ATTR_DIVINE_AC, // Divine AC bonus (Qazlal). 89 #endif 90 ATTR_GOZAG_GOLD_USED, // Gold spent for Gozag abilities. 91 #if TAG_MAJOR_VERSION == 34 92 ATTR_BONE_ARMOUR, // Current amount of bony armour (from the spell) 93 ATTR_LAST_FLIGHT_STATUS, // Whether SPARM_FLIGHT should be restored after form change 94 ATTR_GOZAG_FIRST_POTION, // Gozag's free first usage of Potion Petition. 95 #endif 96 ATTR_STAT_LOSS_XP, // Unmodified XP needed for stat recovery. 97 #if TAG_MAJOR_VERSION == 34 98 ATTR_SURGE_REMOVED, // Was surge power applied to next evocation. 99 ATTR_PAKELLAS_EXTRA_MP, // MP to be collected to get a !magic from P 100 ATTR_DIVINE_ENERGY, // Divine energy from Sif to cast with no MP. 101 #endif 102 ATTR_SERPENTS_LASH, // Remaining instant movement actions. 103 #if TAG_MAJOR_VERSION == 34 104 ATTR_HEAVENLY_STORM, // Strength of Heavenly Storm slaying. 105 ATTR_WALL_JUMP_READY, // Ready to perform a wall jump. 106 #endif 107 ATTR_DEATHS_DOOR_HP, // How much HP we should have under Death's Door 108 NUM_ATTRIBUTES 109 }; 110