1 #pragma once
2 
3 enum beam_type                  // bolt::flavour
4 {
5     BEAM_NONE,
6 
7     BEAM_MISSILE,
8     BEAM_MMISSILE,                //    and similarly irresistible things
9     BEAM_FIRE,
10     BEAM_COLD,
11     BEAM_MAGIC,
12     BEAM_ELECTRICITY,
13     BEAM_POISON,
14     BEAM_NEG,
15     BEAM_ACID,
16     BEAM_MIASMA,
17     BEAM_WATER,
18 
19     BEAM_SPORE,
20     BEAM_POISON_ARROW,
21     BEAM_DAMNATION,
22     BEAM_STICKY_FLAME,
23     BEAM_STEAM,
24     BEAM_ENERGY,
25     BEAM_HOLY,
26     BEAM_FRAG,
27     BEAM_LAVA,
28     BEAM_ICE,
29     BEAM_THUNDER,
30     BEAM_STUN_BOLT,
31     BEAM_DEVASTATION,
32     BEAM_RANDOM,                  // currently translates into FIRE..ACID
33     BEAM_CHAOS,
34     BEAM_UNRAVELLED_MAGIC,
35 
36     // Enchantments
37     BEAM_SLOW,
38     BEAM_FIRST_ENCHANTMENT = BEAM_SLOW,
39     BEAM_HASTE,
40     BEAM_MIGHT,
41     BEAM_HEALING,
42     BEAM_PARALYSIS,
43     BEAM_CONFUSION,
44     BEAM_INVISIBILITY,
45     BEAM_DIGGING,
46     BEAM_TELEPORT,
47     BEAM_POLYMORPH,
48     BEAM_MALMUTATE,
49     BEAM_CHARM,
50     BEAM_BANISH,
51     BEAM_PAIN,
52     BEAM_DISPEL_UNDEAD,
53     BEAM_MINDBURST,
54     BEAM_BLINK,
55     BEAM_BLINK_CLOSE,
56     BEAM_BECKONING,
57     BEAM_PETRIFY,
58     BEAM_CORONA,
59     BEAM_PORKALATOR,
60     BEAM_HIBERNATION,
61     BEAM_BERSERK,
62     BEAM_SLEEP,
63     BEAM_INNER_FLAME,
64     BEAM_SENTINEL_MARK,
65     BEAM_DIMENSION_ANCHOR,
66     BEAM_VULNERABILITY,
67     BEAM_MALIGN_OFFERING,
68     BEAM_VIRULENCE,
69     BEAM_AGILITY,
70     BEAM_SAP_MAGIC,
71     BEAM_DRAIN_MAGIC,
72     BEAM_TUKIMAS_DANCE,
73     BEAM_RESISTANCE,
74     BEAM_UNRAVELLING,
75     BEAM_SHARED_PAIN,
76     BEAM_IRRESISTIBLE_CONFUSION,
77     BEAM_INFESTATION,
78     BEAM_AGONY,
79     BEAM_VILE_CLUTCH,
80     BEAM_VAMPIRIC_DRAINING,
81     BEAM_CONCENTRATE_VENOM,
82     BEAM_LAST_ENCHANTMENT = BEAM_CONCENTRATE_VENOM,
83 
84     BEAM_MEPHITIC,
85     BEAM_AIR,
86     BEAM_PETRIFYING_CLOUD,
87     BEAM_ENSNARE,
88     BEAM_CRYSTAL,
89     BEAM_DEATH_RATTLE,
90     BEAM_LAST_REAL = BEAM_DEATH_RATTLE,
91 
92     // For getting the visual effect of a beam.
93     BEAM_VISUAL,
94 
95     BEAM_TORMENT_DAMAGE,          // Pseudo-beam for damage flavour.
96     BEAM_FIRST_PSEUDO = BEAM_TORMENT_DAMAGE,
97 
98     NUM_BEAMS
99 };
100