1 #pragma once 2 3 #include "tag-version.h" 4 5 enum ability_type 6 { 7 ABIL_NON_ABILITY = -1, 8 // Innate abilities and (Demonspawn) mutations. 9 ABIL_SPIT_POISON = 1, 10 ABIL_BREATHE_FIRE, 11 ABIL_BREATHE_FROST, 12 ABIL_BREATHE_POISON, 13 ABIL_BREATHE_LIGHTNING, 14 ABIL_BREATHE_POWER, 15 #if TAG_MAJOR_VERSION == 34 16 ABIL_BREATHE_STICKY_FLAME, 17 #endif 18 ABIL_BREATHE_STEAM, 19 ABIL_BREATHE_MEPHITIC, 20 ABIL_BREATHE_ACID, 21 // Others 22 #if TAG_MAJOR_VERSION == 34 23 ABIL_BLINK, 24 ABIL_DELAYED_FIREBALL, 25 #endif 26 // Abort duration-based spells 27 ABIL_END_TRANSFORMATION, 28 #if TAG_MAJOR_VERSION == 34 29 ABIL_STOP_SINGING, // From song of slaying 30 ABIL_CANCEL_PPROJ, 31 #endif 32 33 // Species-specific abilities. 34 // Demonspawn-only 35 ABIL_DAMNATION, 36 ABIL_WORD_OF_CHAOS, 37 #if TAG_MAJOR_VERSION == 34 38 ABIL_FLY, 39 ABIL_WISP_BLINK, 40 ABIL_STOP_FLYING, 41 ABIL_MUMMY_RESTORATION, 42 #endif 43 // Vampires 44 ABIL_TRAN_BAT, 45 ABIL_EXSANGUINATE, 46 ABIL_REVIVIFY, 47 #if TAG_MAJOR_VERSION == 34 48 ABIL_BOTTLE_BLOOD, 49 #endif 50 // Deep Dwarves 51 ABIL_HEAL_WOUNDS, 52 // Formicids 53 ABIL_DIG, 54 ABIL_SHAFT_SELF, 55 // Barachim 56 ABIL_HOP, 57 // Palentongas 58 ABIL_ROLLING_CHARGE, 59 // Air Walk 60 ABIL_BLINKBOLT, 61 ABIL_MAX_INTRINSIC = ABIL_BLINKBOLT, 62 63 // Evoking items. 64 ABIL_EVOKE_BERSERK = 40, 65 ABIL_MIN_EVOKE = ABIL_EVOKE_BERSERK, 66 #if TAG_MAJOR_VERSION == 34 67 ABIL_EVOKE_TELEPORTATION, 68 #endif 69 ABIL_EVOKE_BLINK, 70 ABIL_EVOKE_TURN_INVISIBLE, 71 #if TAG_MAJOR_VERSION == 34 72 ABIL_EVOKE_TURN_VISIBLE, 73 ABIL_EVOKE_FLIGHT, 74 ABIL_EVOKE_STOP_LEVITATING, 75 ABIL_EVOKE_FOG, 76 ABIL_EVOKE_TELEPORT_CONTROL, 77 ABIL_EVOKE_TWISTER, 78 ABIL_EVOKE_RATSKIN, 79 #endif 80 ABIL_EVOKE_THUNDER, 81 ABIL_MAX_EVOKE = ABIL_EVOKE_THUNDER, 82 83 // Divine abilities 84 // Zin 85 ABIL_ZIN_SUSTENANCE = 1000, 86 ABIL_FIRST_RELIGIOUS_ABILITY = ABIL_ZIN_SUSTENANCE, 87 ABIL_ZIN_RECITE, 88 ABIL_ZIN_VITALISATION, 89 ABIL_ZIN_IMPRISON, 90 ABIL_ZIN_SANCTUARY, 91 #if TAG_MAJOR_VERSION == 34 92 ABIL_ZIN_CURE_ALL_MUTATIONS, 93 #endif 94 ABIL_ZIN_DONATE_GOLD, 95 // TSO 96 ABIL_TSO_DIVINE_SHIELD = 1010, 97 ABIL_TSO_CLEANSING_FLAME, 98 ABIL_TSO_SUMMON_DIVINE_WARRIOR, 99 ABIL_TSO_BLESS_WEAPON, 100 // Kiku 101 ABIL_KIKU_RECEIVE_CORPSES = 1020, 102 ABIL_KIKU_TORMENT, 103 ABIL_KIKU_BLESS_WEAPON, 104 ABIL_KIKU_GIFT_CAPSTONE_SPELLS, 105 // Yredelemnul 106 ABIL_YRED_INJURY_MIRROR = 1030, 107 ABIL_YRED_ANIMATE_REMAINS, 108 ABIL_YRED_RECALL_UNDEAD_SLAVES, 109 ABIL_YRED_ANIMATE_DEAD, 110 ABIL_YRED_DRAIN_LIFE, 111 ABIL_YRED_ENSLAVE_SOUL, 112 // Vehumet 113 // = 1040 114 // Okawaru 115 ABIL_OKAWARU_HEROISM = 1050, 116 ABIL_OKAWARU_FINESSE, 117 // Makhleb 118 ABIL_MAKHLEB_MINOR_DESTRUCTION = 1060, 119 ABIL_MAKHLEB_LESSER_SERVANT_OF_MAKHLEB, 120 ABIL_MAKHLEB_MAJOR_DESTRUCTION, 121 ABIL_MAKHLEB_GREATER_SERVANT_OF_MAKHLEB, 122 // Sif Muna 123 ABIL_SIF_MUNA_CHANNEL_ENERGY = 1070, 124 ABIL_SIF_MUNA_FORGET_SPELL, 125 #if TAG_MAJOR_VERSION == 34 126 ABIL_SIF_MUNA_DIVINE_ENERGY, 127 ABIL_SIF_MUNA_STOP_DIVINE_ENERGY, 128 #endif 129 ABIL_SIF_MUNA_DIVINE_EXEGESIS, 130 // Trog 131 ABIL_TROG_BERSERK = 1080, 132 ABIL_TROG_HAND, 133 ABIL_TROG_BROTHERS_IN_ARMS, 134 // Elyvilon 135 ABIL_ELYVILON_LIFESAVING = 1090, 136 ABIL_ELYVILON_LESSER_HEALING, 137 #if TAG_MAJOR_VERSION == 34 138 ABIL_ELYVILON_LESSER_HEALING_OTHERS, 139 #endif 140 ABIL_ELYVILON_PURIFICATION, 141 ABIL_ELYVILON_GREATER_HEALING, 142 ABIL_ELYVILON_HEAL_OTHER, 143 ABIL_ELYVILON_DIVINE_VIGOUR, 144 // Lugonu 145 ABIL_LUGONU_ABYSS_EXIT = 1100, 146 ABIL_LUGONU_BEND_SPACE, 147 ABIL_LUGONU_BANISH, 148 ABIL_LUGONU_CORRUPT, 149 ABIL_LUGONU_ABYSS_ENTER, 150 ABIL_LUGONU_BLESS_WEAPON, 151 // Nemelex 152 #if TAG_MAJOR_VERSION == 34 153 ABIL_NEMELEX_DRAW_ONE = 1110, 154 ABIL_NEMELEX_PEEK_TWO, 155 #endif 156 ABIL_NEMELEX_TRIPLE_DRAW = 1112, 157 ABIL_NEMELEX_DEAL_FOUR, 158 ABIL_NEMELEX_STACK_FIVE, 159 160 ABIL_NEMELEX_DRAW_STACK, 161 ABIL_NEMELEX_DRAW_ESCAPE, 162 ABIL_NEMELEX_FIRST_DECK = ABIL_NEMELEX_DRAW_ESCAPE, 163 ABIL_NEMELEX_DRAW_DESTRUCTION, 164 ABIL_NEMELEX_DRAW_SUMMONING, 165 ABIL_NEMELEX_LAST_DECK = ABIL_NEMELEX_DRAW_SUMMONING, 166 // Beogh 167 ABIL_BEOGH_SMITING = 1120, 168 ABIL_BEOGH_RECALL_ORCISH_FOLLOWERS, 169 ABIL_BEOGH_GIFT_ITEM, 170 ABIL_BEOGH_RESURRECTION, 171 // Jiyva 172 ABIL_JIYVA_CALL_JELLY = 1130, 173 #if TAG_MAJOR_VERSION == 34 174 ABIL_JIYVA_JELLY_PARALYSE, 175 #endif 176 ABIL_JIYVA_SLIMIFY, 177 ABIL_JIYVA_CURE_BAD_MUTATION, 178 // Fedhas 179 ABIL_FEDHAS_WALL_OF_BRIARS = 1140, 180 ABIL_FEDHAS_GROW_BALLISTOMYCETE, 181 ABIL_FEDHAS_OVERGROW, 182 ABIL_FEDHAS_GROW_OKLOB, 183 // Cheibriados 184 ABIL_CHEIBRIADOS_TIME_STEP = 1151, 185 ABIL_CHEIBRIADOS_TIME_BEND, 186 ABIL_CHEIBRIADOS_SLOUCH, 187 ABIL_CHEIBRIADOS_DISTORTION, 188 // Ashenzari 189 #if TAG_MAJOR_VERSION == 34 190 ABIL_ASHENZARI_SCRYING = 1160, 191 ABIL_ASHENZARI_TRANSFER_KNOWLEDGE, 192 ABIL_ASHENZARI_END_TRANSFER, 193 ABIL_ASHENZARI_CURSE, 194 #else 195 ABIL_ASHENZARI_CURSE = 1160, 196 #endif 197 ABIL_ASHENZARI_UNCURSE, 198 // Dithmenos 199 ABIL_DITHMENOS_SHADOW_STEP = 1170, 200 ABIL_DITHMENOS_SHADOW_FORM, 201 // Gozag 202 ABIL_GOZAG_POTION_PETITION = 1180, 203 ABIL_GOZAG_CALL_MERCHANT, 204 ABIL_GOZAG_BRIBE_BRANCH, 205 // Qazlal 206 ABIL_QAZLAL_UPHEAVAL = 1190, 207 ABIL_QAZLAL_ELEMENTAL_FORCE, 208 ABIL_QAZLAL_DISASTER_AREA, 209 // Ru 210 ABIL_RU_DRAW_OUT_POWER = 1200, 211 ABIL_RU_POWER_LEAP, 212 ABIL_RU_APOCALYPSE, 213 214 ABIL_RU_SACRIFICE_PURITY, 215 ABIL_FIRST_SACRIFICE = ABIL_RU_SACRIFICE_PURITY, 216 ABIL_RU_SACRIFICE_WORDS, 217 ABIL_RU_SACRIFICE_DRINK, 218 ABIL_RU_SACRIFICE_ESSENCE, 219 ABIL_RU_SACRIFICE_HEALTH, 220 ABIL_RU_SACRIFICE_STEALTH, 221 ABIL_RU_SACRIFICE_ARTIFICE, 222 ABIL_RU_SACRIFICE_LOVE, 223 ABIL_RU_SACRIFICE_COURAGE, 224 ABIL_RU_SACRIFICE_ARCANA, 225 ABIL_RU_SACRIFICE_NIMBLENESS, 226 ABIL_RU_SACRIFICE_DURABILITY, 227 ABIL_RU_SACRIFICE_HAND, 228 ABIL_RU_SACRIFICE_EXPERIENCE, 229 ABIL_RU_SACRIFICE_SKILL, 230 ABIL_RU_SACRIFICE_EYE, 231 ABIL_RU_SACRIFICE_RESISTANCE, 232 ABIL_FINAL_SACRIFICE = ABIL_RU_SACRIFICE_RESISTANCE, 233 ABIL_RU_REJECT_SACRIFICES, 234 235 #if TAG_MAJOR_VERSION == 34 236 // Pakellas 237 ABIL_PAKELLAS_DEVICE_SURGE = 1230, 238 ABIL_PAKELLAS_QUICK_CHARGE, 239 ABIL_PAKELLAS_SUPERCHARGE, 240 #endif 241 242 // Uskayaw 243 ABIL_USKAYAW_STOMP = 1240, 244 ABIL_USKAYAW_LINE_PASS, 245 ABIL_USKAYAW_GRAND_FINALE, 246 247 // Hepliaklqana 248 ABIL_HEPLIAKLQANA_RECALL = 1250, 249 ABIL_HEPLIAKLQANA_IDEALISE, 250 ABIL_HEPLIAKLQANA_TRANSFERENCE, 251 252 ABIL_HEPLIAKLQANA_TYPE_KNIGHT, 253 ABIL_HEPLIAKLQANA_FIRST_TYPE = ABIL_HEPLIAKLQANA_TYPE_KNIGHT, 254 ABIL_HEPLIAKLQANA_TYPE_BATTLEMAGE, 255 ABIL_HEPLIAKLQANA_TYPE_HEXER, 256 ABIL_HEPLIAKLQANA_LAST_TYPE = ABIL_HEPLIAKLQANA_TYPE_HEXER, 257 258 ABIL_HEPLIAKLQANA_IDENTITY, 259 260 #if TAG_MAJOR_VERSION == 34 261 ABIL_HEPLIAKLQANA_KNIGHT_REACHING, 262 ABIL_HEPLIAKLQANA_KNIGHT_CLEAVING, 263 ABIL_HEPLIAKLQANA_BATTLEMAGE_FORCE_LANCE, 264 ABIL_HEPLIAKLQANA_BATTLEMAGE_MAGMA, 265 ABIL_HEPLIAKLQANA_HEXER_MASS_CONFUSION, 266 ABIL_HEPLIAKLQANA_HEXER_ENGLACIATION, 267 #endif 268 269 // Wu Jian 270 ABIL_WU_JIAN_SERPENTS_LASH = 1280, 271 ABIL_WU_JIAN_HEAVENLY_STORM, 272 ABIL_WU_JIAN_LUNGE, 273 ABIL_WU_JIAN_WHIRLWIND, 274 ABIL_WU_JIAN_WALLJUMP, 275 276 // For both Yred and Beogh 277 ABIL_STOP_RECALL = 1500, 278 ABIL_LAST_RELIGIOUS_ABILITY = ABIL_STOP_RECALL, 279 280 // General divine (pseudo) abilities. 281 ABIL_RENOUNCE_RELIGION, 282 ABIL_CONVERT_TO_BEOGH, 283 NUM_ABILITIES 284 }; 285