@firestone-hs/simulate-bgs-battle 1.1.653 → 1.1.655

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (738) hide show
  1. package/dist/bgs-player-entity.d.ts +2 -0
  2. package/dist/bgs-player-entity.js.map +1 -1
  3. package/dist/cards/card.interface.d.ts +50 -5
  4. package/dist/cards/card.interface.js +17 -3
  5. package/dist/cards/card.interface.js.map +1 -1
  6. package/dist/cards/cards-data.d.ts +9 -1
  7. package/dist/cards/cards-data.js +19 -7
  8. package/dist/cards/cards-data.js.map +1 -1
  9. package/dist/cards/impl/_card-mappings.js +380 -0
  10. package/dist/cards/impl/_card-mappings.js.map +1 -1
  11. package/dist/cards/impl/bg-spell/azerite-empowerment.d.ts +2 -2
  12. package/dist/cards/impl/bg-spell/azerite-empowerment.js +1 -1
  13. package/dist/cards/impl/bg-spell/azerite-empowerment.js.map +1 -1
  14. package/dist/cards/impl/bg-spell/blood-gem-barrage.d.ts +2 -0
  15. package/dist/cards/impl/bg-spell/blood-gem-barrage.js +9 -0
  16. package/dist/cards/impl/bg-spell/blood-gem-barrage.js.map +1 -0
  17. package/dist/cards/impl/bg-spell/brood-of-nozdormu.d.ts +2 -0
  18. package/dist/cards/impl/bg-spell/brood-of-nozdormu.js +16 -0
  19. package/dist/cards/impl/bg-spell/brood-of-nozdormu.js.map +1 -0
  20. package/dist/cards/impl/bg-spell/eyes-of-the-earth-mother.d.ts +2 -0
  21. package/dist/cards/impl/bg-spell/eyes-of-the-earth-mother.js +19 -0
  22. package/dist/cards/impl/bg-spell/eyes-of-the-earth-mother.js.map +1 -0
  23. package/dist/cards/impl/bg-spell/hand-of-deios.d.ts +2 -0
  24. package/dist/cards/impl/bg-spell/hand-of-deios.js +36 -0
  25. package/dist/cards/impl/bg-spell/hand-of-deios.js.map +1 -0
  26. package/dist/cards/impl/bg-spell/murkys-fish.d.ts +2 -2
  27. package/dist/cards/impl/bg-spell/murkys-fish.js +1 -1
  28. package/dist/cards/impl/bg-spell/murkys-fish.js.map +1 -1
  29. package/dist/cards/impl/bg-spell/natural-blessing.d.ts +2 -2
  30. package/dist/cards/impl/bg-spell/natural-blessing.js +1 -1
  31. package/dist/cards/impl/bg-spell/natural-blessing.js.map +1 -1
  32. package/dist/cards/impl/bg-spell/shiny-ring.d.ts +2 -2
  33. package/dist/cards/impl/bg-spell/shiny-ring.js +1 -1
  34. package/dist/cards/impl/bg-spell/shiny-ring.js.map +1 -1
  35. package/dist/cards/impl/bg-spell/timewarped-bananas.d.ts +2 -0
  36. package/dist/cards/impl/bg-spell/timewarped-bananas.js +15 -0
  37. package/dist/cards/impl/bg-spell/timewarped-bananas.js.map +1 -0
  38. package/dist/cards/impl/bg-spell/timewarped-chefs-choice.d.ts +2 -0
  39. package/dist/cards/impl/bg-spell/timewarped-chefs-choice.js +17 -0
  40. package/dist/cards/impl/bg-spell/timewarped-chefs-choice.js.map +1 -0
  41. package/dist/cards/impl/bg-spell/timewarped-cloning-device.d.ts +2 -0
  42. package/dist/cards/impl/bg-spell/timewarped-cloning-device.js +24 -0
  43. package/dist/cards/impl/bg-spell/timewarped-cloning-device.js.map +1 -0
  44. package/dist/cards/impl/bg-spell/timewarped-conch.d.ts +2 -0
  45. package/dist/cards/impl/bg-spell/timewarped-conch.js +25 -0
  46. package/dist/cards/impl/bg-spell/timewarped-conch.js.map +1 -0
  47. package/dist/cards/impl/bg-spell/timewarped-corpse.d.ts +2 -0
  48. package/dist/cards/impl/bg-spell/timewarped-corpse.js +12 -0
  49. package/dist/cards/impl/bg-spell/timewarped-corpse.js.map +1 -0
  50. package/dist/cards/impl/bg-spell/timewarped-evolution.d.ts +2 -0
  51. package/dist/cards/impl/bg-spell/timewarped-evolution.js +17 -0
  52. package/dist/cards/impl/bg-spell/timewarped-evolution.js.map +1 -0
  53. package/dist/cards/impl/bg-spell/timewarped-goldenizer.d.ts +2 -0
  54. package/dist/cards/impl/bg-spell/timewarped-goldenizer.js +18 -0
  55. package/dist/cards/impl/bg-spell/timewarped-goldenizer.js.map +1 -0
  56. package/dist/cards/impl/bg-spell/timewarped-master-thief.d.ts +2 -0
  57. package/dist/cards/impl/bg-spell/timewarped-master-thief.js +21 -0
  58. package/dist/cards/impl/bg-spell/timewarped-master-thief.js.map +1 -0
  59. package/dist/cards/impl/bg-spell/timewarped-on-the-house.d.ts +2 -0
  60. package/dist/cards/impl/bg-spell/timewarped-on-the-house.js +12 -0
  61. package/dist/cards/impl/bg-spell/timewarped-on-the-house.js.map +1 -0
  62. package/dist/cards/impl/bg-spell/timewarped-rat-in-the-cage.d.ts +2 -0
  63. package/dist/cards/impl/bg-spell/timewarped-rat-in-the-cage.js +18 -0
  64. package/dist/cards/impl/bg-spell/timewarped-rat-in-the-cage.js.map +1 -0
  65. package/dist/cards/impl/bg-spell/timewarped-ritual.d.ts +2 -0
  66. package/dist/cards/impl/bg-spell/timewarped-ritual.js +15 -0
  67. package/dist/cards/impl/bg-spell/timewarped-ritual.js.map +1 -0
  68. package/dist/cards/impl/bg-spell/timewarped-special.d.ts +2 -0
  69. package/dist/cards/impl/bg-spell/timewarped-special.js +13 -0
  70. package/dist/cards/impl/bg-spell/timewarped-special.js.map +1 -0
  71. package/dist/cards/impl/bg-spell/timewarped-thief.d.ts +2 -0
  72. package/dist/cards/impl/bg-spell/timewarped-thief.js +25 -0
  73. package/dist/cards/impl/bg-spell/timewarped-thief.js.map +1 -0
  74. package/dist/cards/impl/bg-spell/tomb-turning.d.ts +2 -0
  75. package/dist/cards/impl/bg-spell/tomb-turning.js +13 -0
  76. package/dist/cards/impl/bg-spell/tomb-turning.js.map +1 -0
  77. package/dist/cards/impl/bg-spell/wave-of-gold.d.ts +2 -0
  78. package/dist/cards/impl/bg-spell/wave-of-gold.js +16 -0
  79. package/dist/cards/impl/bg-spell/wave-of-gold.js.map +1 -0
  80. package/dist/cards/impl/minion/apexis-guardian.d.ts +2 -0
  81. package/dist/cards/impl/minion/apexis-guardian.js +27 -0
  82. package/dist/cards/impl/minion/apexis-guardian.js.map +1 -0
  83. package/dist/cards/impl/minion/arcane-cannoneer.js +3 -0
  84. package/dist/cards/impl/minion/arcane-cannoneer.js.map +1 -1
  85. package/dist/cards/impl/minion/archaedas.d.ts +2 -0
  86. package/dist/cards/impl/minion/archaedas.js +18 -0
  87. package/dist/cards/impl/minion/archaedas.js.map +1 -0
  88. package/dist/cards/impl/minion/auto-accelerator.d.ts +2 -0
  89. package/dist/cards/impl/minion/auto-accelerator.js +17 -0
  90. package/dist/cards/impl/minion/auto-accelerator.js.map +1 -0
  91. package/dist/cards/impl/minion/bannerboar.js +1 -1
  92. package/dist/cards/impl/minion/bannerboar.js.map +1 -1
  93. package/dist/cards/impl/minion/bassgill.d.ts +2 -0
  94. package/dist/cards/impl/minion/bassgill.js +35 -0
  95. package/dist/cards/impl/minion/bassgill.js.map +1 -0
  96. package/dist/cards/impl/minion/bloodsnout-warlord.js +1 -1
  97. package/dist/cards/impl/minion/bloodsnout-warlord.js.map +1 -1
  98. package/dist/cards/impl/minion/blue-volumizer.d.ts +2 -0
  99. package/dist/cards/impl/minion/blue-volumizer.js +18 -0
  100. package/dist/cards/impl/minion/blue-volumizer.js.map +1 -0
  101. package/dist/cards/impl/minion/bluesy-siren.d.ts +2 -0
  102. package/dist/cards/impl/minion/bluesy-siren.js +31 -0
  103. package/dist/cards/impl/minion/bluesy-siren.js.map +1 -0
  104. package/dist/cards/impl/minion/bongo-bopper.js +1 -1
  105. package/dist/cards/impl/minion/bongo-bopper.js.map +1 -1
  106. package/dist/cards/impl/minion/bonker.js +1 -1
  107. package/dist/cards/impl/minion/bonker.js.map +1 -1
  108. package/dist/cards/impl/minion/briarback-drummer.d.ts +2 -0
  109. package/dist/cards/impl/minion/briarback-drummer.js +14 -0
  110. package/dist/cards/impl/minion/briarback-drummer.js.map +1 -0
  111. package/dist/cards/impl/minion/briny-bootlegger.d.ts +2 -0
  112. package/dist/cards/impl/minion/briny-bootlegger.js +14 -0
  113. package/dist/cards/impl/minion/briny-bootlegger.js.map +1 -0
  114. package/dist/cards/impl/minion/budding-greenthumb.d.ts +2 -0
  115. package/dist/cards/impl/minion/budding-greenthumb.js +17 -0
  116. package/dist/cards/impl/minion/budding-greenthumb.js.map +1 -0
  117. package/dist/cards/impl/minion/canopy-swinger.js +2 -2
  118. package/dist/cards/impl/minion/canopy-swinger.js.map +1 -1
  119. package/dist/cards/impl/minion/charging-czarina.d.ts +2 -0
  120. package/dist/cards/impl/minion/charging-czarina.js +15 -0
  121. package/dist/cards/impl/minion/charging-czarina.js.map +1 -0
  122. package/dist/cards/impl/minion/charlga.js +1 -1
  123. package/dist/cards/impl/minion/charlga.js.map +1 -1
  124. package/dist/cards/impl/minion/choral-mrrrglr.d.ts +2 -5
  125. package/dist/cards/impl/minion/choral-mrrrglr.js +2 -0
  126. package/dist/cards/impl/minion/choral-mrrrglr.js.map +1 -1
  127. package/dist/cards/impl/minion/clunker-junker.js +1 -1
  128. package/dist/cards/impl/minion/clunker-junker.js.map +1 -1
  129. package/dist/cards/impl/minion/colossus.js +3 -0
  130. package/dist/cards/impl/minion/colossus.js.map +1 -1
  131. package/dist/cards/impl/minion/conveyor-construct.d.ts +2 -0
  132. package/dist/cards/impl/minion/conveyor-construct.js +17 -0
  133. package/dist/cards/impl/minion/conveyor-construct.js.map +1 -0
  134. package/dist/cards/impl/minion/costume-enthusiast.d.ts +2 -0
  135. package/dist/cards/impl/minion/costume-enthusiast.js +20 -0
  136. package/dist/cards/impl/minion/costume-enthusiast.js.map +1 -0
  137. package/dist/cards/impl/minion/dramaloc.d.ts +2 -0
  138. package/dist/cards/impl/minion/dramaloc.js +27 -0
  139. package/dist/cards/impl/minion/dramaloc.js.map +1 -0
  140. package/dist/cards/impl/minion/efficient-engineer.js +3 -1
  141. package/dist/cards/impl/minion/efficient-engineer.js.map +1 -1
  142. package/dist/cards/impl/minion/expert-aviator.d.ts +2 -0
  143. package/dist/cards/impl/minion/expert-aviator.js +39 -0
  144. package/dist/cards/impl/minion/expert-aviator.js.map +1 -0
  145. package/dist/cards/impl/minion/festergut.d.ts +2 -0
  146. package/dist/cards/impl/minion/festergut.js +20 -0
  147. package/dist/cards/impl/minion/festergut.js.map +1 -0
  148. package/dist/cards/impl/minion/forsaken-weaver.d.ts +2 -0
  149. package/dist/cards/impl/minion/forsaken-weaver.js +11 -0
  150. package/dist/cards/impl/minion/forsaken-weaver.js.map +1 -0
  151. package/dist/cards/impl/minion/futurefin.d.ts +2 -0
  152. package/dist/cards/impl/minion/futurefin.js +15 -0
  153. package/dist/cards/impl/minion/futurefin.js.map +1 -0
  154. package/dist/cards/impl/minion/gem-smuggler.js +1 -1
  155. package/dist/cards/impl/minion/gem-smuggler.js.map +1 -1
  156. package/dist/cards/impl/minion/gemsplitter.d.ts +2 -0
  157. package/dist/cards/impl/minion/gemsplitter.js +15 -0
  158. package/dist/cards/impl/minion/gemsplitter.js.map +1 -0
  159. package/dist/cards/impl/minion/ghoul-of-the-feast.d.ts +2 -0
  160. package/dist/cards/impl/minion/ghoul-of-the-feast.js +13 -0
  161. package/dist/cards/impl/minion/ghoul-of-the-feast.js.map +1 -0
  162. package/dist/cards/impl/minion/gilded-gargoyle.d.ts +2 -0
  163. package/dist/cards/impl/minion/gilded-gargoyle.js +13 -0
  164. package/dist/cards/impl/minion/gilded-gargoyle.js.map +1 -0
  165. package/dist/cards/impl/minion/glowgullet-warlord.js +1 -1
  166. package/dist/cards/impl/minion/glowgullet-warlord.js.map +1 -1
  167. package/dist/cards/impl/minion/goldrinn-the-great-wolf.js +2 -1
  168. package/dist/cards/impl/minion/goldrinn-the-great-wolf.js.map +1 -1
  169. package/dist/cards/impl/minion/green-volumizer.d.ts +2 -0
  170. package/dist/cards/impl/minion/green-volumizer.js +19 -0
  171. package/dist/cards/impl/minion/green-volumizer.js.map +1 -0
  172. package/dist/cards/impl/minion/hardy-orca.d.ts +2 -0
  173. package/dist/cards/impl/minion/hardy-orca.js +15 -0
  174. package/dist/cards/impl/minion/hardy-orca.js.map +1 -0
  175. package/dist/cards/impl/minion/heroic-underdog.d.ts +2 -0
  176. package/dist/cards/impl/minion/heroic-underdog.js +17 -0
  177. package/dist/cards/impl/minion/heroic-underdog.js.map +1 -0
  178. package/dist/cards/impl/minion/highkeeper-ra.d.ts +2 -0
  179. package/dist/cards/impl/minion/highkeeper-ra.js +28 -0
  180. package/dist/cards/impl/minion/highkeeper-ra.js.map +1 -0
  181. package/dist/cards/impl/minion/hot-springer.js +2 -2
  182. package/dist/cards/impl/minion/hot-springer.js.map +1 -1
  183. package/dist/cards/impl/minion/hunting-tiger-shark.d.ts +2 -0
  184. package/dist/cards/impl/minion/hunting-tiger-shark.js +18 -0
  185. package/dist/cards/impl/minion/hunting-tiger-shark.js.map +1 -0
  186. package/dist/cards/impl/minion/impulsive-trickster.js +7 -11
  187. package/dist/cards/impl/minion/impulsive-trickster.js.map +1 -1
  188. package/dist/cards/impl/minion/indomitable-mount.js +1 -1
  189. package/dist/cards/impl/minion/indomitable-mount.js.map +1 -1
  190. package/dist/cards/impl/minion/jelly-belly.d.ts +2 -0
  191. package/dist/cards/impl/minion/jelly-belly.js +12 -0
  192. package/dist/cards/impl/minion/jelly-belly.js.map +1 -0
  193. package/dist/cards/impl/minion/junk-jouster.d.ts +2 -0
  194. package/dist/cards/impl/minion/junk-jouster.js +15 -0
  195. package/dist/cards/impl/minion/junk-jouster.js.map +1 -0
  196. package/dist/cards/impl/minion/king-bagurgle.js +1 -1
  197. package/dist/cards/impl/minion/king-bagurgle.js.map +1 -1
  198. package/dist/cards/impl/minion/magicfin-apprentice.js +11 -13
  199. package/dist/cards/impl/minion/magicfin-apprentice.js.map +1 -1
  200. package/dist/cards/impl/minion/metal-dispenser.d.ts +2 -0
  201. package/dist/cards/impl/minion/metal-dispenser.js +17 -0
  202. package/dist/cards/impl/minion/metal-dispenser.js.map +1 -0
  203. package/dist/cards/impl/minion/murcules.d.ts +2 -0
  204. package/dist/cards/impl/minion/murcules.js +17 -0
  205. package/dist/cards/impl/minion/murcules.js.map +1 -0
  206. package/dist/cards/impl/minion/niuzao.js +3 -0
  207. package/dist/cards/impl/minion/niuzao.js.map +1 -1
  208. package/dist/cards/impl/minion/obisidian-ravager.js +3 -0
  209. package/dist/cards/impl/minion/obisidian-ravager.js.map +1 -1
  210. package/dist/cards/impl/minion/oozeling-gladiator.js +7 -2
  211. package/dist/cards/impl/minion/oozeling-gladiator.js.map +1 -1
  212. package/dist/cards/impl/minion/paint-smudger.d.ts +2 -0
  213. package/dist/cards/impl/minion/paint-smudger.js +16 -0
  214. package/dist/cards/impl/minion/paint-smudger.js.map +1 -0
  215. package/dist/cards/impl/minion/pashmar-the-vengeful.d.ts +2 -0
  216. package/dist/cards/impl/minion/pashmar-the-vengeful.js +17 -0
  217. package/dist/cards/impl/minion/pashmar-the-vengeful.js.map +1 -0
  218. package/dist/cards/impl/minion/piloted-whirl-o-tron.js +10 -2
  219. package/dist/cards/impl/minion/piloted-whirl-o-tron.js.map +1 -1
  220. package/dist/cards/impl/minion/plankwalker.d.ts +2 -0
  221. package/dist/cards/impl/minion/plankwalker.js +16 -0
  222. package/dist/cards/impl/minion/plankwalker.js.map +1 -0
  223. package/dist/cards/impl/minion/prized-promo-drake.js +1 -0
  224. package/dist/cards/impl/minion/prized-promo-drake.js.map +1 -1
  225. package/dist/cards/impl/minion/prodigious-tusker.js +1 -1
  226. package/dist/cards/impl/minion/prodigious-tusker.js.map +1 -1
  227. package/dist/cards/impl/minion/profound-thinker.d.ts +2 -0
  228. package/dist/cards/impl/minion/profound-thinker.js +27 -0
  229. package/dist/cards/impl/minion/profound-thinker.js.map +1 -0
  230. package/dist/cards/impl/minion/psychus.d.ts +2 -0
  231. package/dist/cards/impl/minion/psychus.js +16 -0
  232. package/dist/cards/impl/minion/psychus.js.map +1 -0
  233. package/dist/cards/impl/minion/radio-star.d.ts +2 -0
  234. package/dist/cards/impl/minion/radio-star.js +20 -0
  235. package/dist/cards/impl/minion/radio-star.js.map +1 -0
  236. package/dist/cards/impl/minion/rampager.d.ts +2 -0
  237. package/dist/cards/impl/minion/rampager.js +23 -0
  238. package/dist/cards/impl/minion/rampager.js.map +1 -0
  239. package/dist/cards/impl/minion/razorfen-flapper.d.ts +2 -0
  240. package/dist/cards/impl/minion/razorfen-flapper.js +14 -0
  241. package/dist/cards/impl/minion/razorfen-flapper.js.map +1 -0
  242. package/dist/cards/impl/minion/razorfen-geomancer.js +3 -4
  243. package/dist/cards/impl/minion/razorfen-geomancer.js.map +1 -1
  244. package/dist/cards/impl/minion/razorfen-vineweaver.js +1 -1
  245. package/dist/cards/impl/minion/razorfen-vineweaver.js.map +1 -1
  246. package/dist/cards/impl/minion/red-volumizer.d.ts +2 -0
  247. package/dist/cards/impl/minion/red-volumizer.js +18 -0
  248. package/dist/cards/impl/minion/red-volumizer.js.map +1 -0
  249. package/dist/cards/impl/minion/rickety-repairbot.js +1 -1
  250. package/dist/cards/impl/minion/rickety-repairbot.js.map +1 -1
  251. package/dist/cards/impl/minion/scourfin.d.ts +2 -0
  252. package/dist/cards/impl/minion/scourfin.js +14 -0
  253. package/dist/cards/impl/minion/scourfin.js.map +1 -0
  254. package/dist/cards/impl/minion/shell-collector.js +2 -2
  255. package/dist/cards/impl/minion/shell-collector.js.map +1 -1
  256. package/dist/cards/impl/minion/sinodorei-straight-shot.js +3 -0
  257. package/dist/cards/impl/minion/sinodorei-straight-shot.js.map +1 -1
  258. package/dist/cards/impl/minion/skulking-bristlemane.js +1 -1
  259. package/dist/cards/impl/minion/skulking-bristlemane.js.map +1 -1
  260. package/dist/cards/impl/minion/sly-raptor.js +3 -3
  261. package/dist/cards/impl/minion/sly-raptor.js.map +1 -1
  262. package/dist/cards/impl/minion/soulsplitter.d.ts +2 -5
  263. package/dist/cards/impl/minion/soulsplitter.js +3 -1
  264. package/dist/cards/impl/minion/soulsplitter.js.map +1 -1
  265. package/dist/cards/impl/minion/spellbound-soul.d.ts +2 -0
  266. package/dist/cards/impl/minion/spellbound-soul.js +19 -0
  267. package/dist/cards/impl/minion/spellbound-soul.js.map +1 -0
  268. package/dist/cards/impl/minion/spirit-drake.d.ts +2 -0
  269. package/dist/cards/impl/minion/spirit-drake.js +17 -0
  270. package/dist/cards/impl/minion/spirit-drake.js.map +1 -0
  271. package/dist/cards/impl/minion/spirit-of-air.d.ts +2 -0
  272. package/dist/cards/impl/minion/spirit-of-air.js +33 -0
  273. package/dist/cards/impl/minion/spirit-of-air.js.map +1 -0
  274. package/dist/cards/impl/minion/stalwart-kodo.d.ts +2 -0
  275. package/dist/cards/impl/minion/stalwart-kodo.js +17 -0
  276. package/dist/cards/impl/minion/stalwart-kodo.js.map +1 -0
  277. package/dist/cards/impl/minion/stoneshell-guardian.js +10 -2
  278. package/dist/cards/impl/minion/stoneshell-guardian.js.map +1 -1
  279. package/dist/cards/impl/minion/stuntdrake.d.ts +2 -0
  280. package/dist/cards/impl/minion/stuntdrake.js +24 -0
  281. package/dist/cards/impl/minion/stuntdrake.js.map +1 -0
  282. package/dist/cards/impl/minion/sunken-advocate.d.ts +2 -0
  283. package/dist/cards/impl/minion/sunken-advocate.js +20 -0
  284. package/dist/cards/impl/minion/sunken-advocate.js.map +1 -0
  285. package/dist/cards/impl/minion/swampstriker.js +5 -10
  286. package/dist/cards/impl/minion/swampstriker.js.map +1 -1
  287. package/dist/cards/impl/minion/the-last-one-standing.d.ts +2 -0
  288. package/dist/cards/impl/minion/the-last-one-standing.js +13 -0
  289. package/dist/cards/impl/minion/the-last-one-standing.js.map +1 -0
  290. package/dist/cards/impl/minion/three-lil-quilboar.js +1 -1
  291. package/dist/cards/impl/minion/three-lil-quilboar.js.map +1 -1
  292. package/dist/cards/impl/minion/timewarped-alleycat.d.ts +2 -0
  293. package/dist/cards/impl/minion/timewarped-alleycat.js +29 -0
  294. package/dist/cards/impl/minion/timewarped-alleycat.js.map +1 -0
  295. package/dist/cards/impl/minion/timewarped-archimonde.d.ts +2 -0
  296. package/dist/cards/impl/minion/timewarped-archimonde.js +10 -0
  297. package/dist/cards/impl/minion/timewarped-archimonde.js.map +1 -0
  298. package/dist/cards/impl/minion/timewarped-arm.d.ts +2 -0
  299. package/dist/cards/impl/minion/timewarped-arm.js +12 -0
  300. package/dist/cards/impl/minion/timewarped-arm.js.map +1 -0
  301. package/dist/cards/impl/minion/timewarped-bassgill.d.ts +2 -0
  302. package/dist/cards/impl/minion/timewarped-bassgill.js +35 -0
  303. package/dist/cards/impl/minion/timewarped-bassgill.js.map +1 -0
  304. package/dist/cards/impl/minion/timewarped-bloodbinder.d.ts +2 -0
  305. package/dist/cards/impl/minion/timewarped-bloodbinder.js +23 -0
  306. package/dist/cards/impl/minion/timewarped-bloodbinder.js.map +1 -0
  307. package/dist/cards/impl/minion/timewarped-bonker.d.ts +2 -0
  308. package/dist/cards/impl/minion/timewarped-bonker.js +15 -0
  309. package/dist/cards/impl/minion/timewarped-bonker.js.map +1 -0
  310. package/dist/cards/impl/minion/timewarped-botani.d.ts +2 -0
  311. package/dist/cards/impl/minion/timewarped-botani.js +17 -0
  312. package/dist/cards/impl/minion/timewarped-botani.js.map +1 -0
  313. package/dist/cards/impl/minion/timewarped-bristler.d.ts +2 -0
  314. package/dist/cards/impl/minion/timewarped-bristler.js +39 -0
  315. package/dist/cards/impl/minion/timewarped-bristler.js.map +1 -0
  316. package/dist/cards/impl/minion/timewarped-calligrapher.d.ts +2 -0
  317. package/dist/cards/impl/minion/timewarped-calligrapher.js +29 -0
  318. package/dist/cards/impl/minion/timewarped-calligrapher.js.map +1 -0
  319. package/dist/cards/impl/minion/timewarped-caretaker.d.ts +2 -0
  320. package/dist/cards/impl/minion/timewarped-caretaker.js +21 -0
  321. package/dist/cards/impl/minion/timewarped-caretaker.js.map +1 -0
  322. package/dist/cards/impl/minion/timewarped-centurion.d.ts +2 -0
  323. package/dist/cards/impl/minion/timewarped-centurion.js +18 -0
  324. package/dist/cards/impl/minion/timewarped-centurion.js.map +1 -0
  325. package/dist/cards/impl/minion/timewarped-chameleon.d.ts +2 -0
  326. package/dist/cards/impl/minion/timewarped-chameleon.js +40 -0
  327. package/dist/cards/impl/minion/timewarped-chameleon.js.map +1 -0
  328. package/dist/cards/impl/minion/timewarped-clefthoof.d.ts +2 -0
  329. package/dist/cards/impl/minion/timewarped-clefthoof.js +21 -0
  330. package/dist/cards/impl/minion/timewarped-clefthoof.js.map +1 -0
  331. package/dist/cards/impl/minion/timewarped-copter.d.ts +2 -0
  332. package/dist/cards/impl/minion/timewarped-copter.js +22 -0
  333. package/dist/cards/impl/minion/timewarped-copter.js.map +1 -0
  334. package/dist/cards/impl/minion/timewarped-deadstomper.d.ts +2 -0
  335. package/dist/cards/impl/minion/timewarped-deadstomper.js +14 -0
  336. package/dist/cards/impl/minion/timewarped-deadstomper.js.map +1 -0
  337. package/dist/cards/impl/minion/timewarped-deathswarmer.d.ts +2 -0
  338. package/dist/cards/impl/minion/timewarped-deathswarmer.js +15 -0
  339. package/dist/cards/impl/minion/timewarped-deathswarmer.js.map +1 -0
  340. package/dist/cards/impl/minion/timewarped-dragonling.d.ts +2 -0
  341. package/dist/cards/impl/minion/timewarped-dragonling.js +21 -0
  342. package/dist/cards/impl/minion/timewarped-dragonling.js.map +1 -0
  343. package/dist/cards/impl/minion/timewarped-duskmaw.d.ts +2 -0
  344. package/dist/cards/impl/minion/timewarped-duskmaw.js +14 -0
  345. package/dist/cards/impl/minion/timewarped-duskmaw.js.map +1 -0
  346. package/dist/cards/impl/minion/timewarped-electron.d.ts +2 -0
  347. package/dist/cards/impl/minion/timewarped-electron.js +24 -0
  348. package/dist/cards/impl/minion/timewarped-electron.js.map +1 -0
  349. package/dist/cards/impl/minion/timewarped-elegist.d.ts +2 -0
  350. package/dist/cards/impl/minion/timewarped-elegist.js +15 -0
  351. package/dist/cards/impl/minion/timewarped-elegist.js.map +1 -0
  352. package/dist/cards/impl/minion/timewarped-expeditioner.d.ts +2 -0
  353. package/dist/cards/impl/minion/timewarped-expeditioner.js +22 -0
  354. package/dist/cards/impl/minion/timewarped-expeditioner.js.map +1 -0
  355. package/dist/cards/impl/minion/timewarped-festergut.d.ts +2 -0
  356. package/dist/cards/impl/minion/timewarped-festergut.js +20 -0
  357. package/dist/cards/impl/minion/timewarped-festergut.js.map +1 -0
  358. package/dist/cards/impl/minion/timewarped-geist.d.ts +2 -0
  359. package/dist/cards/impl/minion/timewarped-geist.js +13 -0
  360. package/dist/cards/impl/minion/timewarped-geist.js.map +1 -0
  361. package/dist/cards/impl/minion/timewarped-gemsplitter.d.ts +2 -0
  362. package/dist/cards/impl/minion/timewarped-gemsplitter.js +13 -0
  363. package/dist/cards/impl/minion/timewarped-gemsplitter.js.map +1 -0
  364. package/dist/cards/impl/minion/timewarped-geomancer.d.ts +2 -0
  365. package/dist/cards/impl/minion/timewarped-geomancer.js +14 -0
  366. package/dist/cards/impl/minion/timewarped-geomancer.js.map +1 -0
  367. package/dist/cards/impl/minion/timewarped-ghoul-acabra.d.ts +2 -0
  368. package/dist/cards/impl/minion/timewarped-ghoul-acabra.js +12 -0
  369. package/dist/cards/impl/minion/timewarped-ghoul-acabra.js.map +1 -0
  370. package/dist/cards/impl/minion/timewarped-goldrinn.d.ts +2 -0
  371. package/dist/cards/impl/minion/timewarped-goldrinn.js +17 -0
  372. package/dist/cards/impl/minion/timewarped-goldrinn.js.map +1 -0
  373. package/dist/cards/impl/minion/timewarped-grease-bot.d.ts +2 -0
  374. package/dist/cards/impl/minion/timewarped-grease-bot.js +12 -0
  375. package/dist/cards/impl/minion/timewarped-grease-bot.js.map +1 -0
  376. package/dist/cards/impl/minion/timewarped-greenskeeper.d.ts +2 -0
  377. package/dist/cards/impl/minion/timewarped-greenskeeper.js +33 -0
  378. package/dist/cards/impl/minion/timewarped-greenskeeper.js.map +1 -0
  379. package/dist/cards/impl/minion/timewarped-guard.d.ts +2 -0
  380. package/dist/cards/impl/minion/timewarped-guard.js +25 -0
  381. package/dist/cards/impl/minion/timewarped-guard.js.map +1 -0
  382. package/dist/cards/impl/minion/timewarped-hawkstrider.d.ts +2 -0
  383. package/dist/cards/impl/minion/timewarped-hawkstrider.js +25 -0
  384. package/dist/cards/impl/minion/timewarped-hawkstrider.js.map +1 -0
  385. package/dist/cards/impl/minion/timewarped-hooktail.d.ts +2 -0
  386. package/dist/cards/impl/minion/timewarped-hooktail.js +12 -0
  387. package/dist/cards/impl/minion/timewarped-hooktail.js.map +1 -0
  388. package/dist/cards/impl/minion/timewarped-hunter.d.ts +2 -0
  389. package/dist/cards/impl/minion/timewarped-hunter.js +20 -0
  390. package/dist/cards/impl/minion/timewarped-hunter.js.map +1 -0
  391. package/dist/cards/impl/minion/timewarped-hyena.d.ts +2 -0
  392. package/dist/cards/impl/minion/timewarped-hyena.js +18 -0
  393. package/dist/cards/impl/minion/timewarped-hyena.js.map +1 -0
  394. package/dist/cards/impl/minion/timewarped-immortal.d.ts +2 -0
  395. package/dist/cards/impl/minion/timewarped-immortal.js +17 -0
  396. package/dist/cards/impl/minion/timewarped-immortal.js.map +1 -0
  397. package/dist/cards/impl/minion/timewarped-interpreter.d.ts +2 -0
  398. package/dist/cards/impl/minion/timewarped-interpreter.js +12 -0
  399. package/dist/cards/impl/minion/timewarped-interpreter.js.map +1 -0
  400. package/dist/cards/impl/minion/timewarped-jazzer.d.ts +2 -0
  401. package/dist/cards/impl/minion/timewarped-jazzer.js +12 -0
  402. package/dist/cards/impl/minion/timewarped-jazzer.js.map +1 -0
  403. package/dist/cards/impl/minion/timewarped-jelly-belly.d.ts +2 -0
  404. package/dist/cards/impl/minion/timewarped-jelly-belly.js +12 -0
  405. package/dist/cards/impl/minion/timewarped-jelly-belly.js.map +1 -0
  406. package/dist/cards/impl/minion/timewarped-jungle-king.d.ts +2 -0
  407. package/dist/cards/impl/minion/timewarped-jungle-king.js +24 -0
  408. package/dist/cards/impl/minion/timewarped-jungle-king.js.map +1 -0
  409. package/dist/cards/impl/minion/timewarped-karathress.d.ts +2 -0
  410. package/dist/cards/impl/minion/timewarped-karathress.js +13 -0
  411. package/dist/cards/impl/minion/timewarped-karathress.js.map +1 -0
  412. package/dist/cards/impl/minion/timewarped-kilrek.d.ts +2 -0
  413. package/dist/cards/impl/minion/timewarped-kilrek.js +17 -0
  414. package/dist/cards/impl/minion/timewarped-kilrek.js.map +1 -0
  415. package/dist/cards/impl/minion/timewarped-lab-rat.d.ts +2 -0
  416. package/dist/cards/impl/minion/timewarped-lab-rat.js +13 -0
  417. package/dist/cards/impl/minion/timewarped-lab-rat.js.map +1 -0
  418. package/dist/cards/impl/minion/timewarped-lil-quilboar.d.ts +2 -0
  419. package/dist/cards/impl/minion/timewarped-lil-quilboar.js +19 -0
  420. package/dist/cards/impl/minion/timewarped-lil-quilboar.js.map +1 -0
  421. package/dist/cards/impl/minion/timewarped-low-flier.d.ts +2 -0
  422. package/dist/cards/impl/minion/timewarped-low-flier.js +19 -0
  423. package/dist/cards/impl/minion/timewarped-low-flier.js.map +1 -0
  424. package/dist/cards/impl/minion/timewarped-mothership.d.ts +2 -0
  425. package/dist/cards/impl/minion/timewarped-mothership.js +14 -0
  426. package/dist/cards/impl/minion/timewarped-mothership.js.map +1 -0
  427. package/dist/cards/impl/minion/timewarped-mrrrglr.d.ts +2 -0
  428. package/dist/cards/impl/minion/timewarped-mrrrglr.js +25 -0
  429. package/dist/cards/impl/minion/timewarped-mrrrglr.js.map +1 -0
  430. package/dist/cards/impl/minion/timewarped-murcules.d.ts +2 -0
  431. package/dist/cards/impl/minion/timewarped-murcules.js +16 -0
  432. package/dist/cards/impl/minion/timewarped-murcules.js.map +1 -0
  433. package/dist/cards/impl/minion/timewarped-murk-eye.d.ts +2 -0
  434. package/dist/cards/impl/minion/timewarped-murk-eye.js +20 -0
  435. package/dist/cards/impl/minion/timewarped-murk-eye.js.map +1 -0
  436. package/dist/cards/impl/minion/timewarped-murky.d.ts +2 -0
  437. package/dist/cards/impl/minion/timewarped-murky.js +13 -0
  438. package/dist/cards/impl/minion/timewarped-murky.js.map +1 -0
  439. package/dist/cards/impl/minion/timewarped-nalaa.d.ts +2 -0
  440. package/dist/cards/impl/minion/timewarped-nalaa.js +12 -0
  441. package/dist/cards/impl/minion/timewarped-nalaa.js.map +1 -0
  442. package/dist/cards/impl/minion/timewarped-nellies-ship.d.ts +2 -0
  443. package/dist/cards/impl/minion/timewarped-nellies-ship.js +22 -0
  444. package/dist/cards/impl/minion/timewarped-nellies-ship.js.map +1 -0
  445. package/dist/cards/impl/minion/timewarped-painter.d.ts +2 -0
  446. package/dist/cards/impl/minion/timewarped-painter.js +19 -0
  447. package/dist/cards/impl/minion/timewarped-painter.js.map +1 -0
  448. package/dist/cards/impl/minion/timewarped-paleofin.d.ts +2 -0
  449. package/dist/cards/impl/minion/timewarped-paleofin.js +13 -0
  450. package/dist/cards/impl/minion/timewarped-paleofin.js.map +1 -0
  451. package/dist/cards/impl/minion/timewarped-pashmar.d.ts +2 -0
  452. package/dist/cards/impl/minion/timewarped-pashmar.js +20 -0
  453. package/dist/cards/impl/minion/timewarped-pashmar.js.map +1 -0
  454. package/dist/cards/impl/minion/timewarped-peggy.d.ts +2 -0
  455. package/dist/cards/impl/minion/timewarped-peggy.js +12 -0
  456. package/dist/cards/impl/minion/timewarped-peggy.js.map +1 -0
  457. package/dist/cards/impl/minion/timewarped-pillager.d.ts +2 -0
  458. package/dist/cards/impl/minion/timewarped-pillager.js +14 -0
  459. package/dist/cards/impl/minion/timewarped-pillager.js.map +1 -0
  460. package/dist/cards/impl/minion/timewarped-piper.d.ts +2 -0
  461. package/dist/cards/impl/minion/timewarped-piper.js +16 -0
  462. package/dist/cards/impl/minion/timewarped-piper.js.map +1 -0
  463. package/dist/cards/impl/minion/timewarped-primscale.d.ts +2 -0
  464. package/dist/cards/impl/minion/timewarped-primscale.js +14 -0
  465. package/dist/cards/impl/minion/timewarped-primscale.js.map +1 -0
  466. package/dist/cards/impl/minion/timewarped-probius.d.ts +2 -0
  467. package/dist/cards/impl/minion/timewarped-probius.js +16 -0
  468. package/dist/cards/impl/minion/timewarped-probius.js.map +1 -0
  469. package/dist/cards/impl/minion/timewarped-promo-drake.d.ts +2 -0
  470. package/dist/cards/impl/minion/timewarped-promo-drake.js +19 -0
  471. package/dist/cards/impl/minion/timewarped-promo-drake.js.map +1 -0
  472. package/dist/cards/impl/minion/timewarped-radio-star.d.ts +2 -0
  473. package/dist/cards/impl/minion/timewarped-radio-star.js +20 -0
  474. package/dist/cards/impl/minion/timewarped-radio-star.js.map +1 -0
  475. package/dist/cards/impl/minion/timewarped-ragnaros.d.ts +2 -0
  476. package/dist/cards/impl/minion/timewarped-ragnaros.js +18 -0
  477. package/dist/cards/impl/minion/timewarped-ragnaros.js.map +1 -0
  478. package/dist/cards/impl/minion/timewarped-recycler.d.ts +2 -0
  479. package/dist/cards/impl/minion/timewarped-recycler.js +10 -0
  480. package/dist/cards/impl/minion/timewarped-recycler.js.map +1 -0
  481. package/dist/cards/impl/minion/timewarped-red-whelp.d.ts +2 -0
  482. package/dist/cards/impl/minion/timewarped-red-whelp.js +19 -0
  483. package/dist/cards/impl/minion/timewarped-red-whelp.js.map +1 -0
  484. package/dist/cards/impl/minion/timewarped-rewinder.d.ts +2 -0
  485. package/dist/cards/impl/minion/timewarped-rewinder.js +14 -0
  486. package/dist/cards/impl/minion/timewarped-rewinder.js.map +1 -0
  487. package/dist/cards/impl/minion/timewarped-riplash.d.ts +2 -0
  488. package/dist/cards/impl/minion/timewarped-riplash.js +14 -0
  489. package/dist/cards/impl/minion/timewarped-riplash.js.map +1 -0
  490. package/dist/cards/impl/minion/timewarped-sapper.d.ts +2 -0
  491. package/dist/cards/impl/minion/timewarped-sapper.js +14 -0
  492. package/dist/cards/impl/minion/timewarped-sapper.js.map +1 -0
  493. package/dist/cards/impl/minion/timewarped-saurolisk.d.ts +2 -0
  494. package/dist/cards/impl/minion/timewarped-saurolisk.js +13 -0
  495. package/dist/cards/impl/minion/timewarped-saurolisk.js.map +1 -0
  496. package/dist/cards/impl/minion/timewarped-scourfin.d.ts +2 -0
  497. package/dist/cards/impl/minion/timewarped-scourfin.js +25 -0
  498. package/dist/cards/impl/minion/timewarped-scourfin.js.map +1 -0
  499. package/dist/cards/impl/minion/timewarped-sea-glass.d.ts +2 -0
  500. package/dist/cards/impl/minion/timewarped-sea-glass.js +18 -0
  501. package/dist/cards/impl/minion/timewarped-sea-glass.js.map +1 -0
  502. package/dist/cards/impl/minion/timewarped-sellemental.d.ts +2 -0
  503. package/dist/cards/impl/minion/timewarped-sellemental.js +13 -0
  504. package/dist/cards/impl/minion/timewarped-sellemental.js.map +1 -0
  505. package/dist/cards/impl/minion/timewarped-sensei.d.ts +2 -0
  506. package/dist/cards/impl/minion/timewarped-sensei.js +20 -0
  507. package/dist/cards/impl/minion/timewarped-sensei.js.map +1 -0
  508. package/dist/cards/impl/minion/timewarped-shadowdancer.d.ts +2 -0
  509. package/dist/cards/impl/minion/timewarped-shadowdancer.js +23 -0
  510. package/dist/cards/impl/minion/timewarped-shadowdancer.js.map +1 -0
  511. package/dist/cards/impl/minion/timewarped-spirit-of-air.d.ts +2 -0
  512. package/dist/cards/impl/minion/timewarped-spirit-of-air.js +33 -0
  513. package/dist/cards/impl/minion/timewarped-spirit-of-air.js.map +1 -0
  514. package/dist/cards/impl/minion/timewarped-sporebat.d.ts +2 -0
  515. package/dist/cards/impl/minion/timewarped-sporebat.js +18 -0
  516. package/dist/cards/impl/minion/timewarped-sporebat.js.map +1 -0
  517. package/dist/cards/impl/minion/timewarped-steamer.d.ts +2 -0
  518. package/dist/cards/impl/minion/timewarped-steamer.js +13 -0
  519. package/dist/cards/impl/minion/timewarped-steamer.js.map +1 -0
  520. package/dist/cards/impl/minion/timewarped-stoneshell.d.ts +0 -0
  521. package/dist/cards/impl/minion/timewarped-stoneshell.js +1 -0
  522. package/dist/cards/impl/minion/timewarped-stoneshell.js.map +1 -0
  523. package/dist/cards/impl/minion/timewarped-stormcloud.d.ts +2 -0
  524. package/dist/cards/impl/minion/timewarped-stormcloud.js +20 -0
  525. package/dist/cards/impl/minion/timewarped-stormcloud.js.map +1 -0
  526. package/dist/cards/impl/minion/timewarped-substrate.d.ts +2 -0
  527. package/dist/cards/impl/minion/timewarped-substrate.js +13 -0
  528. package/dist/cards/impl/minion/timewarped-substrate.js.map +1 -0
  529. package/dist/cards/impl/minion/timewarped-sylvar.d.ts +2 -0
  530. package/dist/cards/impl/minion/timewarped-sylvar.js +18 -0
  531. package/dist/cards/impl/minion/timewarped-sylvar.js.map +1 -0
  532. package/dist/cards/impl/minion/timewarped-tamuzo.d.ts +2 -0
  533. package/dist/cards/impl/minion/timewarped-tamuzo.js +12 -0
  534. package/dist/cards/impl/minion/timewarped-tamuzo.js.map +1 -0
  535. package/dist/cards/impl/minion/timewarped-tender.d.ts +2 -0
  536. package/dist/cards/impl/minion/timewarped-tender.js +13 -0
  537. package/dist/cards/impl/minion/timewarped-tender.js.map +1 -0
  538. package/dist/cards/impl/minion/timewarped-thorncaller.d.ts +2 -0
  539. package/dist/cards/impl/minion/timewarped-thorncaller.js +20 -0
  540. package/dist/cards/impl/minion/timewarped-thorncaller.js.map +1 -0
  541. package/dist/cards/impl/minion/timewarped-tide-razor.d.ts +2 -0
  542. package/dist/cards/impl/minion/timewarped-tide-razor.js +22 -0
  543. package/dist/cards/impl/minion/timewarped-tide-razor.js.map +1 -0
  544. package/dist/cards/impl/minion/timewarped-tony.d.ts +2 -0
  545. package/dist/cards/impl/minion/timewarped-tony.js +14 -0
  546. package/dist/cards/impl/minion/timewarped-tony.js.map +1 -0
  547. package/dist/cards/impl/minion/timewarped-trickster.d.ts +2 -0
  548. package/dist/cards/impl/minion/timewarped-trickster.js +23 -0
  549. package/dist/cards/impl/minion/timewarped-trickster.js.map +1 -0
  550. package/dist/cards/impl/minion/timewarped-twirler.d.ts +2 -0
  551. package/dist/cards/impl/minion/timewarped-twirler.js +33 -0
  552. package/dist/cards/impl/minion/timewarped-twirler.js.map +1 -0
  553. package/dist/cards/impl/minion/timewarped-ultralisk.d.ts +2 -0
  554. package/dist/cards/impl/minion/timewarped-ultralisk.js +13 -0
  555. package/dist/cards/impl/minion/timewarped-ultralisk.js.map +1 -0
  556. package/dist/cards/impl/minion/timewarped-vaelastrasz.d.ts +2 -0
  557. package/dist/cards/impl/minion/timewarped-vaelastrasz.js +15 -0
  558. package/dist/cards/impl/minion/timewarped-vaelastrasz.js.map +1 -0
  559. package/dist/cards/impl/minion/timewarped-warghoul.d.ts +2 -0
  560. package/dist/cards/impl/minion/timewarped-warghoul.js +23 -0
  561. package/dist/cards/impl/minion/timewarped-warghoul.js.map +1 -0
  562. package/dist/cards/impl/minion/timewarped-whelp-smuggler.d.ts +2 -0
  563. package/dist/cards/impl/minion/timewarped-whelp-smuggler.js +14 -0
  564. package/dist/cards/impl/minion/timewarped-whelp-smuggler.js.map +1 -0
  565. package/dist/cards/impl/minion/tomb-pillager.d.ts +2 -0
  566. package/dist/cards/impl/minion/tomb-pillager.js +13 -0
  567. package/dist/cards/impl/minion/tomb-pillager.js.map +1 -0
  568. package/dist/cards/impl/minion/transmuted-bramblewitch.js +3 -0
  569. package/dist/cards/impl/minion/transmuted-bramblewitch.js.map +1 -1
  570. package/dist/cards/impl/minion/trench-fighter.d.ts +2 -0
  571. package/dist/cards/impl/minion/trench-fighter.js +14 -0
  572. package/dist/cards/impl/minion/trench-fighter.js.map +1 -0
  573. package/dist/cards/impl/minion/tusked-camper.js +1 -1
  574. package/dist/cards/impl/minion/tusked-camper.js.map +1 -1
  575. package/dist/cards/impl/minion/twilight-broodmother.d.ts +2 -0
  576. package/dist/cards/impl/minion/twilight-broodmother.js +17 -0
  577. package/dist/cards/impl/minion/twilight-broodmother.js.map +1 -0
  578. package/dist/cards/impl/minion/twilight-hatchling.d.ts +2 -0
  579. package/dist/cards/impl/minion/twilight-hatchling.js +19 -0
  580. package/dist/cards/impl/minion/twilight-hatchling.js.map +1 -0
  581. package/dist/cards/impl/minion/unforgiving-treant.d.ts +2 -0
  582. package/dist/cards/impl/minion/unforgiving-treant.js +14 -0
  583. package/dist/cards/impl/minion/unforgiving-treant.js.map +1 -0
  584. package/dist/cards/impl/minion/whelp-watcher.d.ts +2 -0
  585. package/dist/cards/impl/minion/whelp-watcher.js +34 -0
  586. package/dist/cards/impl/minion/whelp-watcher.js.map +1 -0
  587. package/dist/cards/impl/minion/whirling-lass-o-matic.d.ts +2 -0
  588. package/dist/cards/impl/minion/whirling-lass-o-matic.js +14 -0
  589. package/dist/cards/impl/minion/whirling-lass-o-matic.js.map +1 -0
  590. package/dist/cards/impl/minion/witchwing-nestmatron.d.ts +2 -0
  591. package/dist/cards/impl/minion/witchwing-nestmatron.js +18 -0
  592. package/dist/cards/impl/minion/witchwing-nestmatron.js.map +1 -0
  593. package/dist/cards/impl/spellcraft/anglers-lure.d.ts +2 -0
  594. package/dist/cards/impl/spellcraft/anglers-lure.js +20 -0
  595. package/dist/cards/impl/spellcraft/anglers-lure.js.map +1 -0
  596. package/dist/cards/impl/spellcraft/azsharas-hatchery.d.ts +2 -0
  597. package/dist/cards/impl/spellcraft/azsharas-hatchery.js +20 -0
  598. package/dist/cards/impl/spellcraft/azsharas-hatchery.js.map +1 -0
  599. package/dist/cards/impl/spellcraft/deep-blues.d.ts +2 -0
  600. package/dist/cards/impl/spellcraft/deep-blues.js +18 -0
  601. package/dist/cards/impl/spellcraft/deep-blues.js.map +1 -0
  602. package/dist/cards/impl/spellcraft/escape-eruption.d.ts +2 -0
  603. package/dist/cards/impl/spellcraft/escape-eruption.js +23 -0
  604. package/dist/cards/impl/spellcraft/escape-eruption.js.map +1 -0
  605. package/dist/cards/impl/spellcraft/evolving-strategy.d.ts +2 -0
  606. package/dist/cards/impl/spellcraft/evolving-strategy.js +19 -0
  607. package/dist/cards/impl/spellcraft/evolving-strategy.js.map +1 -0
  608. package/dist/cards/impl/spellcraft/glowing-crown.d.ts +2 -0
  609. package/dist/cards/impl/spellcraft/glowing-crown.js +17 -0
  610. package/dist/cards/impl/spellcraft/glowing-crown.js.map +1 -0
  611. package/dist/cards/impl/spellcraft/gold-gun.d.ts +2 -0
  612. package/dist/cards/impl/spellcraft/gold-gun.js +22 -0
  613. package/dist/cards/impl/spellcraft/gold-gun.js.map +1 -0
  614. package/dist/cards/impl/spellcraft/harvested-pearl.d.ts +2 -0
  615. package/dist/cards/impl/spellcraft/harvested-pearl.js +17 -0
  616. package/dist/cards/impl/spellcraft/harvested-pearl.js.map +1 -0
  617. package/dist/cards/impl/spellcraft/just-keep-swimming.d.ts +2 -0
  618. package/dist/cards/impl/spellcraft/just-keep-swimming.js +23 -0
  619. package/dist/cards/impl/spellcraft/just-keep-swimming.js.map +1 -0
  620. package/dist/cards/impl/spellcraft/meditation.d.ts +2 -0
  621. package/dist/cards/impl/spellcraft/meditation.js +15 -0
  622. package/dist/cards/impl/spellcraft/meditation.js.map +1 -0
  623. package/dist/cards/impl/spellcraft/mini-trident.d.ts +2 -0
  624. package/dist/cards/impl/spellcraft/mini-trident.js +18 -0
  625. package/dist/cards/impl/spellcraft/mini-trident.js.map +1 -0
  626. package/dist/cards/impl/spellcraft/reinvigoration.d.ts +2 -0
  627. package/dist/cards/impl/spellcraft/reinvigoration.js +24 -0
  628. package/dist/cards/impl/spellcraft/reinvigoration.js.map +1 -0
  629. package/dist/cards/impl/spellcraft/rime-or-reason.d.ts +2 -0
  630. package/dist/cards/impl/spellcraft/rime-or-reason.js +18 -0
  631. package/dist/cards/impl/spellcraft/rime-or-reason.js.map +1 -0
  632. package/dist/cards/impl/spellcraft/rushing-winds.d.ts +2 -0
  633. package/dist/cards/impl/spellcraft/rushing-winds.js +19 -0
  634. package/dist/cards/impl/spellcraft/rushing-winds.js.map +1 -0
  635. package/dist/cards/impl/spellcraft/sick-riffs.d.ts +2 -0
  636. package/dist/cards/impl/spellcraft/sick-riffs.js +19 -0
  637. package/dist/cards/impl/spellcraft/sick-riffs.js.map +1 -0
  638. package/dist/cards/impl/spellcraft/sunken-spells.d.ts +2 -0
  639. package/dist/cards/impl/spellcraft/sunken-spells.js +18 -0
  640. package/dist/cards/impl/spellcraft/sunken-spells.js.map +1 -0
  641. package/dist/cards/impl/spellcraft/surging-scales.d.ts +2 -0
  642. package/dist/cards/impl/spellcraft/surging-scales.js +24 -0
  643. package/dist/cards/impl/spellcraft/surging-scales.js.map +1 -0
  644. package/dist/cards/impl/spellcraft/thaumaturgy.d.ts +2 -0
  645. package/dist/cards/impl/spellcraft/thaumaturgy.js +19 -0
  646. package/dist/cards/impl/spellcraft/thaumaturgy.js.map +1 -0
  647. package/dist/cards/impl/spellcraft/the-golden-hammer.d.ts +2 -0
  648. package/dist/cards/impl/spellcraft/the-golden-hammer.js +17 -0
  649. package/dist/cards/impl/spellcraft/the-golden-hammer.js.map +1 -0
  650. package/dist/cards/impl/spellcraft/timewarped-crown.d.ts +2 -0
  651. package/dist/cards/impl/spellcraft/timewarped-crown.js +20 -0
  652. package/dist/cards/impl/spellcraft/timewarped-crown.js.map +1 -0
  653. package/dist/cards/impl/spellcraft/timewarped-eelectrify.d.ts +2 -0
  654. package/dist/cards/impl/spellcraft/timewarped-eelectrify.js +21 -0
  655. package/dist/cards/impl/spellcraft/timewarped-eelectrify.js.map +1 -0
  656. package/dist/cards/impl/spellcraft/timewarped-shoal.d.ts +2 -0
  657. package/dist/cards/impl/spellcraft/timewarped-shoal.js +25 -0
  658. package/dist/cards/impl/spellcraft/timewarped-shoal.js.map +1 -0
  659. package/dist/cards/impl/spellcraft/undersea-mount.d.ts +2 -0
  660. package/dist/cards/impl/spellcraft/undersea-mount.js +24 -0
  661. package/dist/cards/impl/spellcraft/undersea-mount.js.map +1 -0
  662. package/dist/cards/impl/trinket/ghostly-ymirjar.d.ts +2 -0
  663. package/dist/cards/impl/trinket/ghostly-ymirjar.js +10 -0
  664. package/dist/cards/impl/trinket/ghostly-ymirjar.js.map +1 -0
  665. package/dist/cards/impl/trinket/hogwash-basin.js +1 -1
  666. package/dist/cards/impl/trinket/hogwash-basin.js.map +1 -1
  667. package/dist/cards/impl/trinket/saltscale-honcho.d.ts +2 -0
  668. package/dist/cards/impl/trinket/saltscale-honcho.js +23 -0
  669. package/dist/cards/impl/trinket/saltscale-honcho.js.map +1 -0
  670. package/dist/cards/impl/trinket/sepulchral-sergent.d.ts +2 -0
  671. package/dist/cards/impl/trinket/sepulchral-sergent.js +18 -0
  672. package/dist/cards/impl/trinket/sepulchral-sergent.js.map +1 -0
  673. package/dist/cards/impl/trinket/wintergrasp-ghoul.d.ts +2 -0
  674. package/dist/cards/impl/trinket/wintergrasp-ghoul.js +14 -0
  675. package/dist/cards/impl/trinket/wintergrasp-ghoul.js.map +1 -0
  676. package/dist/keywords/divine-shield.d.ts +1 -0
  677. package/dist/keywords/divine-shield.js +5 -14
  678. package/dist/keywords/divine-shield.js.map +1 -1
  679. package/dist/mechanics/cast-tavern-spell.d.ts +3 -0
  680. package/dist/mechanics/cast-tavern-spell.js +34 -0
  681. package/dist/mechanics/cast-tavern-spell.js.map +1 -0
  682. package/dist/mechanics/rally.d.ts +7 -0
  683. package/dist/mechanics/rally.js +76 -0
  684. package/dist/mechanics/rally.js.map +1 -0
  685. package/dist/services/card-ids.d.ts +948 -9
  686. package/dist/services/card-ids.js.map +1 -1
  687. package/dist/services/utils.d.ts +1 -0
  688. package/dist/services/utils.js +13 -1
  689. package/dist/services/utils.js.map +1 -1
  690. package/dist/simulation/add-minion-to-board.js +12 -3
  691. package/dist/simulation/add-minion-to-board.js.map +1 -1
  692. package/dist/simulation/after-attack.js +1 -1
  693. package/dist/simulation/after-attack.js.map +1 -1
  694. package/dist/simulation/attack.d.ts +1 -1
  695. package/dist/simulation/attack.js +3 -3
  696. package/dist/simulation/attack.js.map +1 -1
  697. package/dist/simulation/auras.js +3 -1
  698. package/dist/simulation/auras.js.map +1 -1
  699. package/dist/simulation/avenge.js +1 -18
  700. package/dist/simulation/avenge.js.map +1 -1
  701. package/dist/simulation/battlecries.js +27 -17
  702. package/dist/simulation/battlecries.js.map +1 -1
  703. package/dist/simulation/blood-gems.d.ts +18 -1
  704. package/dist/simulation/blood-gems.js +51 -23
  705. package/dist/simulation/blood-gems.js.map +1 -1
  706. package/dist/simulation/damage-effects.js +11 -0
  707. package/dist/simulation/damage-effects.js.map +1 -1
  708. package/dist/simulation/deathrattle-effects.js +16 -14
  709. package/dist/simulation/deathrattle-effects.js.map +1 -1
  710. package/dist/simulation/deathrattle-spawns.js +6 -76
  711. package/dist/simulation/deathrattle-spawns.js.map +1 -1
  712. package/dist/simulation/deathrattle-utils.d.ts +1 -0
  713. package/dist/simulation/deathrattle-utils.js +23 -21
  714. package/dist/simulation/deathrattle-utils.js.map +1 -1
  715. package/dist/simulation/magnetize.d.ts +11 -1
  716. package/dist/simulation/magnetize.js +57 -39
  717. package/dist/simulation/magnetize.js.map +1 -1
  718. package/dist/simulation/minion-kill.js +0 -11
  719. package/dist/simulation/minion-kill.js.map +1 -1
  720. package/dist/simulation/on-attack.js +5 -72
  721. package/dist/simulation/on-attack.js.map +1 -1
  722. package/dist/simulation/reborn.js +0 -6
  723. package/dist/simulation/reborn.js.map +1 -1
  724. package/dist/simulation/spawn-fail.js +13 -0
  725. package/dist/simulation/spawn-fail.js.map +1 -1
  726. package/dist/simulation/spawns.d.ts +1 -1
  727. package/dist/simulation/spawns.js +2 -2
  728. package/dist/simulation/spawns.js.map +1 -1
  729. package/dist/simulation/start-of-combat/soc-action-processor.js +0 -8
  730. package/dist/simulation/start-of-combat/soc-action-processor.js.map +1 -1
  731. package/dist/simulation/stats.js +3 -0
  732. package/dist/simulation/stats.js.map +1 -1
  733. package/dist/simulation/utils/golden.d.ts +2 -2
  734. package/dist/simulation/utils/golden.js.map +1 -1
  735. package/dist/utils.d.ts +3 -1
  736. package/dist/utils.js +18 -2
  737. package/dist/utils.js.map +1 -1
  738. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"divine-shield.js","sourceRoot":"","sources":["../../src/keywords/divine-shield.ts"],"names":[],"mappings":"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","sourcesContent":["import { CardType, Race } from '@firestone-hs/reference-data';\r\nimport { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { hasOnDivineShieldUpdated } from '../cards/card.interface';\r\nimport { cardMappings } from '../cards/impl/_card-mappings';\r\nimport { CardIds } from '../services/card-ids';\r\nimport { pickRandom } from '../services/utils';\r\nimport { addCardsInHand } from '../simulation/cards-in-hand';\r\nimport { FullGameState } from '../simulation/internal-game-state';\r\nimport { modifyStats } from '../simulation/stats';\r\nimport { grantRandomStats, hasCorrectTribe } from '../utils';\r\n\r\nexport const updateDivineShield = (\r\n\tentity: BoardEntity,\r\n\tboard: BoardEntity[],\r\n\thero: BgsPlayerEntity,\r\n\totherHero: BgsPlayerEntity,\r\n\tnewValue: boolean,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tentity.hadDivineShield = newValue || entity.divineShield || entity.hadDivineShield;\r\n\tif (entity.strongDivineShield && newValue === false) {\r\n\t\tentity.strongDivineShield = false;\r\n\t} else {\r\n\t\tentity.divineShield = newValue;\r\n\t}\r\n\tif (entity.divineShield && newValue) {\r\n\t\tconst boardForDrake = board;\r\n\t\tconst statsBonus =\r\n\t\t\t6 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043).length +\r\n\t\t\t12 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043_G).length;\r\n\t\t// Don't trigger all \"on attack changed\" effects, since it's an aura\r\n\t\tentity.attack += statsBonus;\r\n\t} else if (!entity.divineShield) {\r\n\t\t// Also consider itself\r\n\t\tconst boardForDrake = board;\r\n\t\tconst statsBonus =\r\n\t\t\t6 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043).length +\r\n\t\t\t12 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043_G).length;\r\n\t\tentity.attack -= statsBonus;\r\n\t}\r\n\r\n\t// Lost divine shield\r\n\tif (entity.hadDivineShield && !entity.divineShield) {\r\n\t\tconst adapter = hero.trinkets\r\n\t\t\t.filter((t) => t.cardId === CardIds.MechagonAdapter_BG30_MagicItem_910)\r\n\t\t\t.filter((t) => t.scriptDataNum1 > 0)[0];\r\n\t\tif (!!adapter && hasCorrectTribe(entity, hero, Race.MECH, gameState.anomalies, gameState.allCards)) {\r\n\t\t\tupdateDivineShield(entity, board, hero, otherHero, true, gameState);\r\n\t\t\tadapter.scriptDataNum1--;\r\n\t\t}\r\n\r\n\t\tfor (const trinket of hero.trinkets ?? []) {\r\n\t\t\tconst onDivineShieldUpdatedImpl = cardMappings[trinket.cardId];\r\n\t\t\tif (hasOnDivineShieldUpdated(onDivineShieldUpdatedImpl)) {\r\n\t\t\t\tonDivineShieldUpdatedImpl.onDivineShieldUpdated(trinket, {\r\n\t\t\t\t\tboard: board,\r\n\t\t\t\t\thero: hero,\r\n\t\t\t\t\totherHero: otherHero,\r\n\t\t\t\t\tgameState: gameState,\r\n\t\t\t\t\ttarget: entity,\r\n\t\t\t\t\tpreviousValue: entity.hadDivineShield,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfor (const boardEntity of board) {\r\n\t\t\tconst onDivineShieldUpdatedImpl = cardMappings[boardEntity.cardId];\r\n\t\t\tif (hasOnDivineShieldUpdated(onDivineShieldUpdatedImpl)) {\r\n\t\t\t\tonDivineShieldUpdatedImpl.onDivineShieldUpdated(boardEntity, {\r\n\t\t\t\t\tboard: board,\r\n\t\t\t\t\thero: hero,\r\n\t\t\t\t\totherHero: otherHero,\r\n\t\t\t\t\tgameState: gameState,\r\n\t\t\t\t\ttarget: entity,\r\n\t\t\t\t\tpreviousValue: entity.hadDivineShield,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfor (let i = 0; i < board.length; i++) {\r\n\t\t\tif (board[i].cardId === CardIds.BolvarFireblood_ICC_858) {\r\n\t\t\t\tmodifyStats(board[i], board[i], 2, 0, board, hero, gameState);\r\n\t\t\t\tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t\t// } else if (board[i].cardId === CardIds.BolvarFireblood_TB_BaconUps_047) {\r\n\t\t\t\t// \tmodifyStats(board[i], board[i], 4, 0, board, hero, gameState);\r\n\t\t\t\t// \tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t\t// } else if (board[i].cardId === CardIds.DrakonidEnforcer_BGS_067) {\r\n\t\t\t\t// \tmodifyStats(board[i], board[i], 2, 2, board, hero, gameState);\r\n\t\t\t\t// \tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t\t// } else if (board[i].cardId === CardIds.DrakonidEnforcer_TB_BaconUps_117) {\r\n\t\t\t\t// \tmodifyStats(board[i], board[i], 4, 4, board, hero, gameState);\r\n\t\t\t\t// \tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t} else if (\r\n\t\t\t\tboard[i].entityId !== entity.entityId &&\r\n\t\t\t\t(board[i].cardId === CardIds.HolyMecherel_BG20_401 ||\r\n\t\t\t\t\tboard[i].cardId === CardIds.HolyMecherel_BG20_401_G)\r\n\t\t\t) {\r\n\t\t\t\tupdateDivineShield(board[i], board, hero, otherHero, true, gameState);\r\n\t\t\t} else if (board[i].cardId === CardIds.Gemsplitter_BG21_037) {\r\n\t\t\t\taddCardsInHand(hero, board, [CardIds.BloodGem], gameState);\r\n\t\t\t} else if (board[i].cardId === CardIds.Gemsplitter_BG21_037_G) {\r\n\t\t\t\taddCardsInHand(hero, board, [CardIds.BloodGem, CardIds.BloodGem], gameState);\r\n\t\t\t\t// } else if (\r\n\t\t\t\t// \tboard[i].cardId === CardIds.CogworkCopter_BG24_008 ||\r\n\t\t\t\t// \tboard[i].cardId === CardIds.CogworkCopter_BG24_008_G\r\n\t\t\t\t// ) {\r\n\t\t\t\t// When it's the opponent, the game state already contains all the buffs\r\n\t\t\t\tif (board[i]?.friendly) {\r\n\t\t\t\t\tconst buff = 1; //board[i].cardId === CardIds.CogworkCopter_BG24_008_G ? 2 : 1;\r\n\t\t\t\t\tgrantRandomStats(\r\n\t\t\t\t\t\tboard[i],\r\n\t\t\t\t\t\thero.hand.filter(\r\n\t\t\t\t\t\t\t(e) =>\r\n\t\t\t\t\t\t\t\tgameState.allCards.getCard(e.cardId).type?.toUpperCase() === CardType[CardType.MINION],\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t\thero,\r\n\t\t\t\t\t\tbuff,\r\n\t\t\t\t\t\tbuff,\r\n\t\t\t\t\t\tnull,\r\n\t\t\t\t\t\ttrue,\r\n\t\t\t\t\t\tgameState,\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n\r\nexport const grantRandomDivineShield = (\r\n\tsource: BoardEntity,\r\n\tboard: BoardEntity[],\r\n\thero: BgsPlayerEntity,\r\n\totherHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tconst elligibleEntities = board\r\n\t\t.filter((entity) => !entity.divineShield)\r\n\t\t.filter((entity) => entity.health > 0 && !entity.definitelyDead);\r\n\tif (elligibleEntities.length > 0) {\r\n\t\tconst chosen = pickRandom(elligibleEntities);\r\n\t\tupdateDivineShield(chosen, board, hero, otherHero, true, gameState);\r\n\t\tgameState.spectator.registerPowerTarget(source, chosen, board, null, null);\r\n\t}\r\n};\r\n\r\nexport const grantDivineShieldToLeftmostMinions = (\r\n\tsource: BoardEntity,\r\n\tboard: BoardEntity[],\r\n\thero: BgsPlayerEntity,\r\n\tquantity: number,\r\n\totherHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tfor (let i = 0; i < Math.min(quantity, board.length); i++) {\r\n\t\tupdateDivineShield(board[i], board, hero, otherHero, true, gameState);\r\n\t\tgameState.spectator.registerPowerTarget(source, board[i], board, null, null);\r\n\t}\r\n};\r\n\r\nexport interface OnDivineShieldUpdatedInput {\r\n\tboard: BoardEntity[];\r\n\thero: BgsPlayerEntity;\r\n\totherHero: BgsPlayerEntity;\r\n\tgameState: FullGameState;\r\n\ttarget: BoardEntity;\r\n\tpreviousValue: boolean;\r\n}\r\n"]}
1
+ {"version":3,"file":"divine-shield.js","sourceRoot":"","sources":["../../src/keywords/divine-shield.ts"],"names":[],"mappings":"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","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { hasOnDivineShieldUpdated } from '../cards/card.interface';\r\nimport { cardMappings } from '../cards/impl/_card-mappings';\r\nimport { CardIds } from '../services/card-ids';\r\nimport { pickRandom } from '../services/utils';\r\nimport { FullGameState } from '../simulation/internal-game-state';\r\nimport { modifyStats } from '../simulation/stats';\r\nimport { hasCorrectTribe } from '../utils';\r\n\r\nexport const updateDivineShield = (\r\n\tentity: BoardEntity,\r\n\tboard: BoardEntity[],\r\n\thero: BgsPlayerEntity,\r\n\totherHero: BgsPlayerEntity,\r\n\tnewValue: boolean,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tentity.hadDivineShield = newValue || entity.divineShield || entity.hadDivineShield;\r\n\tif (entity.strongDivineShield && newValue === false) {\r\n\t\tentity.strongDivineShield = false;\r\n\t} else {\r\n\t\tentity.divineShield = newValue;\r\n\t}\r\n\tif (entity.divineShield && newValue) {\r\n\t\tconst boardForDrake = board;\r\n\t\tconst statsBonus =\r\n\t\t\t6 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043).length +\r\n\t\t\t12 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043_G).length;\r\n\t\t// Don't trigger all \"on attack changed\" effects, since it's an aura\r\n\t\tentity.attack += statsBonus;\r\n\t} else if (!entity.divineShield) {\r\n\t\t// Also consider itself\r\n\t\tconst boardForDrake = board;\r\n\t\tconst statsBonus =\r\n\t\t\t6 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043).length +\r\n\t\t\t12 * boardForDrake.filter((e) => e.cardId === CardIds.CyborgDrake_BG25_043_G).length;\r\n\t\tentity.attack -= statsBonus;\r\n\t}\r\n\r\n\t// Lost divine shield\r\n\tif (entity.hadDivineShield && !entity.divineShield) {\r\n\t\tconst adapter = hero.trinkets\r\n\t\t\t.filter((t) => t.cardId === CardIds.MechagonAdapter_BG30_MagicItem_910)\r\n\t\t\t.filter((t) => t.scriptDataNum1 > 0)[0];\r\n\t\tif (!!adapter && hasCorrectTribe(entity, hero, Race.MECH, gameState.anomalies, gameState.allCards)) {\r\n\t\t\tupdateDivineShield(entity, board, hero, otherHero, true, gameState);\r\n\t\t\tadapter.scriptDataNum1--;\r\n\t\t}\r\n\r\n\t\tfor (const trinket of hero.trinkets ?? []) {\r\n\t\t\tconst onDivineShieldUpdatedImpl = cardMappings[trinket.cardId];\r\n\t\t\tif (hasOnDivineShieldUpdated(onDivineShieldUpdatedImpl)) {\r\n\t\t\t\tonDivineShieldUpdatedImpl.onDivineShieldUpdated(trinket, {\r\n\t\t\t\t\tboard: board,\r\n\t\t\t\t\thero: hero,\r\n\t\t\t\t\totherHero: otherHero,\r\n\t\t\t\t\tgameState: gameState,\r\n\t\t\t\t\ttarget: entity,\r\n\t\t\t\t\tnewValue: false,\r\n\t\t\t\t\tpreviousValue: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfor (const boardEntity of board) {\r\n\t\t\tconst onDivineShieldUpdatedImpl = cardMappings[boardEntity.cardId];\r\n\t\t\tif (hasOnDivineShieldUpdated(onDivineShieldUpdatedImpl)) {\r\n\t\t\t\tonDivineShieldUpdatedImpl.onDivineShieldUpdated(boardEntity, {\r\n\t\t\t\t\tboard: board,\r\n\t\t\t\t\thero: hero,\r\n\t\t\t\t\totherHero: otherHero,\r\n\t\t\t\t\tgameState: gameState,\r\n\t\t\t\t\ttarget: entity,\r\n\t\t\t\t\tnewValue: false,\r\n\t\t\t\t\tpreviousValue: true,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfor (let i = 0; i < board.length; i++) {\r\n\t\t\tif (board[i].cardId === CardIds.BolvarFireblood_ICC_858) {\r\n\t\t\t\tmodifyStats(board[i], board[i], 2, 0, board, hero, gameState);\r\n\t\t\t\tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t\t// } else if (board[i].cardId === CardIds.BolvarFireblood_TB_BaconUps_047) {\r\n\t\t\t\t// \tmodifyStats(board[i], board[i], 4, 0, board, hero, gameState);\r\n\t\t\t\t// \tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t\t// } else if (board[i].cardId === CardIds.DrakonidEnforcer_BGS_067) {\r\n\t\t\t\t// \tmodifyStats(board[i], board[i], 2, 2, board, hero, gameState);\r\n\t\t\t\t// \tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t\t// } else if (board[i].cardId === CardIds.DrakonidEnforcer_TB_BaconUps_117) {\r\n\t\t\t\t// \tmodifyStats(board[i], board[i], 4, 4, board, hero, gameState);\r\n\t\t\t\t// \tgameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);\r\n\t\t\t} else if (\r\n\t\t\t\tboard[i].entityId !== entity.entityId &&\r\n\t\t\t\t(board[i].cardId === CardIds.HolyMecherel_BG20_401 ||\r\n\t\t\t\t\tboard[i].cardId === CardIds.HolyMecherel_BG20_401_G)\r\n\t\t\t) {\r\n\t\t\t\tupdateDivineShield(board[i], board, hero, otherHero, true, gameState);\r\n\t\t\t}\r\n\t\t\t// } else if (\r\n\t\t\t// \tboard[i].cardId === CardIds.CogworkCopter_BG24_008 ||\r\n\t\t\t// \tboard[i].cardId === CardIds.CogworkCopter_BG24_008_G\r\n\t\t\t// ) {\r\n\t\t\t// When it's the opponent, the game state already contains all the buffs\r\n\t\t\t// if (board[i]?.friendly) {\r\n\t\t\t// \tconst buff = 1; //board[i].cardId === CardIds.CogworkCopter_BG24_008_G ? 2 : 1;\r\n\t\t\t// \tgrantRandomStats(\r\n\t\t\t// \t\tboard[i],\r\n\t\t\t// \t\thero.hand.filter(\r\n\t\t\t// \t\t\t(e) =>\r\n\t\t\t// \t\t\t\tgameState.allCards.getCard(e.cardId).type?.toUpperCase() === CardType[CardType.MINION],\r\n\t\t\t// \t\t),\r\n\t\t\t// \t\thero,\r\n\t\t\t// \t\tbuff,\r\n\t\t\t// \t\tbuff,\r\n\t\t\t// \t\tnull,\r\n\t\t\t// \t\ttrue,\r\n\t\t\t// \t\tgameState,\r\n\t\t\t// \t);\r\n\t\t\t// }\r\n\t\t}\r\n\t}\r\n};\r\n\r\nexport const grantRandomDivineShield = (\r\n\tsource: BoardEntity,\r\n\tboard: BoardEntity[],\r\n\thero: BgsPlayerEntity,\r\n\totherHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tconst elligibleEntities = board\r\n\t\t.filter((entity) => !entity.divineShield)\r\n\t\t.filter((entity) => entity.health > 0 && !entity.definitelyDead);\r\n\tif (elligibleEntities.length > 0) {\r\n\t\tconst chosen = pickRandom(elligibleEntities);\r\n\t\tupdateDivineShield(chosen, board, hero, otherHero, true, gameState);\r\n\t\tgameState.spectator.registerPowerTarget(source, chosen, board, null, null);\r\n\t}\r\n};\r\n\r\nexport const grantDivineShieldToLeftmostMinions = (\r\n\tsource: BoardEntity,\r\n\tboard: BoardEntity[],\r\n\thero: BgsPlayerEntity,\r\n\tquantity: number,\r\n\totherHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tfor (let i = 0; i < Math.min(quantity, board.length); i++) {\r\n\t\tupdateDivineShield(board[i], board, hero, otherHero, true, gameState);\r\n\t\tgameState.spectator.registerPowerTarget(source, board[i], board, null, null);\r\n\t}\r\n};\r\n\r\nexport interface OnDivineShieldUpdatedInput {\r\n\tboard: BoardEntity[];\r\n\thero: BgsPlayerEntity;\r\n\totherHero: BgsPlayerEntity;\r\n\tgameState: FullGameState;\r\n\ttarget: BoardEntity;\r\n\tnewValue: boolean;\r\n\tpreviousValue: boolean;\r\n}\r\n"]}
@@ -0,0 +1,3 @@
1
+ import { CastSpellInput } from '../cards/card.interface';
2
+ export declare const castTavernSpell: (spellCardId: string, input: CastSpellInput) => void;
3
+ export declare const onTavernSpellCast: (spellCardId: string, input: CastSpellInput) => void;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onTavernSpellCast = exports.castTavernSpell = void 0;
4
+ const card_interface_1 = require("../cards/card.interface");
5
+ const _card_mappings_1 = require("../cards/impl/_card-mappings");
6
+ const castTavernSpell = (spellCardId, input) => {
7
+ const spellImpl = _card_mappings_1.cardMappings[spellCardId];
8
+ if ((0, card_interface_1.hasCastTavernSpell)(spellImpl)) {
9
+ spellImpl.castTavernSpell(spellCardId, input);
10
+ }
11
+ input.hero.globalInfo.SpellsCastThisGame++;
12
+ (0, exports.onTavernSpellCast)(spellCardId, input);
13
+ };
14
+ exports.castTavernSpell = castTavernSpell;
15
+ const onTavernSpellCast = (spellCardId, input) => {
16
+ if (input.source === input.hero) {
17
+ for (const boardEntity of input.board) {
18
+ const onSpellCastImpl = _card_mappings_1.cardMappings[boardEntity.cardId];
19
+ if ((0, card_interface_1.hasOnTavernSpellCast)(onSpellCastImpl)) {
20
+ onSpellCastImpl.onTavernSpellCast(boardEntity, input);
21
+ }
22
+ }
23
+ }
24
+ if (input.source === input.hero) {
25
+ for (const boardEntity of input.board) {
26
+ const afterSpellCastImpl = _card_mappings_1.cardMappings[boardEntity.cardId];
27
+ if ((0, card_interface_1.hasAfterTavernSpellCast)(afterSpellCastImpl)) {
28
+ afterSpellCastImpl.afterTavernSpellCast(boardEntity, input);
29
+ }
30
+ }
31
+ }
32
+ };
33
+ exports.onTavernSpellCast = onTavernSpellCast;
34
+ //# sourceMappingURL=cast-tavern-spell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cast-tavern-spell.js","sourceRoot":"","sources":["../../src/mechanics/cast-tavern-spell.ts"],"names":[],"mappings":";;;AAAA,4DAKiC;AACjC,iEAA4D;AAErD,MAAM,eAAe,GAAG,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;IAC7E,MAAM,SAAS,GAAG,6BAAY,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,IAAA,mCAAkB,EAAC,SAAS,CAAC,EAAE;QAClC,SAAS,CAAC,eAAe,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;KAC9C;IAED,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;IAE3C,IAAA,yBAAiB,EAAC,WAAW,EAAE,KAAK,CAAC,CAAC;AACvC,CAAC,CAAC;AATW,QAAA,eAAe,mBAS1B;AAEK,MAAM,iBAAiB,GAAG,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;IAI/E,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE;QAChC,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,KAAK,EAAE;YACtC,MAAM,eAAe,GAAG,6BAAY,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACzD,IAAI,IAAA,qCAAoB,EAAC,eAAe,CAAC,EAAE;gBAC1C,eAAe,CAAC,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;aACtD;SACD;KACD;IAGD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE;QAChC,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,KAAK,EAAE;YACtC,MAAM,kBAAkB,GAAG,6BAAY,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,IAAA,wCAAuB,EAAC,kBAAkB,CAAC,EAAE;gBAChD,kBAAkB,CAAC,oBAAoB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;aAC5D;SACD;KACD;AACF,CAAC,CAAC;AAtBW,QAAA,iBAAiB,qBAsB5B","sourcesContent":["import {\r\n\tCastSpellInput,\r\n\thasAfterTavernSpellCast,\r\n\thasCastTavernSpell,\r\n\thasOnTavernSpellCast,\r\n} from '../cards/card.interface';\r\nimport { cardMappings } from '../cards/impl/_card-mappings';\r\n\r\nexport const castTavernSpell = (spellCardId: string, input: CastSpellInput) => {\r\n\tconst spellImpl = cardMappings[spellCardId];\r\n\tif (hasCastTavernSpell(spellImpl)) {\r\n\t\tspellImpl.castTavernSpell(spellCardId, input);\r\n\t}\r\n\r\n\tinput.hero.globalInfo.SpellsCastThisGame++;\r\n\r\n\tonTavernSpellCast(spellCardId, input);\r\n};\r\n\r\nexport const onTavernSpellCast = (spellCardId: string, input: CastSpellInput) => {\r\n\t// Added in case other minions react to spells being cast\r\n\t// I thought Charging Czarina would be in that case, but it specifically says \"whenever *you* cast\"\r\n\t// 2025-11-25: cards that simply says \"cast\" means \"you cast\". Otherwise, it will say \"this casts\".\r\n\tif (input.source === input.hero) {\r\n\t\tfor (const boardEntity of input.board) {\r\n\t\t\tconst onSpellCastImpl = cardMappings[boardEntity.cardId];\r\n\t\t\tif (hasOnTavernSpellCast(onSpellCastImpl)) {\r\n\t\t\t\tonSpellCastImpl.onTavernSpellCast(boardEntity, input);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// Not sure about the timing of \"after spell cast\", but at least make sure they trigger after the \"whenever you cast\" effects\r\n\tif (input.source === input.hero) {\r\n\t\tfor (const boardEntity of input.board) {\r\n\t\t\tconst afterSpellCastImpl = cardMappings[boardEntity.cardId];\r\n\t\t\tif (hasAfterTavernSpellCast(afterSpellCastImpl)) {\r\n\t\t\t\tafterSpellCastImpl.afterTavernSpellCast(boardEntity, input);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n"]}
@@ -0,0 +1,7 @@
1
+ import { BgsPlayerEntity } from '../bgs-player-entity';
2
+ import { BoardEntity } from '../board-entity';
3
+ import { FullGameState } from '../simulation/internal-game-state';
4
+ export declare const triggerRally: (attackingBoard: BoardEntity[], attackingBoardHero: BgsPlayerEntity, attacker: BoardEntity, defendingBoard: BoardEntity[], defendingBoardHero: BgsPlayerEntity, defendingEntity: BoardEntity, gameState: FullGameState) => {
5
+ dmgDoneByAttacker: number;
6
+ dmgDoneByDefender: number;
7
+ };
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.triggerRally = void 0;
4
+ const reference_data_1 = require("@firestone-hs/reference-data");
5
+ const card_interface_1 = require("../cards/card.interface");
6
+ const _card_mappings_1 = require("../cards/impl/_card-mappings");
7
+ const enchantments_1 = require("../simulation/enchantments");
8
+ const utils_1 = require("../utils");
9
+ const DOUBLE_RALLY_CARD_IDS = ["BG34_Giant_376"];
10
+ const TRIPLE_RALLY_CARD_IDS = ["BG34_Giant_376_G"];
11
+ const triggerRally = (attackingBoard, attackingBoardHero, attacker, defendingBoard, defendingBoardHero, defendingEntity, gameState) => {
12
+ var _a, _b, _c, _d;
13
+ let damageDoneByAttacker = 0;
14
+ let damageDoneByDefender = 0;
15
+ const isAttackerRallying = (0, utils_1.hasEntityMechanic)(attacker, reference_data_1.GameTag.BACON_RALLY, gameState.allCards);
16
+ const cardIds = [
17
+ ...attackingBoard.map((e) => e.cardId),
18
+ ...((_b = (_a = attackingBoardHero.secrets) === null || _a === void 0 ? void 0 : _a.map((e) => e.cardId)) !== null && _b !== void 0 ? _b : []),
19
+ ];
20
+ const triggerMult = cardIds.some((cardId) => TRIPLE_RALLY_CARD_IDS.includes(cardId))
21
+ ? 3
22
+ : cardIds.some((cardId) => DOUBLE_RALLY_CARD_IDS.includes(cardId))
23
+ ? 2
24
+ : 1;
25
+ const numberOfRallyingCries = (_d = (_c = attackingBoardHero.questRewardEntities) === null || _c === void 0 ? void 0 : _c.filter((r) => r.cardId === "BG33_Reward_021").length) !== null && _d !== void 0 ? _d : 0;
26
+ const multiplier = triggerMult + numberOfRallyingCries;
27
+ const rallyLoops = 1 + (isAttackerRallying ? multiplier : 0);
28
+ for (let i = 0; i < rallyLoops; i++) {
29
+ const onAttackImpl = _card_mappings_1.cardMappings[attacker.cardId];
30
+ if ((0, card_interface_1.hasRally)(onAttackImpl)) {
31
+ const { dmgDoneByAttacker, dmgDoneByDefender } = onAttackImpl.rally(attacker, {
32
+ attacker: attacker,
33
+ attackingHero: attackingBoardHero,
34
+ attackingBoard: attackingBoard,
35
+ defendingEntity: defendingEntity,
36
+ defendingHero: defendingBoardHero,
37
+ defendingBoard: defendingBoard,
38
+ gameState,
39
+ playerIsFriendly: attackingBoardHero.friendly,
40
+ });
41
+ damageDoneByAttacker += dmgDoneByAttacker;
42
+ damageDoneByDefender += dmgDoneByDefender;
43
+ }
44
+ const enchantments = attacker.enchantments;
45
+ for (const enchantment of enchantments) {
46
+ const onAttackImpl = _card_mappings_1.cardMappings[enchantment.cardId];
47
+ if ((0, card_interface_1.hasRally)(onAttackImpl)) {
48
+ let enchantmentToMinion = {
49
+ ...enchantment,
50
+ entityId: attacker.entityId,
51
+ attack: attacker.attack,
52
+ health: attacker.health,
53
+ maxHealth: attacker.maxHealth,
54
+ maxAttack: attacker.maxAttack,
55
+ abiityChargesLeft: attacker.abiityChargesLeft,
56
+ };
57
+ enchantmentToMinion = (0, enchantments_1.fixEnchantments)(enchantmentToMinion, gameState.allCards);
58
+ const { dmgDoneByAttacker, dmgDoneByDefender } = onAttackImpl.rally(enchantmentToMinion, {
59
+ attacker: attacker,
60
+ attackingHero: attackingBoardHero,
61
+ attackingBoard: attackingBoard,
62
+ defendingEntity: defendingEntity,
63
+ defendingHero: defendingBoardHero,
64
+ defendingBoard: defendingBoard,
65
+ gameState,
66
+ playerIsFriendly: attackingBoardHero.friendly,
67
+ });
68
+ damageDoneByAttacker += dmgDoneByAttacker;
69
+ damageDoneByDefender += dmgDoneByDefender;
70
+ }
71
+ }
72
+ }
73
+ return { dmgDoneByAttacker: damageDoneByAttacker, dmgDoneByDefender: damageDoneByDefender };
74
+ };
75
+ exports.triggerRally = triggerRally;
76
+ //# sourceMappingURL=rally.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rally.js","sourceRoot":"","sources":["../../src/mechanics/rally.ts"],"names":[],"mappings":"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","sourcesContent":["import { GameTag } from '@firestone-hs/reference-data';\r\nimport { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { hasRally } from '../cards/card.interface';\r\nimport { cardMappings } from '../cards/impl/_card-mappings';\r\nimport { CardIds } from '../services/card-ids';\r\nimport { fixEnchantments } from '../simulation/enchantments';\r\nimport { FullGameState } from '../simulation/internal-game-state';\r\nimport { hasEntityMechanic } from '../utils';\r\n\r\nconst DOUBLE_RALLY_CARD_IDS: string[] = [CardIds.TimewarpedDeios_BG34_Giant_376];\r\nconst TRIPLE_RALLY_CARD_IDS: string[] = [CardIds.TimewarpedDeios_BG34_Giant_376_G];\r\n\r\nexport const triggerRally = (\r\n\tattackingBoard: BoardEntity[],\r\n\tattackingBoardHero: BgsPlayerEntity,\r\n\tattacker: BoardEntity,\r\n\tdefendingBoard: BoardEntity[],\r\n\tdefendingBoardHero: BgsPlayerEntity,\r\n\tdefendingEntity: BoardEntity,\r\n\tgameState: FullGameState,\r\n): { dmgDoneByAttacker: number; dmgDoneByDefender: number } => {\r\n\tlet damageDoneByAttacker = 0;\r\n\tlet damageDoneByDefender = 0;\r\n\tconst isAttackerRallying = hasEntityMechanic(attacker, GameTag.BACON_RALLY, gameState.allCards);\r\n\r\n\tconst cardIds = [\r\n\t\t...attackingBoard.map((e) => e.cardId),\r\n\t\t...(attackingBoardHero.secrets?.map((e) => e.cardId) ?? []),\r\n\t];\r\n\tconst triggerMult = cardIds.some((cardId) => TRIPLE_RALLY_CARD_IDS.includes(cardId))\r\n\t\t? 3\r\n\t\t: cardIds.some((cardId) => DOUBLE_RALLY_CARD_IDS.includes(cardId))\r\n\t\t? 2\r\n\t\t: 1;\r\n\tconst numberOfRallyingCries =\r\n\t\tattackingBoardHero.questRewardEntities?.filter((r) => r.cardId === CardIds.RallyingCry_BG33_Reward_021)\r\n\t\t\t.length ?? 0;\r\n\tconst multiplier = triggerMult + numberOfRallyingCries;\r\n\tconst rallyLoops = 1 + (isAttackerRallying ? multiplier : 0);\r\n\r\n\tfor (let i = 0; i < rallyLoops; i++) {\r\n\t\tconst onAttackImpl = cardMappings[attacker.cardId];\r\n\t\tif (hasRally(onAttackImpl)) {\r\n\t\t\tconst { dmgDoneByAttacker, dmgDoneByDefender } = onAttackImpl.rally(attacker, {\r\n\t\t\t\tattacker: attacker,\r\n\t\t\t\tattackingHero: attackingBoardHero,\r\n\t\t\t\tattackingBoard: attackingBoard,\r\n\t\t\t\tdefendingEntity: defendingEntity,\r\n\t\t\t\tdefendingHero: defendingBoardHero,\r\n\t\t\t\tdefendingBoard: defendingBoard,\r\n\t\t\t\tgameState,\r\n\t\t\t\tplayerIsFriendly: attackingBoardHero.friendly,\r\n\t\t\t});\r\n\t\t\tdamageDoneByAttacker += dmgDoneByAttacker;\r\n\t\t\tdamageDoneByDefender += dmgDoneByDefender;\r\n\t\t}\r\n\t\tconst enchantments = attacker.enchantments;\r\n\t\tfor (const enchantment of enchantments) {\r\n\t\t\tconst onAttackImpl = cardMappings[enchantment.cardId];\r\n\t\t\tif (hasRally(onAttackImpl)) {\r\n\t\t\t\tlet enchantmentToMinion: BoardEntity = {\r\n\t\t\t\t\t...enchantment,\r\n\t\t\t\t\tentityId: attacker.entityId,\r\n\t\t\t\t\tattack: attacker.attack,\r\n\t\t\t\t\thealth: attacker.health,\r\n\t\t\t\t\tmaxHealth: attacker.maxHealth,\r\n\t\t\t\t\tmaxAttack: attacker.maxAttack,\r\n\t\t\t\t\tabiityChargesLeft: attacker.abiityChargesLeft,\r\n\t\t\t\t};\r\n\t\t\t\tenchantmentToMinion = fixEnchantments(enchantmentToMinion, gameState.allCards);\r\n\t\t\t\tconst { dmgDoneByAttacker, dmgDoneByDefender } = onAttackImpl.rally(enchantmentToMinion, {\r\n\t\t\t\t\tattacker: attacker,\r\n\t\t\t\t\tattackingHero: attackingBoardHero,\r\n\t\t\t\t\tattackingBoard: attackingBoard,\r\n\t\t\t\t\tdefendingEntity: defendingEntity,\r\n\t\t\t\t\tdefendingHero: defendingBoardHero,\r\n\t\t\t\t\tdefendingBoard: defendingBoard,\r\n\t\t\t\t\tgameState,\r\n\t\t\t\t\tplayerIsFriendly: attackingBoardHero.friendly,\r\n\t\t\t\t});\r\n\t\t\t\tdamageDoneByAttacker += dmgDoneByAttacker;\r\n\t\t\t\tdamageDoneByDefender += dmgDoneByDefender;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn { dmgDoneByAttacker: damageDoneByAttacker, dmgDoneByDefender: damageDoneByDefender };\r\n};\r\n"]}