@firestone-hs/simulate-bgs-battle 1.1.724 → 1.1.726
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.
- package/dist/bgs-battle-info.js.map +1 -1
- package/dist/bgs-player-entity.d.ts +2 -0
- package/dist/bgs-player-entity.js.map +1 -1
- package/dist/board-entity.d.ts +1 -0
- package/dist/board-entity.js.map +1 -1
- package/dist/cards/card.interface.d.ts +1 -1
- package/dist/cards/card.interface.js.map +1 -1
- package/dist/cards/impl/_card-mappings.js +114 -0
- package/dist/cards/impl/_card-mappings.js.map +1 -1
- package/dist/cards/impl/bg-spell/mighty-dragonbreath.d.ts +2 -0
- package/dist/cards/impl/bg-spell/mighty-dragonbreath.js +28 -0
- package/dist/cards/impl/bg-spell/mighty-dragonbreath.js.map +1 -0
- package/dist/cards/impl/bg-spell/misplaced-tea-set.d.ts +2 -0
- package/dist/cards/impl/bg-spell/misplaced-tea-set.js +16 -0
- package/dist/cards/impl/bg-spell/misplaced-tea-set.js.map +1 -0
- package/dist/cards/impl/bg-spell/repair-job.d.ts +2 -0
- package/dist/cards/impl/bg-spell/repair-job.js +19 -0
- package/dist/cards/impl/bg-spell/repair-job.js.map +1 -0
- package/dist/cards/impl/bg-spell/sharing-is-caring.js.map +1 -1
- package/dist/cards/impl/bg-spell/toxic-tumbleweed.js.map +1 -1
- package/dist/cards/impl/bg-spell/weapons-forge.d.ts +2 -0
- package/dist/cards/impl/bg-spell/weapons-forge.js +12 -0
- package/dist/cards/impl/bg-spell/weapons-forge.js.map +1 -0
- package/dist/cards/impl/bg-spell/winners-bread.d.ts +2 -0
- package/dist/cards/impl/bg-spell/winners-bread.js +19 -0
- package/dist/cards/impl/bg-spell/winners-bread.js.map +1 -0
- package/dist/cards/impl/enchantments/admiration.d.ts +2 -0
- package/dist/cards/impl/enchantments/admiration.js +17 -0
- package/dist/cards/impl/enchantments/admiration.js.map +1 -0
- package/dist/cards/impl/enchantments/charisma.d.ts +2 -0
- package/dist/cards/impl/enchantments/charisma.js +44 -0
- package/dist/cards/impl/enchantments/charisma.js.map +1 -0
- package/dist/cards/impl/enchantments/consanguinity.d.ts +2 -0
- package/dist/cards/impl/enchantments/consanguinity.js +13 -0
- package/dist/cards/impl/enchantments/consanguinity.js.map +1 -0
- package/dist/cards/impl/enchantments/defensive-sacrifice.d.ts +2 -0
- package/dist/cards/impl/enchantments/defensive-sacrifice.js +17 -0
- package/dist/cards/impl/enchantments/defensive-sacrifice.js.map +1 -0
- package/dist/cards/impl/enchantments/golemancy.d.ts +2 -0
- package/dist/cards/impl/enchantments/golemancy.js +19 -0
- package/dist/cards/impl/enchantments/golemancy.js.map +1 -0
- package/dist/cards/impl/enchantments/hostility.d.ts +2 -0
- package/dist/cards/impl/enchantments/hostility.js +12 -0
- package/dist/cards/impl/enchantments/hostility.js.map +1 -0
- package/dist/cards/impl/enchantments/invulnerability.d.ts +2 -0
- package/dist/cards/impl/enchantments/invulnerability.js +12 -0
- package/dist/cards/impl/enchantments/invulnerability.js.map +1 -0
- package/dist/cards/impl/enchantments/jaws-of-death.d.ts +2 -0
- package/dist/cards/impl/enchantments/jaws-of-death.js +17 -0
- package/dist/cards/impl/enchantments/jaws-of-death.js.map +1 -0
- package/dist/cards/impl/enchantments/mystic-essence.d.ts +2 -0
- package/dist/cards/impl/enchantments/mystic-essence.js +13 -0
- package/dist/cards/impl/enchantments/mystic-essence.js.map +1 -0
- package/dist/cards/impl/enchantments/offensive-sacrifice.d.ts +2 -0
- package/dist/cards/impl/enchantments/offensive-sacrifice.js +18 -0
- package/dist/cards/impl/enchantments/offensive-sacrifice.js.map +1 -0
- package/dist/cards/impl/enchantments/persisting-horror.d.ts +2 -0
- package/dist/cards/impl/enchantments/persisting-horror.js +6 -0
- package/dist/cards/impl/enchantments/persisting-horror.js.map +1 -0
- package/dist/cards/impl/enchantments/resistance.d.ts +2 -0
- package/dist/cards/impl/enchantments/resistance.js +12 -0
- package/dist/cards/impl/enchantments/resistance.js.map +1 -0
- package/dist/cards/impl/enchantments/toreths-blessing.d.ts +2 -0
- package/dist/cards/impl/enchantments/toreths-blessing.js +13 -0
- package/dist/cards/impl/enchantments/toreths-blessing.js.map +1 -0
- package/dist/cards/impl/enchantments/transcendence.d.ts +2 -0
- package/dist/cards/impl/enchantments/transcendence.js +12 -0
- package/dist/cards/impl/enchantments/transcendence.js.map +1 -0
- package/dist/cards/impl/hero-power/aim-high.js.map +1 -1
- package/dist/cards/impl/hero-power/aim-left.js.map +1 -1
- package/dist/cards/impl/hero-power/aim-low.js.map +1 -1
- package/dist/cards/impl/hero-power/aim-right.js.map +1 -1
- package/dist/cards/impl/hero-power/earth-invocation.js.map +1 -1
- package/dist/cards/impl/hero-power/embrace-your-rage.js.map +1 -1
- package/dist/cards/impl/hero-power/fire-invocation.js.map +1 -1
- package/dist/cards/impl/hero-power/reborn-rites.js.map +1 -1
- package/dist/cards/impl/hero-power/water-invocation.js.map +1 -1
- package/dist/cards/impl/minion/all-seeing-elder.js.map +1 -1
- package/dist/cards/impl/minion/alleycat.js.map +1 -1
- package/dist/cards/impl/minion/amber-guardian.js.map +1 -1
- package/dist/cards/impl/minion/archimonde.js.map +1 -1
- package/dist/cards/impl/minion/arid-atrocity.js.map +1 -1
- package/dist/cards/impl/minion/ashen-corruptor.js.map +1 -1
- package/dist/cards/impl/minion/assistant-guard.js.map +1 -1
- package/dist/cards/impl/minion/audacious-anchor.js.map +1 -1
- package/dist/cards/impl/minion/auto-assembler.js.map +1 -1
- package/dist/cards/impl/minion/avalanche-caller.js.map +1 -1
- package/dist/cards/impl/minion/baneling.js.map +1 -1
- package/dist/cards/impl/minion/barrier-banshee.d.ts +2 -0
- package/dist/cards/impl/minion/barrier-banshee.js +15 -0
- package/dist/cards/impl/minion/barrier-banshee.js.map +1 -0
- package/dist/cards/impl/minion/bigwig-bandit.js.map +1 -1
- package/dist/cards/impl/minion/bird-buddy.js.map +1 -1
- package/dist/cards/impl/minion/blazing-skyfin.js.map +1 -1
- package/dist/cards/impl/minion/blue-whelp.js.map +1 -1
- package/dist/cards/impl/minion/boar-gamer.js.map +1 -1
- package/dist/cards/impl/minion/boom-in-a-box.d.ts +2 -0
- package/dist/cards/impl/minion/boom-in-a-box.js +19 -0
- package/dist/cards/impl/minion/boom-in-a-box.js.map +1 -0
- package/dist/cards/impl/minion/bramble-tunneler.d.ts +2 -0
- package/dist/cards/impl/minion/bramble-tunneler.js +14 -0
- package/dist/cards/impl/minion/bramble-tunneler.js.map +1 -0
- package/dist/cards/impl/minion/briarback-bookie.js.map +1 -1
- package/dist/cards/impl/minion/bronze-steward.js.map +1 -1
- package/dist/cards/impl/minion/bronze-timewalker.d.ts +2 -0
- package/dist/cards/impl/minion/bronze-timewalker.js +22 -0
- package/dist/cards/impl/minion/bronze-timewalker.js.map +1 -0
- package/dist/cards/impl/minion/bubble-gunner.js.map +1 -1
- package/dist/cards/impl/minion/buzzing-vermin.js.map +1 -1
- package/dist/cards/impl/minion/cadaver-caretaker.js.map +1 -1
- package/dist/cards/impl/minion/cage-gnawer.d.ts +2 -0
- package/dist/cards/impl/minion/cage-gnawer.js +20 -0
- package/dist/cards/impl/minion/cage-gnawer.js.map +1 -0
- package/dist/cards/impl/minion/captain-bonerender.js.map +1 -1
- package/dist/cards/impl/minion/carapace-raiser.js.map +1 -1
- package/dist/cards/impl/minion/carbonic-copy.js.map +1 -1
- package/dist/cards/impl/minion/coilskar-sapper.js.map +1 -1
- package/dist/cards/impl/minion/coldlight-diver.js.map +1 -1
- package/dist/cards/impl/minion/crimson-vindicator.d.ts +2 -0
- package/dist/cards/impl/minion/crimson-vindicator.js +24 -0
- package/dist/cards/impl/minion/crimson-vindicator.js.map +1 -0
- package/dist/cards/impl/minion/crystal-infuser-enchantment.js.map +1 -1
- package/dist/cards/impl/minion/cupcake-peddler.js.map +1 -1
- package/dist/cards/impl/minion/deadstomper.js.map +1 -1
- package/dist/cards/impl/minion/deathly-striker.js.map +1 -1
- package/dist/cards/impl/minion/deathstrider.d.ts +2 -0
- package/dist/cards/impl/minion/deathstrider.js +27 -0
- package/dist/cards/impl/minion/deathstrider.js.map +1 -0
- package/dist/cards/impl/minion/deflecto-bot.js.map +1 -1
- package/dist/cards/impl/minion/devout-hellcaller.js.map +1 -1
- package/dist/cards/impl/minion/drakkari-embalmer.js.map +1 -1
- package/dist/cards/impl/minion/elder-taggawag.js.map +1 -1
- package/dist/cards/impl/minion/electric-synthesizer.js.map +1 -1
- package/dist/cards/impl/minion/elite-navigator.js.map +1 -1
- package/dist/cards/impl/minion/fairy-gillmother.js.map +1 -1
- package/dist/cards/impl/minion/firescale-hoarder.js.map +1 -1
- package/dist/cards/impl/minion/fireworks-fanatic.js.map +1 -1
- package/dist/cards/impl/minion/fishbait.d.ts +2 -0
- package/dist/cards/impl/minion/fishbait.js +21 -0
- package/dist/cards/impl/minion/fishbait.js.map +1 -0
- package/dist/cards/impl/minion/fleeing-fugitive.d.ts +2 -0
- package/dist/cards/impl/minion/fleeing-fugitive.js +15 -0
- package/dist/cards/impl/minion/fleeing-fugitive.js.map +1 -0
- package/dist/cards/impl/minion/flittering-bat.d.ts +2 -0
- package/dist/cards/impl/minion/flittering-bat.js +25 -0
- package/dist/cards/impl/minion/flittering-bat.js.map +1 -0
- package/dist/cards/impl/minion/flotsam-flinger.js.map +1 -1
- package/dist/cards/impl/minion/fountain-chiller.js.map +1 -1
- package/dist/cards/impl/minion/friendly-geist.js.map +1 -1
- package/dist/cards/impl/minion/gatekeeper-amalgam.d.ts +2 -0
- package/dist/cards/impl/minion/gatekeeper-amalgam.js +22 -0
- package/dist/cards/impl/minion/gatekeeper-amalgam.js.map +1 -0
- package/dist/cards/impl/minion/gem-rat.js.map +1 -1
- package/dist/cards/impl/minion/general-drakkisath.js.map +1 -1
- package/dist/cards/impl/minion/gentle-djinni.js.map +1 -1
- package/dist/cards/impl/minion/gentle-stag.js.map +1 -1
- package/dist/cards/impl/minion/glambot.d.ts +2 -0
- package/dist/cards/impl/minion/glambot.js +30 -0
- package/dist/cards/impl/minion/glambot.js.map +1 -0
- package/dist/cards/impl/minion/gormling-gourmet.js.map +1 -1
- package/dist/cards/impl/minion/greedy-snaketongue.js.map +1 -1
- package/dist/cards/impl/minion/grimscale-elegist.js.map +1 -1
- package/dist/cards/impl/minion/gritty-headhunter.js.map +1 -1
- package/dist/cards/impl/minion/hackerfin.js.map +1 -1
- package/dist/cards/impl/minion/handless-forsaken.js.map +1 -1
- package/dist/cards/impl/minion/harmless-bonehead.js.map +1 -1
- package/dist/cards/impl/minion/hawkstrider-herald.js.map +1 -1
- package/dist/cards/impl/minion/headhunter-gryphon.d.ts +2 -0
- package/dist/cards/impl/minion/headhunter-gryphon.js +19 -0
- package/dist/cards/impl/minion/headhunter-gryphon.js.map +1 -0
- package/dist/cards/impl/minion/hoarding-hyena.d.ts +2 -0
- package/dist/cards/impl/minion/hoarding-hyena.js +23 -0
- package/dist/cards/impl/minion/hoarding-hyena.js.map +1 -0
- package/dist/cards/impl/minion/holo-rover.js.map +1 -1
- package/dist/cards/impl/minion/humongozz.js.map +1 -1
- package/dist/cards/impl/minion/hungry-snapjaw.js.map +1 -1
- package/dist/cards/impl/minion/hunter-of-gatherers.js.map +1 -1
- package/dist/cards/impl/minion/ignition-specialist.js.map +1 -1
- package/dist/cards/impl/minion/immortal.js.map +1 -1
- package/dist/cards/impl/minion/imp-lusionist.d.ts +2 -0
- package/dist/cards/impl/minion/imp-lusionist.js +14 -0
- package/dist/cards/impl/minion/imp-lusionist.js.map +1 -0
- package/dist/cards/impl/minion/implant-subject.js.map +1 -1
- package/dist/cards/impl/minion/imposing-percussionist.js.map +1 -1
- package/dist/cards/impl/minion/inspiring-underdog.js.map +1 -1
- package/dist/cards/impl/minion/interrogator-whitemane.js.map +1 -1
- package/dist/cards/impl/minion/jailbird-juggernaut.d.ts +2 -0
- package/dist/cards/impl/minion/jailbird-juggernaut.js +52 -0
- package/dist/cards/impl/minion/jailbird-juggernaut.js.map +1 -0
- package/dist/cards/impl/minion/kangors-apprentice.js.map +1 -1
- package/dist/cards/impl/minion/leeroy-the-reckless.js.map +1 -1
- package/dist/cards/impl/minion/lightfang-enforcer.js.map +1 -1
- package/dist/cards/impl/minion/lightfeather-screecher.js.map +1 -1
- package/dist/cards/impl/minion/living-azerite.js.map +1 -1
- package/dist/cards/impl/minion/lokholar-frostforger.js.map +1 -1
- package/dist/cards/impl/minion/lovesick-balladist.js.map +1 -1
- package/dist/cards/impl/minion/low-flier.js.map +1 -1
- package/dist/cards/impl/minion/lurker.js.map +1 -1
- package/dist/cards/impl/minion/manasaber.js.map +1 -1
- package/dist/cards/impl/minion/mantid-queen.js.map +1 -1
- package/dist/cards/impl/minion/marquee-ticker.js.map +1 -1
- package/dist/cards/impl/minion/maw-caster.js.map +1 -1
- package/dist/cards/impl/minion/mecha-jaraxxus.js.map +1 -1
- package/dist/cards/impl/minion/mechanized-gift-horse.js.map +1 -1
- package/dist/cards/impl/minion/mechorse.js.map +1 -1
- package/dist/cards/impl/minion/menagerie-jug.js.map +1 -1
- package/dist/cards/impl/minion/metallic-hunter.js.map +1 -1
- package/dist/cards/impl/minion/misfit-dragonling.js.map +1 -1
- package/dist/cards/impl/minion/moat-custodian.d.ts +2 -0
- package/dist/cards/impl/minion/moat-custodian.js +15 -0
- package/dist/cards/impl/minion/moat-custodian.js.map +1 -0
- package/dist/cards/impl/minion/motley-phalanx.d.ts +2 -0
- package/dist/cards/impl/minion/motley-phalanx.js +13 -0
- package/dist/cards/impl/minion/motley-phalanx.js.map +1 -0
- package/dist/cards/impl/minion/murkbrine-expeditioner.js.map +1 -1
- package/dist/cards/impl/minion/murky.js.map +1 -1
- package/dist/cards/impl/minion/mutated-lasher.js.map +1 -1
- package/dist/cards/impl/minion/mythrax.js.map +1 -1
- package/dist/cards/impl/minion/neon-agent.js.map +1 -1
- package/dist/cards/impl/minion/nest-swarmer.js.map +1 -1
- package/dist/cards/impl/minion/nether-drake.js.map +1 -1
- package/dist/cards/impl/minion/nightmare-par-tea-guest.js.map +1 -1
- package/dist/cards/impl/minion/nimble-hatchling.js.map +1 -1
- package/dist/cards/impl/minion/operatic-belcher.js.map +1 -1
- package/dist/cards/impl/minion/outback-smolderer.js.map +1 -1
- package/dist/cards/impl/minion/parched-wanderer.js.map +1 -1
- package/dist/cards/impl/minion/primalfin-lookout.js.map +1 -1
- package/dist/cards/impl/minion/rapscallion-recruiter.js.map +1 -1
- package/dist/cards/impl/minion/ravaging-scorpid.d.ts +2 -0
- package/dist/cards/impl/minion/ravaging-scorpid.js +26 -0
- package/dist/cards/impl/minion/ravaging-scorpid.js.map +1 -0
- package/dist/cards/impl/minion/razorgore-the-untamed.js.map +1 -1
- package/dist/cards/impl/minion/rescue-bot.d.ts +2 -0
- package/dist/cards/impl/minion/rescue-bot.js +14 -0
- package/dist/cards/impl/minion/rescue-bot.js.map +1 -0
- package/dist/cards/impl/minion/roach.js.map +1 -1
- package/dist/cards/impl/minion/roadboar.js.map +1 -1
- package/dist/cards/impl/minion/rodeo-performer.js.map +1 -1
- package/dist/cards/impl/minion/ruins-renovator.js.map +1 -1
- package/dist/cards/impl/minion/runic-arcanist.d.ts +2 -0
- package/dist/cards/impl/minion/runic-arcanist.js +24 -0
- package/dist/cards/impl/minion/runic-arcanist.js.map +1 -0
- package/dist/cards/impl/minion/rylak-metalhead.js.map +1 -1
- package/dist/cards/impl/minion/salty-hog.js.map +1 -1
- package/dist/cards/impl/minion/sand-swirler.js.map +1 -1
- package/dist/cards/impl/minion/sandy.js.map +1 -1
- package/dist/cards/impl/minion/scourge-harvester.js.map +1 -1
- package/dist/cards/impl/minion/selfless-hero.js.map +1 -1
- package/dist/cards/impl/minion/shadowdancer.js.map +1 -1
- package/dist/cards/impl/minion/shamanic-tidecaller.d.ts +2 -0
- package/dist/cards/impl/minion/shamanic-tidecaller.js +25 -0
- package/dist/cards/impl/minion/shamanic-tidecaller.js.map +1 -0
- package/dist/cards/impl/minion/sharp-eyed-sabretooth.js.map +1 -1
- package/dist/cards/impl/minion/sharptooth-snapper.js.map +1 -1
- package/dist/cards/impl/minion/ship-master-eudora.js.map +1 -1
- package/dist/cards/impl/minion/shipwrecked-rascal.js.map +1 -1
- package/dist/cards/impl/minion/silver-handed-recruit.js.map +1 -1
- package/dist/cards/impl/minion/slumber-sorcerer.js.map +1 -1
- package/dist/cards/impl/minion/smolderwing.js.map +1 -1
- package/dist/cards/impl/minion/snazzy-phantom.d.ts +2 -0
- package/dist/cards/impl/minion/snazzy-phantom.js +23 -0
- package/dist/cards/impl/minion/snazzy-phantom.js.map +1 -0
- package/dist/cards/impl/minion/soul-rewinder.js.map +1 -1
- package/dist/cards/impl/minion/spacefarer.js.map +1 -1
- package/dist/cards/impl/minion/spirited-whimsydrake.js.map +1 -1
- package/dist/cards/impl/minion/springy-spriggan.js.map +1 -1
- package/dist/cards/impl/minion/stitched-salvager.js.map +1 -1
- package/dist/cards/impl/minion/stray-satyr.js.map +1 -1
- package/dist/cards/impl/minion/sun-screener.js.map +1 -1
- package/dist/cards/impl/minion/surfing-slyvar.js.map +1 -1
- package/dist/cards/impl/minion/tasty-lobster.d.ts +2 -0
- package/dist/cards/impl/minion/tasty-lobster.js +21 -0
- package/dist/cards/impl/minion/tasty-lobster.js.map +1 -0
- package/dist/cards/impl/minion/thorncaller.js.map +1 -1
- package/dist/cards/impl/minion/thousandth-paper-drake.js.map +1 -1
- package/dist/cards/impl/minion/thundering-abomination.js.map +1 -1
- package/dist/cards/impl/minion/timewarped-warghoul.js.map +1 -1
- package/dist/cards/impl/minion/torrential-ruiner.d.ts +2 -0
- package/dist/cards/impl/minion/torrential-ruiner.js +20 -0
- package/dist/cards/impl/minion/torrential-ruiner.js.map +1 -0
- package/dist/cards/impl/minion/tunnel-blaster.js.map +1 -1
- package/dist/cards/impl/minion/twilight-primordium.js.map +1 -1
- package/dist/cards/impl/minion/twilight-tidehunter.d.ts +2 -0
- package/dist/cards/impl/minion/twilight-tidehunter.js +21 -0
- package/dist/cards/impl/minion/twilight-tidehunter.js.map +1 -0
- package/dist/cards/impl/minion/ultralisk.js.map +1 -1
- package/dist/cards/impl/minion/valiant-tiger.js.map +1 -1
- package/dist/cards/impl/minion/vigilant-bristlemane.d.ts +2 -0
- package/dist/cards/impl/minion/vigilant-bristlemane.js +19 -0
- package/dist/cards/impl/minion/vigilant-bristlemane.js.map +1 -0
- package/dist/cards/impl/minion/void-earl.js.map +1 -1
- package/dist/cards/impl/minion/vorkai-guardian.js.map +1 -1
- package/dist/cards/impl/minion/wandering-wight.js.map +1 -1
- package/dist/cards/impl/minion/whelp-smuggler.js.map +1 -1
- package/dist/cards/impl/minion/whirring-protector-enchantment.js.map +1 -1
- package/dist/cards/impl/minion/wildfire-elemental.js.map +1 -1
- package/dist/cards/impl/minion/wisp-in-the-shell.js.map +1 -1
- package/dist/cards/impl/minion/wolf-pup.d.ts +2 -0
- package/dist/cards/impl/minion/wolf-pup.js +18 -0
- package/dist/cards/impl/minion/wolf-pup.js.map +1 -0
- package/dist/cards/impl/minion/yorik-smite.js.map +1 -1
- package/dist/cards/impl/minion/yrel.js.map +1 -1
- package/dist/cards/impl/minion/yulon-fortune-granter.js.map +1 -1
- package/dist/cards/impl/quest-reward/righteous-charge.js.map +1 -1
- package/dist/cards/impl/spellcraft/floating-candle-set.d.ts +2 -0
- package/dist/cards/impl/spellcraft/floating-candle-set.js +21 -0
- package/dist/cards/impl/spellcraft/floating-candle-set.js.map +1 -0
- package/dist/cards/impl/spellcraft/undersea-mount.js +1 -1
- package/dist/cards/impl/spellcraft/undersea-mount.js.map +1 -1
- package/dist/cards/impl/trinket/all-purpose-kibble.js.map +1 -1
- package/dist/cards/impl/trinket/arm-of-the-empire.js.map +1 -1
- package/dist/cards/impl/trinket/assembler-portrait.d.ts +2 -0
- package/dist/cards/impl/trinket/assembler-portrait.js +17 -0
- package/dist/cards/impl/trinket/assembler-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/bassgill-portrait.js.map +1 -1
- package/dist/cards/impl/trinket/battle-horn.js.map +1 -1
- package/dist/cards/impl/trinket/bird-feeder.js.map +1 -1
- package/dist/cards/impl/trinket/crocheted-sungill.js.map +1 -1
- package/dist/cards/impl/trinket/deathwhisper-sticker.d.ts +2 -0
- package/dist/cards/impl/trinket/deathwhisper-sticker.js +12 -0
- package/dist/cards/impl/trinket/deathwhisper-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/dragon-skull.d.ts +2 -0
- package/dist/cards/impl/trinket/dragon-skull.js +15 -0
- package/dist/cards/impl/trinket/dragon-skull.js.map +1 -0
- package/dist/cards/impl/trinket/dragons-eye.d.ts +4 -0
- package/dist/cards/impl/trinket/dragons-eye.js +14 -0
- package/dist/cards/impl/trinket/dragons-eye.js.map +1 -0
- package/dist/cards/impl/trinket/eclectic-shrine.js.map +1 -1
- package/dist/cards/impl/trinket/eternal-portrait.d.ts +2 -0
- package/dist/cards/impl/trinket/eternal-portrait.js +26 -1
- package/dist/cards/impl/trinket/eternal-portrait.js.map +1 -1
- package/dist/cards/impl/trinket/faerie-dragon-scale.js.map +1 -1
- package/dist/cards/impl/trinket/fishy-sticker.js.map +1 -1
- package/dist/cards/impl/trinket/flighty-portrait.d.ts +2 -0
- package/dist/cards/impl/trinket/flighty-portrait.js +21 -0
- package/dist/cards/impl/trinket/flighty-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/funeral-wreath.d.ts +2 -0
- package/dist/cards/impl/trinket/funeral-wreath.js +16 -0
- package/dist/cards/impl/trinket/funeral-wreath.js.map +1 -0
- package/dist/cards/impl/trinket/herald-sticker.js.map +1 -1
- package/dist/cards/impl/trinket/karazhan-chess-set.js.map +1 -1
- package/dist/cards/impl/trinket/lightfeather-sticker.d.ts +2 -0
- package/dist/cards/impl/trinket/lightfeather-sticker.js +18 -0
- package/dist/cards/impl/trinket/lightfeather-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/lionfish-portrait.d.ts +2 -0
- package/dist/cards/impl/trinket/lionfish-portrait.js +18 -0
- package/dist/cards/impl/trinket/lionfish-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/lovely-locket.d.ts +2 -0
- package/dist/cards/impl/trinket/lovely-locket.js +24 -0
- package/dist/cards/impl/trinket/lovely-locket.js.map +1 -0
- package/dist/cards/impl/trinket/myrmidon-sticker.d.ts +2 -0
- package/dist/cards/impl/trinket/myrmidon-sticker.js +21 -0
- package/dist/cards/impl/trinket/myrmidon-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/rivendare-portrait.js.map +1 -1
- package/dist/cards/impl/trinket/sthara-sticker.js.map +1 -1
- package/dist/cards/impl/trinket/valorous-medaillion.js.map +1 -1
- package/dist/cards/impl/trinket/vashjir-anemone.js.map +1 -1
- package/dist/cards/impl/trinket/yulon-sticker.js.map +1 -1
- package/dist/debug-state.js.map +1 -1
- package/dist/keywords/divine-shield.js +4 -0
- package/dist/keywords/divine-shield.js.map +1 -1
- package/dist/keywords/venomous.js.map +1 -1
- package/dist/services/card-ids.d.ts +694 -27
- package/dist/services/card-ids.js.map +1 -1
- package/dist/simulation/add-minion-to-board.js +11 -5
- package/dist/simulation/add-minion-to-board.js.map +1 -1
- package/dist/simulation/auras.js +48 -46
- package/dist/simulation/auras.js.map +1 -1
- package/dist/simulation/battlecries.d.ts +1 -1
- package/dist/simulation/battlecries.js +18 -3
- package/dist/simulation/battlecries.js.map +1 -1
- package/dist/simulation/deathrattle-on-trigger.js.map +1 -1
- package/dist/simulation/deathrattle-spawns.js +0 -5
- package/dist/simulation/deathrattle-spawns.js.map +1 -1
- package/dist/simulation/discover.js.map +1 -1
- package/dist/simulation/frenzy.js.map +1 -1
- package/dist/simulation/quest.js.map +1 -1
- package/dist/simulation/reborn.js +2 -0
- package/dist/simulation/reborn.js.map +1 -1
- package/dist/simulation/start-of-combat/soc-minion.js +4 -1
- package/dist/simulation/start-of-combat/soc-minion.js.map +1 -1
- package/dist/simulation/utils/golden.js +6 -2
- package/dist/simulation/utils/golden.js.map +1 -1
- package/dist/utils.js +4 -1
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deathly-striker.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/deathly-striker.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,qEAAmE;AAEnE,+EAAiF;AAGpE,QAAA,cAAc,GAAsC;IAChE,OAAO,EAAE,0BAAoE;IAC7E,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;SAClG;QACD,MAAM,UAAU,GAAG,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACnF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;YAC9B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;YACnC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACtG;IACF,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,OAAO,GAAG,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CACxD,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAC,CAAC,CAAC,MAAM,IAAI,CAAA,MAAA,CAAC,CAAC,oBAAoB,0CAAE,QAAQ,MAAK,MAAM,CAAC,QAAQ,CAAA,EAAA,CACxE,CAAC;QACF,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAA,4CAAuB,EAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YAClE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;SACrB;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { AvengeCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const DeathlyStriker: AvengeCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.DeathlyStriker_BG31_835, CardIds.DeathlyStriker_BG31_835_G],\r\n\tbaseAvengeValue: (cardId: string) => 4,\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.DeathlyStriker_BG31_835 ? 1 : 2;\r\n\t\tconst cards: string[] = [];\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tcards.push(input.gameState.cardsData.getRandomMinionForTribe(Race.UNDEAD, input.hero.tavernTier));\r\n\t\t}\r\n\t\tconst addedCards = addCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t\tfor (const card of addedCards) {\r\n\t\t\tcard.locked = false;\r\n\t\t\tcard.lastAffectedByEntity = minion;\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(minion, card, input.board, input.hero, input.otherHero);\r\n\t\t}\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst targets = input.boardWithDeadEntityHero.hand.filter(\r\n\t\t\t(e) => !e.locked && e.lastAffectedByEntity?.entityId === minion.entityId,\r\n\t\t);\r\n\t\tconst spawned: BoardEntity[] = [];\r\n\t\tfor (const target of targets) {\r\n\t\t\tspawned.push(...simplifiedSpawnEntities(target.cardId, 1, input));\r\n\t\t\ttarget.locked = true;\r\n\t\t}\r\n\t\treturn spawned;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"deathly-striker.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/deathly-striker.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,qEAAmE;AAEnE,+EAAiF;AAGpE,QAAA,cAAc,GAAsC;IAChE,OAAO,EAAE,0BAAoE;IAC7E,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;SAClG;QACD,MAAM,UAAU,GAAG,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACnF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;YAC9B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;YACnC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACtG;IACF,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,OAAO,GAAG,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CACxD,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAC,CAAC,CAAC,MAAM,IAAI,CAAA,MAAA,CAAC,CAAC,oBAAoB,0CAAE,QAAQ,MAAK,MAAM,CAAC,QAAQ,CAAA,EAAA,CACxE,CAAC;QACF,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAA,4CAAuB,EAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YAClE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;SACrB;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { AvengeCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const DeathlyStriker: AvengeCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.DeathlyStriker_BG31_835, CardIds.DeathlyStriker_BG31_835_G],\r\n\tbaseAvengeValue: (cardId: string) => 4,\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.DeathlyStriker_BG31_835 ? 1 : 2;\r\n\t\tconst cards: string[] = [];\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tcards.push(input.gameState.cardsData.getRandomMinionForTribe(Race.UNDEAD, input.hero.tavernTier));\r\n\t\t}\r\n\t\tconst addedCards = addCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t\tfor (const card of addedCards) {\r\n\t\t\tcard.locked = false;\r\n\t\t\tcard.lastAffectedByEntity = minion;\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(minion, card, input.board, input.hero, input.otherHero);\r\n\t\t}\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst targets = input.boardWithDeadEntityHero.hand.filter(\r\n\t\t\t(e) => !e.locked && e.lastAffectedByEntity?.entityId === minion.entityId,\r\n\t\t);\r\n\t\tconst spawned: BoardEntity[] = [];\r\n\t\tfor (const target of targets) {\r\n\t\t\tspawned.push(...simplifiedSpawnEntities(target.cardId, 1, input));\r\n\t\t\ttarget.locked = true;\r\n\t\t}\r\n\t\treturn spawned;\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Deathstrider = void 0;
|
|
4
|
+
const reference_data_1 = require("@firestone-hs/reference-data");
|
|
5
|
+
const deathrattle_orchestration_1 = require("../../../simulation/deathrattle-orchestration");
|
|
6
|
+
const deathrattle_utils_1 = require("../../../simulation/deathrattle-utils");
|
|
7
|
+
const utils_1 = require("../../../utils");
|
|
8
|
+
exports.Deathstrider = {
|
|
9
|
+
cardIds: ["BG36_208", "BG36_208_G"],
|
|
10
|
+
onWheneverAnotherMinionAttacks: (minion, input) => {
|
|
11
|
+
if (!(0, utils_1.hasEntityMechanic)(input.attacker, reference_data_1.GameTag.BACON_RALLY, input.gameState.allCards)) {
|
|
12
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
13
|
+
}
|
|
14
|
+
const loops = minion.cardId === "BG36_208_G" ? 2 : 1;
|
|
15
|
+
const leftMostDeathrattle = (0, deathrattle_utils_1.getValidDeathrattles)(input.attackingBoard, input.attackingHero, input.gameState)[0];
|
|
16
|
+
for (let i = 0; i < loops; i++) {
|
|
17
|
+
if (!leftMostDeathrattle) {
|
|
18
|
+
break;
|
|
19
|
+
}
|
|
20
|
+
input.gameState.spectator.registerPowerTarget(minion, leftMostDeathrattle, input.attackingBoard, input.attackingHero, input.defendingHero);
|
|
21
|
+
const indexFromRight = input.attackingBoard.length - (input.attackingBoard.indexOf(leftMostDeathrattle) + 1);
|
|
22
|
+
(0, deathrattle_orchestration_1.processDeathrattleForMinion)(leftMostDeathrattle, indexFromRight, [leftMostDeathrattle], leftMostDeathrattle.friendly ? input.gameState.gameState.player : input.gameState.gameState.opponent, leftMostDeathrattle.friendly ? input.gameState.gameState.opponent : input.gameState.gameState.player, input.gameState, false);
|
|
23
|
+
}
|
|
24
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=deathstrider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deathstrider.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/deathstrider.ts"],"names":[],"mappings":";;;AAOA,iEAAuD;AAEvD,6FAA4F;AAC5F,6EAA6E;AAE7E,0CAAmD;AAItC,QAAA,YAAY,GAAuC;IAC/D,OAAO,EAAE,0BAAgE;IACzE,8BAA8B,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QAC7E,IAAI,CAAC,IAAA,yBAAiB,EAAC,KAAK,CAAC,QAAQ,EAAE,wBAAO,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;YACtF,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;SACtD;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,iBAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,mBAAmB,GAAG,IAAA,wCAAoB,EAC/C,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC,CAAC,CAAC,CAAC;QACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/B,IAAI,CAAC,mBAAmB,EAAE;gBACzB,MAAM;aACN;YACD,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,mBAAmB,EACnB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,aAAa,CACnB,CAAC;YACF,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7G,IAAA,uDAA2B,EAC1B,mBAAmB,EACnB,cAAc,EACd,CAAC,mBAAmB,CAAC,EACrB,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,EACpG,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,EACpG,KAAK,CAAC,SAAS,EACf,KAAK,CACL,CAAC;SACF;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["/**\r\n * Deathstrider (Tier 6, 10/11)\r\n * After a friendly Rally minion attacks, trigger your left-most Deathrattle.\r\n *\r\n * Golden Deathstrider (Tier 6, 20/22)\r\n * After a friendly Rally minion attacks, trigger your left-most Deathrattle twice.\r\n */\r\nimport { GameTag } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { processDeathrattleForMinion } from '../../../simulation/deathrattle-orchestration';\r\nimport { getValidDeathrattles } from '../../../simulation/deathrattle-utils';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { hasEntityMechanic } from '../../../utils';\r\nimport { OnWheneverAnotherMinionAttacksCard } from '../../card.interface';\r\nimport { CardIds } from '../../../services/card-ids';\r\n\r\nexport const Deathstrider: OnWheneverAnotherMinionAttacksCard = {\r\n\tcardIds: [CardIds.Deathstrider_BG36_208, CardIds.Deathstrider_BG36_208_G],\r\n\tonWheneverAnotherMinionAttacks: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tif (!hasEntityMechanic(input.attacker, GameTag.BACON_RALLY, input.gameState.allCards)) {\r\n\t\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t\t}\r\n\r\n\t\tconst loops = minion.cardId === CardIds.Deathstrider_BG36_208_G ? 2 : 1;\r\n\t\tconst leftMostDeathrattle = getValidDeathrattles(\r\n\t\t\tinput.attackingBoard,\r\n\t\t\tinput.attackingHero,\r\n\t\t\tinput.gameState,\r\n\t\t)[0];\r\n\t\tfor (let i = 0; i < loops; i++) {\r\n\t\t\tif (!leftMostDeathrattle) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\tminion,\r\n\t\t\t\tleftMostDeathrattle,\r\n\t\t\t\tinput.attackingBoard,\r\n\t\t\t\tinput.attackingHero,\r\n\t\t\t\tinput.defendingHero,\r\n\t\t\t);\r\n\t\t\tconst indexFromRight = input.attackingBoard.length - (input.attackingBoard.indexOf(leftMostDeathrattle) + 1);\r\n\t\t\tprocessDeathrattleForMinion(\r\n\t\t\t\tleftMostDeathrattle,\r\n\t\t\t\tindexFromRight,\r\n\t\t\t\t[leftMostDeathrattle],\r\n\t\t\t\tleftMostDeathrattle.friendly ? input.gameState.gameState.player : input.gameState.gameState.opponent,\r\n\t\t\t\tleftMostDeathrattle.friendly ? input.gameState.gameState.opponent : input.gameState.gameState.player,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t\tfalse,\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deflecto-bot.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/deflecto-bot.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,mEAAqE;AAErE,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,WAAW,GAAuB;IAC9C,OAAO,EAAE,8BAAkE;IAC3E,cAAc,EAAE,CAAC,MAAmB,EAAE,KAAwB,EAAE,EAAE;QACjE,IACC,IAAA,uBAAe,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACzG;YACD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,sBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjF,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;gBACzB,IAAA,kCAAkB,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aAC5F;YACD,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACrF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { updateDivineShield } from '../../../keywords/divine-shield';\r\nimport { OnOtherSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnOtherSpawnedCard } from '../../card.interface';\r\n\r\nexport const DeflectoBot: OnOtherSpawnedCard = {\r\n\tcardIds: [CardIds.DeflectOBot_BGS_071, CardIds.DeflectOBot_TB_BaconUps_123],\r\n\tonOtherSpawned: (minion: BoardEntity, input: OnOtherSpawnInput) => {\r\n\t\tif (\r\n\t\t\thasCorrectTribe(input.spawned, input.hero, Race.MECH, input.gameState.anomalies, input.gameState.allCards)\r\n\t\t) {\r\n\t\t\tconst statsBonus = minion.cardId === CardIds.DeflectOBot_TB_BaconUps_123 ? 4 : 2;\r\n\t\t\tif (!minion.divineShield) {\r\n\t\t\t\tupdateDivineShield(minion, input.board, input.hero, input.otherHero, true, input.gameState);\r\n\t\t\t}\r\n\t\t\tmodifyStats(minion, minion, statsBonus, 0, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"deflecto-bot.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/deflecto-bot.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,mEAAqE;AAErE,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,WAAW,GAAuB;IAC9C,OAAO,EAAE,8BAAkE;IAC3E,cAAc,EAAE,CAAC,MAAmB,EAAE,KAAwB,EAAE,EAAE;QACjE,IACC,IAAA,uBAAe,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACzG;YACD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,sBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjF,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;gBACzB,IAAA,kCAAkB,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aAC5F;YACD,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACrF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { updateDivineShield } from '../../../keywords/divine-shield';\r\nimport { OnOtherSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnOtherSpawnedCard } from '../../card.interface';\r\n\r\nexport const DeflectoBot: OnOtherSpawnedCard = {\r\n\tcardIds: [CardIds.DeflectOBot_BGS_071, CardIds.DeflectOBot_TB_BaconUps_123],\r\n\tonOtherSpawned: (minion: BoardEntity, input: OnOtherSpawnInput) => {\r\n\t\tif (\r\n\t\t\thasCorrectTribe(input.spawned, input.hero, Race.MECH, input.gameState.anomalies, input.gameState.allCards)\r\n\t\t) {\r\n\t\t\tconst statsBonus = minion.cardId === CardIds.DeflectOBot_TB_BaconUps_123 ? 4 : 2;\r\n\t\t\tif (!minion.divineShield) {\r\n\t\t\t\tupdateDivineShield(minion, input.board, input.hero, input.otherHero, true, input.gameState);\r\n\t\t\t}\r\n\t\t\tmodifyStats(minion, minion, statsBonus, 0, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devout-hellcaller.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/devout-hellcaller.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,gBAAgB,GAAwB;IACpD,OAAO,EAAE,0BAAwE;IACjF,eAAe,EAAE,CAAC,MAAmB,EAAE,KAA2B,EAAE,EAAE;QAErE,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,YAAY,CAAC,QAAQ,IAAI,MAAM,KAAK,KAAK,CAAC,YAAY,EAAE;YACrF,OAAO;SACP;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,IACC,KAAK,CAAC,YAAY,IAAI,MAAM;YAC5B,QAAQ,IAAI,KAAK,CAAC,YAAY;YAC9B,QAAQ,IAAI,KAAK,CAAC,YAAY;YAC9B,IAAA,uBAAe,EACd,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,IAAI,EACV,qBAAI,CAAC,KAAK,EACV,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,EACA;YACD,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1F;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { AfterDealDamageInput } from '../../../simulation/damage-effects';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { AfterDealDamageCard } from '../../card.interface';\r\n\r\nexport const DevoutHellcaller: AfterDealDamageCard = {\r\n\tcardIds: [CardIds.DevoutHellcaller_BG33_155, CardIds.DevoutHellcaller_BG33_155_G],\r\n\tafterDealDamage: (minion: BoardEntity, input: AfterDealDamageInput) => {\r\n\t\t// Only other friendly minions trigger this\r\n\t\tif (minion.friendly !== input.damageDealer.friendly || minion === input.damageDealer) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst mult = minion.cardId === CardIds.DevoutHellcaller_BG33_155_G ? 2 : 1;\r\n\t\tif (\r\n\t\t\tinput.damageDealer != minion &&\r\n\t\t\t'attack' in input.damageDealer &&\r\n\t\t\t'health' in input.damageDealer &&\r\n\t\t\thasCorrectTribe(\r\n\t\t\t\tinput.damageDealer,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tRace.DEMON,\r\n\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\tinput.gameState.allCards,\r\n\t\t\t)\r\n\t\t) {\r\n\t\t\tmodifyStats(minion, minion, 1 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"devout-hellcaller.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/devout-hellcaller.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,gBAAgB,GAAwB;IACpD,OAAO,EAAE,0BAAwE;IACjF,eAAe,EAAE,CAAC,MAAmB,EAAE,KAA2B,EAAE,EAAE;QAErE,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,YAAY,CAAC,QAAQ,IAAI,MAAM,KAAK,KAAK,CAAC,YAAY,EAAE;YACrF,OAAO;SACP;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,IACC,KAAK,CAAC,YAAY,IAAI,MAAM;YAC5B,QAAQ,IAAI,KAAK,CAAC,YAAY;YAC9B,QAAQ,IAAI,KAAK,CAAC,YAAY;YAC9B,IAAA,uBAAe,EACd,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,IAAI,EACV,qBAAI,CAAC,KAAK,EACV,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,EACA;YACD,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1F;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { AfterDealDamageInput } from '../../../simulation/damage-effects';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { AfterDealDamageCard } from '../../card.interface';\r\n\r\nexport const DevoutHellcaller: AfterDealDamageCard = {\r\n\tcardIds: [CardIds.DevoutHellcaller_BG33_155, CardIds.DevoutHellcaller_BG33_155_G],\r\n\tafterDealDamage: (minion: BoardEntity, input: AfterDealDamageInput) => {\r\n\t\t// Only other friendly minions trigger this\r\n\t\tif (minion.friendly !== input.damageDealer.friendly || minion === input.damageDealer) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst mult = minion.cardId === CardIds.DevoutHellcaller_BG33_155_G ? 2 : 1;\r\n\t\tif (\r\n\t\t\tinput.damageDealer != minion &&\r\n\t\t\t'attack' in input.damageDealer &&\r\n\t\t\t'health' in input.damageDealer &&\r\n\t\t\thasCorrectTribe(\r\n\t\t\t\tinput.damageDealer,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tRace.DEMON,\r\n\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\tinput.gameState.allCards,\r\n\t\t\t)\r\n\t\t) {\r\n\t\t\tmodifyStats(minion, minion, 1 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drakkari-embalmer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/drakkari-embalmer.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,qDAAwD;AACxD,mDAAqD;AAErD,0CAAiD;AAGpC,QAAA,gBAAgB,GAAkB;IAC9C,OAAO,EAAE,kCAAgF;IACzF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAW,EAAE;QAClE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,qBAA4C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK;iBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,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,CAChG;iBACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAC;YACtC,IAAI,CAAC,CAAC,MAAM,EAAE;gBACb,IAAA,qBAAY,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aACtF;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { updateReborn } from '../../../keywords/reborn';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const DrakkariEmbalmer: BattlecryCard = {\r\n\tcardIds: [CardIds.DrakkariEmbalmer_BG26_RLK_119, CardIds.DrakkariEmbalmer_BG26_RLK_119_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput): boolean => {\r\n\t\tconst mult = minion.cardId === CardIds.DrakkariEmbalmer_BG26_RLK_119_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tconst candidates = input.board\r\n\t\t\t\t.filter((e) =>\r\n\t\t\t\t\thasCorrectTribe(e, input.hero, Race.UNDEAD, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t\t\t)\r\n\t\t\t\t.filter((e) => !e.reborn);\r\n\t\t\tconst target = pickRandom(candidates);\r\n\t\t\tif (!!target) {\r\n\t\t\t\tupdateReborn(target, true, input.board, input.hero, input.otherHero, input.gameState);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"drakkari-embalmer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/drakkari-embalmer.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,qDAAwD;AACxD,mDAAqD;AAErD,0CAAiD;AAGpC,QAAA,gBAAgB,GAAkB;IAC9C,OAAO,EAAE,kCAAgF;IACzF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAW,EAAE;QAClE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,qBAA4C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK;iBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,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,CAChG;iBACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAC;YACtC,IAAI,CAAC,CAAC,MAAM,EAAE;gBACb,IAAA,qBAAY,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aACtF;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { updateReborn } from '../../../keywords/reborn';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const DrakkariEmbalmer: BattlecryCard = {\r\n\tcardIds: [CardIds.DrakkariEmbalmer_BG26_RLK_119, CardIds.DrakkariEmbalmer_BG26_RLK_119_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput): boolean => {\r\n\t\tconst mult = minion.cardId === CardIds.DrakkariEmbalmer_BG26_RLK_119_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tconst candidates = input.board\r\n\t\t\t\t.filter((e) =>\r\n\t\t\t\t\thasCorrectTribe(e, input.hero, Race.UNDEAD, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t\t\t)\r\n\t\t\t\t.filter((e) => !e.reborn);\r\n\t\t\tconst target = pickRandom(candidates);\r\n\t\t\tif (!!target) {\r\n\t\t\t\tupdateReborn(target, true, input.board, input.hero, input.otherHero, input.gameState);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elder-taggawag.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/elder-taggawag.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AACxD,0CAA4D;AAE/C,QAAA,aAAa,GAAG;IAC5B,aAAa,EAAE,CAAC,MAAmB,EAAE,KAAe,EAAE,EAAE;QACvD,MAAM,uBAAuB,GAAG,IAAA,kCAA0B,EACzD,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CACf,CAAC;QACF,IAAI,uBAAuB,CAAC,MAAM,IAAI,CAAC,EAAE;YACxC,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3F,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3F,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,mCAAuD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChG,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,oBAAoB,GAAG,UAAU,EACjC,oBAAoB,GAAG,UAAU,EACjC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CACf,CAAC;SACF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { getMinionsOfDifferentTypes } from '../../../utils';\r\n\r\nexport const ElderTaggawag = {\r\n\tstartOfCombat: (minion: BoardEntity, input: SoCInput) => {\r\n\t\tconst minionsOfDifferentTypes = getMinionsOfDifferentTypes(\r\n\t\t\tinput.playerBoard,\r\n\t\t\tinput.playerEntity,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\tif (minionsOfDifferentTypes.length >= 4) {\r\n\t\t\tconst highestAttackOnBoard = Math.max(...input.playerBoard.map((entity) => entity.attack));\r\n\t\t\tconst highestHealthOnBoard = Math.max(...input.playerBoard.map((entity) => entity.health));\r\n\t\t\tconst multiplier = minion.cardId === CardIds.ElderTaggawag_TB_BaconShop_HERO_14_Buddy_G ? 2 : 1;\r\n\t\t\tmodifyStats(\r\n\t\t\t\tminion,\r\n\t\t\t\tminion,\r\n\t\t\t\thighestAttackOnBoard * multiplier,\r\n\t\t\t\thighestHealthOnBoard * multiplier,\r\n\t\t\t\tinput.playerBoard,\r\n\t\t\t\tinput.playerEntity,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"elder-taggawag.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/elder-taggawag.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AACxD,0CAA4D;AAE/C,QAAA,aAAa,GAAG;IAC5B,aAAa,EAAE,CAAC,MAAmB,EAAE,KAAe,EAAE,EAAE;QACvD,MAAM,uBAAuB,GAAG,IAAA,kCAA0B,EACzD,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CACf,CAAC;QACF,IAAI,uBAAuB,CAAC,MAAM,IAAI,CAAC,EAAE;YACxC,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3F,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3F,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,mCAAuD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChG,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,oBAAoB,GAAG,UAAU,EACjC,oBAAoB,GAAG,UAAU,EACjC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CACf,CAAC;SACF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { getMinionsOfDifferentTypes } from '../../../utils';\r\n\r\nexport const ElderTaggawag = {\r\n\tstartOfCombat: (minion: BoardEntity, input: SoCInput) => {\r\n\t\tconst minionsOfDifferentTypes = getMinionsOfDifferentTypes(\r\n\t\t\tinput.playerBoard,\r\n\t\t\tinput.playerEntity,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\tif (minionsOfDifferentTypes.length >= 4) {\r\n\t\t\tconst highestAttackOnBoard = Math.max(...input.playerBoard.map((entity) => entity.attack));\r\n\t\t\tconst highestHealthOnBoard = Math.max(...input.playerBoard.map((entity) => entity.health));\r\n\t\t\tconst multiplier = minion.cardId === CardIds.ElderTaggawag_TB_BaconShop_HERO_14_Buddy_G ? 2 : 1;\r\n\t\t\tmodifyStats(\r\n\t\t\t\tminion,\r\n\t\t\t\tminion,\r\n\t\t\t\thighestAttackOnBoard * multiplier,\r\n\t\t\t\thighestHealthOnBoard * multiplier,\r\n\t\t\t\tinput.playerBoard,\r\n\t\t\t\tinput.playerEntity,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electric-synthesizer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/electric-synthesizer.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAIpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,mBAAmB,GAAsC;IACrE,OAAO,EAAE,0BAA8E;IACvF,aAAa,EAAE,CAAC,MAAmB,EAAE,KAAe,EAAE,EAAE;QACvD,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW;aACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,IAAA,uBAAe,EACd,CAAC,EACD,KAAK,CAAC,YAAY,EAClB,qBAAI,CAAC,MAAM,EACX,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,CACD;aACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA2C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE;YAClC,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAChG;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IACD,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,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,CAChG;aACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA2C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE;YAClC,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAClF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { BattlecryCard, StartOfCombatCard } from '../../card.interface';\r\n\r\nexport const ElectricSynthesizer: StartOfCombatCard & BattlecryCard = {\r\n\tcardIds: [CardIds.ElectricSynthesizer_BG26_963, CardIds.ElectricSynthesizer_BG26_963_G],\r\n\tstartOfCombat: (minion: BoardEntity, input: SoCInput) => {\r\n\t\tconst otherDragons = input.playerBoard\r\n\t\t\t.filter((e) =>\r\n\t\t\t\thasCorrectTribe(\r\n\t\t\t\t\te,\r\n\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\tRace.DRAGON,\r\n\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t),\r\n\t\t\t)\r\n\t\t\t.filter((e) => e.entityId !== minion.entityId);\r\n\t\tconst buff = minion.cardId === CardIds.ElectricSynthesizer_BG26_963_G ? 2 : 1;\r\n\t\tfor (const entity of otherDragons) {\r\n\t\t\tmodifyStats(entity, minion, buff, buff, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst otherDragons = input.board\r\n\t\t\t.filter((e) =>\r\n\t\t\t\thasCorrectTribe(e, input.hero, Race.DRAGON, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t\t)\r\n\t\t\t.filter((e) => e.entityId !== minion.entityId);\r\n\t\tconst buff = minion.cardId === CardIds.ElectricSynthesizer_BG26_963_G ? 2 : 1;\r\n\t\tfor (const entity of otherDragons) {\r\n\t\t\tmodifyStats(entity, minion, buff, buff, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"electric-synthesizer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/electric-synthesizer.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAIpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,mBAAmB,GAAsC;IACrE,OAAO,EAAE,0BAA8E;IACvF,aAAa,EAAE,CAAC,MAAmB,EAAE,KAAe,EAAE,EAAE;QACvD,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW;aACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,IAAA,uBAAe,EACd,CAAC,EACD,KAAK,CAAC,YAAY,EAClB,qBAAI,CAAC,MAAM,EACX,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,CACD;aACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA2C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE;YAClC,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAChG;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IACD,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,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,CAChG;aACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA2C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE;YAClC,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAClF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { BattlecryCard, StartOfCombatCard } from '../../card.interface';\r\n\r\nexport const ElectricSynthesizer: StartOfCombatCard & BattlecryCard = {\r\n\tcardIds: [CardIds.ElectricSynthesizer_BG26_963, CardIds.ElectricSynthesizer_BG26_963_G],\r\n\tstartOfCombat: (minion: BoardEntity, input: SoCInput) => {\r\n\t\tconst otherDragons = input.playerBoard\r\n\t\t\t.filter((e) =>\r\n\t\t\t\thasCorrectTribe(\r\n\t\t\t\t\te,\r\n\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\tRace.DRAGON,\r\n\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t),\r\n\t\t\t)\r\n\t\t\t.filter((e) => e.entityId !== minion.entityId);\r\n\t\tconst buff = minion.cardId === CardIds.ElectricSynthesizer_BG26_963_G ? 2 : 1;\r\n\t\tfor (const entity of otherDragons) {\r\n\t\t\tmodifyStats(entity, minion, buff, buff, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst otherDragons = input.board\r\n\t\t\t.filter((e) =>\r\n\t\t\t\thasCorrectTribe(e, input.hero, Race.DRAGON, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t\t)\r\n\t\t\t.filter((e) => e.entityId !== minion.entityId);\r\n\t\tconst buff = minion.cardId === CardIds.ElectricSynthesizer_BG26_963_G ? 2 : 1;\r\n\t\tfor (const entity of otherDragons) {\r\n\t\t\tmodifyStats(entity, minion, buff, buff, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elite-navigator.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/elite-navigator.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,6DAAoE;AACpE,0CAA2D;AAG9C,QAAA,cAAc,GAAkB;IAC5C,OAAO,EAAE,0BAAoE;IAC7E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK;iBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,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,CAChG;iBACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;iBACxE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,gBAAQ,EAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,CAAC,MAAM,EAAE;gBACb,IAAA,yBAAgB,EACf,MAAM,EACN,MAAM,EACN,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;aACF;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { makeMinionGolden } from '../../../simulation/utils/golden';\r\nimport { hasCorrectTribe, isGolden } from '../../../utils';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const EliteNavigator: BattlecryCard = {\r\n\tcardIds: [CardIds.EliteNavigator_BG32_231, CardIds.EliteNavigator_BG32_231_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.EliteNavigator_BG32_231_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tconst candidates = input.board\r\n\t\t\t\t.filter((e) =>\r\n\t\t\t\t\thasCorrectTribe(e, input.hero, Race.PIRATE, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t\t\t)\r\n\t\t\t\t.filter((e) => input.gameState.allCards.getCard(e.cardId).techLevel >= 4)\r\n\t\t\t\t.filter((e) => !isGolden(e.cardId, input.gameState.allCards));\r\n\t\t\tconst target = candidates[0];\r\n\t\t\tif (!!target) {\r\n\t\t\t\tmakeMinionGolden(\r\n\t\t\t\t\ttarget,\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tinput.board,\r\n\t\t\t\t\tinput.hero,\r\n\t\t\t\t\tinput.otherBoard,\r\n\t\t\t\t\tinput.otherHero,\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 true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"elite-navigator.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/elite-navigator.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,6DAAoE;AACpE,0CAA2D;AAG9C,QAAA,cAAc,GAAkB;IAC5C,OAAO,EAAE,0BAAoE;IAC7E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK;iBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,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,CAChG;iBACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;iBACxE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,gBAAQ,EAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,CAAC,MAAM,EAAE;gBACb,IAAA,yBAAgB,EACf,MAAM,EACN,MAAM,EACN,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;aACF;SACD;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { makeMinionGolden } from '../../../simulation/utils/golden';\r\nimport { hasCorrectTribe, isGolden } from '../../../utils';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const EliteNavigator: BattlecryCard = {\r\n\tcardIds: [CardIds.EliteNavigator_BG32_231, CardIds.EliteNavigator_BG32_231_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.EliteNavigator_BG32_231_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tconst candidates = input.board\r\n\t\t\t\t.filter((e) =>\r\n\t\t\t\t\thasCorrectTribe(e, input.hero, Race.PIRATE, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t\t\t)\r\n\t\t\t\t.filter((e) => input.gameState.allCards.getCard(e.cardId).techLevel >= 4)\r\n\t\t\t\t.filter((e) => !isGolden(e.cardId, input.gameState.allCards));\r\n\t\t\tconst target = candidates[0];\r\n\t\t\tif (!!target) {\r\n\t\t\t\tmakeMinionGolden(\r\n\t\t\t\t\ttarget,\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tinput.board,\r\n\t\t\t\t\tinput.hero,\r\n\t\t\t\t\tinput.otherBoard,\r\n\t\t\t\t\tinput.otherHero,\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 true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fairy-gillmother.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fairy-gillmother.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,qEAAmE;AAGtD,QAAA,eAAe,GAAkB;IAC7C,OAAO,EAAE,0BAAsE;IAC/E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjB;QACD,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 '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const FairyGillmother: EndOfTurnCard = {\r\n\tcardIds: [CardIds.FairyGillmother_BG29_029, CardIds.FairyGillmother_BG29_029_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst numberOfCards = minion.cardId === CardIds.FairyGillmother_BG29_029_G ? 2 : 1;\r\n\t\tconst cards = [];\r\n\t\tfor (let i = 0; i < numberOfCards; i++) {\r\n\t\t\tconst card = input.gameState.cardsData.getRandomMinionForTribe(Race.MURLOC, input.hero.tavernTier);\r\n\t\t\tcards.push(card);\r\n\t\t}\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"fairy-gillmother.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fairy-gillmother.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,qEAAmE;AAGtD,QAAA,eAAe,GAAkB;IAC7C,OAAO,EAAE,0BAAsE;IAC/E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,uBAAuB,CAAC,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjB;QACD,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 '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const FairyGillmother: EndOfTurnCard = {\r\n\tcardIds: [CardIds.FairyGillmother_BG29_029, CardIds.FairyGillmother_BG29_029_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst numberOfCards = minion.cardId === CardIds.FairyGillmother_BG29_029_G ? 2 : 1;\r\n\t\tconst cards = [];\r\n\t\tfor (let i = 0; i < numberOfCards; i++) {\r\n\t\t\tconst card = input.gameState.cardsData.getRandomMinionForTribe(Race.MURLOC, input.hero.tavernTier);\r\n\t\t\tcards.push(card);\r\n\t\t}\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firescale-hoarder.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/firescale-hoarder.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAItD,QAAA,gBAAgB,GAAyC;IACrE,OAAO,EAAE,0BAAwE;IACjF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA4B,CAAC;QAChE,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACb,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA4B,CAAC;QAChE,IAAA,8BAAc,EAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,mBAAmB,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtG,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { BattlecryCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const FirescaleHoarder: BattlecryCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.FirescaleHoarder_BG32_820, CardIds.FirescaleHoarder_BG32_820_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.FirescaleHoarder_BG32_820_G ? 2 : 1;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.ShinyRing_BG28_168);\r\n\t\taddCardsInHand(input.hero, input.board, cardsToAdd, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.FirescaleHoarder_BG32_820_G ? 2 : 1;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.ShinyRing_BG28_168);\r\n\t\taddCardsInHand(input.boardWithDeadEntityHero, input.boardWithDeadEntity, cardsToAdd, input.gameState);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"firescale-hoarder.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/firescale-hoarder.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAItD,QAAA,gBAAgB,GAAyC;IACrE,OAAO,EAAE,0BAAwE;IACjF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA4B,CAAC;QAChE,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACb,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA4B,CAAC;QAChE,IAAA,8BAAc,EAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,mBAAmB,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtG,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { BattlecryCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const FirescaleHoarder: BattlecryCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.FirescaleHoarder_BG32_820, CardIds.FirescaleHoarder_BG32_820_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.FirescaleHoarder_BG32_820_G ? 2 : 1;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.ShinyRing_BG28_168);\r\n\t\taddCardsInHand(input.hero, input.board, cardsToAdd, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.FirescaleHoarder_BG32_820_G ? 2 : 1;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.ShinyRing_BG28_168);\r\n\t\taddCardsInHand(input.boardWithDeadEntityHero, input.boardWithDeadEntity, cardsToAdd, input.gameState);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fireworks-fanatic.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fireworks-fanatic.ts"],"names":[],"mappings":";;;AACA,iEAAwD;AAGxD,0CAAiD;AAGpC,QAAA,gBAAgB,GAA0B;IACtD,OAAO,EAAE,0BAAwE;IACjF,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAA6B,EAAE,EAAE;;QACzE,IAAI,CAAA,MAAA,KAAK,CAAC,SAAS,0CAAE,MAAM,KAAI,IAAI,EAAE;YACpC,OAAO;SACP;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACzE,IAAI,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,WAAW,EAAE,MAAK,yBAAQ,CAAC,yBAAQ,CAAC,MAAM,CAAC,EAAE;YAC/D,OAAO;SACP;QACD,MAAM,uBAAuB,GAC5B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;aAC5D,MAAA,KAAK,CAAC,IAAI,CAAC,IAAI,0CACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,SAAS,CAAC,QAAQ,EACtD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA,CAAC;QACpD,IAAI,uBAAuB,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACtF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { CardType } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnCardAddedToHandInput } from '../../../simulation/cards-in-hand';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { OnCardAddedToHandCard } from '../../card.interface';\r\n\r\nexport const FireworksFanatic: OnCardAddedToHandCard = {\r\n\tcardIds: [CardIds.FireworksFanatic_BG25_922, CardIds.FireworksFanatic_BG25_922_G],\r\n\tonCardAddedToHand: (entity: BoardEntity, input: OnCardAddedToHandInput) => {\r\n\t\tif (input.addedCard?.cardId == null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst refCard = input.gameState.allCards.getCard(input.addedCard.cardId);\r\n\t\tif (refCard?.type?.toUpperCase() !== CardType[CardType.MINION]) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst doWeAlreadyHaveThisCard =\r\n\t\t\tinput.board.some((e) => e.cardId === input.addedCard.cardId) ||\r\n\t\t\tinput.hero.hand\r\n\t\t\t\t?.filter((e) => e.entityId !== input.addedCard.entityId)\r\n\t\t\t\t.some((e) => e.cardId === input.addedCard.cardId);\r\n\t\tif (doWeAlreadyHaveThisCard) {\r\n\t\t\tconst mult = entity.cardId === CardIds.FireworksFanatic_BG25_922_G ? 2 : 1;\r\n\t\t\taddStatsToBoard(entity, input.board, input.hero, 2 * mult, 2 * mult, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"fireworks-fanatic.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fireworks-fanatic.ts"],"names":[],"mappings":";;;AACA,iEAAwD;AAGxD,0CAAiD;AAGpC,QAAA,gBAAgB,GAA0B;IACtD,OAAO,EAAE,0BAAwE;IACjF,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAA6B,EAAE,EAAE;;QACzE,IAAI,CAAA,MAAA,KAAK,CAAC,SAAS,0CAAE,MAAM,KAAI,IAAI,EAAE;YACpC,OAAO;SACP;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACzE,IAAI,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,WAAW,EAAE,MAAK,yBAAQ,CAAC,yBAAQ,CAAC,MAAM,CAAC,EAAE;YAC/D,OAAO;SACP;QACD,MAAM,uBAAuB,GAC5B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;aAC5D,MAAA,KAAK,CAAC,IAAI,CAAC,IAAI,0CACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,SAAS,CAAC,QAAQ,EACtD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA,CAAC;QACpD,IAAI,uBAAuB,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACtF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { CardType } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnCardAddedToHandInput } from '../../../simulation/cards-in-hand';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { OnCardAddedToHandCard } from '../../card.interface';\r\n\r\nexport const FireworksFanatic: OnCardAddedToHandCard = {\r\n\tcardIds: [CardIds.FireworksFanatic_BG25_922, CardIds.FireworksFanatic_BG25_922_G],\r\n\tonCardAddedToHand: (entity: BoardEntity, input: OnCardAddedToHandInput) => {\r\n\t\tif (input.addedCard?.cardId == null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst refCard = input.gameState.allCards.getCard(input.addedCard.cardId);\r\n\t\tif (refCard?.type?.toUpperCase() !== CardType[CardType.MINION]) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst doWeAlreadyHaveThisCard =\r\n\t\t\tinput.board.some((e) => e.cardId === input.addedCard.cardId) ||\r\n\t\t\tinput.hero.hand\r\n\t\t\t\t?.filter((e) => e.entityId !== input.addedCard.entityId)\r\n\t\t\t\t.some((e) => e.cardId === input.addedCard.cardId);\r\n\t\tif (doWeAlreadyHaveThisCard) {\r\n\t\t\tconst mult = entity.cardId === CardIds.FireworksFanatic_BG25_922_G ? 2 : 1;\r\n\t\t\taddStatsToBoard(entity, input.board, input.hero, 2 * mult, 2 * mult, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Fishbait = void 0;
|
|
4
|
+
const stats_1 = require("../../../simulation/stats");
|
|
5
|
+
const fishbaitBuff = 5;
|
|
6
|
+
exports.Fishbait = {
|
|
7
|
+
cardIds: ["BG36_205", "BG36_205_G"],
|
|
8
|
+
deathrattleEffect: (minion, input) => {
|
|
9
|
+
const killer = input.deadEntity.lastAffectedByEntity;
|
|
10
|
+
if (!killer || killer.health <= 0 || killer.definitelyDead) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
const mult = minion.cardId === "BG36_205_G" ? 2 : 1;
|
|
14
|
+
const buff = fishbaitBuff * mult;
|
|
15
|
+
const killerIsFriendly = killer.friendly === input.boardWithDeadEntityHero.friendly;
|
|
16
|
+
const killerBoard = killerIsFriendly ? input.boardWithDeadEntity : input.otherBoard;
|
|
17
|
+
const killerHero = killerIsFriendly ? input.boardWithDeadEntityHero : input.otherBoardHero;
|
|
18
|
+
(0, stats_1.modifyStats)(killer, minion, buff, buff, killerBoard, killerHero, input.gameState);
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=fishbait.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fishbait.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fishbait.ts"],"names":[],"mappings":";;;AAWA,qDAAwD;AAIxD,MAAM,YAAY,GAAG,CAAC,CAAC;AAEV,QAAA,QAAQ,GAA0B;IAC9C,OAAO,EAAE,0BAAwD;IACjE,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC5E,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC;QACrD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE;YAC3D,OAAO;SACP;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAgC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,YAAY,GAAG,IAAI,CAAC;QACjC,MAAM,gBAAgB,GAAG,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,uBAAuB,CAAC,QAAQ,CAAC;QACpF,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;QACpF,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;QAC3F,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACnF,CAAC;CACD,CAAC","sourcesContent":["/**\r\n * Fishbait (Tier 2, 0/1)\r\n * This can't gain stats. Deathrattle: Give the minion that killed this +5/+5.\r\n *\r\n * Golden Fishbait (Tier 2, 0/2)\r\n * This can't gain stats. Deathrattle: Give the minion that killed this +10/+10.\r\n *\r\n * The buff usually lands on an enemy minion, so the stats have to be applied on the killer's own board.\r\n */\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleEffectCard } from '../../card.interface';\r\nimport { CardIds } from '../../../services/card-ids';\r\n\r\nconst fishbaitBuff = 5;\r\n\r\nexport const Fishbait: DeathrattleEffectCard = {\r\n\tcardIds: [CardIds.Fishbait_BG36_205, CardIds.Fishbait_BG36_205_G],\r\n\tdeathrattleEffect: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst killer = input.deadEntity.lastAffectedByEntity;\r\n\t\tif (!killer || killer.health <= 0 || killer.definitelyDead) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst mult = minion.cardId === CardIds.Fishbait_BG36_205_G ? 2 : 1;\r\n\t\tconst buff = fishbaitBuff * mult;\r\n\t\tconst killerIsFriendly = killer.friendly === input.boardWithDeadEntityHero.friendly;\r\n\t\tconst killerBoard = killerIsFriendly ? input.boardWithDeadEntity : input.otherBoard;\r\n\t\tconst killerHero = killerIsFriendly ? input.boardWithDeadEntityHero : input.otherBoardHero;\r\n\t\tmodifyStats(killer, minion, buff, buff, killerBoard, killerHero, input.gameState);\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FleeingFugitive = void 0;
|
|
4
|
+
const stats_1 = require("../../../simulation/stats");
|
|
5
|
+
exports.FleeingFugitive = {
|
|
6
|
+
cardIds: ["BG36_921", "BG36_921_G"],
|
|
7
|
+
onTavernSpellCast: (entity, input) => {
|
|
8
|
+
if (input.source !== input.hero || input.target !== entity) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
const mult = entity.cardId === "BG36_921_G" ? 2 : 1;
|
|
12
|
+
(0, stats_1.modifyStats)(entity, entity, 0, mult, input.board, input.hero, input.gameState);
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=fleeing-fugitive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fleeing-fugitive.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fleeing-fugitive.ts"],"names":[],"mappings":";;;AAQA,qDAAwD;AAI3C,QAAA,eAAe,GAA0B;IACrD,OAAO,EAAE,0BAAsE;IAC/E,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACjE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE;YAC3D,OAAO;SACP;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChF,CAAC;CACD,CAAC","sourcesContent":["/**\r\n * Fleeing Fugitive (Tier 1, 3/2)\r\n * Whenever you cast a spell on this, gain +1 Health.\r\n *\r\n * Golden Fleeing Fugitive (Tier 1, 6/4)\r\n * Whenever you cast a spell on this, gain +2 Health.\r\n */\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { CastSpellInput, OnTavernSpellCastCard } from '../../card.interface';\r\nimport { CardIds } from '../../../services/card-ids';\r\n\r\nexport const FleeingFugitive: OnTavernSpellCastCard = {\r\n\tcardIds: [CardIds.FleeingFugitive_BG36_921, CardIds.FleeingFugitive_BG36_921_G],\r\n\tonTavernSpellCast: (entity: BoardEntity, input: CastSpellInput) => {\r\n\t\tif (input.source !== input.hero || input.target !== entity) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst mult = entity.cardId === CardIds.FleeingFugitive_BG36_921_G ? 2 : 1;\r\n\t\tmodifyStats(entity, entity, 0, mult, input.board, input.hero, input.gameState);\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlitteringBat = void 0;
|
|
4
|
+
const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
|
|
5
|
+
const spawns_1 = require("../../../simulation/spawns");
|
|
6
|
+
exports.FlitteringBat = {
|
|
7
|
+
cardIds: ["BG36_200", "BG36_200_G"],
|
|
8
|
+
rally: (minion, input) => {
|
|
9
|
+
const golden = minion.cardId === "BG36_200_G";
|
|
10
|
+
const spawnInput = {
|
|
11
|
+
boardWithDeadEntity: input.attackingBoard,
|
|
12
|
+
boardWithDeadEntityHero: input.attackingHero,
|
|
13
|
+
deadEntity: input.attacker,
|
|
14
|
+
otherBoard: input.defendingBoard,
|
|
15
|
+
otherBoardHero: input.defendingHero,
|
|
16
|
+
gameState: input.gameState,
|
|
17
|
+
};
|
|
18
|
+
const spawns = (0, deathrattle_spawns_1.simplifiedSpawnEntities)(golden
|
|
19
|
+
? "BG36_200_Gt"
|
|
20
|
+
: "BG36_200t", 1, spawnInput);
|
|
21
|
+
(0, spawns_1.performEntitySpawns)(spawns, input.attackingBoard, input.attackingHero, input.attacker, input.attackingBoard.length - input.attackingBoard.indexOf(input.attacker) - 1, input.defendingBoard, input.defendingHero, input.gameState);
|
|
22
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=flittering-bat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flittering-bat.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/flittering-bat.ts"],"names":[],"mappings":";;;AASA,+EAAiF;AAEjF,uDAAiE;AAIpD,QAAA,aAAa,GAAc;IACvC,OAAO,EAAE,0BAAkE;IAC3E,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,iBAAqC,CAAC;QAClE,MAAM,UAAU,GAA8B;YAC7C,mBAAmB,EAAE,KAAK,CAAC,cAAc;YACzC,uBAAuB,EAAE,KAAK,CAAC,aAAa;YAC5C,UAAU,EAAE,KAAK,CAAC,QAAQ;YAC1B,UAAU,EAAE,KAAK,CAAC,cAAc;YAChC,cAAc,EAAE,KAAK,CAAC,aAAa;YACnC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC1B,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,4CAAuB,EACrC,MAAM;YACL,CAAC;YACD,CAAC,YAAiD,EACnD,CAAC,EACD,UAAU,CACV,CAAC;QACF,IAAA,4BAAmB,EAClB,MAAM,EACN,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAC9E,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;QACF,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["/**\r\n * Flittering Bat (Tier 1, 1/3)\r\n * Rally: Summon a 1/1 Beast.\r\n *\r\n * Golden Flittering Bat (Tier 1, 2/6)\r\n * Rally: Summon a 2/2 Beast.\r\n */\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { performEntitySpawns } from '../../../simulation/spawns';\r\nimport { RallyCard } from '../../card.interface';\r\nimport { CardIds } from '../../../services/card-ids';\r\n\r\nexport const FlitteringBat: RallyCard = {\r\n\tcardIds: [CardIds.FlitteringBat_BG36_200, CardIds.FlitteringBat_BG36_200_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst golden = minion.cardId === CardIds.FlitteringBat_BG36_200_G;\r\n\t\tconst spawnInput: DeathrattleTriggeredInput = {\r\n\t\t\tboardWithDeadEntity: input.attackingBoard,\r\n\t\t\tboardWithDeadEntityHero: input.attackingHero,\r\n\t\t\tdeadEntity: input.attacker,\r\n\t\t\totherBoard: input.defendingBoard,\r\n\t\t\totherBoardHero: input.defendingHero,\r\n\t\t\tgameState: input.gameState,\r\n\t\t};\r\n\t\tconst spawns = simplifiedSpawnEntities(\r\n\t\t\tgolden\r\n\t\t\t\t? CardIds.FlitteringBat_ForagingBatToken_BG36_200_Gt\r\n\t\t\t\t: CardIds.FlitteringBat_ForagingBatToken_BG36_200t,\r\n\t\t\t1,\r\n\t\t\tspawnInput,\r\n\t\t);\r\n\t\tperformEntitySpawns(\r\n\t\t\tspawns,\r\n\t\t\tinput.attackingBoard,\r\n\t\t\tinput.attackingHero,\r\n\t\t\tinput.attacker,\r\n\t\t\tinput.attackingBoard.length - input.attackingBoard.indexOf(input.attacker) - 1,\r\n\t\t\tinput.defendingBoard,\r\n\t\t\tinput.defendingHero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flotsam-flinger.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/flotsam-flinger.ts"],"names":[],"mappings":";;;AAGa,QAAA,cAAc,GAAG;IAC7B,OAAO,EAAE,0BAAoE;CAU7E,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\n\r\n// It's a \"start of turn\" card now\r\nexport const FlotsamFlinger = {\r\n\tcardIds: [CardIds.FlotsamFlinger_BG33_892, CardIds.FlotsamFlinger_BG33_892_G],\r\n\t// endOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t// \tconst mult = minion.cardId === CardIds.FlotsamFlinger_BG33_892_G ? 2 : 1;\r\n\t// \tfor (let i = 0; i < mult; i++) {\r\n\t// \t\tconst targets = input.board.filter((e) => e.tavernTier <= 3);\r\n\t// \t\tfor (const target of targets) {\r\n\t// \t\t\ttriggerBattlecry(input.board, input.hero, target, 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":"flotsam-flinger.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/flotsam-flinger.ts"],"names":[],"mappings":";;;AAGa,QAAA,cAAc,GAAG;IAC7B,OAAO,EAAE,0BAAoE;CAU7E,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\n\r\n// It's a \"start of turn\" card now\r\nexport const FlotsamFlinger = {\r\n\tcardIds: [CardIds.FlotsamFlinger_BG33_892, CardIds.FlotsamFlinger_BG33_892_G],\r\n\t// endOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t// \tconst mult = minion.cardId === CardIds.FlotsamFlinger_BG33_892_G ? 2 : 1;\r\n\t// \tfor (let i = 0; i < mult; i++) {\r\n\t// \t\tconst targets = input.board.filter((e) => e.tavernTier <= 3);\r\n\t// \t\tfor (const target of targets) {\r\n\t// \t\t\ttriggerBattlecry(input.board, input.hero, target, input.board, input.hero, input.gameState);\r\n\t// \t\t}\r\n\t// \t}\r\n\t// },\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fountain-chiller.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fountain-chiller.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,mDAAqD;AAErD,qDAAwD;AACxD,0CAAiD;AAEjD,iDAAkE;AAErD,QAAA,eAAe,GAAkB;IAC7C,OAAO,EAAE,0BAAsE;IAC/E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,KAAK,MAAM,YAAY,IAAI,+BAAkB,EAAE;YAC9C,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,uBAAU,EAAC,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE;gBACzD,aAAa,EAAE,CAAC;aAChB;SACD;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3C,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,CAChG,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,CAAC,MAAM,EAAE;YACb,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,CAAC,GAAG,aAAa,GAAG,IAAI,EACxB,aAAa,GAAG,IAAI,EACpB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;SACF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { BattlecryCard } from '../../card.interface';\r\nimport { hasKeyword, validBonusKeywords } from '../../cards-data';\r\n\r\nexport const FountainChiller: BattlecryCard = {\r\n\tcardIds: [CardIds.FountainChiller_BG31_145, CardIds.FountainChiller_BG31_145_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.FountainChiller_BG31_145_G ? 2 : 1;\r\n\t\tlet totalKeywords = 1; // Base is 1, even without other keywords\r\n\t\tfor (const bonusKeyword of validBonusKeywords) {\r\n\t\t\tif (input.board.some((e) => hasKeyword(e, bonusKeyword))) {\r\n\t\t\t\ttotalKeywords++;\r\n\t\t\t}\r\n\t\t}\r\n\t\tconst candidates = input.board.filter((e) =>\r\n\t\t\thasCorrectTribe(e, input.hero, Race.MURLOC, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t);\r\n\t\tconst target = pickRandom(candidates);\r\n\t\tif (!!target) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\ttarget,\r\n\t\t\t\tminion,\r\n\t\t\t\t2 * totalKeywords * mult,\r\n\t\t\t\ttotalKeywords * mult,\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}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"fountain-chiller.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/fountain-chiller.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAEpD,mDAAqD;AAErD,qDAAwD;AACxD,0CAAiD;AAEjD,iDAAkE;AAErD,QAAA,eAAe,GAAkB;IAC7C,OAAO,EAAE,0BAAsE;IAC/E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,KAAK,MAAM,YAAY,IAAI,+BAAkB,EAAE;YAC9C,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,uBAAU,EAAC,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE;gBACzD,aAAa,EAAE,CAAC;aAChB;SACD;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3C,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,CAChG,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,CAAC,MAAM,EAAE;YACb,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,CAAC,GAAG,aAAa,GAAG,IAAI,EACxB,aAAa,GAAG,IAAI,EACpB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;SACF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { BattlecryCard } from '../../card.interface';\r\nimport { hasKeyword, validBonusKeywords } from '../../cards-data';\r\n\r\nexport const FountainChiller: BattlecryCard = {\r\n\tcardIds: [CardIds.FountainChiller_BG31_145, CardIds.FountainChiller_BG31_145_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.FountainChiller_BG31_145_G ? 2 : 1;\r\n\t\tlet totalKeywords = 1; // Base is 1, even without other keywords\r\n\t\tfor (const bonusKeyword of validBonusKeywords) {\r\n\t\t\tif (input.board.some((e) => hasKeyword(e, bonusKeyword))) {\r\n\t\t\t\ttotalKeywords++;\r\n\t\t\t}\r\n\t\t}\r\n\t\tconst candidates = input.board.filter((e) =>\r\n\t\t\thasCorrectTribe(e, input.hero, Race.MURLOC, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t);\r\n\t\tconst target = pickRandom(candidates);\r\n\t\tif (!!target) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\ttarget,\r\n\t\t\t\tminion,\r\n\t\t\t\t2 * totalKeywords * mult,\r\n\t\t\t\ttotalKeywords * mult,\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}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"friendly-geist.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/friendly-geist.ts"],"names":[],"mappings":";;;AAKa,QAAA,aAAa,GAAyB;IAClD,OAAO,EAAE,0BAAkE;IAC3E,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,qBAAqB,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3E,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const FriendlyGeist: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.FriendlyGeist_BG32_880, CardIds.FriendlyGeist_BG32_880_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.FriendlyGeist_BG32_880_G ? 2 : 1;\r\n\t\tinput.boardWithDeadEntityHero.globalInfo.TavernSpellAttackBuff += 1 * mult;\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"friendly-geist.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/friendly-geist.ts"],"names":[],"mappings":";;;AAKa,QAAA,aAAa,GAAyB;IAClD,OAAO,EAAE,0BAAkE;IAC3E,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,qBAAqB,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3E,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const FriendlyGeist: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.FriendlyGeist_BG32_880, CardIds.FriendlyGeist_BG32_880_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.FriendlyGeist_BG32_880_G ? 2 : 1;\r\n\t\tinput.boardWithDeadEntityHero.globalInfo.TavernSpellAttackBuff += 1 * mult;\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GatekeeperAmalgam = void 0;
|
|
4
|
+
const cast_tavern_spell_1 = require("../../../mechanics/cast-tavern-spell");
|
|
5
|
+
exports.GatekeeperAmalgam = {
|
|
6
|
+
cardIds: ["BG36_640", "BG36_640_G"],
|
|
7
|
+
onTavernSpellCast: (entity, input) => {
|
|
8
|
+
if (input.source !== input.hero || input.target !== entity) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
const loops = entity.cardId === "BG36_640_G" ? 2 : 1;
|
|
12
|
+
for (let i = 0; i < loops; i++) {
|
|
13
|
+
(0, cast_tavern_spell_1.castTavernSpell)("BG28_888", {
|
|
14
|
+
...input,
|
|
15
|
+
spellCardId: "BG28_888",
|
|
16
|
+
source: entity,
|
|
17
|
+
target: null,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=gatekeeper-amalgam.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gatekeeper-amalgam.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gatekeeper-amalgam.ts"],"names":[],"mappings":";;;AAWA,4EAAuE;AAI1D,QAAA,iBAAiB,GAA0B;IACvD,OAAO,EAAE,0BAA0E;IACnF,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACjE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE;YAC3D,OAAO;SACP;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,iBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/B,IAAA,mCAAe,cAAmC;gBACjD,GAAG,KAAK;gBACR,WAAW,YAAkC;gBAC7C,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,IAAI;aACZ,CAAC,CAAC;SACH;IACF,CAAC;CACD,CAAC","sourcesContent":["/**\r\n * Gatekeeper Amalgam (Tier 6, 6/6, all minion types)\r\n * Whenever you cast a spell on this, it casts Misplaced Tea Set.\r\n *\r\n * Golden Gatekeeper Amalgam (Tier 6, 12/12, all minion types)\r\n * Whenever you cast a spell on this, it casts Misplaced Tea Set twice.\r\n *\r\n * \"It casts\" means the Amalgam is the source, so the nested cast does not count as one of your own\r\n * spells and does not re-trigger the \"whenever you cast\" effects.\r\n */\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { castTavernSpell } from '../../../mechanics/cast-tavern-spell';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { CastSpellInput, OnTavernSpellCastCard } from '../../card.interface';\r\n\r\nexport const GatekeeperAmalgam: OnTavernSpellCastCard = {\r\n\tcardIds: [CardIds.GatekeeperAmalgam_BG36_640, CardIds.GatekeeperAmalgam_BG36_640_G],\r\n\tonTavernSpellCast: (entity: BoardEntity, input: CastSpellInput) => {\r\n\t\tif (input.source !== input.hero || input.target !== entity) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst loops = entity.cardId === CardIds.GatekeeperAmalgam_BG36_640_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < loops; i++) {\r\n\t\t\tcastTavernSpell(CardIds.MisplacedTeaSet_BG28_888, {\r\n\t\t\t\t...input,\r\n\t\t\t\tspellCardId: CardIds.MisplacedTeaSet_BG28_888,\r\n\t\t\t\tsource: entity,\r\n\t\t\t\ttarget: null,\r\n\t\t\t});\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gem-rat.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gem-rat.ts"],"names":[],"mappings":";;;AAEA,qEAAmE;AAGtD,QAAA,MAAM,GAAkB;IACpC,OAAO,EAAE,0BAAoD;IAC7D,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,KAAK,GACV,MAAM,CAAC,MAAM,iBAA8B;YAC1C,CAAC,CAAC,wBAAkD;YACpD,CAAC,CAAC,YAAyB,CAAC;QAC9B,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 '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const GemRat: EndOfTurnCard = {\r\n\tcardIds: [CardIds.GemRat_BG31_326, CardIds.GemRat_BG31_326_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst cards =\r\n\t\t\tminion.cardId === CardIds.GemRat_BG31_326_G\r\n\t\t\t\t? [CardIds.GemDay_BG31_893, CardIds.GemDay_BG31_893]\r\n\t\t\t\t: [CardIds.GemDay_BG31_893];\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"gem-rat.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gem-rat.ts"],"names":[],"mappings":";;;AAEA,qEAAmE;AAGtD,QAAA,MAAM,GAAkB;IACpC,OAAO,EAAE,0BAAoD;IAC7D,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,KAAK,GACV,MAAM,CAAC,MAAM,iBAA8B;YAC1C,CAAC,CAAC,wBAAkD;YACpD,CAAC,CAAC,YAAyB,CAAC;QAC9B,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 '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const GemRat: EndOfTurnCard = {\r\n\tcardIds: [CardIds.GemRat_BG31_326, CardIds.GemRat_BG31_326_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst cards =\r\n\t\t\tminion.cardId === CardIds.GemRat_BG31_326_G\r\n\t\t\t\t? [CardIds.GemDay_BG31_893, CardIds.GemDay_BG31_893]\r\n\t\t\t\t: [CardIds.GemDay_BG31_893];\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general-drakkisath.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/general-drakkisath.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAGtD,QAAA,iBAAiB,GAAkB;IAC/C,OAAO,EAAE,0BAA0E;IACnF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,2BAA2B,GAChC,MAAM,CAAC,MAAM,eAAuC;YACnD,CAAC,CAAC,aAAsD;YACxD,CAAC,CAAC;;;aAGC,CAAC;QACN,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,2BAA2B,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtF,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const GeneralDrakkisath: BattlecryCard = {\r\n\tcardIds: [CardIds.GeneralDrakkisath_BG25_309, CardIds.GeneralDrakkisath_BG25_309_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst generalDrakkisathCardsToAdd =\r\n\t\t\tminion.cardId === CardIds.GeneralDrakkisath_BG25_309\r\n\t\t\t\t? [CardIds.GeneralDrakkisath_SmolderwingToken_BG25_309t]\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\taddCardsInHand(input.hero, input.board, generalDrakkisathCardsToAdd, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"general-drakkisath.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/general-drakkisath.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAGtD,QAAA,iBAAiB,GAAkB;IAC/C,OAAO,EAAE,0BAA0E;IACnF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,2BAA2B,GAChC,MAAM,CAAC,MAAM,eAAuC;YACnD,CAAC,CAAC,aAAsD;YACxD,CAAC,CAAC;;;aAGC,CAAC;QACN,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,2BAA2B,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtF,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const GeneralDrakkisath: BattlecryCard = {\r\n\tcardIds: [CardIds.GeneralDrakkisath_BG25_309, CardIds.GeneralDrakkisath_BG25_309_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst generalDrakkisathCardsToAdd =\r\n\t\t\tminion.cardId === CardIds.GeneralDrakkisath_BG25_309\r\n\t\t\t\t? [CardIds.GeneralDrakkisath_SmolderwingToken_BG25_309t]\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\taddCardsInHand(input.hero, input.board, generalDrakkisathCardsToAdd, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gentle-djinni.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gentle-djinni.ts"],"names":[],"mappings":";;;AAEA,mDAAqD;AAErD,qEAAmE;AAItD,QAAA,YAAY,GAAyC;IACjE,OAAO,EAAE,8BAAoE;IAC7E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,sBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,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,kBAAkB,CAAC,CAAC,CAAC;SACrE;QACD,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACb,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,sBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,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,kBAAkB,CAAC,CAAC,CAAC;SACrE;QACD,IAAA,8BAAc,EAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,mBAAmB,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACjG,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { BattlecryCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const GentleDjinni: BattlecryCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.GentleDjinni_BGS_121, CardIds.GentleDjinni_TB_BaconUps_165],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst cards = [];\r\n\t\tconst numberOfCards = minion.cardId === CardIds.GentleDjinni_TB_BaconUps_165 ? 2 : 1;\r\n\t\tfor (let i = 0; i < numberOfCards; i++) {\r\n\t\t\tcards.push(pickRandom(input.gameState.cardsData.gentleDjinniSpawns));\r\n\t\t}\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst cards = [];\r\n\t\tconst numberOfCards = minion.cardId === CardIds.GentleDjinni_TB_BaconUps_165 ? 2 : 1;\r\n\t\tfor (let i = 0; i < numberOfCards; i++) {\r\n\t\t\tcards.push(pickRandom(input.gameState.cardsData.gentleDjinniSpawns));\r\n\t\t}\r\n\t\taddCardsInHand(input.boardWithDeadEntityHero, input.boardWithDeadEntity, cards, input.gameState);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"gentle-djinni.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gentle-djinni.ts"],"names":[],"mappings":";;;AAEA,mDAAqD;AAErD,qEAAmE;AAItD,QAAA,YAAY,GAAyC;IACjE,OAAO,EAAE,8BAAoE;IAC7E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,sBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,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,kBAAkB,CAAC,CAAC,CAAC;SACrE;QACD,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACb,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,sBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,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,kBAAkB,CAAC,CAAC,CAAC;SACrE;QACD,IAAA,8BAAc,EAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,mBAAmB,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACjG,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { BattlecryCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const GentleDjinni: BattlecryCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.GentleDjinni_BGS_121, CardIds.GentleDjinni_TB_BaconUps_165],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst cards = [];\r\n\t\tconst numberOfCards = minion.cardId === CardIds.GentleDjinni_TB_BaconUps_165 ? 2 : 1;\r\n\t\tfor (let i = 0; i < numberOfCards; i++) {\r\n\t\t\tcards.push(pickRandom(input.gameState.cardsData.gentleDjinniSpawns));\r\n\t\t}\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst cards = [];\r\n\t\tconst numberOfCards = minion.cardId === CardIds.GentleDjinni_TB_BaconUps_165 ? 2 : 1;\r\n\t\tfor (let i = 0; i < numberOfCards; i++) {\r\n\t\t\tcards.push(pickRandom(input.gameState.cardsData.gentleDjinniSpawns));\r\n\t\t}\r\n\t\taddCardsInHand(input.boardWithDeadEntityHero, input.boardWithDeadEntity, cards, input.gameState);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gentle-stag.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gentle-stag.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,UAAU,GAAuB;IAC7C,OAAO,EAAE,0BAA4D;IACrE,cAAc,EAAE,CAAC,MAAmB,EAAE,KAAwB,EAAE,EAAE;QACjE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAkC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACvC,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,CAC/F,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,IAAI,MAAM,EAAE;YACX,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1F;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnOtherSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnOtherSpawnedCard } from '../../card.interface';\r\n\r\nexport const GentleStag: OnOtherSpawnedCard = {\r\n\tcardIds: [CardIds.GentleStag_BG31_369, CardIds.GentleStag_BG31_369_G],\r\n\tonOtherSpawned: (minion: BoardEntity, input: OnOtherSpawnInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GentleStag_BG31_369_G ? 2 : 1;\r\n\t\tconst beasts = input.board.filter((e) =>\r\n\t\t\thasCorrectTribe(e, input.hero, Race.BEAST, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t);\r\n\t\tconst target = beasts[beasts.length - 1];\r\n\t\tif (target) {\r\n\t\t\tmodifyStats(target, minion, 3 * mult, 3 * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"gentle-stag.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gentle-stag.ts"],"names":[],"mappings":";;;AACA,iEAAoD;AAGpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,UAAU,GAAuB;IAC7C,OAAO,EAAE,0BAA4D;IACrE,cAAc,EAAE,CAAC,MAAmB,EAAE,KAAwB,EAAE,EAAE;QACjE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAkC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACvC,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,CAC/F,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,IAAI,MAAM,EAAE;YACX,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1F;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnOtherSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnOtherSpawnedCard } from '../../card.interface';\r\n\r\nexport const GentleStag: OnOtherSpawnedCard = {\r\n\tcardIds: [CardIds.GentleStag_BG31_369, CardIds.GentleStag_BG31_369_G],\r\n\tonOtherSpawned: (minion: BoardEntity, input: OnOtherSpawnInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GentleStag_BG31_369_G ? 2 : 1;\r\n\t\tconst beasts = input.board.filter((e) =>\r\n\t\t\thasCorrectTribe(e, input.hero, Race.BEAST, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t);\r\n\t\tconst target = beasts[beasts.length - 1];\r\n\t\tif (target) {\r\n\t\t\tmodifyStats(target, minion, 3 * mult, 3 * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Glambot = void 0;
|
|
4
|
+
const reference_data_1 = require("@firestone-hs/reference-data");
|
|
5
|
+
const magnetize_1 = require("../../../simulation/magnetize");
|
|
6
|
+
const utils_1 = require("../../../utils");
|
|
7
|
+
const satelliteStats = 6;
|
|
8
|
+
exports.Glambot = {
|
|
9
|
+
cardIds: ["BG36_853", "BG36_853_G"],
|
|
10
|
+
onTavernSpellCast: (entity, input) => {
|
|
11
|
+
const target = input.target;
|
|
12
|
+
if (input.source !== input.hero ||
|
|
13
|
+
!target ||
|
|
14
|
+
!(0, utils_1.hasCorrectTribe)(target, input.hero, reference_data_1.Race.MECH, input.gameState.anomalies, input.gameState.allCards)) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const golden = entity.cardId === "BG36_853_G";
|
|
18
|
+
const satelliteCardId = golden
|
|
19
|
+
? "BG31_171_Gt"
|
|
20
|
+
: "BG31_171t";
|
|
21
|
+
const satellite = {
|
|
22
|
+
...input.gameState.allCards.getCard(satelliteCardId),
|
|
23
|
+
id: satelliteCardId,
|
|
24
|
+
attack: satelliteStats * (golden ? 2 : 1),
|
|
25
|
+
health: satelliteStats * (golden ? 2 : 1),
|
|
26
|
+
};
|
|
27
|
+
(0, magnetize_1.magnetizeToTarget)([target], entity, [satellite], input.board, input.hero, input.otherBoard, input.otherHero, input.gameState);
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=glambot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glambot.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/glambot.ts"],"names":[],"mappings":";;;AAOA,iEAAmE;AAEnE,6DAAkE;AAClE,0CAAiD;AAIjD,MAAM,cAAc,GAAG,CAAC,CAAC;AAEZ,QAAA,OAAO,GAA0B;IAC7C,OAAO,EAAE,0BAAsD;IAC/D,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACjE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IACC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI;YAC3B,CAAC,MAAM;YACP,CAAC,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACnG;YACD,OAAO;SACP;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,iBAA+B,CAAC;QAC5D,MAAM,eAAe,GAAG,MAAM;YAC7B,CAAC;YACD,CAAC,YAA8D,CAAC;QAEjE,MAAM,SAAS,GAAkB;YAChC,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC;YACpD,EAAE,EAAE,eAAe;YACnB,MAAM,EAAE,cAAc,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,MAAM,EAAE,cAAc,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACzC,CAAC;QACF,IAAA,6BAAiB,EAChB,CAAC,MAAM,CAAC,EACR,MAAM,EACN,CAAC,SAAS,CAAC,EACX,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;IACH,CAAC;CACD,CAAC","sourcesContent":["/**\r\n * Glambot (Tier 5, 6/6)\r\n * Whenever you cast a spell on a Mech, Magnetize a 6/6 Satellite to it.\r\n *\r\n * Golden Glambot (Tier 5, 12/12)\r\n * Whenever you cast a spell on a Mech, Magnetize a 12/12 Satellite to it.\r\n */\r\nimport { Race, ReferenceCard } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { magnetizeToTarget } from '../../../simulation/magnetize';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { CastSpellInput, OnTavernSpellCastCard } from '../../card.interface';\r\nimport { CardIds } from '../../../services/card-ids';\r\n\r\nconst satelliteStats = 6;\r\n\r\nexport const Glambot: OnTavernSpellCastCard = {\r\n\tcardIds: [CardIds.Glambot_BG36_853, CardIds.Glambot_BG36_853_G],\r\n\tonTavernSpellCast: (entity: BoardEntity, input: CastSpellInput) => {\r\n\t\tconst target = input.target;\r\n\t\tif (\r\n\t\t\tinput.source !== input.hero ||\r\n\t\t\t!target ||\r\n\t\t\t!hasCorrectTribe(target, input.hero, Race.MECH, input.gameState.anomalies, input.gameState.allCards)\r\n\t\t) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst golden = entity.cardId === CardIds.Glambot_BG36_853_G;\r\n\t\tconst satelliteCardId = golden\r\n\t\t\t? CardIds.MoonsteelJuggernaut_MoonsteelSatelliteToken_BG31_171_Gt\r\n\t\t\t: CardIds.MoonsteelJuggernaut_MoonsteelSatelliteToken_BG31_171t;\r\n\t\t// The stats are part of the card text rather than of the token, so we set them explicitly\r\n\t\tconst satellite: ReferenceCard = {\r\n\t\t\t...input.gameState.allCards.getCard(satelliteCardId),\r\n\t\t\tid: satelliteCardId,\r\n\t\t\tattack: satelliteStats * (golden ? 2 : 1),\r\n\t\t\thealth: satelliteStats * (golden ? 2 : 1),\r\n\t\t};\r\n\t\tmagnetizeToTarget(\r\n\t\t\t[target],\r\n\t\t\tentity,\r\n\t\t\t[satellite],\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.otherBoard,\r\n\t\t\tinput.otherHero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gormling-gourmet.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gormling-gourmet.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAItD,QAAA,eAAe,GAAyC;IACpE,OAAO,EAAE,0BAAsE;IAC/E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA8B,CAAC;QAClE,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACb,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA8B,CAAC;QAClE,IAAA,8BAAc,EAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,mBAAmB,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtG,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { BattlecryCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const GormlingGourmet: BattlecryCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.GormlingGourmet_BG32_336, CardIds.GormlingGourmet_BG32_336_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GormlingGourmet_BG32_336 ? 1 : 2;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.SeafoodStew_BG32_337);\r\n\t\taddCardsInHand(input.hero, input.board, cardsToAdd, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GormlingGourmet_BG32_336 ? 1 : 2;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.SeafoodStew_BG32_337);\r\n\t\taddCardsInHand(input.boardWithDeadEntityHero, input.boardWithDeadEntity, cardsToAdd, input.gameState);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"gormling-gourmet.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gormling-gourmet.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAItD,QAAA,eAAe,GAAyC;IACpE,OAAO,EAAE,0BAAsE;IAC/E,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA8B,CAAC;QAClE,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACb,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA8B,CAAC;QAClE,IAAA,8BAAc,EAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,mBAAmB,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtG,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { BattlecryCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const GormlingGourmet: BattlecryCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.GormlingGourmet_BG32_336, CardIds.GormlingGourmet_BG32_336_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GormlingGourmet_BG32_336 ? 1 : 2;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.SeafoodStew_BG32_337);\r\n\t\taddCardsInHand(input.hero, input.board, cardsToAdd, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GormlingGourmet_BG32_336 ? 1 : 2;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.SeafoodStew_BG32_337);\r\n\t\taddCardsInHand(input.boardWithDeadEntityHero, input.boardWithDeadEntity, cardsToAdd, input.gameState);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"greedy-snaketongue.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/greedy-snaketongue.ts"],"names":[],"mappings":";;;AAEA,qEAAmE;AAItD,QAAA,iBAAiB,GAAc;IAC3C,OAAO,EAAE,0BAA0E;IACnF,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA6B,CAAC;QACjE,IAAA,8BAAc,EAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACvF,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const GreedySnaketongue: RallyCard = {\r\n\tcardIds: [CardIds.GreedySnaketongue_BG33_315, CardIds.GreedySnaketongue_BG33_315_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GreedySnaketongue_BG33_315_G ? 2 : 1;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.TavernCoin_BG28_810);\r\n\t\taddCardsInHand(input.attackingHero, input.attackingBoard, cardsToAdd, input.gameState);\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"greedy-snaketongue.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/greedy-snaketongue.ts"],"names":[],"mappings":";;;AAEA,qEAAmE;AAItD,QAAA,iBAAiB,GAAc;IAC3C,OAAO,EAAE,0BAA0E;IACnF,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,YAA6B,CAAC;QACjE,IAAA,8BAAc,EAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACvF,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const GreedySnaketongue: RallyCard = {\r\n\tcardIds: [CardIds.GreedySnaketongue_BG33_315, CardIds.GreedySnaketongue_BG33_315_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GreedySnaketongue_BG33_315_G ? 2 : 1;\r\n\t\tconst cardsToAdd = Array(mult).fill(CardIds.TavernCoin_BG28_810);\r\n\t\taddCardsInHand(input.attackingHero, input.attackingBoard, cardsToAdd, input.gameState);\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grimscale-elegist.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/grimscale-elegist.ts"],"names":[],"mappings":";;;AACA,iEAAwD;AAExD,mDAAqD;AACrD,qDAAwD;AAG3C,QAAA,gBAAgB,GAAkB;IAC9C,OAAO,EAAE,0BAAwE;IACjF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzE,MAAM,WAAW,GAAG,IAAA,kBAAU,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAA,mBAAW,EAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAE/F,MAAM,UAAU,GAAG,IAAA,kBAAU,EAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CACrB,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,0CAAE,WAAW,EAAE,MAAK,yBAAQ,CAAC,yBAAQ,CAAC,MAAM,CAAC,CAAA,EAAA,CACnG,CACD,CAAC;QACF,IAAI,UAAU,EAAE;YACf,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;YAC9B,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;SAC9B;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { CardType } from '@firestone-hs/reference-data';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const GrimscaleElegist: EndOfTurnCard = {\r\n\tcardIds: [CardIds.GrimscaleElegist_BG32_331, CardIds.GrimscaleElegist_BG32_331_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GrimscaleElegist_BG32_331 ? 1 : 2;\r\n\r\n\t\tconst boardTarget = pickRandom(input.board);\r\n\t\tmodifyStats(boardTarget, minion, 1 * mult, 1 * mult, input.board, input.hero, input.gameState);\r\n\r\n\t\tconst handTarget = pickRandom(\r\n\t\t\tinput.hero.hand.filter(\r\n\t\t\t\t(c) => input.gameState.allCards.getCard(c.cardId).type?.toUpperCase() === CardType[CardType.MINION],\r\n\t\t\t),\r\n\t\t);\r\n\t\tif (handTarget) {\r\n\t\t\thandTarget.attack += 1 * mult;\r\n\t\t\thandTarget.health += 1 * mult;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"grimscale-elegist.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/grimscale-elegist.ts"],"names":[],"mappings":";;;AACA,iEAAwD;AAExD,mDAAqD;AACrD,qDAAwD;AAG3C,QAAA,gBAAgB,GAAkB;IAC9C,OAAO,EAAE,0BAAwE;IACjF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzE,MAAM,WAAW,GAAG,IAAA,kBAAU,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAA,mBAAW,EAAC,WAAW,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAE/F,MAAM,UAAU,GAAG,IAAA,kBAAU,EAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CACrB,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,0CAAE,WAAW,EAAE,MAAK,yBAAQ,CAAC,yBAAQ,CAAC,MAAM,CAAC,CAAA,EAAA,CACnG,CACD,CAAC;QACF,IAAI,UAAU,EAAE;YACf,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;YAC9B,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;SAC9B;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { CardType } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { EndOfTurnCard, EndOfTurnInput } from '../../card.interface';\r\n\r\nexport const GrimscaleElegist: EndOfTurnCard = {\r\n\tcardIds: [CardIds.GrimscaleElegist_BG32_331, CardIds.GrimscaleElegist_BG32_331_G],\r\n\tendOfTurn: (minion: BoardEntity, input: EndOfTurnInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.GrimscaleElegist_BG32_331 ? 1 : 2;\r\n\r\n\t\tconst boardTarget = pickRandom(input.board);\r\n\t\tmodifyStats(boardTarget, minion, 1 * mult, 1 * mult, input.board, input.hero, input.gameState);\r\n\r\n\t\tconst handTarget = pickRandom(\r\n\t\t\tinput.hero.hand.filter(\r\n\t\t\t\t(c) => input.gameState.allCards.getCard(c.cardId).type?.toUpperCase() === CardType[CardType.MINION],\r\n\t\t\t),\r\n\t\t);\r\n\t\tif (handTarget) {\r\n\t\t\thandTarget.attack += 1 * mult;\r\n\t\t\thandTarget.health += 1 * mult;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gritty-headhunter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gritty-headhunter.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,wBAAwE;YAC1E,CAAC,CAAC,YAAoC,CAAC;QACzC,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const GrittyHeadhunter: BattlecryCard = {\r\n\tcardIds: [CardIds.GrittyHeadhunter_BG31_822, CardIds.GrittyHeadhunter_BG31_822_G],\r\n\tbattlecry: (entity: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst cards =\r\n\t\t\tentity.cardId === CardIds.GrittyHeadhunter_BG31_822_G\r\n\t\t\t\t? [CardIds.MaraudersContract_BG31_891, CardIds.MaraudersContract_BG31_891]\r\n\t\t\t\t: [CardIds.MaraudersContract_BG31_891];\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"gritty-headhunter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/gritty-headhunter.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,wBAAwE;YAC1E,CAAC,CAAC,YAAoC,CAAC;QACzC,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { BattlecryCard } from '../../card.interface';\r\n\r\nexport const GrittyHeadhunter: BattlecryCard = {\r\n\tcardIds: [CardIds.GrittyHeadhunter_BG31_822, CardIds.GrittyHeadhunter_BG31_822_G],\r\n\tbattlecry: (entity: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst cards =\r\n\t\t\tentity.cardId === CardIds.GrittyHeadhunter_BG31_822_G\r\n\t\t\t\t? [CardIds.MaraudersContract_BG31_891, CardIds.MaraudersContract_BG31_891]\r\n\t\t\t\t: [CardIds.MaraudersContract_BG31_891];\r\n\t\taddCardsInHand(input.hero, input.board, cards, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hackerfin.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/hackerfin.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAExD,iDAAkE;AAElE,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,cAAc,GAAG,CAAC,CAAC;AAEZ,QAAA,SAAS,GAAkB;IACvC,OAAO,EAAE,0BAA0D;IACnE,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAiC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,IAAI,oBAAoB,GAAG,CAAC,CAAC;QAC7B,MAAM,mBAAmB,GAAG,CAAC,GAAG,+BAAkB,CAAC,CAAC;QACpD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE;YACjC,KAAK,MAAM,YAAY,IAAI,mBAAmB,EAAE;gBAC/C,IAAI,IAAA,uBAAU,EAAC,MAAM,EAAE,YAAY,CAAC,EAAE;oBACrC,oBAAoB,EAAE,CAAC;oBACvB,mBAAmB,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;iBACzE;aACD;SACD;QACD,MAAM,QAAQ,GAAG,CAAC,GAAG,oBAAoB,CAAC;QAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9E,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE;YACjC,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACxG;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { BattlecryCard } from '../../card.interface';\r\nimport { hasKeyword, validBonusKeywords } from '../../cards-data';\r\n\r\nconst baseAttackBuff = 3;\r\nconst baseHealthBuff = 3;\r\n\r\nexport const Hackerfin: BattlecryCard = {\r\n\tcardIds: [CardIds.Hackerfin_BG31_148, CardIds.Hackerfin_BG31_148_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.Hackerfin_BG31_148_G ? 2 : 1;\r\n\t\tlet totalWarbandKeywords = 0;\r\n\t\tconst keywordsToAttribute = [...validBonusKeywords];\r\n\t\tfor (const entity of input.board) {\r\n\t\t\tfor (const bonusKeyword of keywordsToAttribute) {\r\n\t\t\t\tif (hasKeyword(entity, bonusKeyword)) {\r\n\t\t\t\t\ttotalWarbandKeywords++;\r\n\t\t\t\t\tkeywordsToAttribute.splice(keywordsToAttribute.indexOf(bonusKeyword), 1);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\tconst baseBuff = 1 + totalWarbandKeywords;\r\n\t\tconst targetBoard = input.board.filter((e) => e.entityId !== minion.entityId);\r\n\t\tfor (const target of targetBoard) {\r\n\t\t\tmodifyStats(target, minion, baseBuff * mult, baseBuff * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"hackerfin.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/hackerfin.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAExD,iDAAkE;AAElE,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,cAAc,GAAG,CAAC,CAAC;AAEZ,QAAA,SAAS,GAAkB;IACvC,OAAO,EAAE,0BAA0D;IACnE,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAiC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,IAAI,oBAAoB,GAAG,CAAC,CAAC;QAC7B,MAAM,mBAAmB,GAAG,CAAC,GAAG,+BAAkB,CAAC,CAAC;QACpD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE;YACjC,KAAK,MAAM,YAAY,IAAI,mBAAmB,EAAE;gBAC/C,IAAI,IAAA,uBAAU,EAAC,MAAM,EAAE,YAAY,CAAC,EAAE;oBACrC,oBAAoB,EAAE,CAAC;oBACvB,mBAAmB,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;iBACzE;aACD;SACD;QACD,MAAM,QAAQ,GAAG,CAAC,GAAG,oBAAoB,CAAC;QAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9E,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE;YACjC,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACxG;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { BattlecryInput } from '../../../simulation/battlecries';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { BattlecryCard } from '../../card.interface';\r\nimport { hasKeyword, validBonusKeywords } from '../../cards-data';\r\n\r\nconst baseAttackBuff = 3;\r\nconst baseHealthBuff = 3;\r\n\r\nexport const Hackerfin: BattlecryCard = {\r\n\tcardIds: [CardIds.Hackerfin_BG31_148, CardIds.Hackerfin_BG31_148_G],\r\n\tbattlecry: (minion: BoardEntity, input: BattlecryInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.Hackerfin_BG31_148_G ? 2 : 1;\r\n\t\tlet totalWarbandKeywords = 0;\r\n\t\tconst keywordsToAttribute = [...validBonusKeywords];\r\n\t\tfor (const entity of input.board) {\r\n\t\t\tfor (const bonusKeyword of keywordsToAttribute) {\r\n\t\t\t\tif (hasKeyword(entity, bonusKeyword)) {\r\n\t\t\t\t\ttotalWarbandKeywords++;\r\n\t\t\t\t\tkeywordsToAttribute.splice(keywordsToAttribute.indexOf(bonusKeyword), 1);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\tconst baseBuff = 1 + totalWarbandKeywords;\r\n\t\tconst targetBoard = input.board.filter((e) => e.entityId !== minion.entityId);\r\n\t\tfor (const target of targetBoard) {\r\n\t\t\tmodifyStats(target, minion, baseBuff * mult, baseBuff * mult, input.board, input.hero, input.gameState);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handless-forsaken.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/handless-forsaken.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AAGpE,QAAA,gBAAgB,GAAyB;IACrD,OAAO,EAAE,0BAAwE;IACjF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,IAAA,4CAAuB,eAAsD,IAAI,EAAE,KAAK,CAAC,CAAC;IAClG,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\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 HandlessForsaken: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.HandlessForsaken_BG25_010, CardIds.HandlessForsaken_BG25_010_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.HandlessForsaken_BG25_010 ? 1 : 2;\r\n\t\treturn simplifiedSpawnEntities(CardIds.HandlessForsaken_HelpingHandToken_BG25_010t, mult, input);\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"handless-forsaken.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/handless-forsaken.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AAGpE,QAAA,gBAAgB,GAAyB;IACrD,OAAO,EAAE,0BAAwE;IACjF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,IAAA,4CAAuB,eAAsD,IAAI,EAAE,KAAK,CAAC,CAAC;IAClG,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\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 HandlessForsaken: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.HandlessForsaken_BG25_010, CardIds.HandlessForsaken_BG25_010_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.HandlessForsaken_BG25_010 ? 1 : 2;\r\n\t\treturn simplifiedSpawnEntities(CardIds.HandlessForsaken_HelpingHandToken_BG25_010t, mult, input);\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harmless-bonehead.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/harmless-bonehead.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AAGpE,QAAA,gBAAgB,GAAyB;IACrD,OAAO,EAAE,0BAAwE;IACjF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,OAAO,IAAA,4CAAuB,iBAAwB,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\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 HarmlessBonehead: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.HarmlessBonehead_BG28_300, CardIds.HarmlessBonehead_BG28_300_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.HarmlessBonehead_BG28_300_G ? 2 : 1;\r\n\t\treturn simplifiedSpawnEntities(CardIds.SkeletonToken, 2 * mult, input);\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"harmless-bonehead.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/harmless-bonehead.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AAGpE,QAAA,gBAAgB,GAAyB;IACrD,OAAO,EAAE,0BAAwE;IACjF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,OAAO,IAAA,4CAAuB,iBAAwB,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '../../../services/card-ids';\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 HarmlessBonehead: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.HarmlessBonehead_BG28_300, CardIds.HarmlessBonehead_BG28_300_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.HarmlessBonehead_BG28_300_G ? 2 : 1;\r\n\t\treturn simplifiedSpawnEntities(CardIds.SkeletonToken, 2 * mult, input);\r\n\t},\r\n};\r\n"]}
|