@firestone-hs/simulate-bgs-battle 1.1.500 → 1.1.502

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 (278) hide show
  1. package/dist/bgs-player-entity.d.ts +6 -0
  2. package/dist/bgs-player-entity.js.map +1 -1
  3. package/dist/cards/card.interface.d.ts +110 -1
  4. package/dist/cards/card.interface.js +45 -0
  5. package/dist/cards/card.interface.js.map +1 -1
  6. package/dist/cards/cards-data.d.ts +5 -1
  7. package/dist/cards/cards-data.js +39 -6
  8. package/dist/cards/cards-data.js.map +1 -1
  9. package/dist/cards/impl/_card-mappings.d.ts +4 -0
  10. package/dist/cards/impl/_card-mappings.js +120 -0
  11. package/dist/cards/impl/_card-mappings.js.map +1 -0
  12. package/dist/cards/impl/anomaly/blessed-or-blighted.js +3 -2
  13. package/dist/cards/impl/anomaly/blessed-or-blighted.js.map +1 -1
  14. package/dist/cards/impl/bg-spell/boon-of-beetles.js +1 -1
  15. package/dist/cards/impl/bg-spell/boon-of-beetles.js.map +1 -1
  16. package/dist/cards/impl/enchantments/crystal-infuser-enchantment.d.ts +2 -0
  17. package/dist/cards/impl/enchantments/crystal-infuser-enchantment.js +16 -0
  18. package/dist/cards/impl/enchantments/crystal-infuser-enchantment.js.map +1 -0
  19. package/dist/cards/impl/hero-power/reborn-rites.js +2 -1
  20. package/dist/cards/impl/hero-power/reborn-rites.js.map +1 -1
  21. package/dist/cards/impl/hero-power/swatting-insects.js +5 -3
  22. package/dist/cards/impl/hero-power/swatting-insects.js.map +1 -1
  23. package/dist/cards/impl/hero-power/water-invocation.js +1 -1
  24. package/dist/cards/impl/hero-power/water-invocation.js.map +1 -1
  25. package/dist/cards/impl/minion/amber-guardian.js +1 -1
  26. package/dist/cards/impl/minion/amber-guardian.js.map +1 -1
  27. package/dist/cards/impl/minion/arcane-cannoneer.d.ts +2 -0
  28. package/dist/cards/impl/minion/arcane-cannoneer.js +15 -0
  29. package/dist/cards/impl/minion/arcane-cannoneer.js.map +1 -0
  30. package/dist/cards/impl/minion/bannerboar.d.ts +2 -0
  31. package/dist/cards/impl/minion/bannerboar.js +16 -0
  32. package/dist/cards/impl/minion/bannerboar.js.map +1 -0
  33. package/dist/cards/impl/minion/beetle.d.ts +2 -0
  34. package/dist/cards/impl/minion/beetle.js +16 -0
  35. package/dist/cards/impl/minion/beetle.js.map +1 -0
  36. package/dist/cards/impl/minion/bird-buddy.d.ts +2 -0
  37. package/dist/cards/impl/minion/bird-buddy.js +14 -0
  38. package/dist/cards/impl/minion/bird-buddy.js.map +1 -0
  39. package/dist/cards/impl/minion/boar-gamer.d.ts +2 -0
  40. package/dist/cards/impl/minion/boar-gamer.js +12 -0
  41. package/dist/cards/impl/minion/boar-gamer.js.map +1 -0
  42. package/dist/cards/impl/minion/bubble-gunner.d.ts +2 -0
  43. package/dist/cards/impl/minion/bubble-gunner.js +44 -0
  44. package/dist/cards/impl/minion/bubble-gunner.js.map +1 -0
  45. package/dist/cards/impl/minion/buzzing-vermin.d.ts +2 -0
  46. package/dist/cards/impl/minion/buzzing-vermin.js +12 -0
  47. package/dist/cards/impl/minion/buzzing-vermin.js.map +1 -0
  48. package/dist/cards/impl/minion/cadaver-caretaker.d.ts +2 -0
  49. package/dist/cards/impl/minion/cadaver-caretaker.js +12 -0
  50. package/dist/cards/impl/minion/cadaver-caretaker.js.map +1 -0
  51. package/dist/cards/impl/minion/deathly-striker.d.ts +2 -0
  52. package/dist/cards/impl/minion/deathly-striker.js +32 -0
  53. package/dist/cards/impl/minion/deathly-striker.js.map +1 -0
  54. package/dist/cards/impl/minion/efficient-engineer.d.ts +2 -0
  55. package/dist/cards/impl/minion/efficient-engineer.js +24 -0
  56. package/dist/cards/impl/minion/efficient-engineer.js.map +1 -0
  57. package/dist/cards/impl/minion/electric-synthesizer.d.ts +2 -0
  58. package/dist/cards/impl/minion/electric-synthesizer.js +24 -0
  59. package/dist/cards/impl/minion/electric-synthesizer.js.map +1 -0
  60. package/dist/cards/impl/minion/fairy-gillmother.d.ts +2 -0
  61. package/dist/cards/impl/minion/fairy-gillmother.js +18 -0
  62. package/dist/cards/impl/minion/fairy-gillmother.js.map +1 -0
  63. package/dist/cards/impl/minion/forest-rover.d.ts +2 -0
  64. package/dist/cards/impl/minion/forest-rover.js +23 -0
  65. package/dist/cards/impl/minion/forest-rover.js.map +1 -0
  66. package/dist/cards/impl/minion/fountain-chiller.d.ts +2 -0
  67. package/dist/cards/impl/minion/fountain-chiller.js +27 -0
  68. package/dist/cards/impl/minion/fountain-chiller.js.map +1 -0
  69. package/dist/cards/impl/minion/gem-rat.d.ts +2 -0
  70. package/dist/cards/impl/minion/gem-rat.js +12 -0
  71. package/dist/cards/impl/minion/gem-rat.js.map +1 -0
  72. package/dist/cards/impl/minion/gentle-djinni.d.ts +2 -0
  73. package/dist/cards/impl/minion/gentle-djinni.js +25 -0
  74. package/dist/cards/impl/minion/gentle-djinni.js.map +1 -0
  75. package/dist/cards/impl/minion/goldrinn-the-great-wolf.d.ts +2 -0
  76. package/dist/cards/impl/minion/goldrinn-the-great-wolf.js +15 -0
  77. package/dist/cards/impl/minion/goldrinn-the-great-wolf.js.map +1 -0
  78. package/dist/cards/impl/minion/gritty-headhunter.d.ts +2 -0
  79. package/dist/cards/impl/minion/gritty-headhunter.js +14 -0
  80. package/dist/cards/impl/minion/gritty-headhunter.js.map +1 -0
  81. package/dist/cards/impl/minion/hackerfin.d.ts +2 -0
  82. package/dist/cards/impl/minion/hackerfin.js +21 -0
  83. package/dist/cards/impl/minion/hackerfin.js.map +1 -0
  84. package/dist/cards/impl/minion/handless-forsaken.d.ts +2 -0
  85. package/dist/cards/impl/minion/handless-forsaken.js +12 -0
  86. package/dist/cards/impl/minion/handless-forsaken.js.map +1 -0
  87. package/dist/cards/impl/minion/harmless-bonehead.d.ts +2 -0
  88. package/dist/cards/impl/minion/harmless-bonehead.js +12 -0
  89. package/dist/cards/impl/minion/harmless-bonehead.js.map +1 -0
  90. package/dist/cards/impl/minion/holo-rover.d.ts +2 -0
  91. package/dist/cards/impl/minion/holo-rover.js +16 -0
  92. package/dist/cards/impl/minion/holo-rover.js.map +1 -0
  93. package/dist/cards/impl/minion/humming-bird.d.ts +2 -5
  94. package/dist/cards/impl/minion/humming-bird.js +1 -0
  95. package/dist/cards/impl/minion/humming-bird.js.map +1 -1
  96. package/dist/cards/impl/minion/hungry-snapjaw.d.ts +2 -0
  97. package/dist/cards/impl/minion/hungry-snapjaw.js +17 -0
  98. package/dist/cards/impl/minion/hungry-snapjaw.js.map +1 -0
  99. package/dist/cards/impl/minion/implant-subject.d.ts +2 -0
  100. package/dist/cards/impl/minion/implant-subject.js +42 -0
  101. package/dist/cards/impl/minion/implant-subject.js.map +1 -0
  102. package/dist/cards/impl/minion/indomitable-mount.d.ts +2 -0
  103. package/dist/cards/impl/minion/indomitable-mount.js +23 -0
  104. package/dist/cards/impl/minion/indomitable-mount.js.map +1 -0
  105. package/dist/cards/impl/minion/interrogator-whitemane.js +5 -4
  106. package/dist/cards/impl/minion/interrogator-whitemane.js.map +1 -1
  107. package/dist/cards/impl/minion/karmic-chameleon.d.ts +2 -0
  108. package/dist/cards/impl/minion/karmic-chameleon.js +27 -0
  109. package/dist/cards/impl/minion/karmic-chameleon.js.map +1 -0
  110. package/dist/cards/impl/minion/manasaber.d.ts +2 -0
  111. package/dist/cards/impl/minion/manasaber.js +14 -0
  112. package/dist/cards/impl/minion/manasaber.js.map +1 -0
  113. package/dist/cards/impl/minion/mantid-queen.js +6 -3
  114. package/dist/cards/impl/minion/mantid-queen.js.map +1 -1
  115. package/dist/cards/impl/minion/marquee-ticker.d.ts +2 -0
  116. package/dist/cards/impl/minion/marquee-ticker.js +12 -0
  117. package/dist/cards/impl/minion/marquee-ticker.js.map +1 -0
  118. package/dist/cards/impl/minion/mechanized-gift-horse.d.ts +2 -0
  119. package/dist/cards/impl/minion/mechanized-gift-horse.js +13 -0
  120. package/dist/cards/impl/minion/mechanized-gift-horse.js.map +1 -0
  121. package/dist/cards/impl/minion/mechorse.d.ts +2 -0
  122. package/dist/cards/impl/minion/mechorse.js +16 -0
  123. package/dist/cards/impl/minion/mechorse.js.map +1 -0
  124. package/dist/cards/impl/minion/moonsteel-juggernaut.d.ts +2 -0
  125. package/dist/cards/impl/minion/moonsteel-juggernaut.js +15 -0
  126. package/dist/cards/impl/minion/moonsteel-juggernaut.js.map +1 -0
  127. package/dist/cards/impl/minion/mutated-lasher.d.ts +2 -0
  128. package/dist/cards/impl/minion/mutated-lasher.js +26 -0
  129. package/dist/cards/impl/minion/mutated-lasher.js.map +1 -0
  130. package/dist/cards/impl/minion/neon-agent.d.ts +2 -0
  131. package/dist/cards/impl/minion/neon-agent.js +18 -0
  132. package/dist/cards/impl/minion/neon-agent.js.map +1 -0
  133. package/dist/cards/impl/minion/nest-swarmer.d.ts +2 -0
  134. package/dist/cards/impl/minion/nest-swarmer.js +12 -0
  135. package/dist/cards/impl/minion/nest-swarmer.js.map +1 -0
  136. package/dist/cards/impl/minion/nether-drake.d.ts +2 -0
  137. package/dist/cards/impl/minion/nether-drake.js +15 -0
  138. package/dist/cards/impl/minion/nether-drake.js.map +1 -0
  139. package/dist/cards/impl/minion/niuzao.d.ts +2 -0
  140. package/dist/cards/impl/minion/niuzao.js +21 -0
  141. package/dist/cards/impl/minion/niuzao.js.map +1 -0
  142. package/dist/cards/impl/minion/outback-smolderer.d.ts +2 -0
  143. package/dist/cards/impl/minion/outback-smolderer.js +17 -0
  144. package/dist/cards/impl/minion/outback-smolderer.js.map +1 -0
  145. package/dist/cards/impl/minion/razorgore-the-untamed.d.ts +2 -0
  146. package/dist/cards/impl/minion/razorgore-the-untamed.js +20 -0
  147. package/dist/cards/impl/minion/razorgore-the-untamed.js.map +1 -0
  148. package/dist/cards/impl/minion/reckless-cliffdiver.d.ts +2 -0
  149. package/dist/cards/impl/minion/reckless-cliffdiver.js +19 -0
  150. package/dist/cards/impl/minion/reckless-cliffdiver.js.map +1 -0
  151. package/dist/cards/impl/minion/runed-progenitor.d.ts +2 -0
  152. package/dist/cards/impl/minion/runed-progenitor.js +24 -0
  153. package/dist/cards/impl/minion/runed-progenitor.js.map +1 -0
  154. package/dist/cards/impl/minion/rylak-metalhead.d.ts +2 -0
  155. package/dist/cards/impl/minion/rylak-metalhead.js +22 -0
  156. package/dist/cards/impl/minion/rylak-metalhead.js.map +1 -0
  157. package/dist/cards/impl/minion/salty-hog.d.ts +2 -0
  158. package/dist/cards/impl/minion/salty-hog.js +17 -0
  159. package/dist/cards/impl/minion/salty-hog.js.map +1 -0
  160. package/dist/cards/impl/minion/showy-cyclist.d.ts +2 -0
  161. package/dist/cards/impl/minion/showy-cyclist.js +14 -0
  162. package/dist/cards/impl/minion/showy-cyclist.js.map +1 -0
  163. package/dist/cards/impl/minion/silver-handed-recruit.d.ts +2 -0
  164. package/dist/cards/impl/minion/silver-handed-recruit.js +17 -0
  165. package/dist/cards/impl/minion/silver-handed-recruit.js.map +1 -0
  166. package/dist/cards/impl/minion/sly-raptor.d.ts +2 -0
  167. package/dist/cards/impl/minion/sly-raptor.js +18 -0
  168. package/dist/cards/impl/minion/sly-raptor.js.map +1 -0
  169. package/dist/cards/impl/minion/soulsplitter.js +2 -1
  170. package/dist/cards/impl/minion/soulsplitter.js.map +1 -1
  171. package/dist/cards/impl/minion/spacefarer.d.ts +2 -0
  172. package/dist/cards/impl/minion/spacefarer.js +20 -0
  173. package/dist/cards/impl/minion/spacefarer.js.map +1 -0
  174. package/dist/cards/impl/minion/sun-screener.js +1 -1
  175. package/dist/cards/impl/minion/sun-screener.js.map +1 -1
  176. package/dist/cards/impl/minion/thousandth-paper-drake.js +2 -1
  177. package/dist/cards/impl/minion/thousandth-paper-drake.js.map +1 -1
  178. package/dist/cards/impl/minion/turquoise-skitterer.d.ts +2 -0
  179. package/dist/cards/impl/minion/turquoise-skitterer.js +25 -0
  180. package/dist/cards/impl/minion/turquoise-skitterer.js.map +1 -0
  181. package/dist/cards/impl/minion/twilight-primordium.d.ts +2 -0
  182. package/dist/cards/impl/minion/twilight-primordium.js +24 -0
  183. package/dist/cards/impl/minion/twilight-primordium.js.map +1 -0
  184. package/dist/cards/impl/minion/ultraviolet-ascendant.d.ts +2 -0
  185. package/dist/cards/impl/minion/ultraviolet-ascendant.js +14 -0
  186. package/dist/cards/impl/minion/ultraviolet-ascendant.js.map +1 -0
  187. package/dist/cards/impl/minion/wandering-wight.d.ts +2 -0
  188. package/dist/cards/impl/minion/wandering-wight.js +12 -0
  189. package/dist/cards/impl/minion/wandering-wight.js.map +1 -0
  190. package/dist/cards/impl/minion/wisp-in-the-shell.d.ts +2 -0
  191. package/dist/cards/impl/minion/wisp-in-the-shell.js +19 -0
  192. package/dist/cards/impl/minion/wisp-in-the-shell.js.map +1 -0
  193. package/dist/cards/impl/trinket/eternal-portrait.js +4 -2
  194. package/dist/cards/impl/trinket/eternal-portrait.js.map +1 -1
  195. package/dist/cards/impl/trinket/holly-mallet.js +1 -1
  196. package/dist/cards/impl/trinket/holly-mallet.js.map +1 -1
  197. package/dist/{divine-shield.d.ts → keywords/divine-shield.d.ts} +9 -3
  198. package/dist/{divine-shield.js → keywords/divine-shield.js} +18 -5
  199. package/dist/keywords/divine-shield.js.map +1 -0
  200. package/dist/keywords/reborn.d.ts +10 -0
  201. package/dist/keywords/reborn.js +22 -0
  202. package/dist/keywords/reborn.js.map +1 -0
  203. package/dist/keywords/stealth.d.ts +10 -0
  204. package/dist/keywords/stealth.js +22 -0
  205. package/dist/keywords/stealth.js.map +1 -0
  206. package/dist/keywords/taunt.d.ts +10 -0
  207. package/dist/keywords/taunt.js +22 -0
  208. package/dist/keywords/taunt.js.map +1 -0
  209. package/dist/keywords/venomous.d.ts +10 -0
  210. package/dist/keywords/venomous.js +33 -0
  211. package/dist/keywords/venomous.js.map +1 -0
  212. package/dist/keywords/windfury.d.ts +10 -0
  213. package/dist/keywords/windfury.js +22 -0
  214. package/dist/keywords/windfury.js.map +1 -0
  215. package/dist/simulate-bgs-battle.d.ts +2 -2
  216. package/dist/simulate-bgs-battle.js +19 -2
  217. package/dist/simulate-bgs-battle.js.map +1 -1
  218. package/dist/simulation/add-minion-to-board.d.ts +18 -2
  219. package/dist/simulation/add-minion-to-board.js +46 -15
  220. package/dist/simulation/add-minion-to-board.js.map +1 -1
  221. package/dist/simulation/after-attack.js +2 -1
  222. package/dist/simulation/after-attack.js.map +1 -1
  223. package/dist/simulation/attack.js +7 -24
  224. package/dist/simulation/attack.js.map +1 -1
  225. package/dist/simulation/auras.d.ts +1 -1
  226. package/dist/simulation/auras.js +21 -15
  227. package/dist/simulation/auras.js.map +1 -1
  228. package/dist/simulation/avenge.d.ts +7 -0
  229. package/dist/simulation/avenge.js +223 -229
  230. package/dist/simulation/avenge.js.map +1 -1
  231. package/dist/simulation/battlecries.d.ts +8 -0
  232. package/dist/simulation/battlecries.js +634 -609
  233. package/dist/simulation/battlecries.js.map +1 -1
  234. package/dist/simulation/blood-gems.js +1 -1
  235. package/dist/simulation/blood-gems.js.map +1 -1
  236. package/dist/simulation/cards-in-hand.d.ts +7 -1
  237. package/dist/simulation/cards-in-hand.js +14 -0
  238. package/dist/simulation/cards-in-hand.js.map +1 -1
  239. package/dist/simulation/damage-effects.js +1 -1
  240. package/dist/simulation/damage-effects.js.map +1 -1
  241. package/dist/simulation/deathrattle-effects.d.ts +1 -1
  242. package/dist/simulation/deathrattle-effects.js +498 -516
  243. package/dist/simulation/deathrattle-effects.js.map +1 -1
  244. package/dist/simulation/deathrattle-on-trigger.d.ts +1 -0
  245. package/dist/simulation/deathrattle-on-trigger.js.map +1 -1
  246. package/dist/simulation/deathrattle-spawns.d.ts +2 -0
  247. package/dist/simulation/deathrattle-spawns.js +324 -384
  248. package/dist/simulation/deathrattle-spawns.js.map +1 -1
  249. package/dist/simulation/deathrattle-utils.js +1 -1
  250. package/dist/simulation/deathrattle-utils.js.map +1 -1
  251. package/dist/simulation/frenzy.js +1 -1
  252. package/dist/simulation/frenzy.js.map +1 -1
  253. package/dist/simulation/magnetize.js.map +1 -1
  254. package/dist/simulation/on-attack.d.ts +13 -1
  255. package/dist/simulation/on-attack.js +21 -1
  256. package/dist/simulation/on-attack.js.map +1 -1
  257. package/dist/simulation/on-being-attacked.js +7 -4
  258. package/dist/simulation/on-being-attacked.js.map +1 -1
  259. package/dist/simulation/simulator.js +23 -8
  260. package/dist/simulation/simulator.js.map +1 -1
  261. package/dist/simulation/spawns.js +1 -1
  262. package/dist/simulation/spawns.js.map +1 -1
  263. package/dist/simulation/start-of-combat/soc-action-processor.js +6 -4
  264. package/dist/simulation/start-of-combat/soc-action-processor.js.map +1 -1
  265. package/dist/simulation/start-of-combat/soc-pre-combat-hero-power.js +12 -4
  266. package/dist/simulation/start-of-combat/soc-pre-combat-hero-power.js.map +1 -1
  267. package/dist/simulation/stats.d.ts +8 -0
  268. package/dist/simulation/stats.js +21 -4
  269. package/dist/simulation/stats.js.map +1 -1
  270. package/dist/simulation/summon-when-space.js +2 -12
  271. package/dist/simulation/summon-when-space.js.map +1 -1
  272. package/dist/temp-card-ids.d.ts +70 -0
  273. package/dist/temp-card-ids.js.map +1 -1
  274. package/dist/utils.d.ts +0 -1
  275. package/dist/utils.js +30 -36
  276. package/dist/utils.js.map +1 -1
  277. package/package.json +2 -2
  278. package/dist/divine-shield.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mantid-queen.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/mantid-queen.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAE7D,mDAAqD;AAErD,qDAAwD;AAE3C,QAAA,WAAW,GAAG;IAC1B,aAAa,EAAE,CAAC,MAAmB,EAAE,KAAe,EAAE,EAAE;QACvD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,iBAAmC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB;aACtC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aAC9B,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;aACnE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,qBAAI,CAAC,qBAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,MAAM,UAAU,GACf,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,qBAAI,CAAC,qBAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;YACvE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,qBAAI,CAAC,qBAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;YACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;gBACpC,MAAM,QAAQ,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;gBACtD,QAAQ,QAAQ,EAAE;oBACjB,KAAK,OAAO;wBACX,IAAA,mBAAW,EAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;wBAClF,MAAM;oBACP,KAAK,QAAQ;wBACZ,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;wBACrB,MAAM;oBACP,KAAK,OAAO;wBACX,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;wBACpB,MAAM;oBACP,KAAK,UAAU;wBACd,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;wBACvB,MAAM;iBACP;gBACD,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,MAAM,EACN,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,cAAc,CACpB,CAAC;aACF;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,MAAmB,EAA6C,EAAE;IACvG,MAAM,aAAa,GAAkD,CAAC,OAAO,CAAC,CAAC;IAC/E,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;QACnB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC7B;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;QACrB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC/B;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;QAClB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC5B;IACD,OAAO,IAAA,kBAAU,EAAC,aAAa,CAAC,CAAC;AAClC,CAAC,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\nexport const MantidQueen = {\r\n\tstartOfCombat: (minion: BoardEntity, input: SoCInput) => {\r\n\t\tconst multiplier = minion.cardId === CardIds.MantidQueen_BG22_402_G ? 2 : 1;\r\n\t\tconst allRaces = input.playerBoardBefore\r\n\t\t\t.map((entity) => entity.cardId)\r\n\t\t\t.flatMap((cardId) => input.gameState.allCards.getCard(cardId).races)\r\n\t\t\t.filter((race) => !!race && race !== Race[Race.BLANK]);\r\n\t\tconst totalRaces =\r\n\t\t\t[...new Set(allRaces.filter((race) => race !== Race[Race.ALL]))].length +\r\n\t\t\tallRaces.filter((race) => race === Race[Race.ALL]).length;\r\n\t\tfor (let i = 0; i < multiplier; i++) {\r\n\t\t\tfor (let j = 0; j < totalRaces; j++) {\r\n\t\t\t\tconst buffType = getRandomMantidQueenBuffType(minion);\r\n\t\t\t\tswitch (buffType) {\r\n\t\t\t\t\tcase 'stats':\r\n\t\t\t\t\t\tmodifyStats(minion, 5, 5, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'reborn':\r\n\t\t\t\t\t\tminion.reborn = true;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'taunt':\r\n\t\t\t\t\t\tminion.taunt = true;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'windfury':\r\n\t\t\t\t\t\tminion.windfury = true;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tinput.playerBoard,\r\n\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\tinput.opponentEntity,\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n\r\nconst getRandomMantidQueenBuffType = (entity: BoardEntity): 'stats' | 'reborn' | 'windfury' | 'taunt' => {\r\n\tconst possibilities: ('stats' | 'reborn' | 'windfury' | 'taunt')[] = ['stats'];\r\n\tif (!entity.reborn) {\r\n\t\tpossibilities.push('reborn');\r\n\t}\r\n\tif (!entity.windfury) {\r\n\t\tpossibilities.push('windfury');\r\n\t}\r\n\tif (!entity.taunt) {\r\n\t\tpossibilities.push('taunt');\r\n\t}\r\n\treturn pickRandom(possibilities);\r\n};\r\n"]}
1
+ {"version":3,"file":"mantid-queen.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/mantid-queen.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAE7D,qDAAwD;AACxD,mDAAsD;AACtD,yDAA4D;AAC5D,mDAAqD;AAErD,qDAAwD;AAE3C,QAAA,WAAW,GAAG;IAC1B,aAAa,EAAE,CAAC,MAAmB,EAAE,KAAe,EAAE,EAAE;QACvD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,iBAAmC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB;aACtC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aAC9B,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;aACnE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,qBAAI,CAAC,qBAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,MAAM,UAAU,GACf,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,qBAAI,CAAC,qBAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;YACvE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,qBAAI,CAAC,qBAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;YACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;gBACpC,MAAM,QAAQ,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;gBACtD,QAAQ,QAAQ,EAAE;oBACjB,KAAK,OAAO;wBACX,IAAA,mBAAW,EAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;wBAClF,MAAM;oBACP,KAAK,QAAQ;wBACZ,IAAA,qBAAY,EACX,MAAM,EACN,IAAI,EACJ,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,SAAS,CACf,CAAC;wBACF,MAAM;oBACP,KAAK,OAAO;wBACX,IAAA,mBAAW,EACV,MAAM,EACN,IAAI,EACJ,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,SAAS,CACf,CAAC;wBACF,MAAM;oBACP,KAAK,UAAU;wBACd,IAAA,yBAAc,EACb,MAAM,EACN,IAAI,EACJ,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,SAAS,CACf,CAAC;wBACF,MAAM;iBACP;gBACD,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,MAAM,EACN,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,cAAc,CACpB,CAAC;aACF;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,MAAmB,EAA6C,EAAE;IACvG,MAAM,aAAa,GAAkD,CAAC,OAAO,CAAC,CAAC;IAC/E,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;QACnB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC7B;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;QACrB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC/B;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;QAClB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC5B;IACD,OAAO,IAAA,kBAAU,EAAC,aAAa,CAAC,CAAC;AAClC,CAAC,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { updateReborn } from '../../../keywords/reborn';\r\nimport { updateTaunt } from '../../../keywords/taunt';\r\nimport { updateWindfury } from '../../../keywords/windfury';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\nexport const MantidQueen = {\r\n\tstartOfCombat: (minion: BoardEntity, input: SoCInput) => {\r\n\t\tconst multiplier = minion.cardId === CardIds.MantidQueen_BG22_402_G ? 2 : 1;\r\n\t\tconst allRaces = input.playerBoardBefore\r\n\t\t\t.map((entity) => entity.cardId)\r\n\t\t\t.flatMap((cardId) => input.gameState.allCards.getCard(cardId).races)\r\n\t\t\t.filter((race) => !!race && race !== Race[Race.BLANK]);\r\n\t\tconst totalRaces =\r\n\t\t\t[...new Set(allRaces.filter((race) => race !== Race[Race.ALL]))].length +\r\n\t\t\tallRaces.filter((race) => race === Race[Race.ALL]).length;\r\n\t\tfor (let i = 0; i < multiplier; i++) {\r\n\t\t\tfor (let j = 0; j < totalRaces; j++) {\r\n\t\t\t\tconst buffType = getRandomMantidQueenBuffType(minion);\r\n\t\t\t\tswitch (buffType) {\r\n\t\t\t\t\tcase 'stats':\r\n\t\t\t\t\t\tmodifyStats(minion, 5, 5, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'reborn':\r\n\t\t\t\t\t\tupdateReborn(\r\n\t\t\t\t\t\t\tminion,\r\n\t\t\t\t\t\t\ttrue,\r\n\t\t\t\t\t\t\tinput.playerBoard,\r\n\t\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\t\tinput.opponentEntity,\r\n\t\t\t\t\t\t\tinput.gameState,\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'taunt':\r\n\t\t\t\t\t\tupdateTaunt(\r\n\t\t\t\t\t\t\tminion,\r\n\t\t\t\t\t\t\ttrue,\r\n\t\t\t\t\t\t\tinput.playerBoard,\r\n\t\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\t\tinput.opponentEntity,\r\n\t\t\t\t\t\t\tinput.gameState,\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'windfury':\r\n\t\t\t\t\t\tupdateWindfury(\r\n\t\t\t\t\t\t\tminion,\r\n\t\t\t\t\t\t\ttrue,\r\n\t\t\t\t\t\t\tinput.playerBoard,\r\n\t\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\t\tinput.opponentEntity,\r\n\t\t\t\t\t\t\tinput.gameState,\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tinput.playerBoard,\r\n\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\tinput.opponentEntity,\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n\r\nconst getRandomMantidQueenBuffType = (entity: BoardEntity): 'stats' | 'reborn' | 'windfury' | 'taunt' => {\r\n\tconst possibilities: ('stats' | 'reborn' | 'windfury' | 'taunt')[] = ['stats'];\r\n\tif (!entity.reborn) {\r\n\t\tpossibilities.push('reborn');\r\n\t}\r\n\tif (!entity.windfury) {\r\n\t\tpossibilities.push('windfury');\r\n\t}\r\n\tif (!entity.taunt) {\r\n\t\tpossibilities.push('taunt');\r\n\t}\r\n\treturn pickRandom(possibilities);\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { EndOfTurnCard } from '../../card.interface';
2
+ export declare const MarqueeTicker: EndOfTurnCard;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MarqueeTicker = void 0;
4
+ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
5
+ exports.MarqueeTicker = {
6
+ cardIds: ["MarqueeTicker", "MarqueeTicker_G"],
7
+ endOfTurn: (minion, input) => {
8
+ const cards = minion.cardId === "MarqueeTicker_G" ? [null, null] : [null];
9
+ (0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, cards, input.gameState);
10
+ },
11
+ };
12
+ //# sourceMappingURL=marquee-ticker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee-ticker.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/marquee-ticker.ts"],"names":[],"mappings":";;;AACA,qEAAmE;AAItD,QAAA,aAAa,GAAkB;IAC3C,OAAO,EAAE,oCAAwD;IACjE,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,sBAAgC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpF,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const MarqueeTicker: EndOfTurnCard = {\r\n\tcardIds: [TempCardIds.MarqueeTicker, TempCardIds.MarqueeTicker_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst cards = minion.cardId === TempCardIds.MarqueeTicker_G ? [null, null] : [null];\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DeathrattleSpawnCard } from '../../card.interface';
2
+ export declare const MechanizedGiftHorse: DeathrattleSpawnCard;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MechanizedGiftHorse = void 0;
4
+ const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
5
+ exports.MechanizedGiftHorse = {
6
+ cardIds: ["BG27_008", "BG27_008_G"],
7
+ deathrattleSpawn: (minion, input) => {
8
+ return (0, deathrattle_spawns_1.simplifiedSpawnEntities)(minion.cardId === "BG27_008_G"
9
+ ? "BG27_008_Gt"
10
+ : "BG27_008t", 2, input);
11
+ },
12
+ };
13
+ //# sourceMappingURL=mechanized-gift-horse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mechanized-gift-horse.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/mechanized-gift-horse.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AAGpE,QAAA,mBAAmB,GAAyB;IACxD,OAAO,EAAE,0BAA8E;IACvF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,OAAO,IAAA,4CAAuB,EAC7B,MAAM,CAAC,MAAM,iBAA2C;YACvD,CAAC;YACD,CAAC,YAAoD,EACtD,CAAC,EACD,KAAK,CACL,CAAC;IACH,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const MechanizedGiftHorse: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.MechanizedGiftHorse_BG27_008, CardIds.MechanizedGiftHorse_BG27_008_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\treturn simplifiedSpawnEntities(\r\n\t\t\tminion.cardId === CardIds.MechanizedGiftHorse_BG27_008_G\r\n\t\t\t\t? CardIds.MechanizedGiftHorse_MechorseToken_BG27_008_Gt\r\n\t\t\t\t: CardIds.MechanizedGiftHorse_MechorseToken_BG27_008t,\r\n\t\t\t2,\r\n\t\t\tinput,\r\n\t\t);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DeathrattleSpawnCard } from '../../card.interface';
2
+ export declare const Mechorse: DeathrattleSpawnCard;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mechorse = void 0;
4
+ const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
5
+ exports.Mechorse = {
6
+ cardIds: [
7
+ "BG27_008t",
8
+ "BG27_008_Gt",
9
+ ],
10
+ deathrattleSpawn: (minion, input) => {
11
+ return (0, deathrattle_spawns_1.simplifiedSpawnEntities)(minion.cardId === "BG27_008_Gt"
12
+ ? "BG27_008_Gt2"
13
+ : "BG27_008t2", 1, input);
14
+ },
15
+ };
16
+ //# sourceMappingURL=mechorse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mechorse.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/mechorse.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AAGpE,QAAA,QAAQ,GAAyB;IAC7C,OAAO,EAAE;;;KAGR;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,OAAO,IAAA,4CAAuB,EAC7B,MAAM,CAAC,MAAM,kBAA0D;YACtE,CAAC;YACD,CAAC,aAAsD,EACxD,CAAC,EACD,KAAK,CACL,CAAC;IACH,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const Mechorse: DeathrattleSpawnCard = {\r\n\tcardIds: [\r\n\t\tCardIds.MechanizedGiftHorse_MechorseToken_BG27_008t,\r\n\t\tCardIds.MechanizedGiftHorse_MechorseToken_BG27_008_Gt,\r\n\t],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\treturn simplifiedSpawnEntities(\r\n\t\t\tminion.cardId === CardIds.MechanizedGiftHorse_MechorseToken_BG27_008_Gt\r\n\t\t\t\t? CardIds.MechanizedGiftHorse_MechaponyToken_BG27_008_Gt2\r\n\t\t\t\t: CardIds.MechanizedGiftHorse_MechaponyToken_BG27_008t2,\r\n\t\t\t1,\r\n\t\t\tinput,\r\n\t\t);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { EndOfTurnCard } from '../../card.interface';
2
+ export declare const MoonsteelJuggernaut: EndOfTurnCard;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MoonsteelJuggernaut = void 0;
4
+ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
5
+ exports.MoonsteelJuggernaut = {
6
+ cardIds: ["MoonsteelJuggernaut", "MoonsteelJuggernaut_G"],
7
+ endOfTurn: (minion, input) => {
8
+ const buff = minion.cardId === "MoonsteelJuggernaut_G" ? 2 : 1;
9
+ const cards = minion.cardId === "MoonsteelJuggernaut_G"
10
+ ? ["Satellite", "Satellite"]
11
+ : ["Satellite"];
12
+ (0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, cards, input.gameState);
13
+ },
14
+ };
15
+ //# sourceMappingURL=moonsteel-juggernaut.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moonsteel-juggernaut.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/moonsteel-juggernaut.ts"],"names":[],"mappings":";;;AACA,qEAAmE;AAItD,QAAA,mBAAmB,GAAkB;IACjD,OAAO,EAAE,gDAAoE;IAC7E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,4BAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,KAAK,GACV,MAAM,CAAC,MAAM,4BAAsC;YAClD,CAAC,CAAC,0BAA8C;YAChD,CAAC,CAAC,aAAuB,CAAC;QAC5B,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const MoonsteelJuggernaut: EndOfTurnCard = {\r\n\tcardIds: [TempCardIds.MoonsteelJuggernaut, TempCardIds.MoonsteelJuggernaut_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst buff = minion.cardId === TempCardIds.MoonsteelJuggernaut_G ? 2 : 1;\r\n\t\tconst cards =\r\n\t\t\tminion.cardId === TempCardIds.MoonsteelJuggernaut_G\r\n\t\t\t\t? [TempCardIds.Satellite, TempCardIds.Satellite]\r\n\t\t\t\t: [TempCardIds.Satellite];\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DeathrattleEffectCard, OnOtherSpawnedCard } from '../../card.interface';
2
+ export declare const MutatedLasher: DeathrattleEffectCard & OnOtherSpawnedCard;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MutatedLasher = void 0;
4
+ const stats_1 = require("../../../simulation/stats");
5
+ exports.MutatedLasher = {
6
+ cardIds: ["MutatedLasher", "MutatedLasher_G"],
7
+ deathrattleEffect: (minion, input) => {
8
+ const mult = minion.cardId === "MutatedLasher_G" ? 2 : 1;
9
+ input.boardWithDeadEntityHero.globalInfo.MutatedLasherAttackBuff += 2 * mult;
10
+ input.boardWithDeadEntityHero.globalInfo.MutatedLasherHealthBuff += 3 * mult;
11
+ input.boardWithDeadEntity
12
+ .filter((e) => input.gameState.cardsData.getTavernLevel(e.cardId) % 2 === 1)
13
+ .forEach((e) => {
14
+ (0, stats_1.modifyStats)(e, 2 * mult, 3 * mult, input.boardWithDeadEntity, input.boardWithDeadEntityHero, input.gameState);
15
+ input.gameState.spectator.registerPowerTarget(minion, e, input.boardWithDeadEntity, input.boardWithDeadEntityHero, input.otherBoardHero);
16
+ });
17
+ },
18
+ onOtherSpawned: (minion, input) => {
19
+ const mult = minion.cardId === "MutatedLasher_G" ? 2 : 1;
20
+ if (input.gameState.cardsData.getTavernLevel(input.spawned.cardId) % 2 === 1) {
21
+ (0, stats_1.modifyStats)(input.spawned, 2 * mult, 3 * mult, input.playerBoard, input.playerEntity, input.gameState);
22
+ input.gameState.spectator.registerPowerTarget(minion, input.spawned, input.playerBoard, input.playerEntity, null);
23
+ }
24
+ },
25
+ };
26
+ //# sourceMappingURL=mutated-lasher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutated-lasher.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/mutated-lasher.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAI3C,QAAA,aAAa,GAA+C;IACxE,OAAO,EAAE,oCAAwD;IACjE,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC5E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,sBAAgC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,uBAAuB,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7E,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,uBAAuB,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7E,KAAK,CAAC,mBAAmB;aACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;aAC3E,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EACV,CAAC,EACD,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,SAAS,CACf,CAAC;YACF,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,CAAC,EACD,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,cAAc,CACpB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,cAAc,EAAE,CAAC,MAAmB,EAAE,KAAwB,EAAE,EAAE;QACjE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,sBAAgC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,IAAI,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC7E,IAAA,mBAAW,EAAC,KAAK,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YACvG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,IAAI,CACJ,CAAC;SACF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { OnOtherSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { DeathrattleEffectCard, OnOtherSpawnedCard } from '../../card.interface';\r\n\r\nexport const MutatedLasher: DeathrattleEffectCard & OnOtherSpawnedCard = {\r\n\tcardIds: [TempCardIds.MutatedLasher, TempCardIds.MutatedLasher_G],\r\n\tdeathrattleEffect: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.MutatedLasher_G ? 2 : 1;\r\n\t\tinput.boardWithDeadEntityHero.globalInfo.MutatedLasherAttackBuff += 2 * mult;\r\n\t\tinput.boardWithDeadEntityHero.globalInfo.MutatedLasherHealthBuff += 3 * mult;\r\n\t\tinput.boardWithDeadEntity\r\n\t\t\t.filter((e) => input.gameState.cardsData.getTavernLevel(e.cardId) % 2 === 1)\r\n\t\t\t.forEach((e) => {\r\n\t\t\t\tmodifyStats(\r\n\t\t\t\t\te,\r\n\t\t\t\t\t2 * mult,\r\n\t\t\t\t\t3 * mult,\r\n\t\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\t\tinput.gameState,\r\n\t\t\t\t);\r\n\t\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\te,\r\n\t\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\t\tinput.otherBoardHero,\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t},\r\n\tonOtherSpawned: (minion: BoardEntity, input: OnOtherSpawnInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.MutatedLasher_G ? 2 : 1;\r\n\t\tif (input.gameState.cardsData.getTavernLevel(input.spawned.cardId) % 2 === 1) {\r\n\t\t\tmodifyStats(input.spawned, 2 * mult, 3 * mult, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\tminion,\r\n\t\t\t\tinput.spawned,\r\n\t\t\t\tinput.playerBoard,\r\n\t\t\t\tinput.playerEntity,\r\n\t\t\t\tnull,\r\n\t\t\t);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { OnAttackCard } from '../../card.interface';
2
+ export declare const NeonAgent: OnAttackCard;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NeonAgent = void 0;
4
+ const utils_1 = require("../../../services/utils");
5
+ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
6
+ exports.NeonAgent = {
7
+ cardIds: ["NeonAgent", "NeonAgent_G"],
8
+ onAttack: (minion, input) => {
9
+ const cards = [];
10
+ const numberOfCards = minion.cardId === "NeonAgent_G" ? 2 : 1;
11
+ for (let i = 0; i < numberOfCards; i++) {
12
+ cards.push((0, utils_1.pickRandom)(input.gameState.cardsData.battlecryMinions));
13
+ }
14
+ (0, cards_in_hand_1.addCardsInHand)(input.attackingHero, input.attackingBoard, cards, input.gameState);
15
+ return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
16
+ },
17
+ };
18
+ //# sourceMappingURL=neon-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"neon-agent.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/neon-agent.ts"],"names":[],"mappings":";;;AACA,mDAAqD;AACrD,qEAAmE;AAKtD,QAAA,SAAS,GAAiB;IACtC,OAAO,EAAE,4BAAgD;IACzD,QAAQ,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAA4D,EAAE;QACjH,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,kBAA4B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;YACvC,KAAK,CAAC,IAAI,CAAC,IAAA,kBAAU,EAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC;SACnE;QACD,IAAA,8BAAc,EAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAClF,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { OnAttackCard } from '../../card.interface';\r\n\r\nexport const NeonAgent: OnAttackCard = {\r\n\tcardIds: [TempCardIds.NeonAgent, TempCardIds.NeonAgent_G],\r\n\tonAttack: (minion: BoardEntity, input: OnAttackInput): { dmgDoneByAttacker: number; dmgDoneByDefender: number } => {\r\n\t\tconst cards = [];\r\n\t\tconst numberOfCards = minion.cardId === TempCardIds.NeonAgent_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < numberOfCards; i++) {\r\n\t\t\tcards.push(pickRandom(input.gameState.cardsData.battlecryMinions));\r\n\t\t}\r\n\t\taddCardsInHand(input.attackingHero, input.attackingBoard, cards, input.gameState);\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DeathrattleSpawnCard } from '../../card.interface';
2
+ export declare const NestSwarmer: DeathrattleSpawnCard;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NestSwarmer = void 0;
4
+ const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
5
+ exports.NestSwarmer = {
6
+ cardIds: ["NestSwarmer", "NestSwarmer_G"],
7
+ deathrattleSpawn: (deadEntity, input) => {
8
+ const numberOfSpawns = deadEntity.cardId === "NestSwarmer_G" ? 6 : 3;
9
+ return (0, deathrattle_spawns_1.simplifiedSpawnEntities)("BeetleToken", numberOfSpawns, input);
10
+ },
11
+ };
12
+ //# sourceMappingURL=nest-swarmer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nest-swarmer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/nest-swarmer.ts"],"names":[],"mappings":";;;AAEA,+EAAiF;AAIpE,QAAA,WAAW,GAAyB;IAChD,OAAO,EAAE,gCAAoD;IAC7D,gBAAgB,EAAE,CAAC,UAAuB,EAAE,KAAgC,EAA0B,EAAE;QACvG,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,oBAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,OAAO,IAAA,4CAAuB,iBAA0B,cAAc,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const NestSwarmer: DeathrattleSpawnCard = {\r\n\tcardIds: [TempCardIds.NestSwarmer, TempCardIds.NestSwarmer_G],\r\n\tdeathrattleSpawn: (deadEntity: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst numberOfSpawns = deadEntity.cardId === TempCardIds.NestSwarmer_G ? 6 : 3;\r\n\t\treturn simplifiedSpawnEntities(TempCardIds.BeetleToken, numberOfSpawns, input);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { EndOfTurnCard } from '../../card.interface';
2
+ export declare const NetherDrake: EndOfTurnCard;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NetherDrake = void 0;
4
+ const reference_data_1 = require("@firestone-hs/reference-data");
5
+ const utils_1 = require("../../../utils");
6
+ exports.NetherDrake = {
7
+ cardIds: ["BG24_003", "BG24_003_G"],
8
+ endOfTurn: (minion, input) => {
9
+ const steps = minion.cardId === "BG24_003_G" ? 2 : 1;
10
+ const buff = minion.scriptDataNum1 || steps;
11
+ (0, utils_1.addStatsToBoard)(minion, input.board, input.hero, buff, 0, input.gameState, reference_data_1.Race[reference_data_1.Race.DRAGON]);
12
+ minion.scriptDataNum1 = minion.scriptDataNum1 + steps;
13
+ },
14
+ };
15
+ //# sourceMappingURL=nether-drake.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nether-drake.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/nether-drake.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,0CAAiD;AAGpC,QAAA,WAAW,GAAkB;IACzC,OAAO,EAAE,0BAA8D;IACvE,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,iBAAmC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;QAC5C,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,qBAAI,CAAC,qBAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9F,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { EndOfTurnCard } from '../../card.interface';\r\n\r\nexport const NetherDrake: EndOfTurnCard = {\r\n\tcardIds: [CardIds.NetherDrake_BG24_003, CardIds.NetherDrake_BG24_003_G],\r\n\tendOfTurn: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst steps = minion.cardId === CardIds.NetherDrake_BG24_003_G ? 2 : 1;\r\n\t\tconst buff = minion.scriptDataNum1 || steps;\r\n\t\taddStatsToBoard(minion, input.board, input.hero, buff, 0, input.gameState, Race[Race.DRAGON]);\r\n\t\tminion.scriptDataNum1 = minion.scriptDataNum1 + steps;\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { OnAttackCard } from '../../card.interface';
2
+ export declare const Niuzao: OnAttackCard;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Niuzao = void 0;
4
+ const utils_1 = require("../../../services/utils");
5
+ const attack_1 = require("../../../simulation/attack");
6
+ exports.Niuzao = {
7
+ cardIds: ["BG27_822", "BG27_822_G"],
8
+ onAttack: (minion, input) => {
9
+ const multiplier = minion.cardId === "BG27_822_G" ? 2 : 1;
10
+ let dmgDoneByAttacker = 0;
11
+ for (let i = 0; i < multiplier; i++) {
12
+ const target = (0, utils_1.pickRandom)(input.defendingBoard.filter((e) => e.entityId != input.defendingEntity.entityId));
13
+ if (target) {
14
+ input.gameState.spectator.registerPowerTarget(minion, target, input.defendingBoard, input.attackingHero, input.defendingHero);
15
+ dmgDoneByAttacker += (0, attack_1.dealDamageToMinion)(target, input.defendingBoard, input.defendingHero, minion, minion.attack, input.attackingBoard, input.attackingHero, input.gameState);
16
+ }
17
+ }
18
+ return { dmgDoneByAttacker, dmgDoneByDefender: 0 };
19
+ },
20
+ };
21
+ //# sourceMappingURL=niuzao.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"niuzao.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/niuzao.ts"],"names":[],"mappings":";;;AAEA,mDAAqD;AACrD,uDAAgE;AAInD,QAAA,MAAM,GAAiB;IACnC,OAAO,EAAE,0BAAoD;IAC7D,QAAQ,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAA4D,EAAE;QACjH,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,iBAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5G,IAAI,MAAM,EAAE;gBACX,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,MAAM,EACN,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,aAAa,CACnB,CAAC;gBACF,iBAAiB,IAAI,IAAA,2BAAkB,EACtC,MAAM,EACN,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,MAAM,EACN,MAAM,CAAC,MAAM,EACb,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;aACF;SACD;QACD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACpD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { dealDamageToMinion } from '../../../simulation/attack';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { OnAttackCard } from '../../card.interface';\r\n\r\nexport const Niuzao: OnAttackCard = {\r\n\tcardIds: [CardIds.Niuzao_BG27_822, CardIds.Niuzao_BG27_822_G],\r\n\tonAttack: (minion: BoardEntity, input: OnAttackInput): { dmgDoneByAttacker: number; dmgDoneByDefender: number } => {\r\n\t\tconst multiplier = minion.cardId === CardIds.Niuzao_BG27_822_G ? 2 : 1;\r\n\t\tlet dmgDoneByAttacker = 0;\r\n\t\tfor (let i = 0; i < multiplier; i++) {\r\n\t\t\tconst target = pickRandom(input.defendingBoard.filter((e) => e.entityId != input.defendingEntity.entityId));\r\n\t\t\tif (target) {\r\n\t\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\ttarget,\r\n\t\t\t\t\tinput.defendingBoard,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tinput.defendingHero,\r\n\t\t\t\t);\r\n\t\t\t\tdmgDoneByAttacker += dealDamageToMinion(\r\n\t\t\t\t\ttarget,\r\n\t\t\t\t\tinput.defendingBoard,\r\n\t\t\t\t\tinput.defendingHero,\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tminion.attack,\r\n\t\t\t\t\tinput.attackingBoard,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tinput.gameState,\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { EndOfTurnCard } from '../../card.interface';
2
+ export declare const OutbackSmolderer: EndOfTurnCard;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutbackSmolderer = void 0;
4
+ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
5
+ exports.OutbackSmolderer = {
6
+ cardIds: ["BG28_592", "BG28_592_G"],
7
+ endOfTurn: (minion, input) => {
8
+ const cards = minion.cardId === "BG28_592_G"
9
+ ? [
10
+ "BG25_309t",
11
+ "BG25_309t",
12
+ ]
13
+ : ["BG25_309t"];
14
+ (0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, cards, input.gameState);
15
+ },
16
+ };
17
+ //# sourceMappingURL=outback-smolderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outback-smolderer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/outback-smolderer.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAGtD,QAAA,gBAAgB,GAAkB;IAC9C,OAAO,EAAE,0BAAwE;IACjF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,KAAK,GACV,MAAM,CAAC,MAAM,iBAAwC;YACpD,CAAC,CAAC;;;aAGC;YACH,CAAC,CAAC,aAAsD,CAAC;QAC3D,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { EndOfTurnCard } from '../../card.interface';\r\n\r\nexport const OutbackSmolderer: EndOfTurnCard = {\r\n\tcardIds: [CardIds.OutbackSmolderer_BG28_592, CardIds.OutbackSmolderer_BG28_592_G],\r\n\tendOfTurn: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst cards =\r\n\t\t\tminion.cardId === CardIds.OutbackSmolderer_BG28_592_G\r\n\t\t\t\t? [\r\n\t\t\t\t\t\tCardIds.GeneralDrakkisath_SmolderwingToken_BG25_309t,\r\n\t\t\t\t\t\tCardIds.GeneralDrakkisath_SmolderwingToken_BG25_309t,\r\n\t\t\t\t ]\r\n\t\t\t\t: [CardIds.GeneralDrakkisath_SmolderwingToken_BG25_309t];\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { EndOfTurnCard } from '../../card.interface';
2
+ export declare const RazorgoreTheUntamed: EndOfTurnCard;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RazorgoreTheUntamed = 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.RazorgoreTheUntamed = {
8
+ cardIds: ["BGS_036", "TB_BaconUps_106"],
9
+ endOfTurn: (minion, input) => {
10
+ const otherDragons = input.board
11
+ .filter((e) => e.entityId !== minion.entityId)
12
+ .filter((e) => (0, utils_1.hasCorrectTribe)(e, input.hero, reference_data_1.Race.DRAGON, input.gameState.allCards));
13
+ const mult = minion.cardId === "TB_BaconUps_106" ? 2 : 1;
14
+ if (otherDragons.length) {
15
+ (0, stats_1.modifyStats)(minion, mult * otherDragons.length, mult * 2 * otherDragons.length, input.board, input.hero, input.gameState);
16
+ input.gameState.spectator.registerPowerTarget(minion, minion, input.board, input.hero, input.otherHero);
17
+ }
18
+ },
19
+ };
20
+ //# sourceMappingURL=razorgore-the-untamed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"razorgore-the-untamed.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/razorgore-the-untamed.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,mBAAmB,GAAkB;IACjD,OAAO,EAAE,8BAAkF;IAC3F,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC;aAC7C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,sBAAgD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,IAAI,YAAY,CAAC,MAAM,EAAE;YACxB,IAAA,mBAAW,EACV,MAAM,EACN,IAAI,GAAG,YAAY,CAAC,MAAM,EAC1B,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,EAC9B,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;YACF,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACxG;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { EndOfTurnCard } from '../../card.interface';\r\n\r\nexport const RazorgoreTheUntamed: EndOfTurnCard = {\r\n\tcardIds: [CardIds.RazorgoreTheUntamed_BGS_036, CardIds.RazorgoreTheUntamed_TB_BaconUps_106],\r\n\tendOfTurn: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst otherDragons = input.board\r\n\t\t\t.filter((e) => e.entityId !== minion.entityId)\r\n\t\t\t.filter((e) => hasCorrectTribe(e, input.hero, Race.DRAGON, input.gameState.allCards));\r\n\t\tconst mult = minion.cardId === CardIds.RazorgoreTheUntamed_TB_BaconUps_106 ? 2 : 1;\r\n\t\tif (otherDragons.length) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\tminion,\r\n\t\t\t\tmult * otherDragons.length,\r\n\t\t\t\tmult * 2 * otherDragons.length,\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(minion, minion, input.board, input.hero, input.otherHero);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { OnBattlecryTriggeredCard, OnDespawnedCard, OnSpawnedCard } from '../../card.interface';
2
+ export declare const RecklessCliffdiver: OnSpawnedCard & OnDespawnedCard & OnBattlecryTriggeredCard;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecklessCliffdiver = void 0;
4
+ exports.RecklessCliffdiver = {
5
+ cardIds: ["RecklessCliffdiver", "RecklessCliffdiver_G"],
6
+ onBattlecryTriggered: (minion, input) => {
7
+ const mult = minion.cardId === "RecklessCliffdiver_G" ? 2 : 1;
8
+ minion.attack += mult * input.hero.globalInfo.BattlecriesTriggeredThisGame;
9
+ },
10
+ onSpawned: (minion, input) => {
11
+ const mult = minion.cardId === "RecklessCliffdiver_G" ? 2 : 1;
12
+ minion.attack += mult * input.playerEntity.globalInfo.BattlecriesTriggeredThisGame;
13
+ },
14
+ onDespawned: (minion, input) => {
15
+ const mult = minion.cardId === "RecklessCliffdiver_G" ? 2 : 1;
16
+ minion.attack = Math.max(0, minion.attack - 2 * mult);
17
+ },
18
+ };
19
+ //# sourceMappingURL=reckless-cliffdiver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reckless-cliffdiver.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/reckless-cliffdiver.ts"],"names":[],"mappings":";;;AAMa,QAAA,kBAAkB,GAA+D;IAC7F,OAAO,EAAE,8CAAkE;IAC3E,oBAAoB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC/E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,2BAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,4BAA4B,CAAC;IAC5E,CAAC;IACD,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAmB,EAAE,EAAE;QACvD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,2BAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,4BAA4B,CAAC;IACpF,CAAC;IACD,WAAW,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,2BAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,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 { OnDespawnInput, OnSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { OnBattlecryTriggeredInput } from '../../../simulation/battlecries';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { OnBattlecryTriggeredCard, OnDespawnedCard, OnSpawnedCard } from '../../card.interface';\r\n\r\nexport const RecklessCliffdiver: OnSpawnedCard & OnDespawnedCard & OnBattlecryTriggeredCard = {\r\n\tcardIds: [TempCardIds.RecklessCliffdiver, TempCardIds.RecklessCliffdiver_G],\r\n\tonBattlecryTriggered: (minion: BoardEntity, input: OnBattlecryTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.RecklessCliffdiver_G ? 2 : 1;\r\n\t\tminion.attack += mult * input.hero.globalInfo.BattlecriesTriggeredThisGame;\r\n\t},\r\n\tonSpawned: (minion: BoardEntity, input: OnSpawnInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.RecklessCliffdiver_G ? 2 : 1;\r\n\t\tminion.attack += mult * input.playerEntity.globalInfo.BattlecriesTriggeredThisGame;\r\n\t},\r\n\tonDespawned: (minion: BoardEntity, input: OnDespawnInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.RecklessCliffdiver_G ? 2 : 1;\r\n\t\tminion.attack = Math.max(0, minion.attack - 2 * mult);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { AvengeCard, DeathrattleSpawnCard } from '../../card.interface';
2
+ export declare const RunedProgenitor: DeathrattleSpawnCard & AvengeCard;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RunedProgenitor = void 0;
4
+ const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
5
+ const stats_1 = require("../../../simulation/stats");
6
+ exports.RunedProgenitor = {
7
+ cardIds: ["RunedProgenitor", "RunedProgenitor_G"],
8
+ deathrattleSpawn: (deadEntity, input) => {
9
+ const numberOfSpawns = deadEntity.cardId === "RunedProgenitor_G" ? 2 : 1;
10
+ return (0, deathrattle_spawns_1.simplifiedSpawnEntities)("BeetleToken", numberOfSpawns, input);
11
+ },
12
+ baseAvengeValue: (cardId) => 4,
13
+ avenge: (minion, input) => {
14
+ const mult = minion.cardId === "RunedProgenitor_G" ? 2 : 1;
15
+ input.hero.globalInfo.BeetleAttackBuff = input.hero.globalInfo.BeetleAttackBuff + 2 * mult;
16
+ input.hero.globalInfo.BeetleHealthBuff = input.hero.globalInfo.BeetleHealthBuff + 2 * mult;
17
+ input.board
18
+ .filter((e) => ["BeetleToken", "BeetleToken_G"].includes(e.cardId))
19
+ .forEach((e) => {
20
+ (0, stats_1.modifyStats)(e, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);
21
+ });
22
+ },
23
+ };
24
+ //# sourceMappingURL=runed-progenitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runed-progenitor.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/runed-progenitor.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AACjF,qDAAwD;AAI3C,QAAA,eAAe,GAAsC;IACjE,OAAO,EAAE,wCAA4D;IACrE,gBAAgB,EAAE,CAAC,UAAuB,EAAE,KAAgC,EAA0B,EAAE;QACvG,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,wBAAkC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,OAAO,IAAA,4CAAuB,iBAA0B,cAAc,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC;IACD,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,wBAAkC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC;QAC3F,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC;QAC3F,KAAK,CAAC,KAAK;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gCAAoD,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAqB,CAAC,CAAC;aACrG,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { AvengeCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const RunedProgenitor: DeathrattleSpawnCard & AvengeCard = {\r\n\tcardIds: [TempCardIds.RunedProgenitor, TempCardIds.RunedProgenitor_G],\r\n\tdeathrattleSpawn: (deadEntity: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst numberOfSpawns = deadEntity.cardId === TempCardIds.RunedProgenitor_G ? 2 : 1;\r\n\t\treturn simplifiedSpawnEntities(TempCardIds.BeetleToken, numberOfSpawns, input);\r\n\t},\r\n\tbaseAvengeValue: (cardId: string) => 4,\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.RunedProgenitor_G ? 2 : 1;\r\n\t\tinput.hero.globalInfo.BeetleAttackBuff = input.hero.globalInfo.BeetleAttackBuff + 2 * mult;\r\n\t\tinput.hero.globalInfo.BeetleHealthBuff = input.hero.globalInfo.BeetleHealthBuff + 2 * mult;\r\n\t\tinput.board\r\n\t\t\t.filter((e) => [TempCardIds.BeetleToken, TempCardIds.BeetleToken_G].includes(e.cardId as TempCardIds))\r\n\t\t\t.forEach((e) => {\r\n\t\t\t\tmodifyStats(e, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t\t});\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DeathrattleEffectCard } from '../../card.interface';
2
+ export declare const RylakMetalhead: DeathrattleEffectCard;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RylakMetalhead = void 0;
4
+ const reference_data_1 = require("@firestone-hs/reference-data");
5
+ const utils_1 = require("../../../services/utils");
6
+ const attack_1 = require("../../../simulation/attack");
7
+ const battlecries_1 = require("../../../simulation/battlecries");
8
+ const utils_2 = require("../../../utils");
9
+ exports.RylakMetalhead = {
10
+ cardIds: ["BG26_801", "BG26_801_G"],
11
+ deathrattleEffect: (minion, input) => {
12
+ const allNeighbours = (0, attack_1.getNeighbours)(input.boardWithDeadEntity, minion, input.deadEntityIndexFromRight).filter((e) => (0, utils_2.hasMechanic)(input.gameState.allCards.getCard(e.cardId), reference_data_1.GameTag[reference_data_1.GameTag.BATTLECRY]));
13
+ const neighbours = minion.cardId === "BG26_801_G"
14
+ ? allNeighbours
15
+ : [(0, utils_1.pickRandom)(allNeighbours)].filter((e) => !!e);
16
+ for (const neighbour of neighbours) {
17
+ input.gameState.spectator.registerPowerTarget(minion, neighbour, input.boardWithDeadEntity, input.boardWithDeadEntityHero, input.otherBoardHero);
18
+ (0, battlecries_1.triggerBattlecry)(input.boardWithDeadEntity, input.boardWithDeadEntityHero, neighbour, input.otherBoard, input.otherBoardHero, input.gameState);
19
+ }
20
+ },
21
+ };
22
+ //# sourceMappingURL=rylak-metalhead.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rylak-metalhead.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/rylak-metalhead.ts"],"names":[],"mappings":";;;AAAA,iEAAgE;AAEhE,mDAAqD;AACrD,uDAA2D;AAC3D,iEAAmE;AAEnE,0CAA6C;AAGhC,QAAA,cAAc,GAA0B;IACpD,OAAO,EAAE,0BAAoE;IAC7E,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC5E,MAAM,aAAa,GAAG,IAAA,sBAAa,EAAC,KAAK,CAAC,mBAAmB,EAAE,MAAM,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC,MAAM,CAC5G,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,mBAAW,EAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,wBAAO,CAAC,wBAAO,CAAC,SAAS,CAAC,CAAC,CAC1F,CAAC;QACF,MAAM,UAAU,GACf,MAAM,CAAC,MAAM,iBAAsC;YAClD,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,CAAC,IAAA,kBAAU,EAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YACnC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,SAAS,EACT,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,cAAc,CACpB,CAAC;YACF,IAAA,8BAAgB,EACf,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,SAAS,EACT,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,SAAS,CACf,CAAC;SACF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, GameTag } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { getNeighbours } from '../../../simulation/attack';\r\nimport { triggerBattlecry } from '../../../simulation/battlecries';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { hasMechanic } from '../../../utils';\r\nimport { DeathrattleEffectCard } from '../../card.interface';\r\n\r\nexport const RylakMetalhead: DeathrattleEffectCard = {\r\n\tcardIds: [CardIds.RylakMetalhead_BG26_801, CardIds.RylakMetalhead_BG26_801_G],\r\n\tdeathrattleEffect: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst allNeighbours = getNeighbours(input.boardWithDeadEntity, minion, input.deadEntityIndexFromRight).filter(\r\n\t\t\t(e) => hasMechanic(input.gameState.allCards.getCard(e.cardId), GameTag[GameTag.BATTLECRY]),\r\n\t\t);\r\n\t\tconst neighbours =\r\n\t\t\tminion.cardId === CardIds.RylakMetalhead_BG26_801_G\r\n\t\t\t\t? allNeighbours\r\n\t\t\t\t: [pickRandom(allNeighbours)].filter((e) => !!e);\r\n\t\tfor (const neighbour of neighbours) {\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\tminion,\r\n\t\t\t\tneighbour,\r\n\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\tinput.otherBoardHero,\r\n\t\t\t);\r\n\t\t\ttriggerBattlecry(\r\n\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\tneighbour,\r\n\t\t\t\tinput.otherBoard,\r\n\t\t\t\tinput.otherBoardHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DefaultChargesCard, OnCardAddedToHandCard } from '../../card.interface';
2
+ export declare const SaltyHog: OnCardAddedToHandCard & DefaultChargesCard;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SaltyHog = void 0;
4
+ const utils_1 = require("../../../utils");
5
+ exports.SaltyHog = {
6
+ cardIds: ["SaltyHog", "SaltyHog_G"],
7
+ defaultCharges: 3,
8
+ onCardAddedToHand: (entity, input) => {
9
+ entity.abiityChargesLeft = entity.abiityChargesLeft - 1;
10
+ if (entity.abiityChargesLeft <= 0) {
11
+ const mult = entity.cardId === "SaltyHog_G" ? 2 : 1;
12
+ (0, utils_1.addStatsToBoard)(entity, input.board.filter((e) => e.entityId !== entity.entityId), input.hero, 2 * mult, 2 * mult, input.gameState);
13
+ entity.abiityChargesLeft = exports.SaltyHog.defaultCharges;
14
+ }
15
+ },
16
+ };
17
+ //# sourceMappingURL=salty-hog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"salty-hog.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/salty-hog.ts"],"names":[],"mappings":";;;AAGA,0CAAiD;AAGpC,QAAA,QAAQ,GAA+C;IACnE,OAAO,EAAE,0BAA8C;IACvD,cAAc,EAAE,CAAC;IACjB,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAA6B,EAAE,EAAE;QACzE,MAAM,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC,iBAAiB,IAAI,CAAC,EAAE;YAClC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA2B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,IAAA,uBAAe,EACd,MAAM,EACN,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,EACzD,KAAK,CAAC,IAAI,EACV,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,KAAK,CAAC,SAAS,CACf,CAAC;YACF,MAAM,CAAC,iBAAiB,GAAG,gBAAQ,CAAC,cAAc,CAAC;SACnD;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { OnCardAddedToHandInput } from '../../../simulation/cards-in-hand';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { DefaultChargesCard, OnCardAddedToHandCard } from '../../card.interface';\r\n\r\nexport const SaltyHog: OnCardAddedToHandCard & DefaultChargesCard = {\r\n\tcardIds: [TempCardIds.SaltyHog, TempCardIds.SaltyHog_G],\r\n\tdefaultCharges: 3,\r\n\tonCardAddedToHand: (entity: BoardEntity, input: OnCardAddedToHandInput) => {\r\n\t\tentity.abiityChargesLeft = entity.abiityChargesLeft - 1;\r\n\t\tif (entity.abiityChargesLeft <= 0) {\r\n\t\t\tconst mult = entity.cardId === TempCardIds.SaltyHog_G ? 2 : 1;\r\n\t\t\taddStatsToBoard(\r\n\t\t\t\tentity,\r\n\t\t\t\tinput.board.filter((e) => e.entityId !== entity.entityId),\r\n\t\t\t\tinput.hero,\r\n\t\t\t\t2 * mult,\r\n\t\t\t\t2 * mult,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\tentity.abiityChargesLeft = SaltyHog.defaultCharges;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DeathrattleEffectCard } from '../../card.interface';
2
+ export declare const ShowyCyclist: DeathrattleEffectCard;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ShowyCyclist = void 0;
4
+ const utils_1 = require("../../../utils");
5
+ exports.ShowyCyclist = {
6
+ cardIds: ["ShowyCyclist", "ShowyCyclist_G"],
7
+ deathrattleEffect: (minion, input) => {
8
+ const baseBuff = minion.scriptDataNum1;
9
+ const mult = minion.cardId === "ShowyCyclist_G" ? 2 : 1;
10
+ const buff = baseBuff * mult;
11
+ (0, utils_1.addStatsToBoard)(minion, input.boardWithDeadEntity, input.boardWithDeadEntityHero, 1 * buff, 1 * buff, input.gameState);
12
+ },
13
+ };
14
+ //# sourceMappingURL=showy-cyclist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"showy-cyclist.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/showy-cyclist.ts"],"names":[],"mappings":";;;AAGA,0CAAiD;AAGpC,QAAA,YAAY,GAA0B;IAClD,OAAO,EAAE,kCAAsD;IAC/D,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC5E,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,qBAA+B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,QAAQ,GAAG,IAAI,CAAC;QAC7B,IAAA,uBAAe,EACd,MAAM,EACN,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,KAAK,CAAC,SAAS,CACf,CAAC;IACH,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { DeathrattleEffectCard } from '../../card.interface';\r\n\r\nexport const ShowyCyclist: DeathrattleEffectCard = {\r\n\tcardIds: [TempCardIds.ShowyCyclist, TempCardIds.ShowyCyclist_G],\r\n\tdeathrattleEffect: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst baseBuff = minion.scriptDataNum1;\r\n\t\tconst mult = minion.cardId === TempCardIds.ShowyCyclist_G ? 2 : 1;\r\n\t\tconst buff = baseBuff * mult;\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\t1 * buff,\r\n\t\t\t1 * buff,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { BattlecryCard } from '../../card.interface';
2
+ export declare const SilverHandedRecruit: BattlecryCard;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SilverHandedRecruit = void 0;
4
+ const stats_1 = require("../../../simulation/stats");
5
+ exports.SilverHandedRecruit = {
6
+ cardIds: ["SilverHandedRecruit", "SilverHandedRecruit_G"],
7
+ battlecry: (minion, input) => {
8
+ const mult = minion.cardId === "SilverHandedRecruit_G" ? 2 : 1;
9
+ input.board
10
+ .filter((e) => input.gameState.cardsData.getTavernLevel(e.cardId) % 2 === 0)
11
+ .forEach((e) => {
12
+ (0, stats_1.modifyStats)(e, 4 * mult, 4 * mult, input.board, input.hero, input.gameState);
13
+ input.gameState.spectator.registerPowerTarget(minion, e, input.board, input.hero, null);
14
+ });
15
+ },
16
+ };
17
+ //# sourceMappingURL=silver-handed-recruit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"silver-handed-recruit.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/silver-handed-recruit.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AAI3C,QAAA,mBAAmB,GAAkB;IACjD,OAAO,EAAE,gDAAoE;IAC7E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,4BAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,KAAK,CAAC,KAAK;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;aAC3E,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YAC7E,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzF,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { TempCardIds } from '../../../temp-card-ids';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const SilverHandedRecruit: BattlecryCard = {\r\n\tcardIds: [TempCardIds.SilverHandedRecruit, TempCardIds.SilverHandedRecruit_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === TempCardIds.SilverHandedRecruit_G ? 2 : 1;\r\n\t\tinput.board\r\n\t\t\t.filter((e) => input.gameState.cardsData.getTavernLevel(e.cardId) % 2 === 0)\r\n\t\t\t.forEach((e) => {\r\n\t\t\t\tmodifyStats(e, 4 * mult, 4 * mult, input.board, input.hero, input.gameState);\r\n\t\t\t\tinput.gameState.spectator.registerPowerTarget(minion, e, input.board, input.hero, null);\r\n\t\t\t});\r\n\t},\r\n};\r\n"]}
@@ -0,0 +1,2 @@
1
+ import { DeathrattleSpawnCard } from '../../card.interface';
2
+ export declare const SlyRaptor: DeathrattleSpawnCard;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SlyRaptor = void 0;
4
+ const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
5
+ exports.SlyRaptor = {
6
+ cardIds: ["BG25_806", "BG25_806_G"],
7
+ deathrattleSpawn: (minion, input) => {
8
+ const raptorStat = minion.cardId === "BG25_806_G" ? 14 : 7;
9
+ const beastPool = input.gameState.cardsData.beastSpawns.filter((id) => id !== "BG25_806");
10
+ const beastsFromRaptor = (0, deathrattle_spawns_1.simplifiedSpawnEntities)(beastPool[Math.floor(Math.random() * beastPool.length)], 1, input);
11
+ beastsFromRaptor.forEach((b) => {
12
+ b.attack = raptorStat;
13
+ b.health = raptorStat;
14
+ });
15
+ return beastsFromRaptor;
16
+ },
17
+ };
18
+ //# sourceMappingURL=sly-raptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sly-raptor.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/sly-raptor.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AAGpE,QAAA,SAAS,GAAyB;IAC9C,OAAO,EAAE,0BAA0D;IACnE,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,iBAAiC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,eAA+B,CAAC,CAAC;QAC1G,MAAM,gBAAgB,GAAG,IAAA,4CAAuB,EAC/C,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EACvD,CAAC,EACD,KAAK,CACL,CAAC;QACF,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9B,CAAC,CAAC,MAAM,GAAG,UAAU,CAAC;YACtB,CAAC,CAAC,MAAM,GAAG,UAAU,CAAC;QACvB,CAAC,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IACzB,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const SlyRaptor: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.SlyRaptor_BG25_806, CardIds.SlyRaptor_BG25_806_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst raptorStat = minion.cardId === CardIds.SlyRaptor_BG25_806_G ? 14 : 7;\r\n\t\tconst beastPool = input.gameState.cardsData.beastSpawns.filter((id) => id !== CardIds.SlyRaptor_BG25_806);\r\n\t\tconst beastsFromRaptor = simplifiedSpawnEntities(\r\n\t\t\tbeastPool[Math.floor(Math.random() * beastPool.length)],\r\n\t\t\t1,\r\n\t\t\tinput,\r\n\t\t);\r\n\t\tbeastsFromRaptor.forEach((b) => {\r\n\t\t\tb.attack = raptorStat;\r\n\t\t\tb.health = raptorStat;\r\n\t\t});\r\n\t\treturn beastsFromRaptor;\r\n\t},\r\n};\r\n"]}