@firestone-hs/simulate-bgs-battle 1.1.696 → 1.1.697

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 (339) hide show
  1. package/dist/src/bgs-player-entity.d.ts +4 -10
  2. package/dist/src/bgs-player-entity.js.map +1 -1
  3. package/dist/src/cards/card.interface.d.ts +21 -6
  4. package/dist/src/cards/card.interface.js +8 -1
  5. package/dist/src/cards/card.interface.js.map +1 -1
  6. package/dist/src/cards/cards-data.js +1 -12
  7. package/dist/src/cards/cards-data.js.map +1 -1
  8. package/dist/src/cards/impl/_card-mappings.js +152 -63
  9. package/dist/src/cards/impl/_card-mappings.js.map +1 -1
  10. package/dist/src/cards/impl/bg-spell/arcane-absorption-bg352.d.ts +2 -2
  11. package/dist/src/cards/impl/bg-spell/arcane-absorption-bg352.js +1 -8
  12. package/dist/src/cards/impl/bg-spell/arcane-absorption-bg352.js.map +1 -1
  13. package/dist/src/cards/impl/bg-spell/back-to-back.d.ts +2 -0
  14. package/dist/src/cards/impl/bg-spell/back-to-back.js +20 -0
  15. package/dist/src/cards/impl/bg-spell/back-to-back.js.map +1 -0
  16. package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-divine-shield.js +2 -3
  17. package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-divine-shield.js.map +1 -1
  18. package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-reborn.js +2 -3
  19. package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-reborn.js.map +1 -1
  20. package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-taunt.js +2 -3
  21. package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-taunt.js.map +1 -1
  22. package/dist/src/cards/impl/bg-spell/butchering.d.ts +2 -0
  23. package/dist/src/cards/impl/bg-spell/butchering.js +23 -0
  24. package/dist/src/cards/impl/bg-spell/butchering.js.map +1 -0
  25. package/dist/src/cards/impl/bg-spell/conflagration-bg352.js +7 -10
  26. package/dist/src/cards/impl/bg-spell/conflagration-bg352.js.map +1 -1
  27. package/dist/src/cards/impl/bg-spell/deepwater-clan.js +13 -9
  28. package/dist/src/cards/impl/bg-spell/deepwater-clan.js.map +1 -1
  29. package/dist/src/cards/impl/bg-spell/friendly-bounty.d.ts +2 -0
  30. package/dist/src/cards/impl/bg-spell/friendly-bounty.js +44 -0
  31. package/dist/src/cards/impl/bg-spell/friendly-bounty.js.map +1 -0
  32. package/dist/src/cards/impl/bg-spell/healthy-bounty.d.ts +2 -0
  33. package/dist/src/cards/impl/bg-spell/healthy-bounty.js +15 -0
  34. package/dist/src/cards/impl/bg-spell/healthy-bounty.js.map +1 -0
  35. package/dist/src/cards/impl/bg-spell/hostile-bounty.d.ts +2 -0
  36. package/dist/src/cards/impl/bg-spell/hostile-bounty.js +15 -0
  37. package/dist/src/cards/impl/bg-spell/hostile-bounty.js.map +1 -0
  38. package/dist/src/cards/impl/bg-spell/jailer-sticker-306.d.ts +2 -0
  39. package/dist/src/cards/impl/bg-spell/jailer-sticker-306.js +27 -0
  40. package/dist/src/cards/impl/bg-spell/jailer-sticker-306.js.map +1 -0
  41. package/dist/src/cards/impl/bg-spell/jailer-sticker-733.d.ts +2 -0
  42. package/dist/src/cards/impl/bg-spell/jailer-sticker-733.js +32 -0
  43. package/dist/src/cards/impl/bg-spell/jailer-sticker-733.js.map +1 -0
  44. package/dist/src/cards/impl/bg-spell/might-of-stormwind.d.ts +2 -0
  45. package/dist/src/cards/impl/bg-spell/might-of-stormwind.js +15 -0
  46. package/dist/src/cards/impl/bg-spell/might-of-stormwind.js.map +1 -0
  47. package/dist/src/cards/impl/bg-spell/natural-blessing.js +10 -0
  48. package/dist/src/cards/impl/bg-spell/natural-blessing.js.map +1 -1
  49. package/dist/src/cards/impl/bg-spell/ophidian-staff.d.ts +2 -0
  50. package/dist/src/cards/impl/bg-spell/ophidian-staff.js +20 -0
  51. package/dist/src/cards/impl/bg-spell/ophidian-staff.js.map +1 -0
  52. package/dist/src/cards/impl/bg-spell/queens-command.js +4 -4
  53. package/dist/src/cards/impl/bg-spell/queens-command.js.map +1 -1
  54. package/dist/src/cards/impl/bg-spell/selfish-bounty.d.ts +2 -0
  55. package/dist/src/cards/impl/bg-spell/selfish-bounty.js +14 -0
  56. package/dist/src/cards/impl/bg-spell/selfish-bounty.js.map +1 -0
  57. package/dist/src/cards/impl/minion/abyssal-bruiser.js +3 -4
  58. package/dist/src/cards/impl/minion/abyssal-bruiser.js.map +1 -1
  59. package/dist/src/cards/impl/minion/alert-alarmist.js +1 -2
  60. package/dist/src/cards/impl/minion/alert-alarmist.js.map +1 -1
  61. package/dist/src/cards/impl/minion/anubarak-nerubian-king.js +2 -4
  62. package/dist/src/cards/impl/minion/anubarak-nerubian-king.js.map +1 -1
  63. package/dist/src/cards/impl/minion/balinda-stonehearth.js +1 -2
  64. package/dist/src/cards/impl/minion/balinda-stonehearth.js.map +1 -1
  65. package/dist/src/cards/impl/minion/bg352-chromadrake-pool.js +5 -6
  66. package/dist/src/cards/impl/minion/bg352-chromadrake-pool.js.map +1 -1
  67. package/dist/src/cards/impl/minion/black-chromadrake.js +2 -3
  68. package/dist/src/cards/impl/minion/black-chromadrake.js.map +1 -1
  69. package/dist/src/cards/impl/minion/blue-chromadrake.js +2 -3
  70. package/dist/src/cards/impl/minion/blue-chromadrake.js.map +1 -1
  71. package/dist/src/cards/impl/minion/brazen-buccaneer.js +2 -3
  72. package/dist/src/cards/impl/minion/brazen-buccaneer.js.map +1 -1
  73. package/dist/src/cards/impl/minion/bristleback-bully.js +5 -6
  74. package/dist/src/cards/impl/minion/bristleback-bully.js.map +1 -1
  75. package/dist/src/cards/impl/minion/bronze-chromadrake.js +2 -3
  76. package/dist/src/cards/impl/minion/bronze-chromadrake.js.map +1 -1
  77. package/dist/src/cards/impl/minion/cataclysmic-harbinger.js +2 -3
  78. package/dist/src/cards/impl/minion/cataclysmic-harbinger.js.map +1 -1
  79. package/dist/src/cards/impl/minion/champion-of-the-primus.js +2 -4
  80. package/dist/src/cards/impl/minion/champion-of-the-primus.js.map +1 -1
  81. package/dist/src/cards/impl/minion/charging-czarina.js +4 -1
  82. package/dist/src/cards/impl/minion/charging-czarina.js.map +1 -1
  83. package/dist/src/cards/impl/minion/consummate-conqueror.js +1 -2
  84. package/dist/src/cards/impl/minion/consummate-conqueror.js.map +1 -1
  85. package/dist/src/cards/impl/minion/cousin-errgl.js +4 -5
  86. package/dist/src/cards/impl/minion/cousin-errgl.js.map +1 -1
  87. package/dist/src/cards/impl/minion/cruise-controller.js +3 -2
  88. package/dist/src/cards/impl/minion/cruise-controller.js.map +1 -1
  89. package/dist/src/cards/impl/minion/deepwater-chieftain.js +9 -10
  90. package/dist/src/cards/impl/minion/deepwater-chieftain.js.map +1 -1
  91. package/dist/src/cards/impl/minion/demon-fodder.js +1 -2
  92. package/dist/src/cards/impl/minion/demon-fodder.js.map +1 -1
  93. package/dist/src/cards/impl/minion/determined-defender.js +2 -3
  94. package/dist/src/cards/impl/minion/determined-defender.js.map +1 -1
  95. package/dist/src/cards/impl/minion/diremuck-forager.d.ts +2 -4
  96. package/dist/src/cards/impl/minion/diremuck-forager.js +3 -3
  97. package/dist/src/cards/impl/minion/diremuck-forager.js.map +1 -1
  98. package/dist/src/cards/impl/minion/draconic-warden.js +3 -4
  99. package/dist/src/cards/impl/minion/draconic-warden.js.map +1 -1
  100. package/dist/src/cards/impl/minion/dustbone-devastator.js +4 -6
  101. package/dist/src/cards/impl/minion/dustbone-devastator.js.map +1 -1
  102. package/dist/src/cards/impl/minion/earthsong-shaman.js +2 -3
  103. package/dist/src/cards/impl/minion/earthsong-shaman.js.map +1 -1
  104. package/dist/src/cards/impl/minion/egg-of-the-endtimes.js +1 -2
  105. package/dist/src/cards/impl/minion/egg-of-the-endtimes.js.map +1 -1
  106. package/dist/src/cards/impl/minion/enchanted-sentinel.js +2 -3
  107. package/dist/src/cards/impl/minion/enchanted-sentinel.js.map +1 -1
  108. package/dist/src/cards/impl/minion/falling-sky-golem.js +3 -4
  109. package/dist/src/cards/impl/minion/falling-sky-golem.js.map +1 -1
  110. package/dist/src/cards/impl/minion/firelands-fugitive.js +5 -6
  111. package/dist/src/cards/impl/minion/firelands-fugitive.js.map +1 -1
  112. package/dist/src/cards/impl/minion/forsaken-weaver.js +2 -1
  113. package/dist/src/cards/impl/minion/forsaken-weaver.js.map +1 -1
  114. package/dist/src/cards/impl/minion/gluttonous-trogg.js +1 -2
  115. package/dist/src/cards/impl/minion/gluttonous-trogg.js.map +1 -1
  116. package/dist/src/cards/impl/minion/goldrinn-the-great-wolf.js +2 -5
  117. package/dist/src/cards/impl/minion/goldrinn-the-great-wolf.js.map +1 -1
  118. package/dist/src/cards/impl/minion/green-chromadrake.js +2 -3
  119. package/dist/src/cards/impl/minion/green-chromadrake.js.map +1 -1
  120. package/dist/src/cards/impl/minion/hired-ritualist.js +1 -2
  121. package/dist/src/cards/impl/minion/hired-ritualist.js.map +1 -1
  122. package/dist/src/cards/impl/minion/hog-watcher.js +1 -2
  123. package/dist/src/cards/impl/minion/hog-watcher.js.map +1 -1
  124. package/dist/src/cards/impl/minion/humming-bird.js +2 -4
  125. package/dist/src/cards/impl/minion/humming-bird.js.map +1 -1
  126. package/dist/src/cards/impl/minion/incubation-researcher.js +2 -3
  127. package/dist/src/cards/impl/minion/incubation-researcher.js.map +1 -1
  128. package/dist/src/cards/impl/minion/laboratory-assistant.d.ts +2 -2
  129. package/dist/src/cards/impl/minion/laboratory-assistant.js +1 -5
  130. package/dist/src/cards/impl/minion/laboratory-assistant.js.map +1 -1
  131. package/dist/src/cards/impl/minion/leyline-surfacer.js +9 -10
  132. package/dist/src/cards/impl/minion/leyline-surfacer.js.map +1 -1
  133. package/dist/src/cards/impl/minion/living-azerite.d.ts +2 -2
  134. package/dist/src/cards/impl/minion/living-azerite.js +17 -0
  135. package/dist/src/cards/impl/minion/living-azerite.js.map +1 -1
  136. package/dist/src/cards/impl/minion/lurking-leviathan.js +2 -3
  137. package/dist/src/cards/impl/minion/lurking-leviathan.js.map +1 -1
  138. package/dist/src/cards/impl/minion/maelstrom-emergent.js +1 -2
  139. package/dist/src/cards/impl/minion/maelstrom-emergent.js.map +1 -1
  140. package/dist/src/cards/impl/minion/mama-mrrglton.js +2 -3
  141. package/dist/src/cards/impl/minion/mama-mrrglton.js.map +1 -1
  142. package/dist/src/cards/impl/minion/nalaa-the-redeemer.js +5 -1
  143. package/dist/src/cards/impl/minion/nalaa-the-redeemer.js.map +1 -1
  144. package/dist/src/cards/impl/minion/nerubian-deathswarmer.js +2 -6
  145. package/dist/src/cards/impl/minion/nerubian-deathswarmer.js.map +1 -1
  146. package/dist/src/cards/impl/minion/old-soul.js +1 -2
  147. package/dist/src/cards/impl/minion/old-soul.js.map +1 -1
  148. package/dist/src/cards/impl/minion/oranomonos-the-wilted.js +2 -4
  149. package/dist/src/cards/impl/minion/oranomonos-the-wilted.js.map +1 -1
  150. package/dist/src/cards/impl/minion/papa-mrrglton.js +2 -3
  151. package/dist/src/cards/impl/minion/papa-mrrglton.js.map +1 -1
  152. package/dist/src/cards/impl/minion/plaguerunner.js +4 -6
  153. package/dist/src/cards/impl/minion/plaguerunner.js.map +1 -1
  154. package/dist/src/cards/impl/minion/pufferquil.js +1 -2
  155. package/dist/src/cards/impl/minion/pufferquil.js.map +1 -1
  156. package/dist/src/cards/impl/minion/red-chromadrake.js +2 -3
  157. package/dist/src/cards/impl/minion/red-chromadrake.js.map +1 -1
  158. package/dist/src/cards/impl/minion/redtusk-thornraiser.js +5 -6
  159. package/dist/src/cards/impl/minion/redtusk-thornraiser.js.map +1 -1
  160. package/dist/src/cards/impl/minion/ring-bearer.js +2 -3
  161. package/dist/src/cards/impl/minion/ring-bearer.js.map +1 -1
  162. package/dist/src/cards/impl/minion/roving-sailor.js +2 -3
  163. package/dist/src/cards/impl/minion/roving-sailor.js.map +1 -1
  164. package/dist/src/cards/impl/minion/ruthless-queensguard.js +6 -7
  165. package/dist/src/cards/impl/minion/ruthless-queensguard.js.map +1 -1
  166. package/dist/src/cards/impl/minion/scarlet-survivor.js +1 -2
  167. package/dist/src/cards/impl/minion/scarlet-survivor.js.map +1 -1
  168. package/dist/src/cards/impl/minion/seafloor-recruiter.js +2 -3
  169. package/dist/src/cards/impl/minion/seafloor-recruiter.js.map +1 -1
  170. package/dist/src/cards/impl/minion/sewer-lord.js +2 -3
  171. package/dist/src/cards/impl/minion/sewer-lord.js.map +1 -1
  172. package/dist/src/cards/impl/minion/ship-jumper.js +2 -3
  173. package/dist/src/cards/impl/minion/ship-jumper.js.map +1 -1
  174. package/dist/src/cards/impl/minion/skeletal-strafer.js +3 -4
  175. package/dist/src/cards/impl/minion/skeletal-strafer.js.map +1 -1
  176. package/dist/src/cards/impl/minion/tide-raiser.js +2 -3
  177. package/dist/src/cards/impl/minion/tide-raiser.js.map +1 -1
  178. package/dist/src/cards/impl/minion/timewarped-caretaker.js +2 -4
  179. package/dist/src/cards/impl/minion/timewarped-caretaker.js.map +1 -1
  180. package/dist/src/cards/impl/minion/timewarped-deathswarmer.js +2 -5
  181. package/dist/src/cards/impl/minion/timewarped-deathswarmer.js.map +1 -1
  182. package/dist/src/cards/impl/minion/timewarped-goldrinn.js +3 -7
  183. package/dist/src/cards/impl/minion/timewarped-goldrinn.js.map +1 -1
  184. package/dist/src/cards/impl/minion/twisted-wrathguard.js +1 -2
  185. package/dist/src/cards/impl/minion/twisted-wrathguard.js.map +1 -1
  186. package/dist/src/cards/impl/minion/very-hungry-winterfinner.js +2 -3
  187. package/dist/src/cards/impl/minion/very-hungry-winterfinner.js.map +1 -1
  188. package/dist/src/cards/impl/minion/vinespeaker.js +2 -3
  189. package/dist/src/cards/impl/minion/vinespeaker.js.map +1 -1
  190. package/dist/src/cards/impl/minion/void-pup-trainer.js +1 -2
  191. package/dist/src/cards/impl/minion/void-pup-trainer.js.map +1 -1
  192. package/dist/src/cards/impl/minion/woodland-defiler.js +1 -2
  193. package/dist/src/cards/impl/minion/woodland-defiler.js.map +1 -1
  194. package/dist/src/cards/impl/minion/wyvern-outrider.js +1 -2
  195. package/dist/src/cards/impl/minion/wyvern-outrider.js.map +1 -1
  196. package/dist/src/cards/impl/trinket/archaic-scroll.d.ts +2 -0
  197. package/dist/src/cards/impl/trinket/archaic-scroll.js +21 -0
  198. package/dist/src/cards/impl/trinket/archaic-scroll.js.map +1 -0
  199. package/dist/src/cards/impl/trinket/artisanal-urn.js +2 -1
  200. package/dist/src/cards/impl/trinket/artisanal-urn.js.map +1 -1
  201. package/dist/src/cards/impl/trinket/bewitched-ribbon.d.ts +2 -0
  202. package/dist/src/cards/impl/trinket/bewitched-ribbon.js +15 -0
  203. package/dist/src/cards/impl/trinket/bewitched-ribbon.js.map +1 -0
  204. package/dist/src/cards/impl/trinket/blood-amulet.d.ts +2 -0
  205. package/dist/src/cards/impl/trinket/blood-amulet.js +15 -0
  206. package/dist/src/cards/impl/trinket/blood-amulet.js.map +1 -0
  207. package/dist/src/cards/impl/trinket/bloodbound-earrings.d.ts +2 -0
  208. package/dist/src/cards/impl/trinket/bloodbound-earrings.js +22 -0
  209. package/dist/src/cards/impl/trinket/bloodbound-earrings.js.map +1 -0
  210. package/dist/src/cards/impl/trinket/bluegill-flippers.d.ts +2 -0
  211. package/dist/src/cards/impl/trinket/bluegill-flippers.js +21 -0
  212. package/dist/src/cards/impl/trinket/bluegill-flippers.js.map +1 -0
  213. package/dist/src/cards/impl/trinket/bubble-crown.d.ts +2 -0
  214. package/dist/src/cards/impl/trinket/bubble-crown.js +18 -0
  215. package/dist/src/cards/impl/trinket/bubble-crown.js.map +1 -0
  216. package/dist/src/cards/impl/trinket/cloud-serpent-horn.d.ts +2 -0
  217. package/dist/src/cards/impl/trinket/cloud-serpent-horn.js +26 -0
  218. package/dist/src/cards/impl/trinket/cloud-serpent-horn.js.map +1 -0
  219. package/dist/src/cards/impl/trinket/comfy-coffin.d.ts +2 -0
  220. package/dist/src/cards/impl/trinket/comfy-coffin.js +12 -0
  221. package/dist/src/cards/impl/trinket/comfy-coffin.js.map +1 -0
  222. package/dist/src/cards/impl/trinket/copper-coil.d.ts +2 -0
  223. package/dist/src/cards/impl/trinket/copper-coil.js +15 -0
  224. package/dist/src/cards/impl/trinket/copper-coil.js.map +1 -0
  225. package/dist/src/cards/impl/trinket/coral-spear.d.ts +2 -0
  226. package/dist/src/cards/impl/trinket/coral-spear.js +22 -0
  227. package/dist/src/cards/impl/trinket/coral-spear.js.map +1 -0
  228. package/dist/src/cards/impl/trinket/dramaloc-sticker.d.ts +2 -0
  229. package/dist/src/cards/impl/trinket/dramaloc-sticker.js +36 -0
  230. package/dist/src/cards/impl/trinket/dramaloc-sticker.js.map +1 -0
  231. package/dist/src/cards/impl/trinket/fang-anklet.d.ts +2 -0
  232. package/dist/src/cards/impl/trinket/fang-anklet.js +30 -0
  233. package/dist/src/cards/impl/trinket/fang-anklet.js.map +1 -0
  234. package/dist/src/cards/impl/trinket/felburned-ledger.d.ts +2 -0
  235. package/dist/src/cards/impl/trinket/felburned-ledger.js +12 -0
  236. package/dist/src/cards/impl/trinket/felburned-ledger.js.map +1 -0
  237. package/dist/src/cards/impl/trinket/fridge-magnet.d.ts +2 -0
  238. package/dist/src/cards/impl/trinket/fridge-magnet.js +13 -0
  239. package/dist/src/cards/impl/trinket/fridge-magnet.js.map +1 -0
  240. package/dist/src/cards/impl/trinket/gilnean-thorned-rose.d.ts +2 -0
  241. package/dist/src/cards/impl/trinket/gilnean-thorned-rose.js +19 -0
  242. package/dist/src/cards/impl/trinket/gilnean-thorned-rose.js.map +1 -0
  243. package/dist/src/cards/impl/trinket/glowscale-portrait.d.ts +2 -0
  244. package/dist/src/cards/impl/trinket/glowscale-portrait.js +21 -0
  245. package/dist/src/cards/impl/trinket/glowscale-portrait.js.map +1 -0
  246. package/dist/src/cards/impl/trinket/heart-of-the-forest.d.ts +2 -0
  247. package/dist/src/cards/impl/trinket/heart-of-the-forest.js +17 -0
  248. package/dist/src/cards/impl/trinket/heart-of-the-forest.js.map +1 -0
  249. package/dist/src/cards/impl/trinket/jar-o-gems.d.ts +2 -0
  250. package/dist/src/cards/impl/trinket/jar-o-gems.js +23 -0
  251. package/dist/src/cards/impl/trinket/jar-o-gems.js.map +1 -0
  252. package/dist/src/cards/impl/trinket/lorewalker-scroll.d.ts +2 -0
  253. package/dist/src/cards/impl/trinket/lorewalker-scroll.js +22 -0
  254. package/dist/src/cards/impl/trinket/lorewalker-scroll.js.map +1 -0
  255. package/dist/src/cards/impl/trinket/miniature-ship.d.ts +2 -0
  256. package/dist/src/cards/impl/trinket/miniature-ship.js +19 -0
  257. package/dist/src/cards/impl/trinket/miniature-ship.js.map +1 -0
  258. package/dist/src/cards/impl/trinket/powder-keg-enchantment.d.ts +2 -0
  259. package/dist/src/cards/impl/trinket/powder-keg-enchantment.js +16 -0
  260. package/dist/src/cards/impl/trinket/powder-keg-enchantment.js.map +1 -0
  261. package/dist/src/cards/impl/trinket/powder-keg.d.ts +2 -0
  262. package/dist/src/cards/impl/trinket/powder-keg.js +23 -0
  263. package/dist/src/cards/impl/trinket/powder-keg.js.map +1 -0
  264. package/dist/src/cards/impl/trinket/protective-ring.d.ts +2 -0
  265. package/dist/src/cards/impl/trinket/protective-ring.js +19 -0
  266. package/dist/src/cards/impl/trinket/protective-ring.js.map +1 -0
  267. package/dist/src/cards/impl/trinket/quilligraphy-set.d.ts +3 -0
  268. package/dist/src/cards/impl/trinket/quilligraphy-set.js +19 -0
  269. package/dist/src/cards/impl/trinket/quilligraphy-set.js.map +1 -0
  270. package/dist/src/cards/impl/trinket/reinforced-shield.d.ts +2 -0
  271. package/dist/src/cards/impl/trinket/reinforced-shield.js +15 -0
  272. package/dist/src/cards/impl/trinket/reinforced-shield.js.map +1 -0
  273. package/dist/src/cards/impl/trinket/slamma-sticker.d.ts +2 -0
  274. package/dist/src/cards/impl/trinket/slamma-sticker.js +18 -0
  275. package/dist/src/cards/impl/trinket/slamma-sticker.js.map +1 -0
  276. package/dist/src/cards/impl/trinket/stegodon-portrait.d.ts +2 -0
  277. package/dist/src/cards/impl/trinket/stegodon-portrait.js +19 -0
  278. package/dist/src/cards/impl/trinket/stegodon-portrait.js.map +1 -0
  279. package/dist/src/cards/impl/trinket/tarecgosa-sticker.d.ts +2 -0
  280. package/dist/src/cards/impl/trinket/tarecgosa-sticker.js +7 -0
  281. package/dist/src/cards/impl/trinket/tarecgosa-sticker.js.map +1 -0
  282. package/dist/src/cards/impl/trinket/thornspike-pauldron.d.ts +2 -0
  283. package/dist/src/cards/impl/trinket/thornspike-pauldron.js +11 -0
  284. package/dist/src/cards/impl/trinket/thornspike-pauldron.js.map +1 -0
  285. package/dist/src/cards/impl/trinket/tide-raiser-portrait.d.ts +2 -0
  286. package/dist/src/cards/impl/trinket/tide-raiser-portrait.js +16 -0
  287. package/dist/src/cards/impl/trinket/tide-raiser-portrait.js.map +1 -0
  288. package/dist/src/cards/impl/trinket/tiger-carving-token.d.ts +2 -0
  289. package/dist/src/cards/impl/trinket/tiger-carving-token.js +16 -0
  290. package/dist/src/cards/impl/trinket/tiger-carving-token.js.map +1 -0
  291. package/dist/src/cards/impl/trinket/trusty-crowbar.d.ts +2 -0
  292. package/dist/src/cards/impl/trinket/trusty-crowbar.js +19 -0
  293. package/dist/src/cards/impl/trinket/trusty-crowbar.js.map +1 -0
  294. package/dist/src/cards/impl/trinket/unholy-sanctum.js +1 -1
  295. package/dist/src/cards/impl/trinket/unholy-sanctum.js.map +1 -1
  296. package/dist/src/cards/impl/trinket/wicked-tome.d.ts +2 -0
  297. package/dist/src/cards/impl/trinket/wicked-tome.js +13 -0
  298. package/dist/src/cards/impl/trinket/wicked-tome.js.map +1 -0
  299. package/dist/src/cards/impl/trinket/wildfeather-duster.d.ts +2 -0
  300. package/dist/src/cards/impl/trinket/wildfeather-duster.js +25 -0
  301. package/dist/src/cards/impl/trinket/wildfeather-duster.js.map +1 -0
  302. package/dist/src/mechanics/cast-tavern-spell.js +13 -0
  303. package/dist/src/mechanics/cast-tavern-spell.js.map +1 -1
  304. package/dist/src/mechanics/tavern-spell-repeat.js +4 -5
  305. package/dist/src/mechanics/tavern-spell-repeat.js.map +1 -1
  306. package/dist/src/services/card-ids.d.ts +724 -5
  307. package/dist/src/services/card-ids.js.map +1 -1
  308. package/dist/src/simulation/add-minion-to-board.d.ts +8 -0
  309. package/dist/src/simulation/add-minion-to-board.js +28 -18
  310. package/dist/src/simulation/add-minion-to-board.js.map +1 -1
  311. package/dist/src/simulation/after-attack.js +14 -14
  312. package/dist/src/simulation/after-attack.js.map +1 -1
  313. package/dist/src/simulation/auras.js +6 -1
  314. package/dist/src/simulation/auras.js.map +1 -1
  315. package/dist/src/simulation/avenge.js +0 -18
  316. package/dist/src/simulation/avenge.js.map +1 -1
  317. package/dist/src/simulation/blood-gems.d.ts +1 -0
  318. package/dist/src/simulation/blood-gems.js +11 -1
  319. package/dist/src/simulation/blood-gems.js.map +1 -1
  320. package/dist/src/simulation/cards-in-hand.js +14 -4
  321. package/dist/src/simulation/cards-in-hand.js.map +1 -1
  322. package/dist/src/simulation/damage-effects.d.ts +6 -0
  323. package/dist/src/simulation/damage-effects.js +11 -9
  324. package/dist/src/simulation/damage-effects.js.map +1 -1
  325. package/dist/src/simulation/damage-to-hero.js +12 -0
  326. package/dist/src/simulation/damage-to-hero.js.map +1 -1
  327. package/dist/src/simulation/death-effects.js +25 -2
  328. package/dist/src/simulation/death-effects.js.map +1 -1
  329. package/dist/src/simulation/global-info-helpers.d.ts +7 -0
  330. package/dist/src/simulation/global-info-helpers.js +25 -0
  331. package/dist/src/simulation/global-info-helpers.js.map +1 -0
  332. package/dist/src/simulation/magnetize.js +28 -1
  333. package/dist/src/simulation/magnetize.js.map +1 -1
  334. package/dist/src/simulation/start-of-combat/soc-action-processor.js +0 -4
  335. package/dist/src/simulation/start-of-combat/soc-action-processor.js.map +1 -1
  336. package/dist/src/temp-card-ids.d.ts +1 -118
  337. package/dist/src/temp-card-ids.js +1 -118
  338. package/dist/src/temp-card-ids.js.map +1 -1
  339. package/package.json +1 -1
@@ -1,23 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConflagrationBg352 = void 0;
4
- const reference_data_1 = require("@firestone-hs/reference-data");
5
- const temp_card_ids_1 = require("../../../temp-card-ids");
6
- const utils_1 = require("../../../utils");
7
4
  const stats_1 = require("../../../simulation/stats");
8
5
  exports.ConflagrationBg352 = {
9
- cardIds: [temp_card_ids_1.TempCardIds.Conflagration, temp_card_ids_1.TempCardIds.Conflagration_G],
6
+ cardIds: ["BG35_910", "BG35_910_G"],
10
7
  castTavernSpell: (spellCardId, input) => {
11
- var _a;
12
- const mult = spellCardId === temp_card_ids_1.TempCardIds.Conflagration_G ? 2 : 1;
8
+ var _a, _b;
9
+ const mult = spellCardId === "BG35_910_G" ? 2 : 1;
13
10
  const target = (_a = input.target) !== null && _a !== void 0 ? _a : input.board.find((e) => e.health > 0 && !e.definitelyDead);
14
11
  if (!target) {
15
12
  return;
16
13
  }
17
- (0, stats_1.modifyStats)(target, input.source, 4 * mult, 2 * mult, input.board, input.hero, input.gameState);
18
- if ((0, utils_1.hasCorrectTribe)(target, input.hero, reference_data_1.Race.ELEMENTAL, input.gameState.anomalies, input.gameState.allCards)) {
19
- (0, stats_1.modifyStats)(target, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);
20
- }
14
+ const elementalsPlayed = (_b = input.hero.globalInfo.ElementalsPlayedThisTurn) !== null && _b !== void 0 ? _b : 0;
15
+ const attack = (4 + elementalsPlayed) * mult;
16
+ const health = (4 + elementalsPlayed) * mult;
17
+ (0, stats_1.modifyStats)(target, input.source, attack, health, input.board, input.hero, input.gameState);
21
18
  },
22
19
  };
23
20
  //# sourceMappingURL=conflagration-bg352.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"conflagration-bg352.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/conflagration-bg352.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AACpD,0DAAqD;AACrD,0CAAiD;AAEjD,qDAAwD;AAG3C,QAAA,kBAAkB,GAAoB;IAClD,OAAO,EAAE,CAAC,2BAAW,CAAC,aAAa,EAAE,2BAAW,CAAC,eAAe,CAAC;IACjE,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;;QAC/D,MAAM,IAAI,GAAG,WAAW,KAAK,2BAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,EAAE;YACZ,OAAO;SACP;QACD,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChG,IACC,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACvG;YACD,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAChG;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\n/** Firelands token: buff a friendly minion; Elementals get extra stats. */\r\nexport const ConflagrationBg352: TavernSpellCard = {\r\n\tcardIds: [TempCardIds.Conflagration, TempCardIds.Conflagration_G],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst mult = spellCardId === TempCardIds.Conflagration_G ? 2 : 1;\r\n\t\tconst target = input.target ?? input.board.find((e) => e.health > 0 && !e.definitelyDead);\r\n\t\tif (!target) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tmodifyStats(target, input.source, 4 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\tif (\r\n\t\t\thasCorrectTribe(target, input.hero, Race.ELEMENTAL, input.gameState.anomalies, input.gameState.allCards)\r\n\t\t) {\r\n\t\t\tmodifyStats(target, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
1
+ {"version":3,"file":"conflagration-bg352.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/conflagration-bg352.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AAE3C,QAAA,kBAAkB,GAAoB;IAClD,OAAO,EAAE,0BAAkE;IAC3E,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;;QAC/D,MAAM,IAAI,GAAG,WAAW,iBAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,EAAE;YACZ,OAAO;SACP;QACD,MAAM,gBAAgB,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,mCAAI,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,gBAAgB,CAAC,GAAG,IAAI,CAAC;QAC7C,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,gBAAgB,CAAC,GAAG,IAAI,CAAC;QAC7C,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\nexport const ConflagrationBg352: TavernSpellCard = {\r\n\tcardIds: [CardIds.Conflagration_BG35_910, CardIds.Conflagration_BG35_910_G],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst mult = spellCardId === CardIds.Conflagration_BG35_910_G ? 2 : 1;\r\n\t\tconst target = input.target ?? input.board.find((e) => e.health > 0 && !e.definitelyDead);\r\n\t\tif (!target) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst elementalsPlayed = input.hero.globalInfo.ElementalsPlayedThisTurn ?? 0;\r\n\t\tconst attack = (4 + elementalsPlayed) * mult;\r\n\t\tconst health = (4 + elementalsPlayed) * mult;\r\n\t\tmodifyStats(target, input.source, attack, health, input.board, input.hero, input.gameState);\r\n\t},\r\n};\r\n"]}
@@ -2,18 +2,22 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DeepwaterClan = void 0;
4
4
  const reference_data_1 = require("@firestone-hs/reference-data");
5
- const temp_card_ids_1 = require("../../../temp-card-ids");
6
- const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
5
+ const stats_1 = require("../../../simulation/stats");
6
+ const utils_1 = require("../../../utils");
7
7
  exports.DeepwaterClan = {
8
- cardIds: [temp_card_ids_1.TempCardIds.DeepwaterClan, temp_card_ids_1.TempCardIds.DeepwaterClan_G],
8
+ cardIds: ["BG35_149", "BG35_149_G"],
9
9
  castTavernSpell: (spellCardId, input) => {
10
10
  var _a;
11
- const mult = spellCardId === temp_card_ids_1.TempCardIds.DeepwaterClan_G ? 2 : 1;
12
- const tier = (_a = input.hero.tavernTier) !== null && _a !== void 0 ? _a : 6;
13
- for (let i = 0; i < mult; i++) {
14
- const id = input.gameState.cardsData.getRandomMinionForTribe(reference_data_1.Race.MURLOC, tier, []);
15
- if (id) {
16
- (0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, [id], input.gameState);
11
+ const mult = spellCardId === "BG35_149_G" ? 2 : 1;
12
+ const target = (_a = input.target) !== null && _a !== void 0 ? _a : input.board.find((e) => e.health > 0 && !e.definitelyDead);
13
+ if (target) {
14
+ (0, stats_1.modifyStats)(target, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);
15
+ }
16
+ for (const entity of input.board) {
17
+ if (entity.health <= 0 || entity.definitelyDead)
18
+ continue;
19
+ if ((0, utils_1.hasCorrectTribe)(entity, input.hero, reference_data_1.Race.MURLOC, input.gameState.anomalies, input.gameState.allCards)) {
20
+ (0, stats_1.modifyStats)(entity, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);
17
21
  }
18
22
  }
19
23
  },
@@ -1 +1 @@
1
- {"version":3,"file":"deepwater-clan.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/deepwater-clan.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AACpD,0DAAqD;AACrD,qEAAmE;AAItD,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,CAAC,2BAAW,CAAC,aAAa,EAAE,2BAAW,CAAC,eAAe,CAAC;IACjE,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;;QAC/D,MAAM,IAAI,GAAG,WAAW,KAAK,2BAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,mCAAI,CAAC,CAAC;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,qBAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACpF,IAAI,EAAE,EAAE;gBACP,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aAC/D;SACD;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\n/** Deepwater Chieftain token: add a random Murloc (≤ tavern tier) to hand. */\r\nexport const DeepwaterClan: TavernSpellCard = {\r\n\tcardIds: [TempCardIds.DeepwaterClan, TempCardIds.DeepwaterClan_G],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst mult = spellCardId === TempCardIds.DeepwaterClan_G ? 2 : 1;\r\n\t\tconst tier = input.hero.tavernTier ?? 6;\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tconst id = input.gameState.cardsData.getRandomMinionForTribe(Race.MURLOC, tier, []);\r\n\t\t\tif (id) {\r\n\t\t\t\taddCardsInHand(input.hero, input.board, [id], input.gameState);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n};\r\n"]}
1
+ {"version":3,"file":"deepwater-clan.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/deepwater-clan.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAEpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,0BAAkE;IAC3E,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;;QAC/D,MAAM,IAAI,GAAG,WAAW,iBAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAC1F,IAAI,MAAM,EAAE;YACX,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAChG;QACD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE;YACjC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc;gBAAE,SAAS;YAC1D,IAAI,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;gBAC1G,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aAChG;SACD;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const DeepwaterClan: TavernSpellCard = {\r\n\tcardIds: [CardIds.DeepwaterClan_BG35_149, CardIds.DeepwaterClan_BG35_149_G],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst mult = spellCardId === CardIds.DeepwaterClan_BG35_149_G ? 2 : 1;\r\n\t\tconst target = input.target ?? input.board.find((e) => e.health > 0 && !e.definitelyDead);\r\n\t\tif (target) {\r\n\t\t\tmodifyStats(target, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t\tfor (const entity of input.board) {\r\n\t\t\tif (entity.health <= 0 || entity.definitelyDead) continue;\r\n\t\t\tif (hasCorrectTribe(entity, input.hero, Race.MURLOC, input.gameState.anomalies, input.gameState.allCards)) {\r\n\t\t\t\tmodifyStats(entity, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const FriendlyBounty: TavernSpellCard;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FriendlyBounty = void 0;
4
+ const reference_data_1 = require("@firestone-hs/reference-data");
5
+ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
6
+ const utils_1 = require("../../../utils");
7
+ exports.FriendlyBounty = {
8
+ cardIds: ["BG33_814"],
9
+ castTavernSpell: (_spellCardId, input) => {
10
+ var _a, _b, _c;
11
+ const tribeCounts = new Map();
12
+ for (const entity of input.board) {
13
+ if (entity.health <= 0 || entity.definitelyDead)
14
+ continue;
15
+ const tribes = (0, utils_1.getEffectiveTribesForEntity)(entity, input.hero, input.gameState.anomalies, input.gameState.allCards);
16
+ for (const tribe of tribes) {
17
+ if (tribe === reference_data_1.Race.ALL) {
18
+ for (const bgRace of reference_data_1.ALL_BG_RACES) {
19
+ tribeCounts.set(bgRace, ((_a = tribeCounts.get(bgRace)) !== null && _a !== void 0 ? _a : 0) + 1);
20
+ }
21
+ }
22
+ else {
23
+ tribeCounts.set(tribe, ((_b = tribeCounts.get(tribe)) !== null && _b !== void 0 ? _b : 0) + 1);
24
+ }
25
+ }
26
+ }
27
+ let mostCommonTribe = null;
28
+ let maxCount = 0;
29
+ for (const [tribe, count] of tribeCounts) {
30
+ if (count > maxCount) {
31
+ maxCount = count;
32
+ mostCommonTribe = tribe;
33
+ }
34
+ }
35
+ if (mostCommonTribe == null)
36
+ return;
37
+ const tier = (_c = input.hero.tavernTier) !== null && _c !== void 0 ? _c : 6;
38
+ const cardId = input.gameState.cardsData.getRandomMinionForTribe(mostCommonTribe, tier, []);
39
+ if (cardId) {
40
+ (0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, [cardId], input.gameState);
41
+ }
42
+ },
43
+ };
44
+ //# sourceMappingURL=friendly-bounty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"friendly-bounty.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/friendly-bounty.ts"],"names":[],"mappings":";;;AAAA,iEAAkE;AAElE,qEAAmE;AACnE,0CAA6D;AAGhD,QAAA,cAAc,GAAoB;IAC9C,OAAO,EAAE,YAAiC;IAC1C,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;;QAChE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAgB,CAAC;QAC5C,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE;YACjC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc;gBAAE,SAAS;YAC1D,MAAM,MAAM,GAAG,IAAA,mCAA2B,EACzC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CACvE,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBAC3B,IAAI,KAAK,KAAK,qBAAI,CAAC,GAAG,EAAE;oBACvB,KAAK,MAAM,MAAM,IAAI,6BAAY,EAAE;wBAClC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,MAAA,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;qBAC5D;iBACD;qBAAM;oBACN,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAA,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC1D;aACD;SACD;QACD,IAAI,eAAe,GAAgB,IAAI,CAAC;QACxC,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,WAAW,EAAE;YACzC,IAAI,KAAK,GAAG,QAAQ,EAAE;gBACrB,QAAQ,GAAG,KAAK,CAAC;gBACjB,eAAe,GAAG,KAAK,CAAC;aACxB;SACD;QACD,IAAI,eAAe,IAAI,IAAI;YAAE,OAAO;QACpC,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,mCAAI,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAC5F,IAAI,MAAM,EAAE;YACX,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACnE;IACF,CAAC;CACD,CAAC","sourcesContent":["import { ALL_BG_RACES, Race } from '@firestone-hs/reference-data';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { getEffectiveTribesForEntity } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const FriendlyBounty: TavernSpellCard = {\r\n\tcardIds: [CardIds.FriendlyBounty_BG33_814],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst tribeCounts = new Map<Race, number>();\r\n\t\tfor (const entity of input.board) {\r\n\t\t\tif (entity.health <= 0 || entity.definitelyDead) continue;\r\n\t\t\tconst tribes = getEffectiveTribesForEntity(\r\n\t\t\t\tentity, input.hero, input.gameState.anomalies, input.gameState.allCards,\r\n\t\t\t);\r\n\t\t\tfor (const tribe of tribes) {\r\n\t\t\t\tif (tribe === Race.ALL) {\r\n\t\t\t\t\tfor (const bgRace of ALL_BG_RACES) {\r\n\t\t\t\t\t\ttribeCounts.set(bgRace, (tribeCounts.get(bgRace) ?? 0) + 1);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttribeCounts.set(tribe, (tribeCounts.get(tribe) ?? 0) + 1);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\tlet mostCommonTribe: Race | null = null;\r\n\t\tlet maxCount = 0;\r\n\t\tfor (const [tribe, count] of tribeCounts) {\r\n\t\t\tif (count > maxCount) {\r\n\t\t\t\tmaxCount = count;\r\n\t\t\t\tmostCommonTribe = tribe;\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (mostCommonTribe == null) return;\r\n\t\tconst tier = input.hero.tavernTier ?? 6;\r\n\t\tconst cardId = input.gameState.cardsData.getRandomMinionForTribe(mostCommonTribe, tier, []);\r\n\t\tif (cardId) {\r\n\t\t\taddCardsInHand(input.hero, input.board, [cardId], input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const HealthyBounty: TavernSpellCard;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HealthyBounty = void 0;
4
+ const utils_1 = require("../../../services/utils");
5
+ const stats_1 = require("../../../simulation/stats");
6
+ exports.HealthyBounty = {
7
+ cardIds: ["BG33_811"],
8
+ castTavernSpell: (_spellCardId, input) => {
9
+ const targets = (0, utils_1.pickMultipleRandomAlive)(input.board, 3);
10
+ for (const target of targets) {
11
+ (0, stats_1.modifyStats)(target, input.source, 0, 4, input.board, input.hero, input.gameState);
12
+ }
13
+ },
14
+ };
15
+ //# sourceMappingURL=healthy-bounty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"healthy-bounty.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/healthy-bounty.ts"],"names":[],"mappings":";;;AACA,mDAAkE;AAClE,qDAAwD;AAG3C,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,YAAgC;IACzC,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;QAChE,MAAM,OAAO,GAAG,IAAA,+BAAuB,EAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACxD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAClF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { pickMultipleRandomAlive } from '../../../services/utils';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const HealthyBounty: TavernSpellCard = {\r\n\tcardIds: [CardIds.HealthyBounty_BG33_811],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst targets = pickMultipleRandomAlive(input.board, 3);\r\n\t\tfor (const target of targets) {\r\n\t\t\tmodifyStats(target, input.source, 0, 4, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const HostileBounty: TavernSpellCard;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HostileBounty = void 0;
4
+ const utils_1 = require("../../../services/utils");
5
+ const stats_1 = require("../../../simulation/stats");
6
+ exports.HostileBounty = {
7
+ cardIds: ["BG33_812"],
8
+ castTavernSpell: (_spellCardId, input) => {
9
+ const targets = (0, utils_1.pickMultipleRandomAlive)(input.board, 3);
10
+ for (const target of targets) {
11
+ (0, stats_1.modifyStats)(target, input.source, 4, 0, input.board, input.hero, input.gameState);
12
+ }
13
+ },
14
+ };
15
+ //# sourceMappingURL=hostile-bounty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostile-bounty.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/hostile-bounty.ts"],"names":[],"mappings":";;;AACA,mDAAkE;AAClE,qDAAwD;AAG3C,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,YAAgC;IACzC,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;QAChE,MAAM,OAAO,GAAG,IAAA,+BAAuB,EAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACxD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAClF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { pickMultipleRandomAlive } from '../../../services/utils';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const HostileBounty: TavernSpellCard = {\r\n\tcardIds: [CardIds.HostileBounty_BG33_812],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst targets = pickMultipleRandomAlive(input.board, 3);\r\n\t\tfor (const target of targets) {\r\n\t\t\tmodifyStats(target, input.source, 4, 0, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const JailerSticker306: TavernSpellCard;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JailerSticker306 = void 0;
4
+ const reference_data_1 = require("@firestone-hs/reference-data");
5
+ const utils_1 = require("../../../services/utils");
6
+ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
7
+ const utils_2 = require("../../../utils");
8
+ exports.JailerSticker306 = {
9
+ cardIds: ["BG35_MagicItem_306t"],
10
+ castTavernSpell: (_spellCardId, input) => {
11
+ var _a;
12
+ const undeadTargets = input.board.filter((e) => e.health > 0 &&
13
+ !e.definitelyDead &&
14
+ (0, utils_2.hasCorrectTribe)(e, input.hero, reference_data_1.Race.UNDEAD, input.gameState.anomalies, input.gameState.allCards));
15
+ const target = input.target && undeadTargets.includes(input.target) ? input.target : (0, utils_1.pickRandom)(undeadTargets);
16
+ if (!target)
17
+ return;
18
+ target.health = 0;
19
+ target.definitelyDead = true;
20
+ const tier = (_a = input.hero.tavernTier) !== null && _a !== void 0 ? _a : 6;
21
+ const cardId = input.gameState.cardsData.getRandomMinionForTribe(reference_data_1.Race.UNDEAD, tier, []);
22
+ if (cardId) {
23
+ (0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, [cardId], input.gameState);
24
+ }
25
+ },
26
+ };
27
+ //# sourceMappingURL=jailer-sticker-306.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jailer-sticker-306.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/jailer-sticker-306.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAEpD,mDAAqD;AACrD,qEAAmE;AACnE,0CAAiD;AAGpC,QAAA,gBAAgB,GAAoB;IAChD,OAAO,EAAE,uBAA8D;IACvE,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;;QAChE,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,MAAM,GAAG,CAAC;YACZ,CAAC,CAAC,CAAC,cAAc;YACjB,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CACjG,CAAC;QACF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,kBAAU,EAAC,aAAa,CAAC,CAAC;QAC/G,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,mCAAI,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,qBAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QACxF,IAAI,MAAM,EAAE;YACX,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACnE;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const JailerSticker306: TavernSpellCard = {\r\n\tcardIds: [CardIds.JailerSticker_JailerStickerToken_BG35_MagicItem_306t],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst undeadTargets = input.board.filter(\r\n\t\t\t(e) =>\r\n\t\t\t\te.health > 0 &&\r\n\t\t\t\t!e.definitelyDead &&\r\n\t\t\t\thasCorrectTribe(e, input.hero, Race.UNDEAD, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t);\r\n\t\tconst target = input.target && undeadTargets.includes(input.target) ? input.target : pickRandom(undeadTargets);\r\n\t\tif (!target) return;\r\n\t\ttarget.health = 0;\r\n\t\ttarget.definitelyDead = true;\r\n\t\tconst tier = input.hero.tavernTier ?? 6;\r\n\t\tconst cardId = input.gameState.cardsData.getRandomMinionForTribe(Race.UNDEAD, tier, []);\r\n\t\tif (cardId) {\r\n\t\t\taddCardsInHand(input.hero, input.board, [cardId], input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const JailerSticker733: TavernSpellCard;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JailerSticker733 = void 0;
4
+ const reference_data_1 = require("@firestone-hs/reference-data");
5
+ const utils_1 = require("../../../services/utils");
6
+ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
7
+ const utils_2 = require("../../../utils");
8
+ exports.JailerSticker733 = {
9
+ cardIds: ["BG35_MagicItem_733t"],
10
+ castTavernSpell: (_spellCardId, input) => {
11
+ var _a;
12
+ const undeadTargets = input.board.filter((e) => e.health > 0 &&
13
+ !e.definitelyDead &&
14
+ (0, utils_2.hasCorrectTribe)(e, input.hero, reference_data_1.Race.UNDEAD, input.gameState.anomalies, input.gameState.allCards));
15
+ const target = input.target && undeadTargets.includes(input.target) ? input.target : (0, utils_1.pickRandom)(undeadTargets);
16
+ if (!target)
17
+ return;
18
+ target.health = 0;
19
+ target.definitelyDead = true;
20
+ const tier = (_a = input.hero.tavernTier) !== null && _a !== void 0 ? _a : 6;
21
+ const cards = [];
22
+ for (let i = 0; i < 2; i++) {
23
+ const cardId = input.gameState.cardsData.getRandomMinionForTribe(reference_data_1.Race.UNDEAD, tier, []);
24
+ if (cardId)
25
+ cards.push(cardId);
26
+ }
27
+ if (cards.length > 0) {
28
+ (0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, cards, input.gameState);
29
+ }
30
+ },
31
+ };
32
+ //# sourceMappingURL=jailer-sticker-733.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jailer-sticker-733.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/jailer-sticker-733.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAEpD,mDAAqD;AACrD,qEAAmE;AACnE,0CAAiD;AAGpC,QAAA,gBAAgB,GAAoB;IAChD,OAAO,EAAE,uBAA8D;IACvE,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;;QAChE,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,MAAM,GAAG,CAAC;YACZ,CAAC,CAAC,CAAC,cAAc;YACjB,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CACjG,CAAC;QACF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,kBAAU,EAAC,aAAa,CAAC,CAAC;QAC/G,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,mCAAI,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,qBAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACxF,IAAI,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC/B;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAChE;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const JailerSticker733: TavernSpellCard = {\r\n\tcardIds: [CardIds.JailerSticker_JailerStickerToken_BG35_MagicItem_733t],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst undeadTargets = input.board.filter(\r\n\t\t\t(e) =>\r\n\t\t\t\te.health > 0 &&\r\n\t\t\t\t!e.definitelyDead &&\r\n\t\t\t\thasCorrectTribe(e, input.hero, Race.UNDEAD, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t);\r\n\t\tconst target = input.target && undeadTargets.includes(input.target) ? input.target : pickRandom(undeadTargets);\r\n\t\tif (!target) return;\r\n\t\ttarget.health = 0;\r\n\t\ttarget.definitelyDead = true;\r\n\t\tconst tier = input.hero.tavernTier ?? 6;\r\n\t\tconst cards = [];\r\n\t\tfor (let i = 0; i < 2; i++) {\r\n\t\t\tconst cardId = input.gameState.cardsData.getRandomMinionForTribe(Race.UNDEAD, tier, []);\r\n\t\t\tif (cardId) cards.push(cardId);\r\n\t\t}\r\n\t\tif (cards.length > 0) {\r\n\t\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const MightOfStormwind: TavernSpellCard;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MightOfStormwind = void 0;
4
+ const utils_1 = require("../../../services/utils");
5
+ const stats_1 = require("../../../simulation/stats");
6
+ exports.MightOfStormwind = {
7
+ cardIds: ["BG35_951"],
8
+ castTavernSpell: (_spellCardId, input) => {
9
+ const targets = (0, utils_1.pickMultipleRandomAlive)(input.board, 4);
10
+ for (const target of targets) {
11
+ (0, stats_1.modifyStats)(target, input.source, 1, 2, input.board, input.hero, input.gameState);
12
+ }
13
+ },
14
+ };
15
+ //# sourceMappingURL=might-of-stormwind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"might-of-stormwind.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/might-of-stormwind.ts"],"names":[],"mappings":";;;AACA,mDAAkE;AAClE,qDAAwD;AAG3C,QAAA,gBAAgB,GAAoB;IAChD,OAAO,EAAE,YAAmC;IAC5C,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;QAChE,MAAM,OAAO,GAAG,IAAA,+BAAuB,EAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACxD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAClF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { pickMultipleRandomAlive } from '../../../services/utils';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const MightOfStormwind: TavernSpellCard = {\r\n\tcardIds: [CardIds.MightOfStormwind_BG35_951],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst targets = pickMultipleRandomAlive(input.board, 4);\r\n\t\tfor (const target of targets) {\r\n\t\t\tmodifyStats(target, input.source, 1, 2, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -7,6 +7,7 @@ const stats_1 = require("../../../simulation/stats");
7
7
  exports.NaturalBlessing = {
8
8
  cardIds: ["BG28_845"],
9
9
  castTavernSpell: (spellCardId, input) => {
10
+ var _a, _b, _c, _d;
10
11
  const baseAttack = input.gameState.allCards.getCard(spellCardId).tags[reference_data_1.GameTag[reference_data_1.GameTag.TAG_SCRIPT_DATA_NUM_1]];
11
12
  const baseHealth = input.gameState.allCards.getCard(spellCardId).tags[reference_data_1.GameTag[reference_data_1.GameTag.TAG_SCRIPT_DATA_NUM_2]];
12
13
  const attack = baseAttack + input.hero.globalInfo.TavernSpellAttackBuff;
@@ -17,6 +18,15 @@ exports.NaturalBlessing = {
17
18
  for (const minion of minionsSharingType) {
18
19
  (0, stats_1.modifyStats)(minion, input.source, attack, health, input.board, input.hero, input.gameState);
19
20
  }
21
+ const hasPortrait = (_a = input.hero.trinkets) === null || _a === void 0 ? void 0 : _a.some((t) => t.cardId === "BG32_MagicItem_894");
22
+ if (hasPortrait) {
23
+ for (const handCard of (_b = input.hero.hand) !== null && _b !== void 0 ? _b : []) {
24
+ if (doMinionsShareType(handCard, target, input.gameState.allCards)) {
25
+ handCard.attack = ((_c = handCard.attack) !== null && _c !== void 0 ? _c : 0) + attack;
26
+ handCard.health = ((_d = handCard.health) !== null && _d !== void 0 ? _d : 0) + health;
27
+ }
28
+ }
29
+ }
20
30
  },
21
31
  };
22
32
  const doMinionsShareType = (minion, target, allCards) => {
@@ -1 +1 @@
1
- {"version":3,"file":"natural-blessing.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/natural-blessing.ts"],"names":[],"mappings":";;;AAAA,iEAAwE;AAGxE,mDAAqD;AACrD,qDAAwD;AAG3C,QAAA,eAAe,GAAoB;IAC/C,OAAO,EAAE,YAAkC;IAC3C,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;QAC/D,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,wBAAO,CAAC,wBAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC9G,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,wBAAO,CAAC,wBAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC9G,MAAM,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACxE,MAAM,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;QAExE,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAC;QACtC,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7G,KAAK,MAAM,MAAM,IAAI,kBAAkB,EAAE;YACxC,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC5F;IACF,CAAC;CACD,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,MAAmB,EAAE,MAAmB,EAAE,QAAyB,EAAE,EAAE;;IAClG,MAAM,WAAW,GAAG,MAAA,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,mCAAI,EAAE,CAAC;IAChE,MAAM,WAAW,GAAG,MAAA,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,mCAAI,EAAE,CAAC;IAChE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC","sourcesContent":["import { AllCardsService, GameTag } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const NaturalBlessing: TavernSpellCard = {\r\n\tcardIds: [CardIds.NaturalBlessing_BG28_845],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst baseAttack = input.gameState.allCards.getCard(spellCardId).tags[GameTag[GameTag.TAG_SCRIPT_DATA_NUM_1]];\r\n\t\tconst baseHealth = input.gameState.allCards.getCard(spellCardId).tags[GameTag[GameTag.TAG_SCRIPT_DATA_NUM_2]];\r\n\t\tconst attack = baseAttack + input.hero.globalInfo.TavernSpellAttackBuff;\r\n\t\tconst health = baseHealth + input.hero.globalInfo.TavernSpellHealthBuff;\r\n\r\n\t\tconst allMinions = [...input.board, ...input.otherBoard];\r\n\t\tconst target = pickRandom(allMinions);\r\n\t\tconst minionsSharingType = allMinions.filter((e) => doMinionsShareType(e, target, input.gameState.allCards));\r\n\t\tfor (const minion of minionsSharingType) {\r\n\t\t\tmodifyStats(minion, input.source, attack, health, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n\r\nconst doMinionsShareType = (minion: BoardEntity, target: BoardEntity, allCards: AllCardsService) => {\r\n\tconst minionTypes = allCards.getCard(minion.cardId).races ?? [];\r\n\tconst targetTypes = allCards.getCard(target.cardId).races ?? [];\r\n\treturn minionTypes.some((type) => targetTypes.includes(type));\r\n};\r\n"]}
1
+ {"version":3,"file":"natural-blessing.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/natural-blessing.ts"],"names":[],"mappings":";;;AAAA,iEAAwE;AAGxE,mDAAqD;AACrD,qDAAwD;AAG3C,QAAA,eAAe,GAAoB;IAC/C,OAAO,EAAE,YAAkC;IAC3C,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;;QAC/D,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,wBAAO,CAAC,wBAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC9G,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,wBAAO,CAAC,wBAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC9G,MAAM,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACxE,MAAM,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;QAExE,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAC;QACtC,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7G,KAAK,MAAM,MAAM,IAAI,kBAAkB,EAAE;YACxC,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC5F;QAED,MAAM,WAAW,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,0CAAE,IAAI,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAgD,CAC/D,CAAC;QACF,IAAI,WAAW,EAAE;YAChB,KAAK,MAAM,QAAQ,IAAI,MAAA,KAAK,CAAC,IAAI,CAAC,IAAI,mCAAI,EAAE,EAAE;gBAC7C,IAAI,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;oBACnE,QAAQ,CAAC,MAAM,GAAG,CAAC,MAAA,QAAQ,CAAC,MAAM,mCAAI,CAAC,CAAC,GAAG,MAAM,CAAC;oBAClD,QAAQ,CAAC,MAAM,GAAG,CAAC,MAAA,QAAQ,CAAC,MAAM,mCAAI,CAAC,CAAC,GAAG,MAAM,CAAC;iBAClD;aACD;SACD;IACF,CAAC;CACD,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,MAAmB,EAAE,MAAmB,EAAE,QAAyB,EAAE,EAAE;;IAClG,MAAM,WAAW,GAAG,MAAA,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,mCAAI,EAAE,CAAC;IAChE,MAAM,WAAW,GAAG,MAAA,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,mCAAI,EAAE,CAAC;IAChE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC","sourcesContent":["import { AllCardsService, GameTag } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const NaturalBlessing: TavernSpellCard = {\r\n\tcardIds: [CardIds.NaturalBlessing_BG28_845],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst baseAttack = input.gameState.allCards.getCard(spellCardId).tags[GameTag[GameTag.TAG_SCRIPT_DATA_NUM_1]];\r\n\t\tconst baseHealth = input.gameState.allCards.getCard(spellCardId).tags[GameTag[GameTag.TAG_SCRIPT_DATA_NUM_2]];\r\n\t\tconst attack = baseAttack + input.hero.globalInfo.TavernSpellAttackBuff;\r\n\t\tconst health = baseHealth + input.hero.globalInfo.TavernSpellHealthBuff;\r\n\r\n\t\tconst allMinions = [...input.board, ...input.otherBoard];\r\n\t\tconst target = pickRandom(allMinions);\r\n\t\tconst minionsSharingType = allMinions.filter((e) => doMinionsShareType(e, target, input.gameState.allCards));\r\n\t\tfor (const minion of minionsSharingType) {\r\n\t\t\tmodifyStats(minion, input.source, attack, health, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\r\n\t\tconst hasPortrait = input.hero.trinkets?.some(\r\n\t\t\t(t) => t.cardId === CardIds.BlessingPortrait_BG32_MagicItem_894,\r\n\t\t);\r\n\t\tif (hasPortrait) {\r\n\t\t\tfor (const handCard of input.hero.hand ?? []) {\r\n\t\t\t\tif (doMinionsShareType(handCard, target, input.gameState.allCards)) {\r\n\t\t\t\t\thandCard.attack = (handCard.attack ?? 0) + attack;\r\n\t\t\t\t\thandCard.health = (handCard.health ?? 0) + health;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n};\r\n\r\nconst doMinionsShareType = (minion: BoardEntity, target: BoardEntity, allCards: AllCardsService) => {\r\n\tconst minionTypes = allCards.getCard(minion.cardId).races ?? [];\r\n\tconst targetTypes = allCards.getCard(target.cardId).races ?? [];\r\n\treturn minionTypes.some((type) => targetTypes.includes(type));\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const OphidianStaff: TavernSpellCard;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OphidianStaff = void 0;
4
+ const reference_data_1 = require("@firestone-hs/reference-data");
5
+ const stats_1 = require("../../../simulation/stats");
6
+ const utils_1 = require("../../../utils");
7
+ exports.OphidianStaff = {
8
+ cardIds: ["BG35_MagicItem_872t"],
9
+ castTavernSpell: (_spellCardId, input) => {
10
+ var _a;
11
+ const target = (_a = input.target) !== null && _a !== void 0 ? _a : input.board.find((e) => e.health > 0 &&
12
+ !e.definitelyDead &&
13
+ (0, utils_1.hasCorrectTribe)(e, input.hero, reference_data_1.Race.BEAST, input.gameState.anomalies, input.gameState.allCards));
14
+ if (!target)
15
+ return;
16
+ (0, stats_1.modifyStats)(target, input.source, 4, 4, input.board, input.hero, input.gameState);
17
+ target.reborn = true;
18
+ },
19
+ };
20
+ //# sourceMappingURL=ophidian-staff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ophidian-staff.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/ophidian-staff.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAEpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,uBAA8D;IACvE,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;;QAChE,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,MAAM,mCAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAC9C,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,MAAM,GAAG,CAAC;YACZ,CAAC,CAAC,CAAC,cAAc;YACjB,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAChG,CAAC;QACF,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAClF,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;IACtB,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const OphidianStaff: TavernSpellCard = {\r\n\tcardIds: [CardIds.OphidianStaff_OphidianStaffToken_BG35_MagicItem_872t],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst target = input.target ?? input.board.find(\r\n\t\t\t(e) =>\r\n\t\t\t\te.health > 0 &&\r\n\t\t\t\t!e.definitelyDead &&\r\n\t\t\t\thasCorrectTribe(e, input.hero, Race.BEAST, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t);\r\n\t\tif (!target) return;\r\n\t\tmodifyStats(target, input.source, 4, 4, input.board, input.hero, input.gameState);\r\n\t\ttarget.reborn = true;\r\n\t},\r\n};\r\n"]}
@@ -2,19 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.QueensCommand = void 0;
4
4
  const reference_data_1 = require("@firestone-hs/reference-data");
5
- const temp_card_ids_1 = require("../../../temp-card-ids");
6
5
  const stats_1 = require("../../../simulation/stats");
7
6
  const utils_1 = require("../../../utils");
8
7
  exports.QueensCommand = {
9
- cardIds: [temp_card_ids_1.TempCardIds.QueensCommand, temp_card_ids_1.TempCardIds.QueensCommand_G],
8
+ cardIds: ["BG35_922", "BG35_922_G"],
10
9
  castTavernSpell: (spellCardId, input) => {
11
- const mult = spellCardId === temp_card_ids_1.TempCardIds.QueensCommand_G ? 2 : 1;
10
+ const mult = spellCardId === "BG35_922_G" ? 2 : 1;
12
11
  for (const e of input.board) {
13
12
  if (e.health <= 0 || e.definitelyDead) {
14
13
  continue;
15
14
  }
15
+ (0, stats_1.modifyStats)(e, input.source, 3 * mult, 3 * mult, input.board, input.hero, input.gameState);
16
16
  if ((0, utils_1.hasCorrectTribe)(e, input.hero, reference_data_1.Race.NAGA, input.gameState.anomalies, input.gameState.allCards)) {
17
- (0, stats_1.modifyStats)(e, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);
17
+ (0, stats_1.modifyStats)(e, input.source, 3 * mult, 3 * mult, input.board, input.hero, input.gameState);
18
18
  }
19
19
  }
20
20
  },
@@ -1 +1 @@
1
- {"version":3,"file":"queens-command.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/queens-command.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AACpD,0DAAqD;AACrD,qDAAwD;AACxD,0CAAiD;AAIpC,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,CAAC,2BAAW,CAAC,aAAa,EAAE,2BAAW,CAAC,eAAe,CAAC;IACjE,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;QAC/D,MAAM,IAAI,GAAG,WAAW,KAAK,2BAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE;YAC5B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE;gBACtC,SAAS;aACT;YACD,IAAI,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;gBACnG,IAAA,mBAAW,EAAC,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aAC3F;SACD;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\n/** Ruthless Queensguard: give all friendly Naga +2/+2. */\r\nexport const QueensCommand: TavernSpellCard = {\r\n\tcardIds: [TempCardIds.QueensCommand, TempCardIds.QueensCommand_G],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst mult = spellCardId === TempCardIds.QueensCommand_G ? 2 : 1;\r\n\t\tfor (const e of input.board) {\r\n\t\t\tif (e.health <= 0 || e.definitelyDead) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\t\t\tif (hasCorrectTribe(e, input.hero, Race.NAGA, input.gameState.anomalies, input.gameState.allCards)) {\r\n\t\t\t\tmodifyStats(e, input.source, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n};\r\n"]}
1
+ {"version":3,"file":"queens-command.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/queens-command.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAEpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,0BAAkE;IAC3E,eAAe,EAAE,CAAC,WAAmB,EAAE,KAAqB,EAAE,EAAE;QAC/D,MAAM,IAAI,GAAG,WAAW,iBAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE;YAC5B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE;gBACtC,SAAS;aACT;YACD,IAAA,mBAAW,EAAC,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3F,IAAI,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;gBACnG,IAAA,mBAAW,EAAC,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aAC3F;SACD;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const QueensCommand: TavernSpellCard = {\r\n\tcardIds: [CardIds.QueensCommand_BG35_922, CardIds.QueensCommand_BG35_922_G],\r\n\tcastTavernSpell: (spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst mult = spellCardId === CardIds.QueensCommand_BG35_922_G ? 2 : 1;\r\n\t\tfor (const e of input.board) {\r\n\t\t\tif (e.health <= 0 || e.definitelyDead) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\t\t\tmodifyStats(e, input.source, 3 * mult, 3 * mult, input.board, input.hero, input.gameState);\r\n\t\t\tif (hasCorrectTribe(e, input.hero, Race.NAGA, input.gameState.anomalies, input.gameState.allCards)) {\r\n\t\t\t\tmodifyStats(e, input.source, 3 * mult, 3 * mult, input.board, input.hero, input.gameState);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { TavernSpellCard } from '../../card.interface';
2
+ export declare const SelfishBounty: TavernSpellCard;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SelfishBounty = void 0;
4
+ const stats_1 = require("../../../simulation/stats");
5
+ exports.SelfishBounty = {
6
+ cardIds: ["BG33_813"],
7
+ castTavernSpell: (_spellCardId, input) => {
8
+ const target = input.board[0];
9
+ if (target) {
10
+ (0, stats_1.modifyStats)(target, input.source, 6, 6, input.board, input.hero, input.gameState);
11
+ }
12
+ },
13
+ };
14
+ //# sourceMappingURL=selfish-bounty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selfish-bounty.js","sourceRoot":"","sources":["../../../../../src/cards/impl/bg-spell/selfish-bounty.ts"],"names":[],"mappings":";;;AACA,qDAAwD;AAG3C,QAAA,aAAa,GAAoB;IAC7C,OAAO,EAAE,YAAgC;IACzC,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAqB,EAAE,EAAE;QAChE,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,MAAM,EAAE;YACX,IAAA,mBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAClF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { CastSpellInput, TavernSpellCard } from '../../card.interface';\r\n\r\nexport const SelfishBounty: TavernSpellCard = {\r\n\tcardIds: [CardIds.SelfishBounty_BG33_813],\r\n\tcastTavernSpell: (_spellCardId: string, input: CastSpellInput) => {\r\n\t\tconst target = input.board[0];\r\n\t\tif (target) {\r\n\t\t\tmodifyStats(target, input.source, 6, 6, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -2,12 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbyssalBruiser = void 0;
4
4
  const divine_shield_1 = require("../../../keywords/divine-shield");
5
- const temp_card_ids_1 = require("../../../temp-card-ids");
6
5
  exports.AbyssalBruiser = {
7
- cardIds: [temp_card_ids_1.TempCardIds.AbyssalBruiser, temp_card_ids_1.TempCardIds.AbyssalBruiser_G],
6
+ cardIds: ["BG35_921", "BG35_921_G"],
8
7
  onSpawned: (minion, input) => {
9
8
  var _a;
10
- const mult = minion.cardId === temp_card_ids_1.TempCardIds.AbyssalBruiser_G ? 2 : 1;
9
+ const mult = minion.cardId === "BG35_921_G" ? 2 : 1;
11
10
  const n = (_a = input.hero.globalInfo.TavernSpellsCastThisGame) !== null && _a !== void 0 ? _a : 0;
12
11
  minion.attack += n * mult;
13
12
  minion.health += n * mult;
@@ -20,7 +19,7 @@ exports.AbyssalBruiser = {
20
19
  },
21
20
  onDespawned: (minion, input) => {
22
21
  var _a;
23
- const mult = minion.cardId === temp_card_ids_1.TempCardIds.AbyssalBruiser_G ? 2 : 1;
22
+ const mult = minion.cardId === "BG35_921_G" ? 2 : 1;
24
23
  const n = (_a = input.hero.globalInfo.TavernSpellsCastThisGame) !== null && _a !== void 0 ? _a : 0;
25
24
  minion.attack = Math.max(0, minion.attack - n * mult);
26
25
  minion.health = Math.max(1, minion.health - n * mult);
@@ -1 +1 @@
1
- {"version":3,"file":"abyssal-bruiser.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/abyssal-bruiser.ts"],"names":[],"mappings":";;;AACA,mEAAqE;AACrE,0DAAqD;AAIxC,QAAA,cAAc,GAAoC;IAC9D,OAAO,EAAE,CAAC,2BAAW,CAAC,cAAc,EAAE,2BAAW,CAAC,gBAAgB,CAAC;IACnE,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAmB,EAAE,EAAE;;QACvD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,KAAK,2BAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,mCAAI,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;QAC1B,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;QAC1B,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;QACjC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,SAAS,GACd,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI;YACrD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM;YAC3C,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5C,IAAA,kCAAkB,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACvF,CAAC;IACD,WAAW,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;;QAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,KAAK,2BAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,mCAAI,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { updateDivineShield } from '../../../keywords/divine-shield';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { OnDespawnInput, OnSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { OnDespawnedCard, OnSpawnedCard } from '../../card.interface';\r\n\r\nexport const AbyssalBruiser: OnDespawnedCard & OnSpawnedCard = {\r\n\tcardIds: [TempCardIds.AbyssalBruiser, TempCardIds.AbyssalBruiser_G],\r\n\tonSpawned: (minion: BoardEntity, input: OnSpawnInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.AbyssalBruiser_G ? 2 : 1;\r\n\t\tconst n = input.hero.globalInfo.TavernSpellsCastThisGame ?? 0;\r\n\t\tminion.attack += n * mult;\r\n\t\tminion.health += n * mult;\r\n\t\tminion.maxAttack = minion.attack;\r\n\t\tminion.maxHealth = Math.max(minion.maxHealth, minion.health);\r\n\t\tconst otherHero =\r\n\t\t\tinput.gameState.gameState.player.player === input.hero\r\n\t\t\t\t? input.gameState.gameState.opponent.player\r\n\t\t\t\t: input.gameState.gameState.player.player;\r\n\t\tupdateDivineShield(minion, input.board, input.hero, otherHero, true, input.gameState);\r\n\t},\r\n\tonDespawned: (minion: BoardEntity, input: OnDespawnInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.AbyssalBruiser_G ? 2 : 1;\r\n\t\tconst n = input.hero.globalInfo.TavernSpellsCastThisGame ?? 0;\r\n\t\tminion.attack = Math.max(0, minion.attack - n * mult);\r\n\t\tminion.health = Math.max(1, minion.health - n * mult);\r\n\t},\r\n};\r\n"]}
1
+ {"version":3,"file":"abyssal-bruiser.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/abyssal-bruiser.ts"],"names":[],"mappings":";;;AACA,mEAAqE;AAKxD,QAAA,cAAc,GAAoC;IAC9D,OAAO,EAAE,0BAAoE;IAC7E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAmB,EAAE,EAAE;;QACvD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,mCAAI,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;QAC1B,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;QAC1B,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;QACjC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,SAAS,GACd,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI;YACrD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM;YAC3C,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5C,IAAA,kCAAkB,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACvF,CAAC;IACD,WAAW,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;;QAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,mCAAI,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { updateDivineShield } from '../../../keywords/divine-shield';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnDespawnInput, OnSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { OnDespawnedCard, OnSpawnedCard } from '../../card.interface';\r\n\r\nexport const AbyssalBruiser: OnDespawnedCard & OnSpawnedCard = {\r\n\tcardIds: [CardIds.AbyssalBruiser_BG35_921, CardIds.AbyssalBruiser_BG35_921_G],\r\n\tonSpawned: (minion: BoardEntity, input: OnSpawnInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.AbyssalBruiser_BG35_921_G ? 2 : 1;\r\n\t\tconst n = input.hero.globalInfo.TavernSpellsCastThisGame ?? 0;\r\n\t\tminion.attack += n * mult;\r\n\t\tminion.health += n * mult;\r\n\t\tminion.maxAttack = minion.attack;\r\n\t\tminion.maxHealth = Math.max(minion.maxHealth, minion.health);\r\n\t\tconst otherHero =\r\n\t\t\tinput.gameState.gameState.player.player === input.hero\r\n\t\t\t\t? input.gameState.gameState.opponent.player\r\n\t\t\t\t: input.gameState.gameState.player.player;\r\n\t\tupdateDivineShield(minion, input.board, input.hero, otherHero, true, input.gameState);\r\n\t},\r\n\tonDespawned: (minion: BoardEntity, input: OnDespawnInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.AbyssalBruiser_BG35_921_G ? 2 : 1;\r\n\t\tconst n = input.hero.globalInfo.TavernSpellsCastThisGame ?? 0;\r\n\t\tminion.attack = Math.max(0, minion.attack - n * mult);\r\n\t\tminion.health = Math.max(1, minion.health - n * mult);\r\n\t},\r\n};\r\n"]}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AlertAlarmist = void 0;
4
- const temp_card_ids_1 = require("../../../temp-card-ids");
5
4
  exports.AlertAlarmist = {
6
- cardIds: [temp_card_ids_1.TempCardIds.AlertAlarmist, temp_card_ids_1.TempCardIds.AlertAlarmist_G],
5
+ cardIds: ["BG35_340", "BG35_340_G"],
7
6
  };
8
7
  //# sourceMappingURL=alert-alarmist.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert-alarmist.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/alert-alarmist.ts"],"names":[],"mappings":";;;AAEA,0DAAqD;AAMxC,QAAA,aAAa,GAAS;IAClC,OAAO,EAAE,CAAC,2BAAW,CAAC,aAAa,EAAE,2BAAW,CAAC,eAAe,CAAC;CACjE,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { Card } from '../../card.interface';\r\n\r\n/** Deathrattle: next Tavern spell you buy costs (1) less ((2) golden). \r\n * Do nothing\r\n*/\r\nexport const AlertAlarmist: Card = {\r\n\tcardIds: [TempCardIds.AlertAlarmist, TempCardIds.AlertAlarmist_G],\r\n};\r\n"]}
1
+ {"version":3,"file":"alert-alarmist.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/alert-alarmist.ts"],"names":[],"mappings":";;;AAQa,QAAA,aAAa,GAAS;IAClC,OAAO,EAAE,0BAAkE;CAC3E,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { Card } from '../../card.interface';\r\n\r\n/** Deathrattle: next Tavern spell you buy costs (1) less ((2) golden). \r\n * Do nothing\r\n*/\r\nexport const AlertAlarmist: Card = {\r\n\tcardIds: [CardIds.AlertAlarmist_BG35_340, CardIds.AlertAlarmist_BG35_340_G],\r\n};\r\n"]}
@@ -1,15 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AnubarakNerubianKing = void 0;
4
- const reference_data_1 = require("@firestone-hs/reference-data");
5
- const utils_1 = require("../../../utils");
4
+ const global_info_helpers_1 = require("../../../simulation/global-info-helpers");
6
5
  exports.AnubarakNerubianKing = {
7
6
  cardIds: ["BG25_007", "BG25_007_G"],
8
7
  deathrattleSpawn: (minion, input) => {
9
8
  const anubarakMultiplier = minion.cardId === "BG25_007_G" ? 2 : 1;
10
9
  const attackBonus = anubarakMultiplier * 1;
11
- input.boardWithDeadEntityHero.globalInfo.UndeadAttackBonus += attackBonus;
12
- (0, utils_1.addStatsToBoard)(minion, input.boardWithDeadEntity, input.boardWithDeadEntityHero, attackBonus, 0, input.gameState, reference_data_1.Race[reference_data_1.Race.UNDEAD], true);
10
+ (0, global_info_helpers_1.increaseUndeadAttackBonus)(minion, input.boardWithDeadEntity, input.boardWithDeadEntityHero, attackBonus, input.gameState, true);
13
11
  return [];
14
12
  },
15
13
  };
@@ -1 +1 @@
1
- {"version":3,"file":"anubarak-nerubian-king.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/anubarak-nerubian-king.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,0CAAiD;AAGpC,QAAA,oBAAoB,GAAyB;IACzD,OAAO,EAAE,0BAAgF;IACzF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,iBAA4C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7F,MAAM,WAAW,GAAG,kBAAkB,GAAG,CAAC,CAAC;QAC3C,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,iBAAiB,IAAI,WAAW,CAAC;QAC1E,IAAA,uBAAe,EACd,MAAM,EACN,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,WAAW,EACX,CAAC,EACD,KAAK,CAAC,SAAS,EACf,qBAAI,CAAC,qBAAI,CAAC,MAAM,CAAC,EAGjB,IAAI,CACJ,CAAC;QACF,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const AnubarakNerubianKing: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.AnubarakNerubianKing_BG25_007, CardIds.AnubarakNerubianKing_BG25_007_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst anubarakMultiplier = minion.cardId === CardIds.AnubarakNerubianKing_BG25_007_G ? 2 : 1;\r\n\t\tconst attackBonus = anubarakMultiplier * 1;\r\n\t\tinput.boardWithDeadEntityHero.globalInfo.UndeadAttackBonus += attackBonus;\r\n\t\taddStatsToBoard(\r\n\t\t\tminion,\r\n\t\t\tinput.boardWithDeadEntity,\r\n\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\tattackBonus,\r\n\t\t\t0,\r\n\t\t\tinput.gameState,\r\n\t\t\tRace[Race.UNDEAD],\r\n\t\t\t// This causes Tentacle of C'Thun to gain stats\r\n\t\t\t// 33.6 https://replays.firestoneapp.com/?reviewId=4267ce35-80c7-47af-b0a0-33587fdc952c&turn=25&action=7\r\n\t\t\ttrue,\r\n\t\t);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
1
+ {"version":3,"file":"anubarak-nerubian-king.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/anubarak-nerubian-king.ts"],"names":[],"mappings":";;;AAGA,iFAAoF;AAGvE,QAAA,oBAAoB,GAAyB;IACzD,OAAO,EAAE,0BAAgF;IACzF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,iBAA4C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7F,MAAM,WAAW,GAAG,kBAAkB,GAAG,CAAC,CAAC;QAG3C,IAAA,+CAAyB,EACxB,MAAM,EACN,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,WAAW,EACX,KAAK,CAAC,SAAS,EACf,IAAI,CACJ,CAAC;QACF,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { increaseUndeadAttackBonus } from '../../../simulation/global-info-helpers';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const AnubarakNerubianKing: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.AnubarakNerubianKing_BG25_007, CardIds.AnubarakNerubianKing_BG25_007_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst anubarakMultiplier = minion.cardId === CardIds.AnubarakNerubianKing_BG25_007_G ? 2 : 1;\r\n\t\tconst attackBonus = anubarakMultiplier * 1;\r\n\t\t// countsAsStatsGain=true causes Tentacle of C'Thun to gain stats\r\n\t\t// 33.6 https://replays.firestoneapp.com/?reviewId=4267ce35-80c7-47af-b0a0-33587fdc952c&turn=25&action=7\r\n\t\tincreaseUndeadAttackBonus(\r\n\t\t\tminion,\r\n\t\t\tinput.boardWithDeadEntity,\r\n\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\tattackBonus,\r\n\t\t\tinput.gameState,\r\n\t\t\ttrue,\r\n\t\t);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BalindaStonehearth = void 0;
4
- const temp_card_ids_1 = require("../../../temp-card-ids");
5
4
  exports.BalindaStonehearth = {
6
- cardIds: [temp_card_ids_1.TempCardIds.BalindaStonehearth, temp_card_ids_1.TempCardIds.BalindaStonehearth_G],
5
+ cardIds: ["BG35_883", "BG35_883_G"],
7
6
  };
8
7
  //# sourceMappingURL=balinda-stonehearth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"balinda-stonehearth.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/balinda-stonehearth.ts"],"names":[],"mappings":";;;AAMA,0DAAqD;AAGxC,QAAA,kBAAkB,GAAS;IACvC,OAAO,EAAE,CAAC,2BAAW,CAAC,kBAAkB,EAAE,2BAAW,CAAC,oBAAoB,CAAC;CAC3E,CAAC","sourcesContent":["/**\r\n * Balinda Stonehearth (Tier 6, 6/6)\r\n * Your spells that target friendly minions cast twice.\r\n * Golden (12/12): … cast three times.\r\n * Extra resolutions are handled in mechanics/cast-tavern-spell.ts (Balinda on board + hero source + target on your board).\r\n */\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { Card } from '../../card.interface';\r\n\r\nexport const BalindaStonehearth: Card = {\r\n\tcardIds: [TempCardIds.BalindaStonehearth, TempCardIds.BalindaStonehearth_G],\r\n};\r\n"]}
1
+ {"version":3,"file":"balinda-stonehearth.js","sourceRoot":"","sources":["../../../../../src/cards/impl/minion/balinda-stonehearth.ts"],"names":[],"mappings":";;;AASa,QAAA,kBAAkB,GAAS;IACvC,OAAO,EAAE,0BAA4E;CACrF,CAAC","sourcesContent":["/**\r\n * Balinda Stonehearth (Tier 6, 6/6)\r\n * Your spells that target friendly minions cast twice.\r\n * Golden (12/12): … cast three times.\r\n * Extra resolutions are handled in mechanics/cast-tavern-spell.ts (Balinda on board + hero source + target on your board).\r\n */\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { Card } from '../../card.interface';\r\n\r\nexport const BalindaStonehearth: Card = {\r\n\tcardIds: [CardIds.BalindaStonehearth_BG35_883, CardIds.BalindaStonehearth_BG35_883_G],\r\n};\r\n"]}