1. local config = EventHorizon.config
  2.  
  3.  
  4. local usemouseover = true -- Make this false or nil (or just delete the line altogether) to make your healing bars not change when you mouse over something.
  5.  
  6.  
  7. function EventHorizon:InitializeClass()
  8. self.config.gcdSpellID = 1082
  9.  
  10. -- Feral bars (most require token points in Feral just to make sure they're appropriate to show).
  11.  
  12. -- Savage Roar (Cat)
  13. self:NewSpell({
  14. spellID = 52610,
  15. playerbuff = true,
  16. stance = 3,
  17. requiredTalent = {2,1},
  18. })
  19.  
  20. -- Mangle (Cat)
  21. self:NewSpell({
  22. spellID = 33876,
  23. debuff = {33876, 33878, 46855}, -- Mangle - Cat, Mangle - Bear, Trauma
  24. unique = true,
  25. stance = 3,
  26. cooldown = true,
  27. requiredTalent = {2,26},
  28. })
  29.  
  30. -- Mangle (Bear)
  31. self:NewSpell({
  32. spellID = 33878,
  33. debuff = {33878, 33876, 46855}, -- Mangle - Bear, Mangle - Cat, Trauma
  34. cooldown = true,
  35. unique = true,
  36. stance = 1,
  37. requiredTalent = {2,26},
  38. })
  39.  
  40. -- Feral Faerie Fire
  41. self:NewSpell({
  42. spellID = 16857,
  43. debuff = true,
  44. stance = 1,
  45. cooldown = true
  46. requiredTalent = {2,1},
  47. })
  48.  
  49. -- Lacerate (Bear)
  50. self:NewSpell({
  51. spellID = 33745,
  52. debuff = true,
  53. stance = 1,
  54. requiredTalent = {2,1},
  55. })
  56.  
  57. -- Demo Roar/AP Debuffs (Bear)
  58. self:NewSpell({
  59. spellID = 99,
  60. debuff = {1160,99,50511,26017}, --Demo Shout, Demo Roar (Druid), CoW (Warlock), Vindication (Paladin)
  61. unique = true,
  62. stance = 1,
  63. requiredTalent = {2,1},
  64. })
  65.  
  66. -- Rip (Cat)
  67. self:NewSpell({
  68. spellID = 1079,
  69. debuff = true,
  70. refreshable = true,
  71. dot = 2,
  72. glyphrefresh = {3,54815,"Shred"},
  73. stance = 3,
  74. requiredTalent = {2,1},
  75. })
  76.  
  77. -- Rake (Cat)
  78. self:NewSpell({
  79. spellID = 1822,
  80. debuff = true,
  81. dot = 3,
  82. stance = 3,
  83. requiredTalent = {2,1},
  84. })
  85.  
  86. -- Enrage (Bear)
  87. self:NewSpell({
  88. spellID = 5229,
  89. playerbuff = true,
  90. cooldown = true,
  91. stance = 1,
  92. requiredTalent = {2,1},
  93. })
  94.  
  95. -- Barkskin (Bear)
  96. --[[self:NewSpell({
  97. spellID = 22812,
  98. playerbuff = true,
  99. cooldown = true,
  100. stance = 1,
  101. requiredTalent = {2,1},
  102. })]]--
  103.  
  104. -- Tiger's Fury (Cat, if specced)
  105. self:NewSpell({
  106. spellID = 5217,
  107. playerbuff = true,
  108. cooldown = true,
  109. stance = 3,
  110. requiredTalent = {2,25},
  111. })
  112.  
  113. -- Berserk
  114. --[[self:NewSpell({
  115. spellID = 50334,
  116. playerbuff = true,
  117. cooldown = true,
  118. requiredTalent = {2,30},
  119. })]]--
  120.  
  121. -- Balance bars (most require Moonkin form).
  122.  
  123. -- Wrath
  124. self:NewSpell({
  125. spellID = 5176,
  126. uniqueID = 48518,
  127. playerbuff = 48518,
  128. internalcooldown = 30,
  129. cast = true,
  130. requiredTalent = {1,18},
  131. })
  132.  
  133. -- Starfire
  134. self:NewSpell({
  135. spellID = 2912,
  136. uniqueID = 48517,
  137. playerbuff = 48517,
  138. internalcooldown = 30,
  139. cast = true,
  140. requiredTalent = {1,18},
  141. })
  142.  
  143. -- Moonfire
  144. self:NewSpell({
  145. spellID = 8921,
  146. debuff = true,
  147. dot = 3,
  148. refreshable = true, -- Glyphed refreshes
  149. requiredTalent = {1,18},
  150. glyphrefresh = {3,54845,"Starfire"},
  151. cleu = "SPELL_CAST_SUCCESS",
  152. })
  153.  
  154. -- Insect Swarm
  155. self:NewSpell({
  156. spellID = 24974,
  157. debuff = true,
  158. dot = 2,
  159. requiredTalent = {1,18},
  160. })
  161.  
  162. -- Starfall
  163. self:NewSpell({
  164. spellID = 53199,
  165. playerbuff = true,
  166. cooldown = true,
  167. requiredTalent = {1,28},
  168. })
  169.  
  170. -- Typhoon
  171. self:NewSpell({
  172. spellID = 53223,
  173. cooldown = true,
  174. playerbuff = {67360,71177,60569,60568}, -- Idol procs.
  175. requiredTalent = {1,24},
  176. })
  177.  
  178. -- Resto bars (most require Swiftmend).
  179.  
  180. -- Lifebloom
  181. self:NewSpell({
  182. spellID = 33763,
  183. playerbuff = true,
  184. auraunit = usemouseover and 'mouseover' or 'target',
  185. refreshable = true, -- Whaddya know. It refreshes...
  186. dot = 1,
  187. requiredTalent = {3,18},
  188. })
  189.  
  190. -- Rejuvenation
  191. self:NewSpell({
  192. spellID = 774,
  193. playerbuff = true,
  194. auraunit = usemouseover and 'mouseover' or 'target',
  195. dot = 3,
  196. requiredTalent = {3,18},
  197. hasted = 71013, -- Glyph of Rejuvenation
  198. expectedTicks = 6,
  199. })
  200.  
  201. -- Regrowth
  202. self:NewSpell({
  203. spellID = 8936,
  204. cast = true,
  205. playerbuff = true,
  206. auraunit = usemouseover and 'mouseover' or 'target',
  207. dot = 3,
  208. requiredTalent = {3,18},
  209. })
  210.  
  211. -- Swiftmend
  212. self:NewSpell({
  213. spellID = 18562,
  214. auraunit = usemouseover and 'mouseover' or 'target',
  215. cooldown = true,
  216. requiredTalent = {3,18},
  217. })
  218.  
  219. -- Wild Growth
  220. self:NewSpell({
  221. spellID = 53249,
  222. playerbuff = true,
  223. auraunit = usemouseover and 'mouseover' or 'target',
  224. cooldown = true,
  225. dot = 1,
  226. requiredTalent = {3,27},
  227. })
  228.  
  229. -- Nourish (including Nature's Grace)
  230. self:NewSpell({
  231. spellID = 50464,
  232. playerbuff = 16886,
  233. auraunit = usemouseover and 'mouseover' or 'target',
  234. cast = true,
  235. requiredTalent = {3,18},
  236. })
  237.  
  238. -- Omen of Clarity (all specs)
  239. --[[self:NewSpell({
  240. spellID = 16870,
  241. playerbuff = true,
  242. refreshable = true,
  243. requiredTalent = {3,8},
  244. })]]--
  245.  
  246. return true
  247. end